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