1 /* config.h.in. Generated from configure.in by autoheader. */
6 /* Define to 1 if the `syslog' function returns a non-zero int to denote
10 /* Define to 1 if you want the insults from the "classic" version sudo. */
11 #undef CLASSIC_INSULTS
13 /* Define to 1 if you want insults culled from the twisted minds of CSOps. */
16 /* Define to 1 if you want sudo to display "command not allowed" instead of
17 "command not found" when a command cannot be found. */
18 #undef DONT_LEAK_PATH_INFO
20 /* A colon-separated list of pathnames to be used as the editor for visudo. */
23 /* Define to 1 to enable environment function debugging. */
26 /* Define to 1 if you want visudo to honor the EDITOR and VISUAL env
30 /* Define to 1 to enable environment resetting by default. */
33 /* If defined, users in this group need not enter a passwd (ie "sudo"). */
36 /* Define to 1 if you want to require fully qualified hosts in sudoers. */
39 /* Define to the type of elements in the array set by `getgroups'. Usually
40 this is either `int' or `gid_t'. */
43 /* Define to 1 if you want insults from the "Goon Show". */
46 /* Define to 1 if you want 2001-like insults. */
49 /* Define to 1 if you use AFS. */
52 /* Define to 1 if you use AIX general authentication. */
55 /* Define to 1 if you have the `asprintf' function. */
58 /* Define to 1 if you have the `authenticate' function. */
59 #undef HAVE_AUTHENTICATE
61 /* Define to 1 if you have the `auth_challenge' function. */
62 #undef HAVE_AUTH_CHALLENGE
64 /* Define to 1 if you have the `bigcrypt' function. */
67 /* Define to 1 if you use BSD authentication. */
68 #undef HAVE_BSD_AUTH_H
70 /* Define to 1 to enable BSM audit support. */
73 /* Define to 1 if you have the `closefrom' function. */
76 /* Define to 1 if you use OSF DCE. */
79 /* Define to 1 if your `DIR' contains dd_fd. */
82 /* Define to 1 if you have the declaration of `sys_siglist', and to 0 if you
84 #undef HAVE_DECL_SYS_SIGLIST
86 /* Define to 1 if you have the declaration of `_sys_siglist', and to 0 if you
88 #undef HAVE_DECL__SYS_SIGLIST
90 /* Define to 1 if you have the declaration of `__sys_siglist', and to 0 if you
92 #undef HAVE_DECL___SYS_SIGLIST
94 /* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
98 /* Define to 1 if you have the `dirfd' function or macro. */
101 /* Define to 1 if you have the `dispcrypt' function. */
102 #undef HAVE_DISPCRYPT
104 /* Define to 1 if you have the <dlfcn.h> header file. */
107 /* Define to 1 if you have the `dlopen' function. */
110 /* Define to 1 if your glob.h defines the GLOB_BRACE and GLOB_TILDE flags. */
111 #undef HAVE_EXTENDED_GLOB
113 /* Define to 1 if your system has the F_CLOSEM fcntl. */
114 #undef HAVE_FCNTL_CLOSEM
116 /* Define to 1 if you have the `fgetln' function. */
119 /* Define to 1 if you have the `flock' function. */
122 /* Define to 1 if you have the `fnmatch' function. */
125 /* Define to 1 if you have the `freeifaddrs' function. */
126 #undef HAVE_FREEIFADDRS
128 /* Define to 1 if you have the `fstat' function. */
131 /* Define to 1 if you have the `futime' function. */
134 /* Define to 1 if you have the `futimes' function. */
137 /* Define to 1 if you have the `futimesat' function. */
138 #undef HAVE_FUTIMESAT
140 /* Define to 1 if you use the FWTK authsrv daemon. */
143 /* Define to 1 if you have the `getaddrinfo' function. */
144 #undef HAVE_GETADDRINFO
146 /* Define to 1 if you have the `getauthuid' function. (ULTRIX 4.x shadow
148 #undef HAVE_GETAUTHUID
150 /* Define to 1 if you have the `getcwd' function. */
153 /* Define to 1 if you have the `getdomainname' function. */
154 #undef HAVE_GETDOMAINNAME
156 /* Define to 1 if you have the `getgrouplist' function. */
157 #undef HAVE_GETGROUPLIST
159 /* Define to 1 if your system has a working `getgroups' function. */
160 #undef HAVE_GETGROUPS
162 /* Define to 1 if you have the `getgrset' function. */
165 /* Define to 1 if you have the `getifaddrs' function. */
166 #undef HAVE_GETIFADDRS
168 /* Define to 1 if you have the `getline' function. */
171 /* Define to 1 if you have the `getprogname' function. */
172 #undef HAVE_GETPROGNAME
174 /* Define to 1 if you have the `getprpwnam' function. (SecureWare-style shadow
176 #undef HAVE_GETPRPWNAM
178 /* Define to 1 if you have the `getpwanam' function. (SunOS 4.x shadow
180 #undef HAVE_GETPWANAM
182 /* Define to 1 if you have the `getresuid' function. */
183 #undef HAVE_GETRESUID
185 /* Define to 1 if you have the `getspnam' function (SVR4-style shadow
189 /* Define to 1 if you have the `getspwuid' function. (HP-UX <= 9.X shadow
191 #undef HAVE_GETSPWUID
193 /* Define to 1 if you have the `getttyent' function. */
194 #undef HAVE_GETTTYENT
196 /* Define to 1 if you have the `getuserattr' function. */
197 #undef HAVE_GETUSERATTR
199 /* Define to 1 if you have the `getutid' function. */
202 /* Define to 1 if you have the `getutxid' function. */
205 /* Define to 1 if you have the `glob' function. */
208 /* Define to 1 if you have the `grantpt' function. */
211 /* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
212 #undef HAVE_GSSAPI_GSSAPI_KRB5_H
214 /* Define to 1 if you have the `gss_krb5_ccache_name' function. */
215 #undef HAVE_GSS_KRB5_CCACHE_NAME
217 /* Define to 1 if your Kerberos is Heimdal. */
220 /* Define to 1 if <netinet/in.h> contains struct in6_addr. */
223 /* Define to 1 if you have the `initprivs' function. */
224 #undef HAVE_INITPRIVS
226 /* Define to 1 if you have the `innetgr' function. */
229 /* Define to 1 if you have the <inttypes.h> header file. */
230 #undef HAVE_INTTYPES_H
232 /* Define if you have isblank(3). */
235 /* Define to 1 if you have the `iscomsec' function. (HP-UX >= 10.x check for
239 /* Define to 1 if you have the `issecure' function. (SunOS 4.x check for
243 /* Define to 1 if you use Kerberos IV. */
246 /* Define to 1 if you use Kerberos V. */
249 /* Define to 1 if you have the `killpg' function. */
252 /* Define to 1 if you have the `krb5_get_init_creds_opt_alloc' function. */
253 #undef HAVE_KRB5_GET_INIT_CREDS_OPT_ALLOC
255 /* Define to 1 if your `krb5_get_init_creds_opt_free' function takes two
257 #undef HAVE_KRB5_GET_INIT_CREDS_OPT_FREE_TWO_ARGS
259 /* Define to 1 if you have the `krb5_init_secure_context' function. */
260 #undef HAVE_KRB5_INIT_SECURE_CONTEXT
262 /* Define to 1 if you have the `krb5_verify_user' function. */
263 #undef HAVE_KRB5_VERIFY_USER
265 /* Define to 1 if your LDAP needs <lber.h>. (OpenLDAP does not) */
268 /* Define to 1 if you use LDAP for sudoers. */
271 /* Define to 1 if you have the `ldapssl_init' function. */
272 #undef HAVE_LDAPSSL_INIT
274 /* Define to 1 if you have the `ldapssl_set_strength' function. */
275 #undef HAVE_LDAPSSL_SET_STRENGTH
277 /* Define to 1 if you have the `ldap_create' function. */
278 #undef HAVE_LDAP_CREATE
280 /* Define to 1 if you have the `ldap_initialize' function. */
281 #undef HAVE_LDAP_INITIALIZE
283 /* Define to 1 if you have the `ldap_sasl_bind_s' function. */
284 #undef HAVE_LDAP_SASL_BIND_S
286 /* Define to 1 if you have the `ldap_sasl_interactive_bind_s' function. */
287 #undef HAVE_LDAP_SASL_INTERACTIVE_BIND_S
289 /* Define to 1 if you have the `ldap_search_ext_s' function. */
290 #undef HAVE_LDAP_SEARCH_EXT_S
292 /* Define to 1 if you have the `ldap_search_st' function. */
293 #undef HAVE_LDAP_SEARCH_ST
295 /* Define to 1 if you have the `ldap_ssl_client_init' function. */
296 #undef HAVE_LDAP_SSL_CLIENT_INIT
298 /* Define to 1 if you have the <ldap_ssl.h> header file. */
299 #undef HAVE_LDAP_SSL_H
301 /* Define to 1 if you have the `ldap_start_tls_s' function. */
302 #undef HAVE_LDAP_START_TLS_S
304 /* Define to 1 if you have the `ldap_start_tls_s_np' function. */
305 #undef HAVE_LDAP_START_TLS_S_NP
307 /* Define to 1 if you have the `ldap_str2dn' function. */
308 #undef HAVE_LDAP_STR2DN
310 /* Define to 1 if you have the `ldap_unbind_ext_s' function. */
311 #undef HAVE_LDAP_UNBIND_EXT_S
313 /* Define to 1 if you have the <libintl.h> header file. */
314 #undef HAVE_LIBINTL_H
316 /* Define to 1 to enable Linux audit support. */
317 #undef HAVE_LINUX_AUDIT
319 /* Define to 1 if you have the `lockf' function. */
322 /* Define to 1 if you have the <login_cap.h> header file. */
323 #undef HAVE_LOGIN_CAP_H
325 /* Define to 1 if the system has the type `long long int'. */
326 #undef HAVE_LONG_LONG_INT
328 /* Define to 1 if you have the `lrand48' function. */
331 /* Define to 1 if you have the <maillock.h> header file. */
332 #undef HAVE_MAILLOCK_H
334 /* Define to 1 if you have the <malloc.h> header file. */
337 /* Define to 1 if you have the `mbr_check_membership' function. */
338 #undef HAVE_MBR_CHECK_MEMBERSHIP
340 /* Define to 1 if you have the <memory.h> header file. */
343 /* Define to 1 if you have the `memrchr' function. */
346 /* Define to 1 if you have the `mkdtemp' function. */
349 /* Define to 1 if you have the `mkstemps' function. */
352 /* Define to 1 if you have the <mps/ldap_ssl.h> header file. */
353 #undef HAVE_MPS_LDAP_SSL_H
355 /* Define to 1 if you have the `nanosleep' function. */
356 #undef HAVE_NANOSLEEP
358 /* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
361 /* Define to 1 if you have the <netgroup.h> header file. */
362 #undef HAVE_NETGROUP_H
364 /* Define to 1 if you have the `nl_langinfo' function. */
365 #undef HAVE_NL_LANGINFO
367 /* Define to 1 if you have the `openpty' function. */
370 /* Define to 1 if you use NRL OPIE. */
373 /* Define to 1 if you use PAM authentication. */
376 /* Define to 1 if you use a specific PAM session for sudo -i. */
377 #undef HAVE_PAM_LOGIN
379 /* Define to 1 if you have the <pam/pam_appl.h> header file. */
380 #undef HAVE_PAM_PAM_APPL_H
382 /* Define to 1 if you have the <paths.h> header file. */
385 /* Define to 1 if you have the `posix_openpt' function. */
386 #undef HAVE_POSIX_OPENPT
388 /* Define to 1 if you have the `priv_set' function. */
391 /* Define to 1 if you have the <project.h> header file. */
392 #undef HAVE_PROJECT_H
394 /* Define to 1 if you have the <pty.h> header file. */
397 /* Define to 1 if you have the `random' function. */
400 /* Define to 1 if you have the `regcomp' function. */
403 /* Define to 1 if you have the `revoke' function. */
406 /* Define to 1 if the skeychallenge() function is RFC1938-compliant and takes
408 #undef HAVE_RFC1938_SKEYCHALLENGE
410 /* Define to 1 if you have the <sasl.h> header file. */
413 /* Define to 1 if you have the <sasl/sasl.h> header file. */
414 #undef HAVE_SASL_SASL_H
416 /* Define if your struct sockadr has an sa_len field. */
419 /* Define to 1 if you use SecurID for authentication. */
422 /* Define to 1 if you have the <security/pam_appl.h> header file. */
423 #undef HAVE_SECURITY_PAM_APPL_H
425 /* Define to 1 to enable SELinux RBAC support. */
428 /* Define to 1 if you have the `setauthdb' function. */
429 #undef HAVE_SETAUTHDB
431 /* Define to 1 if you have the `setenv' function. */
434 /* Define to 1 if you have the `seteuid' function. */
437 /* Define to 1 if you have the `setkeycreatecon' function. */
438 #undef HAVE_SETKEYCREATECON
440 /* Define to 1 if you have the `setlocale' function. */
441 #undef HAVE_SETLOCALE
443 /* Define to 1 if you have the `setresuid' function. */
444 #undef HAVE_SETRESUID
446 /* Define to 1 if you have the `setreuid' function. */
449 /* Define to 1 if you have the `setrlimit64' function. */
450 #undef HAVE_SETRLIMIT64
452 /* Define to 1 if you have the `set_auth_parameters' function. */
453 #undef HAVE_SET_AUTH_PARAMETERS
455 /* Define to 1 if you have the `shl_load' function. */
458 /* Define to 1 if you have the `sia_ses_init' function. */
459 #undef HAVE_SIA_SES_INIT
461 /* Define to 1 if <signal.h> has the sigaction_t typedef. */
462 #undef HAVE_SIGACTION_T
464 /* Define to 1 if you use S/Key. */
467 /* Define to 1 if your S/Key library has skeyaccess(). */
468 #undef HAVE_SKEYACCESS
470 /* Define to 1 if you have the `snprintf' function. */
473 /* Define to 1 if you have the <stdint.h> header file. */
476 /* Define to 1 if you have the <stdlib.h> header file. */
479 /* Define to 1 if you have the `strftime' function. */
482 /* Define to 1 if you have the <strings.h> header file. */
483 #undef HAVE_STRINGS_H
485 /* Define to 1 if you have the <string.h> header file. */
488 /* Define to 1 if you have the `strlcat' function. */
491 /* Define to 1 if you have the `strlcpy' function. */
494 /* Define to 1 if you have the `strrchr' function. */
497 /* Define to 1 if you have the `strsignal' function. */
498 #undef HAVE_STRSIGNAL
500 /* Define to 1 if the system has the type `struct in6_addr'. */
501 #undef HAVE_STRUCT_IN6_ADDR
503 /* Define to 1 if `ut_exit' is a member of `struct utmpx'. */
504 #undef HAVE_STRUCT_UTMPX_UT_EXIT
506 /* Define to 1 if `ut_exit.e_termination' is a member of `struct utmpx'. */
507 #undef HAVE_STRUCT_UTMPX_UT_EXIT_E_TERMINATION
509 /* Define to 1 if `ut_exit.__e_termination' is a member of `struct utmpx'. */
510 #undef HAVE_STRUCT_UTMPX_UT_EXIT___E_TERMINATION
512 /* Define to 1 if `ut_id' is a member of `struct utmpx'. */
513 #undef HAVE_STRUCT_UTMPX_UT_ID
515 /* Define to 1 if `ut_pid' is a member of `struct utmpx'. */
516 #undef HAVE_STRUCT_UTMPX_UT_PID
518 /* Define to 1 if `ut_tv' is a member of `struct utmpx'. */
519 #undef HAVE_STRUCT_UTMPX_UT_TV
521 /* Define to 1 if `ut_type' is a member of `struct utmpx'. */
522 #undef HAVE_STRUCT_UTMPX_UT_TYPE
524 /* Define to 1 if `ut_exit' is a member of `struct utmp'. */
525 #undef HAVE_STRUCT_UTMP_UT_EXIT
527 /* Define to 1 if `ut_exit.e_termination' is a member of `struct utmp'. */
528 #undef HAVE_STRUCT_UTMP_UT_EXIT_E_TERMINATION
530 /* Define to 1 if `ut_exit.__e_termination' is a member of `struct utmp'. */
531 #undef HAVE_STRUCT_UTMP_UT_EXIT___E_TERMINATION
533 /* Define to 1 if `ut_id' is a member of `struct utmp'. */
534 #undef HAVE_STRUCT_UTMP_UT_ID
536 /* Define to 1 if `ut_pid' is a member of `struct utmp'. */
537 #undef HAVE_STRUCT_UTMP_UT_PID
539 /* Define to 1 if `ut_tv' is a member of `struct utmp'. */
540 #undef HAVE_STRUCT_UTMP_UT_TV
542 /* Define to 1 if `ut_type' is a member of `struct utmp'. */
543 #undef HAVE_STRUCT_UTMP_UT_TYPE
545 /* Define to 1 if `ut_user' is a member of `struct utmp'. */
546 #undef HAVE_STRUCT_UTMP_UT_USER
548 /* Define to 1 if your struct stat has an st_mtim member */
551 /* Define to 1 if your struct stat has an st_mtimespec member */
552 #undef HAVE_ST_MTIMESPEC
554 /* Define to 1 if your struct stat uses an st__tim union */
557 /* Define to 1 if you have the `sysconf' function. */
560 /* Define to 1 if you have the `sysctl' function. */
563 /* Define to 1 if you have the <sys/bsdtypes.h> header file. */
564 #undef HAVE_SYS_BSDTYPES_H
566 /* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
568 #undef HAVE_SYS_DIR_H
570 /* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
572 #undef HAVE_SYS_NDIR_H
574 /* Define to 1 if you have the <sys/select.h> header file. */
575 #undef HAVE_SYS_SELECT_H
577 /* Define to 1 if you have the <sys/sockio.h> header file. */
578 #undef HAVE_SYS_SOCKIO_H
580 /* Define to 1 if you have the <sys/stat.h> header file. */
581 #undef HAVE_SYS_STAT_H
583 /* Define to 1 if you have the <sys/stropts.h> header file. */
584 #undef HAVE_SYS_STROPTS_H
586 /* Define to 1 if you have the <sys/sysmacros.h> header file. */
587 #undef HAVE_SYS_SYSMACROS_H
589 /* Define to 1 if you have the <sys/types.h> header file. */
590 #undef HAVE_SYS_TYPES_H
592 /* Define to 1 if you have struct timespec in sys/time.h */
595 /* Define to 1 if you have the `ttyslot' function. */
598 /* Define to 1 if you have the `tzset' function. */
601 /* Define to 1 if you have the <unistd.h> header file. */
604 /* Define to 1 if you have the `unsetenv' function. */
607 /* Define to 1 if you have the <util.h> header file. */
610 /* Define to 1 if you have the `utimes' function. */
613 /* Define to 1 if you have the <utime.h> header file. */
616 /* Define to 1 if you have the <utmpx.h> header file. */
619 /* Define to 1 if you have the `vasprintf' function. */
620 #undef HAVE_VASPRINTF
622 /* Define to 1 if you have the `vsnprintf' function. */
623 #undef HAVE_VSNPRINTF
625 /* Define to 1 if you have the <zlib.h> header file. */
628 /* Define to 1 if you have the `_getpty' function. */
631 /* Define to 1 if you have the `_innetgr' function. */
634 /* Define to 1 if your crt0.o defines the __progname symbol for you. */
635 #undef HAVE___PROGNAME
637 /* Define to 1 if you want the hostname to be entered into the log file. */
640 /* Define to 1 if you want to ignore '.' and empty PATH elements */
641 #undef IGNORE_DOT_PATH
643 /* The message given when a bad password is entered. */
644 #undef INCORRECT_PASSWORD
646 /* The syslog facility sudo will use. */
649 /* Define to SLOG_SYSLOG, SLOG_FILE, or SLOG_BOTH. */
652 /* Define to 1 if you want a two line OTP (S/Key or OPIE) prompt. */
653 #undef LONG_OTP_PROMPT
655 /* Define to the sub-directory in which libtool stores uninstalled libraries.
659 /* The subject of the mail sent by sudo to the MAILTO user/address. */
662 /* The user or email address that sudo mail is sent to. */
665 /* The max number of chars per log file line (for line wrapping). */
668 /* Define to the max length of a uid_t in string context (excluding the NUL).
672 /* Define to 1 if you don't want sudo to prompt for a password by default. */
673 #undef NO_AUTHENTICATION
675 /* Define to 1 if you don't want users to get the lecture the first they user
679 /* Define to 1 if you don't want to use sudo's PAM session support */
680 #undef NO_PAM_SESSION
682 /* Define to avoid runing the mailer as root. */
683 #undef NO_ROOT_MAILER
685 /* Define to 1 if root should not be allowed to use sudo. */
688 /* Define to 1 if you want a single ticket file instead of per-tty files. */
689 #undef NO_TTY_TICKETS
691 /* Define to the address where bug reports for this package should be sent. */
692 #undef PACKAGE_BUGREPORT
694 /* Define to the full name of this package. */
697 /* Define to the full name and version of this package. */
698 #undef PACKAGE_STRING
700 /* Define to the one symbol short name of this package. */
701 #undef PACKAGE_TARNAME
703 /* Define to the home page for this package. */
706 /* Define to the version of this package. */
707 #undef PACKAGE_VERSION
709 /* The default password prompt. */
712 /* The passwd prompt timeout (in minutes). */
713 #undef PASSWORD_TIMEOUT
715 /* Define to 1 to replace politically incorrect insults with less offensive
719 /* The syslog priority sudo will use for unsuccessful attempts/errors. */
722 /* The syslog priority sudo will use for successful attempts. */
725 /* The user sudo should run commands as by default. */
728 /* Define to 1 to override the user's path with a built-in one. */
731 /* Define to 1 to send mail when the user is not allowed to run a command. */
732 #undef SEND_MAIL_WHEN_NOT_OK
734 /* Define to 1 to send mail when the user is not allowed to run sudo on this
736 #undef SEND_MAIL_WHEN_NO_HOST
738 /* Define to 1 to send mail when the user is not in the sudoers file. */
739 #undef SEND_MAIL_WHEN_NO_USER
741 /* Define to 1 if you want sudo to start a shell if given no arguments. */
742 #undef SHELL_IF_NO_ARGS
744 /* Define to 1 if you want sudo to set $HOME in shell mode. */
745 #undef SHELL_SETS_HOME
747 /* The size of `long int', as computed by sizeof. */
748 #undef SIZEOF_LONG_INT
750 /* Define to 1 if you have the ANSI C header files. */
753 /* Define to 1 if the code in interfaces.c does not compile for you. */
754 #undef STUB_LOAD_INTERFACES
756 /* The name of the sudoers plugin, including extension. */
757 #undef SUDOERS_PLUGIN
759 /* The umask that the sudo-run prog should use. */
762 /* The number of minutes before sudo asks for a password again. */
765 /* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
766 #undef TIME_WITH_SYS_TIME
768 /* The number of tries a user gets to enter their password. */
769 #undef TRIES_FOR_PASSWORD
771 /* Define to 1 to use the umask specified in sudoers even when it is less
772 restrictive than the invoking user's. */
773 #undef UMASK_OVERRIDE
775 /* Define to 1 if the `unsetenv' function returns void instead of `int'. */
778 /* Define to 1 if you want to create ~/.sudo_as_admin_successful if the user
779 is in the admin group the first time they run sudo. */
780 #undef USE_ADMIN_FLAG
782 /* Define to 1 if you want to insult the user for entering an incorrect
786 /* Define to 1 if you use GNU stow packaging. */
789 /* Define to avoid using the passwd/shadow file for authentication. */
790 #undef WITHOUT_PASSWD
792 /* Number of bits in a file offset, on hosts where this is settable. */
793 #undef _FILE_OFFSET_BITS
795 /* Define for large files, on AIX-style hosts. */
798 /* Define to `signed' or nothing if compiler does not support a signed type
802 /* Define to empty if `const' does not conform to ANSI C. */
805 /* Define if your system lacks the dev_t type. */
808 /* Define to `int' if <sys/types.h> doesn't define. */
811 /* Define if your system lacks the ino_t type. */
814 /* Define to `int' if <sys/types.h> does not define. */
817 /* Define to `int' if <signal.h> does not define. */
820 /* Define to `unsigned int' if <sys/types.h> does not define. */
823 /* Define if your system lacks the ssize_t type. */
826 /* Define to `int' if <sys/types.h> doesn't define. */
829 /* Define to empty if the keyword `volatile' does not work. Warning: valid
830 code using `volatile' can become incorrect without. Disable with care. */
834 * Macros to convert ctime and mtime into timevals.
836 #define timespec2timeval(_ts, _tv) do { \
837 (_tv)->tv_sec = (_ts)->tv_sec; \
838 (_tv)->tv_usec = (_ts)->tv_nsec / 1000; \
843 # define ctim_get(_x, _y) timespec2timeval(&(_x)->st_ctim.st__tim, (_y))
844 # define mtim_get(_x, _y) timespec2timeval(&(_x)->st_mtim.st__tim, (_y))
846 # define ctim_get(_x, _y) timespec2timeval(&(_x)->st_ctim, (_y))
847 # define mtim_get(_x, _y) timespec2timeval(&(_x)->st_mtim, (_y))
850 # ifdef HAVE_ST_MTIMESPEC
851 # define ctim_get(_x, _y) timespec2timeval(&(_x)->st_ctimespec, (_y))
852 # define mtim_get(_x, _y) timespec2timeval(&(_x)->st_mtimespec, (_y))
854 # define ctim_get(_x, _y) do { (_y)->tv_sec = (_x)->st_ctime; (_y)->tv_usec = 0; } while (0)
855 # define mtim_get(_x, _y) do { (_y)->tv_sec = (_x)->st_mtime; (_y)->tv_usec = 0; } while (0)
856 # endif /* HAVE_ST_MTIMESPEC */
857 #endif /* HAVE_ST_MTIM */
859 /* GNU stow needs /etc/sudoers to be a symlink. */
861 # define stat_sudoers stat
863 # define stat_sudoers lstat
866 /* Macros to set/clear/test flags. */
868 #define SET(t, f) ((t) |= (f))
870 #define CLR(t, f) ((t) &= ~(f))
872 #define ISSET(t, f) ((t) & (f))
874 /* ANSI-style OS defs for HP-UX and ConvexOS. */
875 #if defined(hpux) && !defined(__hpux)
879 #if defined(convex) && !defined(__convex__)
880 # define __convex__ 1
883 /* BSD compatibility on some SVR4 systems. */
886 #endif /* __svr4__ */
888 #endif /* _SUDO_CONFIG_H */