codegen: Use temporary variable for string concatenation
[vala-lang.git] / vapi / libdaemon.vapi
blob46b4629b17e6f41d8fd5d8d3c420c4b8b575a2a8
1 /* daemon.vapi
2  *
3  * Copyright (C) 2009 Jukka-Pekka Iivonen
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
18  *
19  * Author:
20  *      Jukka-Pekka Iivonen <jp0409@jippii.fi>
21  */
23 [CCode (lower_case_cprefix = "daemon_", cheader_filename = "signal.h,libdaemon/daemon.h")]
24 namespace Daemon {
25         [CCode (cname = "int", cprefix = "DAEMON_LOG_")]
26         public enum LogFlags {
27                 SYSLOG,
28                 STDERR,
29                 STDOUT,
30                 AUTO
31         }
33         [CCode (cname = "int", cprefix = "LOG_")]
34         public enum LogPriority {
35                 EMERG,
36                 ALERT,
37                 CRIT,
38                 ERR,
39                 WARNING,
40                 NOTICE,
41                 INFO,
42                 DEBUG 
43         }
45         [CCode (cname = "int", cprefix = "SIG")]
46         public enum Sig {
47                 HUP,
48                 INT,
49                 QUIT,
50                 ILL,
51                 TRAP,
52                 ABRT,
53                 IOT,
54                 BUS,
55                 FPE,
56                 KILL,
57                 USR1,
58                 SEGV,
59                 USR2,
60                 PIPE,
61                 ALRM,
62                 TERM,
63                 STKFLT,
64                 CLD,
65                 CHLD,
66                 CONT,
67                 STOP,
68                 TSTP,
69                 TTIN,
70                 TTOU,
71                 URG,
72                 XCPU,
73                 XFSZ,
74                 VTALRM,
75                 PROF,
76                 WINCH,
77                 POLL,
78                 IO,
79                 PWR,
80                 SYS,
81                 UNUSED
82         }
84         public int exec (string dir, out int ret, string prog, ...);
86 #if POSIX
87         public Posix.pid_t fork ();
88 #else
89         public GLib.Pid fork ();
90 #endif
91         public int retval_init ();
92         public void retval_done ();
93         public int retval_wait (int timeout);
94         public int retval_send (int s);
95         public int close_all (int except_fd, ...);
96         public int close_allv ([CCode (array_length = false)] int[] except_fds);
97         public int unblock_sigs (int except, ...);
98         public int unblock_sigsv ([CCode (array_length = false)] int[] except);
99         public int reset_sigs (int except, ...);
100         public int reset_sigsv ([CCode (array_length = false)] int[] except);
102         public static LogFlags log_use;
103         public static string log_ident;
105         public void log (int prio, string t, ...);
106         public unowned string ident_from_argv0 (string argv0);
108         public int nonblock (int fd, int b);
110         public delegate string PidFileProc ();
112         public static string pid_file_ident;
113         public static PidFileProc pid_file_proc;
115         public unowned string pid_file_proc_default ();
116         public int pid_file_create ();
117         public int pid_file_remove ();
118 #if POSIX
119         public Posix.pid_t pid_file_is_running ();
120 #else
121         public GLib.Pid pid_file_is_running ();
122 #endif
123         public int pid_file_kill (Sig s);
124         public int pid_file_kill_wait (Sig s, int m);
126         public int signal_init (Sig s, ...);
127         public int signal_install (Sig s);
128         public void signal_done ();
129         public int signal_next ();
130         public int signal_fd ();