1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
|
/*
* Copyright (c) 1996, 1998, 1999 Todd C. Miller <Todd.Miller@courtesan.com>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* 4. Products derived from this software may not be called "Sudo" nor
* may "Sudo" appear in their names without specific prior written
* permission from the author.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Sudo: config.h.in,v 1.141 1999/12/09 04:04:42 millert Exp $
*/
/*
* config.h -- You shouldn't edit this by hand unless you are
* NOT using configure.
*/
#ifndef _SUDO_CONFIG_H
#define _SUDO_CONFIG_H
/* New ANSI-style OS defs. */
#if defined(hpux) && !defined(__hpux)
# define __hpux 1
#endif /* hpux */
#if defined(convex) && !defined(__convex__)
# define __convex__ 1
#endif /* convex */
/* Define if on AIX 3.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _ALL_SOURCE
#undef _ALL_SOURCE
#endif
/* Define if on ConvexOs.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _CONVEX_SOURCE
#undef _CONVEX_SOURCE
#endif
/* Define if needed to get POSIX functionality.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _POSIX_SOURCE
#undef _POSIX_SOURCE
#endif
/* Define if needed to get GNU extensions on Linux.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _GNU_SOURCE
#undef _GNU_SOURCE
#endif
/* Define to `int' if <sys/types.h> doesn't define. */
#undef uid_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef gid_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef mode_t
/* Define to `unsigned' if <sys/types.h> doesn't define. */
#undef size_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef ssize_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef dev_t
/* Define to `unsigned int' if <sys/types.h> doesn't define. */
#undef ino_t
/* Define to be nil if C compiler doesn't support "const." */
#undef const
/* Define if your compiler supports the "long long" type. */
#undef HAVE_LONG_LONG
/* Define if sizeof(long) == sizeof(long long). */
#undef LONG_IS_QUAD
/* Solaris doesn't use const qualifiers in PAM. */
#ifdef sun
#define PAM_CONST
#else
#define PAM_CONST const
#endif
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE
/* Define if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define if you want to use execv() instead of execvp(). */
#undef USE_EXECV
/* Define if you have POSIX signals. */
#undef HAVE_SIGACTION
#ifdef HAVE_SIGACTION
# define POSIX_SIGNALS
#endif /* HAVE_SIGACTION */
/* Define if you have tzset(3). */
#undef HAVE_TZSET
/* Define if you have getcwd(3). */
#undef HAVE_GETCWD
/* Define if you have fnmatch(3). */
#undef HAVE_FNMATCH
/* Define if you have lsearch(3). */
#undef HAVE_LSEARCH
/* Define if you have strchr(3). */
#undef HAVE_STRCHR
#if !defined(HAVE_STRCHR) && !defined(strchr)
# define strchr index
#endif
/* Define if you have strrchr(3). */
#undef HAVE_STRRCHR
#if !defined(HAVE_STRRCHR) && !defined(strrchr)
# define strrchr rindex
#endif
/* Define if you have memchr(3). */
#undef HAVE_MEMCHR
/* Define if you have memcpy(3). */
#undef HAVE_MEMCPY
#if !defined(HAVE_MEMCPY) && !defined(memcpy)
# define memcpy(D, S, L) (bcopy(S, D, L))
#endif
/* Define if you have memset(3). */
#undef HAVE_MEMSET
#if !defined(HAVE_MEMSET) && !defined(memset)
# define memset(S, X, N) (bzero(S, N))
#endif
/* Define if you have sysconf(3c). */
#undef HAVE_SYSCONF
/* Define if you have putenv(3). */
#undef HAVE_PUTENV
/* Define if you have setenv(3). */
#undef HAVE_SETENV
/* Define if you have strcasecmp(3). */
#undef HAVE_STRCASECMP
/* Define if you have tcgetattr(3). */
#undef HAVE_TCGETATTR
/* Define if you have innetgr(3). */
#undef HAVE_INNETGR
/* Define if you have initgroups(3). */
#undef HAVE_INITGROUPS
/* Define if you have getdomainname(2). */
#undef HAVE_GETDOMAINNAME
/* Define if you have utime(2). */
#undef HAVE_UTIME
/* Define if you have a POSIX utime() (uses struct utimbuf) */
#undef HAVE_UTIME_POSIX
/* Define if you have bigcrypt(3). */
#undef HAVE_BIGCRYPT
/* Define if you have set_auth_parameters(3). */
#undef HAVE_SET_AUTH_PARAMETERS
/* Define if you have initprivs(3). */
#undef HAVE_INITPRIVS
/* Define if you have dispcrypt(3). */
#undef HAVE_DISPCRYPT
/* Define if you have getspnam(3). [SVR4-style shadow passwords] */
#undef HAVE_GETSPNAM
/* Define if you have getprpwnam(3). [SecureWare-style shadow passwords] */
#undef HAVE_GETPRPWNAM
/* Define if you have iscomsec(3). [HP-UX >= 10.x check for shadow enabled] */
#undef HAVE_ISCOMSEC
/* Define if you have getspwuid(3). [HP-UX <= 9.X shadow passwords] */
#undef HAVE_GETSPWUID
/* Define if you have getpwanam(3). [SunOS 4.x shadow passwords] */
#undef HAVE_GETPWANAM
/* Define if you have issecure(3). [SunOS 4.x check for shadow enabled] */
#undef HAVE_ISSECURE
/* Define if you have getauthuid(3). [ULTRIX 4.x shadow passwords] */
#undef HAVE_GETAUTHUID
/* Define if you have seteuid(3). */
#undef HAVE_SETEUID
/* Define if you have waitpid(2). */
#undef HAVE_WAITPID
/* Define if you have wait3(2). */
#undef HAVE_WAIT3
/* Define if you have strerror(3). */
#undef HAVE_STRERROR
/* Define if you have lockf(3). */
#undef HAVE_LOCKF
/* Define if you have flock(2). */
#undef HAVE_FLOCK
/* Define if you have ftruncate(2). */
#undef HAVE_FTRUNCATE
/* Define if you have setrlimit(2). */
#undef HAVE_SETRLIMIT
/* Define if you have strftime(2). */
#undef HAVE_STRFTIME
/* Define if you have snprintf(3). */
#undef HAVE_SNPRINTF
/* Define if you have vsnprintf(3). */
#undef HAVE_VSNPRINTF
/* Define if you have asprintf(3). */
#undef HAVE_ASPRINTF
/* Define if you have vasprintf(3). */
#undef HAVE_VASPRINTF
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <alloca.h> header file. */
#undef HAVE_ALLOCA_H
/* Define if you have the <paths.h> header file. */
#undef HAVE_PATHS_H
/* Define if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define if you have the <strings.h> header file but no <string.h>. */
#ifndef HAVE_STRING_H
#undef HAVE_STRINGS_H
#endif /* !HAVE_STRING_H */
/* Define your flavor of dir entry header file. */
#undef HAVE_DIRENT_H
#undef HAVE_SYS_NDIR_H
#undef HAVE_SYS_DIR_H
#undef HAVE_NDIR_H
/* Define if you have the <utime.h> header file. */
#undef HAVE_UTIME_H
/* Define if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define if you have the <netgroup.h> header file. */
#undef HAVE_NETGROUP_H
/* Define if you have the <termio.h> header file. */
#undef HAVE_TERMIO_H
/* Define if you have the <termios.h> header file and tcgetattr(3). */
#ifdef HAVE_TCGETATTR
#undef HAVE_TERMIOS_H
#endif /* HAVE_TCGETATTR */
/* Define if you have the <sys/sockio.h> header file. */
#undef HAVE_SYS_SOCKIO_H
/* Define if you have the <sys/bsdtypes.h> header file. */
#undef HAVE_SYS_BSDTYPES_H
/* Define if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define if your struct sockadr has an sa_len field. */
#undef HAVE_SA_LEN
/* Define if you want visudo to honor EDITOR and VISUAL env variables. */
#undef ENV_EDITOR
/* Define to avoid using the passwd/shadow file for authentication. */
#undef WITHOUT_PASSWD
/* Define to void if your C compiler fully groks void, else char */
#undef VOID
/* Define to the max length of a uid_t in string context (excluding the NUL) */
#undef MAX_UID_T_LEN
/* Define if your syslog(3) does not guarantee the message will be logged */
/* and syslog(3) returns non-zero to denote failure */
#undef BROKEN_SYSLOG
/* Define if the code in interfaces.c does not compile for you. */
#undef STUB_LOAD_INTERFACES
/*
* Defaults for options. These may be overridden via a "Defaults" line
* in the sudoers file.
*/
/* Define if you a different ticket file for each tty. */
#undef USE_TTY_TICKETS
/* Define if you want to insult the user for entering an incorrect password. */
#undef USE_INSULTS
/* Define if you want the insults from the "classic" version sudo. */
#undef CLASSIC_INSULTS
/* Define if you want 2001-like insults. */
#undef HAL_INSULTS
/* Define if you want insults from the "Goon Show" */
#undef GOONS_INSULTS
/* Define if you want insults culled from the twisted minds of CSOps. */
#undef CSOPS_INSULTS
/* Define to override the user's path with a builtin one. */
#undef SECURE_PATH
/* Define if you want a two line OTP (skey/opie) prompt. */
#undef LONG_OTP_PROMPT
/* The umask that the root-run prog should use */
#undef SUDO_UMASK
/* Define if you want the hostname to be entered into the log file */
#undef HOST_IN_LOG
/* Define to be the number of minutes before sudo asks for passwd again. */
#undef TIMEOUT
/* Define to be the passwd prompt timeout (in minutes). */
#undef PASSWORD_TIMEOUT
/* Define to be the number of tries the user gets to enter the passwd. */
#undef TRIES_FOR_PASSWORD
/* Define to be the user sudo should run commands as by default. */
#undef RUNAS_DEFAULT
/* Define if you want to require fully qualified hosts in sudoers. */
#undef FQDN
/* If defined, users in this group need not enter a passwd (ie "sudo"). */
#undef EXEMPTGROUP
/* Define to the path of the editor visudo should use. */
#undef EDITOR
/* Define if root should not be allowed to use sudo. */
#undef NO_ROOT_SUDO
/* Define to be the user that gets sudo mail. */
#undef MAILTO
/* Define to be the subject of the mail sent to MAILTO by sudo. */
#undef MAILSUBJECT
/* Define to be the message given for a bad password. */
#undef INCORRECT_PASSWORD
/* Define to be the password prompt. */
#undef PASSPROMPT
/* Define to SLOG_SYSLOG, SLOG_FILE, or SLOG_BOTH */
#undef LOGGING
/* Define to be the syslog facility to use. */
#undef LOGFAC
/* Define to be the syslog priority to use for successful attemps. */
#undef PRI_SUCCESS
/* Define to be the syslog priority to use for unsuccessful attemps/errors. */
#undef PRI_FAILURE
/* Define to be the max chars per log line (for line wrapping). */
#undef MAXLOGFILELEN
/* Define if you want to ignore '.' and '' in $PATH */
#undef IGNORE_DOT_PATH
/* Define if you want "command not allowed" instead of "command not found" */
#undef DONT_LEAK_PATH_INFO
/* Define if you don't want users to get the lecture the first they user sudo */
#undef NO_LECTURE
/* Define SEND_MAIL_WHEN_NO_USER to send mail when user not in sudoers file */
#undef SEND_MAIL_WHEN_NO_USER
/* Define SEND_MAIL_WHEN_NO_HOST to send mail when not allowed on this host */
#undef SEND_MAIL_WHEN_NO_HOST
/* Define SEND_MAIL_WHEN_NOT_OK to send mail when not allowed to run command */
#undef SEND_MAIL_WHEN_NOT_OK
/* Define if you want sudo to start a shell if given no arguments. */
#undef SHELL_IF_NO_ARGS
/* Define if you want sudo to set $HOME in shell mode. */
#undef SHELL_SETS_HOME
/* Define if you don't want sudo to prompt for a password by default. */
#undef NO_AUTHENTICATION
/*
* Authentication methods.
*/
/* Define if you use S/Key. */
#undef HAVE_SKEY
/* Define if you use NRL OPIE. */
#undef HAVE_OPIE
/* Define if you use SecurID. */
#undef HAVE_SECURID
/* Define if you use AIX general authentication. */
#undef HAVE_AUTHENTICATE
/* Define if you use Kerberos IV or Kerberos V < 1.1. */
#undef HAVE_KERB4
/* Define if you use Kerberos V version 1.1 or higher. */
#undef HAVE_KERB5
/* Define if you use SIA. */
#undef HAVE_SIA
/* Define if you use PAM. */
#undef HAVE_PAM
/* Define if you use AFS. */
#undef HAVE_AFS
/* Define if you use OSF DCE. */
#undef HAVE_DCE
/* Define if you use the FWTK authsrv daemon. */
#undef HAVE_FWTK
/********** You probably don't want to modify anything below here ***********/
/*
* Emulate a subset of waitpid() if we don't have it.
*/
#ifdef HAVE_WAITPID
# define sudo_waitpid(p, s, o) waitpid(p, s, o)
#else
# ifdef HAVE_WAIT3
# define sudo_waitpid(p, s, o) wait3(s, o, NULL)
# endif
#endif
#ifdef USE_EXECV
# define EXEC execv
#else
# define EXEC execvp
#endif /* USE_EXECV */
#ifdef __svr4__
# define BSD_COMP
#endif /* __svr4__ */
#endif /* _SUDO_CONFIG_H */
|