3 ;;; This isn't really lisp, but it's definitely a source file.
5 ;;; first, the headers necessary to find definitions of everything
10 #-win32 "sys/socket.h"
12 #-win32 "netinet/in.h"
13 #-win32 "netinet/in_systm.h"
14 #-win32 "netinet/ip.h"
16 #-win32 "netinet/tcp.h"
28 ;;; then the stuff we're looking for
29 ((:integer af-inet "AF_INET" "IP Protocol family" t)
31 ;; KLUDGE: These types simply do not seem to exist on Windows,
32 ;; but we'll provide these anyways -- at least in a way that should
34 (:type uid-t #-win32 "uid_t" #+win32 "short")
35 (:type gid-t #-win32 "gid_t" #+win32 "short")
36 (:type nlink-t #-win32 "nlink_t" #+win32 "short")
41 (:type time-t "time_t")
45 (:integer SIGHUP "SIGHUP" #+sb-doc "terminal line hangup." t)
46 (:integer SIGINT "SIGINT" #+sb-doc "interrupt program." t)
47 (:integer SIGQUIT "SIGQUIT" #+sb-doc "quit program." t)
48 (:integer SIGILL "SIGILL" #+sb-doc "illegal instruction." t)
49 (:integer SIGTRAP "SIGTRAP" #+sb-doc "trace trap." t)
50 (:integer SIGABRT "SIGABRT" #+sb-doc "abort program (formerly SIGIOT)." t)
51 (:integer SIGEMT "SIGEMT" #+sb-doc "emulate instruction executed." t)
52 (:integer SIGFPE "SIGFPE" #+sb-doc "floating-point exception." t)
53 (:integer SIGKILL "SIGKILL" #+sb-doc "kill program." t)
54 (:integer SIGBUS "SIGBUS" #+sb-doc "bus error." t)
55 (:integer SIGSEGV "SIGSEGV" #+sb-doc "segmentation violation." t)
56 (:integer SIGSYS "SIGSYS" #+sb-doc "non-existent system call invoked." t)
57 (:integer SIGPIPE "SIGPIPE" #+sb-doc "write on a pipe with no reader." t)
58 (:integer SIGALRM "SIGALRM" #+sb-doc "real-time timer expired." t)
59 (:integer SIGTERM "SIGTERM" #+sb-doc "software termination signal." t)
60 (:integer SIGURG "SIGURG" #+sb-doc "urgent condition present on socket." t)
61 (:integer SIGSTOP "SIGSTOP" #+sb-doc "stop (cannot be caught or ignored)." t)
62 (:integer SIGTSTP "SIGTSTP" #+sb-doc "stop signal generated from keyboard." t)
63 (:integer SIGCONT "SIGCONT" #+sb-doc "continue after stop." t)
64 (:integer SIGCHLD "SIGCHLD" #+sb-doc "child status has changed." t)
65 (:integer SIGTTIN "SIGTTIN"
66 #+sb-doc "background read attempted from control terminal." t)
67 (:integer SIGTTOU "SIGTTOU"
68 #+sb-doc "background write attempted to control terminal." t)
69 (:integer SIGIO "SIGIO"
70 #+sb-doc "I/O is possible on a descriptor (see fcntl(2))." t)
71 (:integer SIGXCPU "SIGXCPU"
72 #+sb-doc "cpu time limit exceeded (see setrlimit(2))." t)
73 (:integer SIGXFSZ "SIGXFSZ"
74 #+sb-doc "file size limit exceeded (see setrlimit(2))." t)
75 (:integer SIGVTALRM "SIGVTALRM"
76 #+sb-doc "virtual time alarm (see setitimer(2))." t)
77 (:integer SIGPROF "SIGPROF"
78 #+sb-doc "profiling timer alarm (see setitimer(2))." t)
79 (:integer SIGWINCH "SIGWINCH" #+sb-doc "Window size change." t)
80 (:integer SIGINFO "SIGINFO" #+sb-doc "status request from keyboard." t)
81 (:integer SIGUSR1 "SIGUSR1" #+sb-doc "User defined signal 1." t)
82 (:integer SIGUSR2 "SIGUSR2" #+sb-doc "User defined signal 2." t)
83 (:integer SIGRTMIN "SIGRTMIN" #+sb-doc "Smallest real-time signal number." t)
84 (:integer SIGRTMAX "SIGRTMAX" #+sb-doc "Largest real-time signal number." t)
87 (:integer eperm "EPERM" nil t)
88 (:integer enoent "ENOENT" nil t)
89 (:integer esrch "ESRCH" nil t)
90 (:integer eintr "EINTR" nil t)
91 (:integer eio "EIO" nil t)
92 (:integer enxio "ENXIO" nil t)
93 (:integer e2big "E2BIG" nil t)
94 (:integer enoexec "ENOEXEC" nil t)
95 (:integer ebadf "EBADF" nil t)
96 (:integer echild "ECHILD" nil t)
97 (:integer eagain "EAGAIN" nil t)
98 (:integer enomem "ENOMEM" nil t)
99 (:integer eacces "EACCES" nil t)
100 (:integer efault "EFAULT" nil t)
101 (:integer enotblk "ENOTBLK" nil t)
102 (:integer ebusy "EBUSY" nil t)
103 (:integer eexist "EEXIST" nil t)
104 (:integer exdev "EXDEV" nil t)
105 (:integer enodev "ENODEV" nil t)
106 (:integer enotdir "ENOTDIR" nil t)
107 (:integer eisdir "EISDIR" nil t)
108 (:integer einval "EINVAL" nil t)
109 (:integer enfile "ENFILE" nil t)
110 (:integer emfile "EMFILE" nil t)
111 (:integer enotty "ENOTTY" nil t)
112 (:integer etxtbsy "ETXTBSY" nil t)
113 (:integer efbig "EFBIG" nil t)
114 (:integer enospc "ENOSPC" nil t)
115 (:integer espipe "ESPIPE" nil t)
116 (:integer erofs "EROFS" nil t)
117 (:integer emlink "EMLINK" nil t)
118 (:integer epipe "EPIPE" nil t)
119 (:integer edom "EDOM" nil t)
120 (:integer erange "ERANGE" nil t)
121 (:integer edeadlk "EDEADLK" nil t)
122 (:integer enametoolong "ENAMETOOLONG" nil t)
123 (:integer enolck "ENOLCK" nil t)
124 (:integer enosys "ENOSYS" nil t)
125 (:integer enotempty "ENOTEMPTY" nil t)
126 (:integer eloop "ELOOP" nil t)
127 (:integer ewouldblock "EWOULDBLOCK" nil t)
128 (:integer enomsg "ENOMSG" nil t)
129 (:integer eidrm "EIDRM" nil t)
130 (:integer echrng "ECHRNG" nil t)
131 (:integer el2nsync "EL2NSYNC" nil t)
132 (:integer el3hlt "EL3HLT" nil t)
133 (:integer el3rst "EL3RST" nil t)
134 (:integer elnrng "ELNRNG" nil t)
135 (:integer eunatch "EUNATCH" nil t)
136 (:integer enocsi "ENOCSI" nil t)
137 (:integer el2hlt "EL2HLT" nil t)
138 (:integer ebade "EBADE" nil t)
139 (:integer ebadr "EBADR" nil t)
140 (:integer exfull "EXFULL" nil t)
141 (:integer enoano "ENOANO" nil t)
142 (:integer ebadrqc "EBADRQC" nil t)
143 (:integer ebadslt "EBADSLT" nil t)
144 (:integer edeadlock "EDEADLOCK" nil t)
145 (:integer ebfont "EBFONT" nil t)
146 (:integer enostr "ENOSTR" nil t)
147 (:integer enodata "ENODATA" nil t)
148 (:integer etime "ETIME" nil t)
149 (:integer enosr "ENOSR" nil t)
150 (:integer enonet "ENONET" nil t)
151 (:integer enopkg "ENOPKG" nil t)
152 (:integer eremote "EREMOTE" nil t)
153 (:integer enolink "ENOLINK" nil t)
154 (:integer eadv "EADV" nil t)
155 (:integer esrmnt "ESRMNT" nil t)
156 (:integer ecomm "ECOMM" nil t)
157 (:integer eproto "EPROTO" nil t)
158 (:integer emultihop "EMULTIHOP" nil t)
159 (:integer edotdot "EDOTDOT" nil t)
160 (:integer ebadmsg "EBADMSG" nil t)
161 (:integer eoverflow "EOVERFLOW" nil t)
162 (:integer enotuniq "ENOTUNIQ" nil t)
163 (:integer ebadfd "EBADFD" nil t)
164 (:integer eremchg "EREMCHG" nil t)
165 (:integer elibacc "ELIBACC" nil t)
166 (:integer elibbad "ELIBBAD" nil t)
167 (:integer elibscn "ELIBSCN" nil t)
168 (:integer elibmax "ELIBMAX" nil t)
169 (:integer elibexec "ELIBEXEC" nil t)
170 (:integer eilseq "EILSEQ" nil t)
171 (:integer erestart "ERESTART" nil t)
172 (:integer estrpipe "ESTRPIPE" nil t)
173 (:integer eusers "EUSERS" nil t)
174 (:integer enotsock "ENOTSOCK" nil t)
175 (:integer edestaddrreq "EDESTADDRREQ" nil t)
176 (:integer emsgsize "EMSGSIZE" nil t)
177 (:integer eprototype "EPROTOTYPE" nil t)
178 (:integer enoprotoopt "ENOPROTOOPT" nil t)
179 (:integer eprotonosupport "EPROTONOSUPPORT" nil t)
180 (:integer esocktnosupport "ESOCKTNOSUPPORT" nil t)
181 (:integer eopnotsupp "EOPNOTSUPP" nil t)
182 (:integer epfnosupport "EPFNOSUPPORT" nil t)
183 (:integer eafnosupport "EAFNOSUPPORT" nil t)
184 (:integer eaddrinuse "EADDRINUSE" nil t)
185 (:integer eaddrnotavail "EADDRNOTAVAIL" nil t)
186 (:integer enetdown "ENETDOWN" nil t)
187 (:integer enetunreach "ENETUNREACH" nil t)
188 (:integer enetreset "ENETRESET" nil t)
189 (:integer econnaborted "ECONNABORTED" nil t)
190 (:integer econnreset "ECONNRESET" nil t)
191 (:integer enobufs "ENOBUFS" nil t)
192 (:integer eisconn "EISCONN" nil t)
193 (:integer enotconn "ENOTCONN" nil t)
194 (:integer eshutdown "ESHUTDOWN" nil t)
195 (:integer etoomanyrefs "ETOOMANYREFS" nil t)
196 (:integer etimedout "ETIMEDOUT" nil t)
197 (:integer econnrefused "ECONNREFUSED" nil t)
198 (:integer ehostdown "EHOSTDOWN" nil t)
199 (:integer ehostunreach "EHOSTUNREACH" nil t)
200 (:integer ealready "EALREADY" nil t)
201 (:integer einprogress "EINPROGRESS" nil t)
202 (:integer estale "ESTALE" nil t)
203 (:integer euclean "EUCLEAN" nil t)
204 (:integer enotnam "ENOTNAM" nil t)
205 (:integer enavail "ENAVAIL" nil t)
206 (:integer eremoteio "EREMOTEIO" nil t)
207 (:integer edquot "EDQUOT" nil t)
208 (:integer enomedium "ENOMEDIUM" nil t)
209 (:integer emediumtype "EMEDIUMTYPE" nil t)
212 (:integer wnohang "WNOHANG")
213 (:integer wuntraced "WUNTRACED")
216 (:type mode-t "mode_t")
217 (:integer s-isuid "S_ISUID" nil t)
218 (:integer s-isgid "S_ISGID" nil t)
219 (:integer s-isvtx "S_ISVTX" nil t)
220 (:integer s-irusr "S_IRUSR" nil t)
221 (:integer s-iwusr "S_IWUSR" nil t)
222 (:integer s-ixusr "S_IXUSR" nil t)
223 (:integer s-iread "S_IRUSR" nil t)
224 (:integer s-iwrite "S_IWUSR" nil t)
225 (:integer s-iexec "S_IXUSR" nil t)
226 (:integer s-irgrp "S_IRGRP" nil t)
227 (:integer s-iwgrp "S_IWGRP" nil t)
228 (:integer s-ixgrp "S_IXGRP" nil t)
229 (:integer s-iroth "S_IROTH" nil t)
230 (:integer s-iwoth "S_IWOTH" nil t)
231 (:integer s-ixoth "S_IXOTH" nil t)
234 (:integer r-ok "R_OK" nil t)
235 (:integer w-ok "W_OK" nil t)
236 (:integer x-ok "X_OK" nil t)
237 (:integer f-ok "F_OK" nil t)
240 (:type off-t "off_t")
241 (:integer prot-none "PROT_NONE" #+sb-doc "mmap: no protection" t)
242 (:integer prot-read "PROT_READ" #+sb-doc "mmap: read protection" t)
243 (:integer prot-write "PROT_WRITE" #+sb-doc "mmap: write protection" t)
244 (:integer prot-exec "PROT_EXEC" #+sb-doc "mmap: execute protection" t)
245 (:integer map-shared "MAP_SHARED" #+sb-doc "mmap: shared memory" t)
246 (:integer map-private "MAP_PRIVATE" #+sb-doc "mmap: private mapping" t)
247 (:integer map-fixed "MAP_FIXED" #+sb-doc "mmap: map at given location" t)
250 (:integer ms-async "MS_ASYNC" #+sb-doc "msync: return immediately" t)
251 (:integer ms-sync "MS_SYNC" #+sb-doc "msync: perform synchronous writes" t)
252 (:integer ms-invalidate "MS_INVALIDATE"
253 #+sb-doc "msync: invalidate all cached data" t)
257 (#+(and linux largefile) "struct dirent64"
258 #-(and linux largefile) "struct dirent"
259 (:c-string name "char *" "d_name"
260 :distrust-length #+sunos t #-sunos nil)) t)
264 (:structure alien-passwd
266 (c-string-pointer name "char *" "pw_name")
267 (c-string-pointer passwd "char *" "pw_passwd")
268 (uid-t uid "uid_t" "pw_uid")
269 (gid-t gid "gid_t" "pw_gid")
270 ;; 'change', 'class', and 'expire' are not supported on Linux
272 (time-t change "time_t" "pw_change")
274 (c-string-pointer class "char *" "pw_class")
275 (c-string-pointer gecos "char *" "pw_gecos")
276 (c-string-pointer dir "char *" "pw_dir")
277 (c-string-pointer shell "char *" "pw_shell")
279 (time-t expire "time_t" "pw_expire")
280 ;; OS X manpages say this exists. they lie!
282 (:integer fields "int" "pw_fields")))
284 (:structure alien-stat
286 (mode-t mode "mode_t" "st_mode")
287 (ino-t ino "ino_t" "st_ino")
288 ;; Linux/MIPS uses unsigned long instead of dev_t here.
290 (dev-t dev "dev_t" "st_dev")
292 ((unsigned 32) dev "dev_t" "st_dev")
293 (nlink-t nlink "nlink_t" "st_nlink")
294 (uid-t uid "uid_t" "st_uid")
295 (gid-t gid "gid_t" "st_gid")
296 (off-t size "off_t" "st_size")
297 (time-t atime "time_t" "st_atime")
298 (time-t mtime "time_t" "st_mtime")
299 (time-t ctime "time_t" "st_ctime")))
302 (:structure alien-timespec
304 (time-t tv-sec "time_t" "tv_sec")
305 (long tv-nsec "long" "tv_nsec")))
308 (:integer o-rdonly "O_RDONLY" nil t)
309 (:integer o-wronly "O_WRONLY" nil t)
310 (:integer o-rdwr "O_RDWR" nil t)
311 (:integer o-creat "O_CREAT" nil t)
312 (:integer o-excl "O_EXCL" nil t)
313 (:integer o-noctty "O_NOCTTY" nil t)
314 (:integer o-trunc "O_TRUNC" nil t)
315 (:integer o-append "O_APPEND" nil t)
316 (:integer o-nonblock "O_NONBLOCK" nil t)
317 (:integer o-ndelay "O_NDELAY" nil t)
318 (:integer o-sync "O_SYNC" nil t)
319 (:integer o-nofollow "O_NOFOLLOW" nil t)
320 (:integer o-directory "O_DIRECTORY" nil t)
321 (:integer o-direct "O_DIRECT" nil t)
322 (:integer o-async "O_ASYNC" nil t)
323 (:integer o-largefile "O_LARGEFILE" nil t) ; hmm...
324 (:integer o-dsync "O_DSYNC" nil t)
325 (:integer o-rsync "O_RSYNC" nil t)
328 (:integer seek-set "SEEK_SET" nil t)
329 (:integer seek-cur "SEEK_CUR" nil t)
330 (:integer seek-end "SEEK_END" nil t)
333 (:integer f-dupfd "F_DUPFD" nil t)
334 (:integer f-getfd "F_GETFD" nil t)
335 (:integer f-setfd "F_SETFD" nil t)
336 (:integer f-getfl "F_GETFL" nil t)
337 (:integer f-setfl "F_SETFL" nil t)
338 (:integer f-getlk "F_GETLK" nil t)
339 (:integer f-setlk "F_SETLK" nil t)
340 (:integer f-setlkw "F_SETLKW" nil t)
341 (:integer f-getown "F_GETOWN" nil t)
342 (:integer f-setown "F_SETOWN" nil t)
344 ;; tcgetattr(), tcsetattr()
348 (:type speed-t "speed_t" nil t)
350 (:type tcflag-t "tcflag_t" nil t)
351 (:integer nccs "NCCS" nil t)
353 (:structure alien-termios
355 (tcflag-t iflag "tcflag_t" "c_iflag")
356 (tcflag-t oflag "tcflag_t" "c_oflag")
357 (tcflag-t cflag "tcflag_t" "c_cflag")
358 (tcflag-t lflag "tcflag_t" "c_lflag")
359 ((array cc-t) cc "cc_t" "c_cc")))
363 (:type suseconds-t ; OAOOM warning: similar kludge in tools-for-build
364 #-(and darwin ppc) "suseconds_t"
365 #+(and darwin ppc) "int")
368 (:structure alien-utimbuf
370 (time-t actime "time_t" "actime")
371 (time-t modtime "time_t" "modtime")))
373 (:structure alien-timeval
375 (time-t sec "time_t" "tv_sec")
376 (suseconds-t usec "suseconds_t" "tv_usec")))
378 (:integer veof "VEOF" nil t)
379 (:integer veol "VEOL" nil t)
380 (:integer verase "VERASE" nil t)
381 (:integer vintr "VINTR" nil t)
382 (:integer vkill "VKILL" nil t)
383 (:integer vmin "VMIN" nil t)
384 (:integer vquit "VQUIT" nil t)
385 (:integer vstart "VSTART" nil t)
386 (:integer vstop "VSTOP" nil t)
387 (:integer vsusp "VSUSP" nil t)
388 (:integer vtime "VTIME" nil t)
390 (:integer brkint "BRKINT" nil t)
391 (:integer icrnl "ICRNL" nil t)
392 (:integer ignbrk "IGNBRK" nil t)
393 (:integer igncr "IGNCR" nil t)
394 (:integer ignpar "IGNPAR" nil t)
395 (:integer inlcr "INLCR" nil t)
396 (:integer inpck "INPCK" nil t)
397 (:integer istrip "ISTRIP" nil t)
398 #+xsi ; FIXME: an extension, apparently
399 (:integer ixany "IXANY" nil t)
400 (:integer ixoff "IXOFF" nil t)
401 (:integer ixon "IXON" nil t)
402 (:integer parmrk "PARMRK" nil t)
404 (:integer opost "OPOST" nil t)
406 (:integer onlcr "ONLCR" nil t)
407 (:integer ocrnl "OCRNL" nil t)
408 (:integer onlret "ONLRET" nil t)
409 (:integer ofill "OFILL" nil t)
410 (:integer nldly "NLDLY" nil t)
411 (:integer nl0 "NL0" nil t)
412 (:integer nl1 "NL1" nil t)
413 (:integer crdly "CRDLY" nil t)
414 (:integer cr0 "CR0" nil t)
415 (:integer cr1 "CR1" nil t)
416 (:integer cr2 "CR2" nil t)
417 (:integer cr3 "CR3" nil t)
418 (:integer tabdly "TABDLY" nil t)
419 (:integer tab0 "TAB0" nil t)
420 (:integer tab1 "TAB1" nil t)
421 (:integer tab2 "TAB2" nil t)
422 (:integer tab3 "TAB3" nil t)
423 (:integer bsdly "BSDLY" nil t)
424 (:integer bs0 "BS0" nil t)
425 (:integer bs1 "BS1" nil t)
426 (:integer vtdly "VTDLY" nil t)
427 (:integer vt0 "VT0" nil t)
428 (:integer vt1 "VT1" nil t)
429 (:integer ffdly "FFDLY" nil t)
430 (:integer ff0 "FF0" nil t)
431 (:integer ff1 "FF1" nil t)
433 (:integer b0 "B0" nil t)
434 (:integer b50 "B50" nil t)
435 (:integer b75 "B75" nil t)
436 (:integer b110 "B110" nil t)
437 (:integer b134 "B134" nil t)
438 (:integer b150 "B150" nil t)
439 (:integer b200 "B200" nil t)
440 (:integer b300 "B300" nil t)
441 (:integer b600 "B600" nil t)
442 (:integer b1200 "B1200" nil t)
443 (:integer b1800 "B1800" nil t)
444 (:integer b2400 "B2400" nil t)
445 (:integer b4800 "B4800" nil t)
446 (:integer b9600 "B9600" nil t)
447 (:integer b19200 "B19200" nil t)
448 (:integer b38400 "B38400" nil t)
449 (:integer b57600 "B57600" nil t)
450 (:integer b115200 "B115200" nil t)
451 (:integer b230400 "B230400" nil t)
453 (:integer csize "CSIZE" nil t)
454 (:integer cs5 "CS5" nil t)
455 (:integer cs6 "CS6" nil t)
456 (:integer cs7 "CS7" nil t)
457 (:integer cs8 "CS8" nil t)
458 (:integer cstopb "CSTOPB" nil t)
459 (:integer cread "CREAD" nil t)
460 (:integer parenb "PARENB" nil t)
461 (:integer parodd "PARODD" nil t)
462 (:integer hupcl "HUPCL" nil t)
463 (:integer clocal "CLOCAL" nil t)
465 (:integer echo "ECHO" nil t)
466 (:integer echoe "ECHOE" nil t)
467 (:integer echok "ECHOK" nil t)
468 (:integer echonl "ECHONL" nil t)
469 (:integer icanon "ICANON" nil t)
470 (:integer iexten "IEXTEN" nil t)
471 (:integer isig "ISIG" nil t)
472 (:integer noflsh "NOFLSH" nil t)
473 (:integer tostop "TOSTOP" nil t)
475 (:integer tcsanow "TCSANOW" nil t)
476 (:integer tcsadrain "TCSADRAIN" nil t)
477 (:integer tcsaflush "TCSAFLUSH" nil t)
479 (:integer tciflush "TCIFLUSH" nil t)
480 (:integer tcioflush "TCIOFLUSH" nil t)
481 (:integer tcoflush "TCOFLUSH" nil t)
482 (:integer tcioff "TCIOFF" nil t)
483 (:integer tcion "TCION" nil t)
484 (:integer tcooff "TCOOFF" nil t)
485 (:integer tcoon "TCOON" nil t)
487 ;; syslog -- does this exist at all on Windows?
489 ;; SUSv3-standard openlog() facilities
491 (:integer log-user "LOG_USER" "Default openlog() faclity." t)
493 (:integer log-local0 "LOG_LOCAL0" "Locally-defined openlog() facility" t)
495 (:integer log-local1 "LOG_LOCAL1" "Locally-defined openlog() facility" t)
497 (:integer log-local2 "LOG_LOCAL2" "Locally-defined openlog() facility" t)
499 (:integer log-local3 "LOG_LOCAL3" "Locally-defined openlog() facility" t)
501 (:integer log-local4 "LOG_LOCAL4" "Locally-defined openlog() facility" t)
503 (:integer log-local5 "LOG_LOCAL5" "Locally-defined openlog() facility" t)
505 (:integer log-local6 "LOG_LOCAL6" "Locally-defined openlog() facility" t)
507 (:integer log-local7 "LOG_LOCAL7" "Locally-defined openlog() facility" t)
509 ;; Additional, non-standard openlog() facilities (most of which
510 ;; probably won't be needed by Lisp programs, but here for
514 log-authpriv "LOG_AUTHPRIV" "openlog() facility for authorization messages" t)
517 log-cron "LOG_CRON" "openlog() facility for cron and at daemons" t)
520 log-daemon "LOG_DAEMON" "openlog() facility for arbitrary daemons" t)
523 log-ftp "LOG_FTP" "openlog() facility for FTP daemons" t)
526 log-kern "LOG_KERN" "openlog() facility for kernel messages" t)
529 log-lpr "LOG_LPR" "openlog() facility for the printer subsystem" t)
532 log-mail "LOG_MAIL" "openlog() facility for the mail subsystem" t)
535 log-news "LOG_NEWS" "openlog() facility for the usenet subsystem" t)
538 log-syslog "LOG_SYSLOG" "openlog() facility for the syslog subsystem" t)
541 log-uucp "LOG_UUCP" "openlog() facility for the UUCP subsystem" t)
547 "If supplied to openlog(), log the process ID with each message"
552 "If supplied to openlog(), log to the system console as well as logfiles"
556 log-ndelay "LOG_NDELAY"
557 "If supplied to openlog(), immediately open the syslog connection."
561 log-odelay "LOG_ODELAY"
562 "If supplied to openlog(), delay opening the syslog connection to the first syslog() call."
566 log-nowait "LOG_NOWAIT"
567 "If supplied to openlog(), do not wait for child processes created by calls to syslog()."
569 ;; Not in SUSv3, but at least Glibc and BSD libc have this
572 log-perror "LOG_PERROR"
573 "If supplied to openlog(), write log messages to the process's standard error descriptor in addition to the logging facility."
576 ;; syslog() severity levels
579 log-emerg "LOG_EMERG" "Log severity level denoting a panic." t)
582 log-alert "LOG_ALERT" "Log severity level denoting a condition that should be corrected immediately." t)
585 log-crit "LOG_CRIT" "Log severity level denoting critical conditions." t)
588 log-err "LOG_ERR" "Log severity level denoting an error." t)
591 log-warning "LOG_WARNING" "Log severity level denoting a warning." t)
594 log-notice "LOG_NOTICE" "Log severity level denoting non-errors that may require special handling." t)
597 log-info "LOG_INFO" "Log severity level denoting informational messages." t)
600 log-debug "LOG_DEBUG" "Log severity level denoting debugging information ." t)