12013-02-25 Todd C. Miller <Todd.Miller@courtesan.com> 2 3 * .hgtags: 4 Added tag SUDO_1_7_10p7 for changeset ddf399e3e306 5 [23db6a503c5c] [tip] <1.7> 6 72013-02-21 Todd C. Miller <Todd.Miller@courtesan.com> 8 9 * check.c: 10 Completely ignore time stamp file if it is set to the epoch, 11 regardless of what gettimeofday() returns. 12 [ddf399e3e306] [SUDO_1_7_10p7] <1.7> 13 142013-02-19 Todd C. Miller <Todd.Miller@courtesan.com> 15 16 * sudo_nss.c: 17 Make display_cmnd() return value match trunk version. Fixes exit 18 status of "sudo -l command". 19 [ac2bf49a24b8] <1.7> 20 212013-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 22 23 * sudo.c: 24 #include "sudo_usage.h" not <sudo_usage.h> so we get the one in the 25 build directory and not the src dir when using a separate build 26 directory. 27 [5ae0986ff454] <1.7> 28 292013-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 30 31 * .hgtags: 32 Added tag SUDO_1_7_10p6 for changeset 882475dfa47c 33 [5317840e3275] <1.7> 34 35 * NEWS, configure, configure.in: 36 Sudo 1.7.10p6 37 [882475dfa47c] [SUDO_1_7_10p6] <1.7> 38 39 * INSTALL.configure: 40 Sync with autoconf 2.68 41 [dde57bdf3274] <1.7> 42 43 * sudo.c: 44 Move call the save_signals() to before SIGINT, SIGQUIT and SIGTSTP 45 are set to SIG_IGN. 46 [52cc6817ffba] <1.7> 47 482013-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 49 50 * check.c, config.h.in, configure, configure.in, sudo.c, sudo.h: 51 Store the session ID in the tty ticket file too. A tty may only be 52 in one session at a time so if the session ID doesn't match we 53 ignore the ticket. 54 [0c0283d1fafa] <1.7> 55 562013-01-31 Todd C. Miller <Todd.Miller@courtesan.com> 57 58 * .hgtags: 59 Added tag SUDO_1_7_10p5 for changeset 765958d9ee1e 60 [36f1598f6c3c] <1.7> 61 62 * NEWS, configure, configure.in: 63 Sudo 1.7.10p5 64 [765958d9ee1e] [SUDO_1_7_10p5] <1.7> 65 66 * LICENSE: 67 Update copyright year 68 [21762d8d1337] <1.7> 69 70 * visudo.c: 71 Fix potential stack overflow due to infinite recursion in alias 72 cycle detection. From Daniel Kopecek. 73 [f1fc761aaf76] <1.7> 74 75 * ttyname.c: 76 Remove ttyname() fall back code on systems where we can query the 77 kernel for the tty device via /proc or sysctl(). If there is no 78 controlling tty, it is better to just treat the tty as unknown 79 rather than to blindly use what is hooked up to std{in,out,err}. 80 [bfa23f089bba] <1.7> 81 822013-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 83 84 * .hgtags: 85 Added tag SUDO_1_7_10p4 for changeset a5ea48905d46 86 [4ba58fd849b6] <1.7> 87 88 * NEWS, configure, configure.in: 89 Sudo 1.7.10p4 90 [a5ea48905d46] [SUDO_1_7_10p4] <1.7> 91 92 * configure, configure.in: 93 Use -fstack-protector-all in preference to -fstack-protector where 94 supported and restrict the test to GNU compatible compilers. 95 [672766ba937a] <1.7> 96 97 * Makefile.in, configure, configure.in: 98 Break out stack smashing protector options into SSP_CFLAGS and 99 SSP_LDFLAGS so we can use it everywhere. 100 [74a41089c462] <1.7> 101 102 * visudo.c: 103 Avoid NULL deref for unknown Defaults in strict mode. 104 [037c54fd6d53] <1.7> 105 106 * logging.c, logging.h, sudo.c: 107 Do not inform the user that the command was not permitted by the 108 policy if they do not successfully authenticate. This is a 109 regression introduced in sudo 1.7.10. 110 [6923571cb28c] <1.7> 111 112 * parse_args.c: 113 The -a option should be #ifdef HAVE_BSD_AUTH_H, not -A. 114 [7ce66d3c54ee] <1.7> 115 1162013-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 117 118 * sudo.c: 119 Add missing call to save_signals(). 120 [e12296e5d843] <1.7> 121 1222013-01-01 Todd C. Miller <Todd.Miller@courtesan.com> 123 124 * CONTRIBUTORS, redblack.c: 125 In rbrepair(), make sure we never try to change the color of the 126 sentinel node, which is the first entry, not the root. From Michael 127 King 128 [e8b03bdea5ae] <1.7> 129 130 * exec_pty.c: 131 No need to restore default signal handler for SIGSTOP as it is not 132 catchable. Attempting to do so is harmless but sigaction() will 133 fail and set errno to EINVAL which makes it looks like there is an 134 error. 135 [1d5359733f70] <1.7> 136 137 * configure, configure.in: 138 Disable PIE on FreeBSD/ia64, otherwise sudo will segfault. 139 [b6f3c7d5fb77] <1.7> 140 1412012-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 142 143 * set_perms.c: 144 For PERM_ROOT set egid to 0 so log files are not created with the 145 gid of the user. 146 [2d7355c3e38a] <1.7> 147 148 * iolog.c, set_perms.c, sudo.c, sudo.h: 149 Set gid to 0 when creating I/O log directories. 150 [2b549cf3ad51] <1.7> 151 152 * pp: 153 sync with upstream 154 [11717f6ac541] <1.7> 155 156 * Makefile.in: 157 Add support for SUDO_PREINSTALL_CMD so we can correct the LDAP lib 158 path for HP-UX SOM binaries. 159 [eda51429357f] <1.7> 160 1612012-09-28 Todd C. Miller <Todd.Miller@courtesan.com> 162 163 * TROUBLESHOOTING: 164 Mention HP-UX pam.conf settings. 165 [52bf85b1d3b2] <1.7> 166 1672012-09-24 Todd C. Miller <Todd.Miller@courtesan.com> 168 169 * exec_pty.c: 170 Fix running commands that need the terminal in the background when 171 I/O logging is enabled. E.g. "sudo vi &". When the command is 172 foregrounded, it will now resume properly. 173 [58ef49171883] <1.7> 174 1752012-09-19 Todd C. Miller <Todd.Miller@courtesan.com> 176 177 * .hgtags: 178 Added tag SUDO_1_7_10p3 for changeset 235ca8006055 179 [c6964a733681] <1.7> 180 181 * sudoreplay.c: 182 Use 1/0 not TRUE/FALSE. 183 [235ca8006055] [SUDO_1_7_10p3] <1.7> 184 1852012-09-18 Todd C. Miller <Todd.Miller@courtesan.com> 186 187 * NEWS, configure, configure.in: 188 sudo 1.7.10p3 189 [0b504b3b849a] <1.7> 190 191 * sudoreplay.c: 192 Avoid calling fclose(NULL) in the error path when we cannot open an 193 I/O log file. 194 [1e1b8ec3a2d2] <1.7> 195 1962012-09-17 Todd C. Miller <Todd.Miller@courtesan.com> 197 198 * fixman.sh: 199 Don't use embedded newline when matching, use \n. This got expanded 200 at some point. Bug #573 201 [6a3520c3ff11] <1.7> 202 203 * sudoreplay.c: 204 Fall back on lstat(2) if d_type in struct dirent is DT_UNKNOWN. Not 205 all file systems support d_type. Bug #572 206 [8a1e160265cf] <1.7> 207 2082012-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 209 210 * .hgtags: 211 Added tag SUDO_1_7_10p2 for changeset 60d2336634f5 212 [aff26f9023cc] <1.7> 213 214 * NEWS, configure, configure.in: 215 Sudo 1.7.10p2 216 [60d2336634f5] [SUDO_1_7_10p2] <1.7> 217 218 * exec.c: 219 When setting the signal handler for SIGTSTP to the default value in 220 non-I/O log mode, store the old handler value for when we restore it 221 after resume. 222 [01aab006915d] <1.7> 223 2242012-09-12 Todd C. Miller <Todd.Miller@courtesan.com> 225 226 * .hgtags: 227 Added tag SUDO_1_7_10p1 for changeset a8330024abe7 228 [857744bf2454] <1.7> 229 230 * NEWS: 231 Mention support for SUCCESS=return in /etc/nsswitch.conf 232 [a8330024abe7] [SUDO_1_7_10p1] <1.7> 233 234 * NEWS, configure, configure.in: 235 sudo 1.7.10p1 236 [989cdb5456e5] <1.7> 237 2382012-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 239 240 * env.c: 241 Avoid setting LOGNAME, USER and USERNAME variables twice when 242 set_logname is enabled. 243 [7b7b0cc40a58] <1.7> 244 245 * env.c: 246 Fix duplicate detection in sudo_putenv(), do not prune out the 247 variable we just set when overwriting an existing instance. Fixes 248 bug #570 249 [aff4b88c72a7] <1.7> 250 2512012-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 252 253 * sudo.c, sudo_nss.c: 254 Add support for [SUCCESS=return] in nsswitch.conf; from Daniel 255 Kopecek 256 [c2a107a882b9] <1.7> 257 2582012-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 259 260 * .hgtags: 261 Added tag SUDO_1_7_10 for changeset 56db3dcb76c6 262 [54fb06201d0c] <1.7> 263 264 * NEWS: 265 mention PIE 266 [56db3dcb76c6] [SUDO_1_7_10] <1.7> 267 2682012-08-28 Todd C. Miller <Todd.Miller@courtesan.com> 269 270 * strsignal.c: 271 Handle NULL entries in sys_siglist. 272 [2d5b597562f0] <1.7> 273 274 * Makefile.in, mksiglist.c, mksiglist.h, strsignal.c: 275 Convert my_sys_sig{list,name} -> sudo_sys_sig{list,name} 276 [6b3075d2c9ea] <1.7> 277 2782012-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 279 280 * NEWS: 281 sync 282 [cf54fa309f00] <1.7> 283 284 * auth/sudo_auth.c: 285 Fix gcc warnings. 286 [5b10eeabb350] <1.7> 287 288 * exec.c: 289 Pass on SIGTSTP to the command if it was sent by a user process (not 290 the kernel or the terminal) when we are not I/O logging and set the 291 default SIGTSTP handler when we re-send the signal to ourself, 292 restoring our handler after we resume. 293 [b43fef482a9c] <1.7> 294 295 * exec.c: 296 Shells typically change their process group when they start up so 297 that they can implement job control. Most well-behaved shells 298 change the pgrp back to its original value before suspending so we 299 must not try to restore in that case, lest we race with the child 300 upon resume, potentially stopping sudo with SIGTTOU while the 301 command continues to run. Some shells, such as pdksh, just suspend 302 the shell by sending SIGSTOP to themselves without restoring the 303 pgrp. In this case we need to change the pgrp back for them. Should 304 fix bug #568 305 [0d4cfce9e3cd] <1.7> 306 3072012-08-24 Todd C. Miller <Todd.Miller@courtesan.com> 308 309 * check.c: 310 Quiet gcc warnings on glibc systems that use warn_unused_result for 311 fwrite(). 312 [2cc7cc934541] <1.7> 313 3142012-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 315 316 * toke.c, toke.l: 317 Don't print an error message in yyerror() if open_sudoers() fails, 318 we've already printed an error message. 319 [5abac2ee140d] <1.7> 320 3212012-08-22 Todd C. Miller <Todd.Miller@courtesan.com> 322 323 * configure, configure.in: 324 Substitute MANDIRTYPE into Makefile 325 [925daf9ca72b] <1.7> 326 327 * Makefile.in: 328 Don't remove files in GENERATED unless DEVEL is set. 329 [2090fcead8b7] <1.7> 330 331 * NEWS: 332 sync 333 [b0c45ae69106] <1.7> 334 335 * auth/sudo_auth.c, check.c, logging.c, logging.h, sudo.c, sudo.h: 336 Move log_denial() calls and logic to log_failure(). Move 337 authentication failure logging to log_auth_failure(). Both of these 338 call audit_failure() for us. 339 340 This subtly changes logging for commands that are denied by sudoers 341 but where the user failed to enter the correct password. 342 Previously, these would be logged as "N incorrect password attempts" 343 but now are logged as "command not allowed". Fixes bug #563 344 [c2cc2f97b204] <1.7> 345 3462012-08-21 Todd C. Miller <Todd.Miller@courtesan.com> 347 348 * sudo.cat, sudo.man.in, sudo.mdoc.in, sudoers.cat, sudoers.ldap.cat, 349 sudoers.ldap.man.in, sudoers.ldap.mdoc.in, sudoers.man.in, 350 sudoers.mdoc.in: 351 Make the capitalization consistent for .Ss and .Sx 352 [21a45576f4c3] <1.7> 353 354 * Makefile.in, fixman.sh, fixmdoc.sh, sudo.cat, sudo.man.in, 355 sudo.mdoc.in: 356 Add COMMAND EXECUTION section that describes how sudo runs the 357 command, the extra sudo processes and signal handling. 358 [fbcd178f4894] <1.7> 359 3602012-08-19 Todd C. Miller <Todd.Miller@courtesan.com> 361 362 * sudo.cat, sudo.man.in, sudo.mdoc.in, sudoers.cat, sudoers.man.in: 363 Add COMMAND EXECUTION section that describes how sudo runs the 364 command, the extra sudo processes and signal handling. 365 [5390ec673ed3] <1.7> 366 367 * Makefile.in: 368 Happy Easter 369 [1e31fbc8e9c1] <1.7> 370 3712012-08-18 Todd C. Miller <Todd.Miller@courtesan.com> 372 373 * CONTRIBUTORS, Makefile.in: 374 Add CONTRIBUTORS file from sudo trunk 375 [d81d1d4c86b1] <1.7> 376 3772012-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 378 379 * .hgignore, INSTALL, Makefile.in, configure, configure.in, fixman.sh, 380 fixmdoc.sh, sudo.cat, sudo.man.in, sudo.mdoc.in, sudo.pod, 381 sudoers.cat, sudoers.ldap.cat, sudoers.ldap.man.in, 382 sudoers.ldap.mdoc.in, sudoers.ldap.pod, sudoers.man.in, 383 sudoers.mdoc.in, sudoers.pod, sudoreplay.cat, sudoreplay.man.in, 384 sudoreplay.mdoc.in, sudoreplay.pod, visudo.cat, visudo.man.in, 385 visudo.mdoc.in, visudo.pod: 386 Sudo manuals formatted in mdoc, to replace the pod versions, back- 387 ported from sudo trunk. 388 [662ace065b07] <1.7> 389 390 * defaults.c, defaults.h, visudo.c: 391 Add new check_defaults() function to check (but not update) the 392 Defaults entries. Visudo can now use this instead of update_defaults 393 to check all the defaults regardless instead of just the global 394 Defaults entries. 395 [6845cf85ad2c] <1.7> 396 397 * sudo.c: 398 Use AI_FQDN instead of AI_CANONNAME if available since "canonical" 399 is not always the same as "fully qualified". 400 [60b2bc263720] <1.7> 401 4022012-08-15 Todd C. Miller <Todd.Miller@courtesan.com> 403 404 * pp: 405 sync polypkg from git 406 [01306bdb7f99] <1.7> 407 4082012-08-07 Todd C. Miller <Todd.Miller@courtesan.com> 409 410 * iolog.c: 411 Cast 2nd argument of lseek() to off_t if it is a constant for 412 systems with 64-bit off_t but without a proper lseek() prototype. 413 [064d583e2d2d] <1.7> 414 415 * env.c, pwutil.c, ttysize.c: 416 Fix building with a K&R compiler. 417 [164e262022f9] <1.7> 418 419 * exec.c, exec_pty.c, sudo.h, sudo_exec.h: 420 If we receive a signal from the command we executed, do not forward 421 it back to the command. This fixes a problem with BSD-derived 422 versions of the reboot command which send SIGTERM to all other 423 processes, including the sudo process. Sudo would then deliver 424 SIGTERM to reboot which would die before calling the reboot() system 425 call, effectively leaving the system in single user mode. 426 [cfca0b1edf21] <1.7> 427 428 * env.c, getline.c, visudo.c: 429 Fix some warnings from clang checker-267 430 [e99605b82cf4] <1.7> 431 432 * getdate.c: 433 Regen with modified yacc skeleton. 434 [176ceadbfef6] <1.7> 435 4362012-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 437 438 * exec.c: 439 When checking whether a signal is user-generated, compare si_code 440 against SI_USER instead of <= 0 since on HP-UX, terminal-related 441 signals get a code of 0. 442 [ec0ef27508f9] <1.7> 443 4442012-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 445 446 * ldap.c: 447 Active Directory apparently requires that tenths of a second be 448 present in a date so append .0 to the "now" value in the time 449 filter. Also remove space for the global AND from TIMEFILTER_LENGTH 450 since it was not being used consistently. Buffers of 451 TIMEFILTER_LENGTH now need to account for the terminating NUL byte. 452 [eccff4d1e791] <1.7> 453 4542012-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 455 456 * Makefile.in, history.pod, license.pod: 457 Remove pod versinons of HISTORY and LICENSE as they were not being 458 kept in sync. 459 [4b6594e40501] <1.7> 460 461 * HISTORY: 462 Sync with trunk version. 463 [8ed8605186d0] <1.7> 464 4652012-07-27 Todd C. Miller <Todd.Miller@courtesan.com> 466 467 * schema.ActiveDirectory: 468 Fix errors introduced when sudoNotBefore, sudoNotAfter and sudoOrder 469 were added. From David Hicks. 470 [e044e99fdc35] <1.7> 471 4722012-07-18 Todd C. Miller <Todd.Miller@courtesan.com> 473 474 * sudoers.cat, sudoers.ldap.cat, sudoers.ldap.man.in, 475 sudoers.ldap.pod, sudoers.man.in, sudoers.pod, sudoreplay.cat, 476 sudoreplay.man.in, sudoreplay.pod, visudo.cat, visudo.man.in, 477 visudo.pod: 478 More minor costmetic fixes. 479 [799d0bea24a8] <1.7> 480 4812012-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 482 483 * sudo.cat, sudo.man.in, sudo.pod: 484 Minor cosmetic fixes. 485 [cfe866d879f9] <1.7> 486 4872012-07-06 Todd C. Miller <Todd.Miller@courtesan.com> 488 489 * aix.c: 490 Do not set a resource limit to zero when we are unable to fetch a 491 value from /etc/security/limits. 492 [9d1f86ef9e17] <1.7> 493 4942012-07-05 Todd C. Miller <Todd.Miller@courtesan.com> 495 496 * sudo.pp: 497 Add "Provides: sudo" to debian sudo-ldap package 498 [3e1ac4729109] <1.7> 499 5002012-07-02 Todd C. Miller <Todd.Miller@courtesan.com> 501 502 * configure, configure.in: 503 Only check for pie support when using gcc. 504 [05b9101a94a3] <1.7> 505 506 * INSTALL, Makefile.in, configure, configure.in, mkpkg: 507 Add configure check for building PIE executables instead of doing it 508 in mkpkg. 509 [13e04037e942] <1.7> 510 511 * sudo.pp: 512 MacOS pp backend doesn't like modes longer than 4 characters. 513 [04ef57665b92] <1.7> 514 5152012-06-29 Todd C. Miller <Todd.Miller@courtesan.com> 516 517 * sudoers.cat, sudoers.man.in: 518 fix version 519 [f622623d9718] <1.7> 520 521 * NEWS, sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 522 Document improved Tivoli Directory Server support. 523 [0b15875554b5] <1.7> 524 525 * config.h.in, configure, configure.in, ldap.c: 526 Add support for ldaps using Tivoli LDAP libraries. Add ldap.conf 527 option to specify Tivoli key db password. Allow TLS ciphers to be 528 configured for Tivoli. 529 [266cb46f321b] <1.7> 530 5312012-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 532 533 * ldap.c: 534 Tivoli Directory Server 6.3 libs always return a (bogus) error when 535 setting LDAP_OPT_CONNECT_TIMEOUT. 536 [9d30127342d6] <1.7> 537 538 * NEWS: 539 Update 540 [9ba509c8ab6c] <1.7> 541 542 * ldap.c: 543 Treat LDAP_OPT_CONNECT_TIMEOUT (Tivoli Directory Server 6.3) the 544 same as LDAP_OPT_CONNECT_TIMEOUT (OpenSSH). Don't make failure to a 545 set an ldap option fatal. 546 [235db51e9ed1] <1.7> 547 5482012-06-27 Todd C. Miller <Todd.Miller@courtesan.com> 549 550 * env.c: 551 Use MAX_UID_T_LEN + 1 for uid/gid buffers, not MAX_UID_T_LEN to 552 prevent potential truncation. Bug #562. 553 [89a34180e84b] <1.7> 554 5552012-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 556 557 * sudo.pp: 558 If installing with installp, error out if there is already an 559 instance of the rpm package installed. 560 [3abc67698796] <1.7> 561 562 * mkpkg: 563 Add --disable-nls for AIX 564 [97114230e2ac] <1.7> 565 5662012-06-22 Todd C. Miller <Todd.Miller@courtesan.com> 567 568 * sudo.pp: 569 Debian sudo-ldap packages should now depend on libldap-2.4-2, not 570 libldap2. 571 [9342bc7b7ee7] <1.7> 572 5732012-06-21 Todd C. Miller <Todd.Miller@courtesan.com> 574 575 * sudo.pp: 576 Add Homepage and Bugs to debian control file. 577 [108ce83a4822] <1.7> 578 579 * sudo.pp: 580 remove obsolete comment 581 [ef525426e235] <1.7> 582 5832012-06-20 Todd C. Miller <Todd.Miller@courtesan.com> 584 585 * mkpkg: 586 fix typo when setting aix_freeware 587 [7449ea0ae82c] <1.7> 588 5892012-06-18 Todd C. Miller <Todd.Miller@courtesan.com> 590 591 * configure, configure.in: 592 Additional ${foo} -> $(foo) Makefile tweaks. 593 [9b3f96abd3d9] <1.7> 594 5952012-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 596 597 * NEWS, sudo.c: 598 Re-merge argv escaping for "sudo -s command" from trunk to fix a 599 NULL pointer dereference. 600 [0a98cbc1856b] <1.7> 601 6022012-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 603 604 * mkpkg, sudo.pp: 605 Install AIX packages under /opt/freeware with links in /usr/bin and 606 /usr/sbin. This matches the layout of the sudo package from AIX 607 freeware. 608 [7ee90f3d88a8] <1.7> 609 610 * Makefile.in, configure, configure.in, sudo.pp: 611 Install shared objects with mode 0644 except on HP-UX which needs 612 the executable bit set. 613 [2ec8c8954045] <1.7> 614 615 * Makefile.in: 616 Make installed file modes consistent with the file modes in the sudo 617 package. 618 [2c4627ba391d] <1.7> 619 6202012-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 621 622 * sudoers.cat, sudoers.man.in, sudoers.pod: 623 Add "%:" prefix when talking about QAS non-Unix group support. 624 [e0ae26ee85bc] <1.7> 625 626 * pp, sudo.pp: 627 Fix packaging of symbolic links on HP-UX when the link source 628 already exists in the filesystem. 629 [7628b11bcd6d] <1.7> 630 631 * mkpkg: 632 Only specify prefix if we are overriding the default value. Fixes 633 the man dir (/usr/local/man vs. /usr/local/share/man). 634 [9c2586a04f5b] <1.7> 635 636 * sudo.pp: 637 Fix license file path for Mac OS X. 638 [e1d23ce0c816] <1.7> 639 640 * sudo.pp: 641 Fix setting of sudoedit_man variable. 642 [99104f15ed67] <1.7> 643 644 * Makefile.in: 645 Echo the command when linking the sudoedit manual. 646 [ab2665996aa8] <1.7> 647 6482012-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 649 650 * NEWS: 651 Mention sudoreplay stdout playback improvements. 652 [aeb2c51f8fbc] <1.7> 653 654 * mkpkg, sudo.pp: 655 Build .deb packages with selinux support. 656 [196ffc957aec] <1.7> 657 6582012-06-04 Todd C. Miller <Todd.Miller@courtesan.com> 659 660 * sudo.pp: 661 Don't list paths for unstripped binaries in the lintial overrides. 662 [4969c4e2cd00] <1.7> 663 664 * pp: 665 Add support for Installed-Size header in control file, required by 666 newer debian versions. 667 [8201524462ac] <1.7> 668 669 * pp: 670 Fix extended description in .deb files. 671 [53cd12d14490] <1.7> 672 673 * sudo.pp: 674 Add Depends, Replaces and Conflicts headers for .deb packages. 675 [e2f479f9469f] <1.7> 676 677 * sudo_nss.c: 678 If there are no privs to print, write the message to the lbuf 679 instead of printing it directly. 680 [a466dc72d3cc] <1.7> 681 6822012-05-31 Todd C. Miller <Todd.Miller@courtesan.com> 683 684 * sudo.pp: 685 Fix mismerge, no sudoers.so in 1.7 686 [0e13ec26049c] <1.7> 687 688 * Makefile.in, sudo.pp: 689 Quiet lintian warnings for .deb files: 690 691 * install sudoedit and the sudoedit manual as symbolic links, not 692 hard links and package them as such. 693 * set -e in %pos and %preun for debian 694 * add lintian overrides file 695 * fix modes to be more in line with what Debian expects 696 * add correct section 697 * install LICENSE as copyright and ChangeLog as changelog 698 * create stub changelog.debian 699 [6ea913b5e7db] <1.7> 700 701 * Makefile.in, configure, configure.in, mkpkg: 702 Replace out of date MAN_POSTINSTALL with MANCOMPRESS and 703 MANCOMPRESSEXT which can be used to compress the installed manual 704 pages. Compress the man pages for .deb files to appease lintian. 705 [6662d37d6d29] <1.7> 706 707 * mkpkg: 708 Build PIE executable on Mac OS X 10.5 and above. 709 [f73a70da8679] <1.7> 710 711 * pp, sudo.pp: 712 Use a debian-compliant package maintainer field. Fix find command to 713 properly skip files in the DEBIAN dir when building md5sums. 714 [308a5c3e99d4] <1.7> 715 7162012-05-30 Todd C. Miller <Todd.Miller@courtesan.com> 717 718 * sudoreplay.c: 719 No need to loop over atomic_writev(), it guarantees to write all 720 data or return an error. 721 722 Fix handling of stdout/stderr that contains "\r\n" and handle a 723 "\r\n" pair that spans a buffer. 724 [d237778fc504] <1.7> 725 7262012-05-29 Todd C. Miller <Todd.Miller@courtesan.com> 727 728 * sudoreplay.c: 729 Instead of doing extra write()s when replaying stdout, build up a 730 vector for writev() instead. This results in far fewer system 731 calls. 732 [7b86f7809f62] <1.7> 733 7342012-05-25 Todd C. Miller <Todd.Miller@courtesan.com> 735 736 * sudoreplay.c: 737 When replaying a log of stdout or stderr, do newline to carriage 738 return + linefeed conversion. We cannot have termios do this for us 739 since we've disabled output postprocessing (POST) when setting raw 740 mode. 741 [bbb035f6152f] <1.7> 742 7432012-05-24 Todd C. Miller <Todd.Miller@courtesan.com> 744 745 * configure, configure.in: 746 Don't add -fstack-protector to CFLAGS if ld gets an error trying to 747 ust it. This can happen when libssp cannot be found. 748 [20d3c5e86b86] <1.7> 749 750 * NEWS: 751 Mention hardening by default and how to disable. 752 [7214ea1a20aa] <1.7> 753 7542012-05-23 Todd C. Miller <Todd.Miller@courtesan.com> 755 756 * configure, configure.in: 757 When checking for -fstack-protector, treat warnings as fatal errors. 758 [7c10a74a5310] <1.7> 759 760 * ttyname.c: 761 Use TRUE/FALSE as 3rd argument to sudo_ttyname_scan() 762 [6eceb2d6121f] <1.7> 763 764 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 765 sudoers.ldap.man.in, sudoers.man.in, sudoreplay.cat, 766 sudoreplay.man.in, visudo.cat, visudo.man.in: 767 regen 768 [561fba9586cc] <1.7> 769 770 * sudo.pod: 771 missing "and" 772 [03737c9dc309] <1.7> 773 774 * NEWS, configure, configure.in: 775 Update for sudo 1.7.10 776 [120d4ff1cd8d] <1.7> 777 778 * check.c, testsudoers.c: 779 Don't prompt for a password if the user is in the exempt group, is 780 root, or is running the command as themselves even if the -k option 781 was specified. This makes "sudo -k command" consistent with the 782 behavior one would get if the user ran "sudo -k" immediately before 783 running the command. 784 [e20aa01495cd] <1.7> 785 786 * INSTALL, config.h.in, configure, configure.in, secure_path.c: 787 No longer throw an error if sudoers is a symbolic link. Deprecated 788 the --with-stow option as that is now (effectively) the default. 789 [a90e97420f45] <1.7> 790 791 * exec_pty.c: 792 Treat a tty read failure like EOF as it usually means the pty has 793 gone away. Handle write() on the tty returning EIO. 794 [7b200e444c76] <1.7> 795 796 * exec.c, exec_pty.c: 797 Linux select() may return ENOMEM if there is a kernel resource 798 shortage. Older Solaris select() may return EIO instead of EBADF 799 when the tty goes away. If we get an unhandled select() failure, 800 kill the child and exit cleanly. 801 [5bdefd004ea1] <1.7> 802 803 * exec.c: 804 If select() return EBADF in the main event loop, one of the ttys 805 must have gone away so perform any I/O we can and close the bad fds. 806 [a7808c0675cb] <1.7> 807 808 * defaults.c, exec.c: 809 Fix compilation when I/O logging support is not compiled in. 810 [afb159b2dc1a] <1.7> 811 812 * exec_pty.c: 813 Ignore SIGTTIN and SIGTTOU in main sudo process when I/O logging. It 814 is better to receive EIO from read()/write() than to be suspended 815 when we don't expect it. Fixes a problem when our terminal is 816 revoked which can happen when, e.g. our sshd is killed 817 unceremoniously. Also, only change the value of "alive" from true to 818 false, never from false to true. It is possible for us to receive 819 notification of the child having stopped after it is already dead. 820 This does not mean it has risen from the grave. 821 [c19c375498c2] <1.7> 822 823 * exec_pty.c, sudo.c, sudo.h: 824 Don't try to restore the terminal if we are not the foreground 825 process. Otherwise, we may be stopped by SIGTTOU when we try to 826 update the terminal settings when cleaning up. 827 [07eac078be15] <1.7> 828 829 * exec_pty.c: 830 Don't need zero_bytes() after ecalloc() 831 [5ebd3b5e165d] <1.7> 832 833 * check.c: 834 In Solaris 11, /dev/pts under the "dev" filesystem, not "devices". 835 Update tty_is_devpts() to match so we can determine when the tty has 836 been reused. 837 [cf4638278680] <1.7> 838 839 * parse_args.c: 840 Allow the -k flag to be used along with the -i and -s flags. 841 [30deccf57dba] <1.7> 842 843 * config.h.in, configure, configure.in, ttyname.c: 844 Rototill code to determine the tty. For Linux, we now look up the 845 tty device in /proc/pid/stat instead of trying to open 846 /proc/pid/fd/[0-2]. The sudo_ttyname_dev() function maps the given 847 device number to a string. On BSD, we can use devname(). On 848 Solaris, _ttyname_dev() does what we want. For others we do a 849 breadth-first search of /dev. 850 [632f8e028191] <1.7> 851 852 * ttyname.c: 853 Don't try to erealloc() a potentially freed pointer. 854 [5e7f50737a16] <1.7> 855 856 * config.h.in, configure, configure.in, ttyname.c: 857 Prefer KERN_PROC2 over KERN_PROC. Fixes compilation on some 858 versions of OpenBSD versions that have KERN_PROC2 but not KERN_PROC. 859 [87c505c4fa33] <1.7> 860 861 * sudoreplay.pod: 862 Clarify what "sudoreplay -l" displays and mention that it is sorted. 863 [c46ea829b4d7] <1.7> 864 865 * config.h.in, configure, configure.in, sudoreplay.c: 866 iIf struct dirent has d_type, use it to avoid an extra stat(). 867 [facb5ee78a66] <1.7> 868 869 * sudoreplay.c: 870 Sort output of "sudoreplay -l" 871 [44d75226cf12] <1.7> 872 873 * Makefile.in, alloc.c, alloc.h, sudoreplay.c, ttysize.c: 874 If I/O log file includes rows + cols, warn if the user's tty is not 875 big enough. 876 [c03054253bb4] <1.7> 877 878 * sudoreplay.c: 879 Fix printing of TSID in "sudoreplay -l" 880 [dbda38da5c30] <1.7> 881 882 * sudoreplay.c: 883 Fix printf format warning (time_t vs. long) 884 [547ed3089f96] <1.7> 885 886 * sudoreplay.c: 887 Add support for replaying sessions from sudo 1.8 when iolog_file is 888 set to something other than %{seq}. 889 [7e5d82e45f69] <1.7> 890 8912012-05-22 Todd C. Miller <Todd.Miller@courtesan.com> 892 893 * iolog.c: 894 typo fix in comment 895 [ee89b8b0e8d1] <1.7> 896 897 * TROUBLESHOOTING: 898 Add entry for SSL LDAP errors on Mozilla SDKs when the cert dir is 899 not specified. 900 [796ce694d452] <1.7> 901 902 * pp: 903 Match CentOS 6.0 904 [876853af3192] <1.7> 905 906 * configure, configure.in: 907 Fix test for -z relro 908 [6128719f16ee] <1.7> 909 910 * INSTALL, aclocal.m4, configure, configure.in, 911 m4/ax_check_compile_flag.m4, m4/ax_check_link_flag.m4: 912 Build with -fstack-protector and link with -zrelo where supported. 913 Added --disable-hardening option to disable hardening options. 914 [fd2de3a2360a] <1.7> 915 9162012-05-21 Todd C. Miller <Todd.Miller@courtesan.com> 917 918 * set_perms.c, sudo.c: 919 If sudoers_mode is group-readable but the actual sudoers file is 920 not, open the file as uid 0, not uid 1. This fixes a problem when 921 sudoers has a more restrictive mode than what sudo expects to find. 922 In older versions, sudo would silently chmod the file to add the 923 group-readable bit. 924 [4585ec2404ab] <1.7> 925 9262012-05-17 Todd C. Miller <Todd.Miller@courtesan.com> 927 928 * toke.c, toke.l: 929 Fix #includedir; from Mike Frysinger 930 [ebe9257e81e4] <1.7> 931 932 * Makefile.in, secure_path.c, secure_path.h: 933 Relax the user/group/mode checks on sudoers files. As long as the 934 file is owned by the right user, not world-writable and not writable 935 by a group other than the one specified at configure time (gid 0 936 byile is considered OK. Note that visudo will still set the mode to 937 the value specified at configure time. 938 [d0aea6ff36af] <1.7> 939 940 * Makefile.in, gram.c, gram.y, sudo.c, toke.c, toke.l: 941 Relax the user/group/mode checks on sudoers files. As long as the 942 file is owned by the right user, not world-writable and not writable 943 by a group other than the one specified at configure time (gid 0 944 byile is considered OK. Note that visudo will still set the mode to 945 the value specified at configure time. 946 [63e9f6dc7af5] <1.7> 947 948 * auth/pam.c: 949 Delete creds after closing the PAM session. 950 [723a207eb13f] <1.7> 951 952 * auth/pam.c: 953 Fix typo in last commit 954 [edaf36dc1d10] <1.7> 955 956 * auth/pam.c: 957 Instead of treating ^C from tgetpass() specially, always return 958 AUTH_INTR if tgetpass() returned NULL. Treat PAM_AUTHINFO_UNAVAIL 959 like PAM_AUTH_ERR which Mac OS X returns this when there is no tty. 960 [1fe8f61134dc] <1.7> 961 962 * ldap.c: 963 Need to call ldapssl_clientauth_init() for start_tls on Mozilla LDAP 964 SDK. 965 [20b0a65572ca] <1.7> 966 967 * ldap.c: 968 Fix printing of invalid uri 969 [c8c0ab82bbd2] <1.7> 970 971 * ldap.c: 972 Provide a more useful error message if using a Mozilla-style LDAP 973 SDK and you forgot to specify TLS_CERT in ldap.conf. 974 [56a80bb3d1c1] <1.7> 975 976 * ldap.c: 977 Split global and per-connection LDAP options into separate arrays. 978 Set global LDAP options before calling ldap_initialize() or 979 ldap_init(). After we have an LDAP handle, set the per-connection 980 options. Fixes a problem with OpenLDAP using the nss crypto backend; 981 bug #342 982 [9d54aef13aab] <1.7> 983 9842012-05-16 Todd C. Miller <Todd.Miller@courtesan.com> 985 986 * ldap.c, parse.c, sudo_edit.c, sudoreplay.c, visudo.c: 987 Quiet some compiler warnings 988 [da46ab07671b] <1.7> 989 990 * config.h.in, configure.in, exec.c, exec_pty.c, iolog.c, tgetpass.c, 991 toke.c, toke.l, visudo.c: 992 Fix compiler warnings on some platforms and provide a better method 993 of defeating gcc's warn_unused_result attribute. 994 [d7314954229c] <1.7> 995 9962012-05-15 Todd C. Miller <Todd.Miller@courtesan.com> 997 998 * .hgtags: 999 Added tag SUDO_1_7_9p1 for changeset 26d9603eb5af 1000 [dad699c7cd8d] <1.7> 1001 10022012-05-14 Todd C. Miller <Todd.Miller@courtesan.com> 1003 1004 * NEWS: 1005 Update for sudo 1.7.9p1 1006 [26d9603eb5af] [SUDO_1_7_9p1] <1.7> 1007 1008 * match.c: 1009 Add missing break between AF_INET and AF_INET6 in 1010 addr_matches_if_netmask() 1011 [80b1e4a6d4a1] <1.7> 1012 10132012-05-11 Todd C. Miller <Todd.Miller@courtesan.com> 1014 1015 * exec.c: 1016 The pointer to the siginfo_t struct in a signal handler may be NULL. 1017 [945a8021e165] <1.7> 1018 10192012-05-10 Todd C. Miller <Todd.Miller@courtesan.com> 1020 1021 * pwutil.c: 1022 Fix an alignment problem on NetBSD systems with a 64-bit time_t and 1023 strict alignment. Based on a patch from Martin Husemann. 1024 [e0f946c43f7b] <1.7> 1025 1026 * missing.h: 1027 Add offsetof macro for those without it. 1028 [311166ce1433] <1.7> 1029 10302012-05-01 Todd C. Miller <Todd.Miller@courtesan.com> 1031 1032 * sudo.pp: 1033 Add mode for docdir. Fixes a problem on Linux when building in a 1034 directory with the setgid bit set. 1035 [57cb4ad634a3] <1.7> 1036 10372012-04-24 Todd C. Miller <Todd.Miller@courtesan.com> 1038 1039 * pp: 1040 Sync with upstream for Mac OS X (and other) fixes. 1041 [289652f37a92] <1.7> 1042 10432012-04-23 Todd C. Miller <Todd.Miller@courtesan.com> 1044 1045 * mkpkg: 1046 Debian sudo has not been built with --with-exempt=sudo since 1.6.8. 1047 [a2a6efb76e62] <1.7> 1048 1049 * mkpkg: 1050 Only build Mac intel universal binary on an intel machine. When 1051 building on Mac OS X, set SDK_FLAGS if specified osversion doesn't 1052 match host. 1053 [ba2542153d30] <1.7> 1054 1055 * exec_pty.c: 1056 Add missing initialization of a sigaction structure when I/O 1057 logging. Fixes a potential problem when suspending the command. 1058 [6db633c5c9a4] <1.7> 1059 10602012-04-08 Todd C. Miller <Todd.Miller@courtesan.com> 1061 1062 * config.h.in, configure, configure.in, match.c: 1063 Do not use GLOB_BRACE or GLOB_TILDE flags to glob()--we want the 1064 glob() and fnmatch() results to be consistent. 1065 [dfe105e6150f] <1.7> 1066 10672012-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 1068 1069 * ldap.c: 1070 fix typo in last commit 1071 [30f5d6028ec6] <1.7> 1072 1073 * alias.c, defaults.c, env.c, exec.c, exec_pty.c, ldap.c, pwutil.c, 1074 sudo.c, sudoreplay.c, visudo.c: 1075 Use ecalloc() when allocating structs. 1076 [79bc1ab2257a] <1.7> 1077 1078 * alloc.c, alloc.h: 1079 Add ecalloc(). 1080 [46e4fd731efb] <1.7> 1081 1082 * bsm_audit.c: 1083 Use error() instead of log_fatal() 1084 [95515e1c18da] <1.7> 1085 1086 * missing.h: 1087 g/c __unused which is no longer used 1088 [aa8f78c1a2fc] <1.7> 1089 1090 * auth/bsdauth.c, auth/kerb5.c, auth/pam.c, auth/sia.c, 1091 auth/sudo_auth.c, bsm_audit.c, check.c, env.c, iolog.c, logging.c, 1092 logging.h, parse.c, set_perms.c, sudo.c, sudo_nss.c: 1093 Remove the NO_EXIT flag to log_error() and add a log_fatal() 1094 function that exits and is marked no_return. Fixes false positives 1095 from static analyzers and is easier for humans to read too. 1096 [781e7c10414d] <1.7> 1097 1098 * fnmatch.c: 1099 cast ctype(3) function/macro arguments from char to unsigned char to 1100 avoid potential negative subscripting. 1101 [912237612328] <1.7> 1102 1103 * env.c, sudo.c, sudo.pod: 1104 When initializing the environment for env_reset, start out with the 1105 contents of /etc/environment on AIX and login.conf on BSD. Also 1106 apply environment in login.conf for "sudo -i". 1107 [71b1a2868b7e] <1.7> 1108 1109 * TROUBLESHOOTING: 1110 Add entry for AIX enhanced RBAC config. 1111 [154944068cf9] <1.7> 1112 1113 * TROUBLESHOOTING, sudo.c: 1114 If we are not running with an effective uid of 0, try to give the 1115 user enough information to debug the problem. 1116 [613114713cca] <1.7> 1117 1118 * sudo.c: 1119 If the "timestampowner" user cannot be resolved, use uid 0 instead 1120 of exiting with a fatal error. 1121 [9a17eae432be] <1.7> 1122 1123 * auth/pam.c, env.c, sudo.h: 1124 For PAM authentication, merge the PAM environment with the user 1125 environment in pam_begin_session(). 1126 [078bee18fec1] <1.7> 1127 1128 * toke.c, toke.l: 1129 Quiet compiler warning when SELinux is enabled. 1130 [1c8053173b6e] <1.7> 1131 1132 * sudo.c: 1133 Don't read /etc/environment on Linux when using PAM, PAM should set 1134 the environment variables as needed via pam_env. 1135 [3319c6cce1e7] <1.7> 1136 1137 * config.h.in, configure, configure.in: 1138 Add check for pam_getenvlist() 1139 [15abe30f755d] <1.7> 1140 1141 * set_perms.c: 1142 Use normal error path if unable to set sudoers gid. 1143 [4ea379c064e9] <1.7> 1144 1145 * sudo.pp: 1146 Make sudoersdir relative to PKG_INSTALL_ROOT for Solaris. Make sure 1147 sudoers file is writable before trying to edit it. 1148 [38d2be50ba4e] <1.7> 1149 1150 * config.h.in, configure, configure.in, sudo_noexec.c: 1151 Add execvpe(), exect(), posix_spawn() and posix_spawnp() wrappers to 1152 sudo_noexec.c. 1153 [47745c46665d] <1.7> 1154 11552012-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 1156 1157 * zlib/adler32.c, zlib/crc32.c, zlib/crc32.h, zlib/deflate.c, 1158 zlib/deflate.h, zlib/gzguts.h, zlib/gzlib.c, zlib/gzread.c, 1159 zlib/gzwrite.c, zlib/infback.c, zlib/inffixed.h, zlib/inflate.c, 1160 zlib/inftrees.c, zlib/trees.c, zlib/zconf.h.in, zlib/zlib.h, 1161 zlib/zutil.c, zlib/zutil.h: 1162 Update zlib to version 1.2.6 1163 [f77e129c15d1] <1.7> 1164 11652012-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 1166 1167 * tgetpass.c: 1168 If there is nothing to read from the askpass program, set errno to 1169 EINTR. This makes the cancel button behave like the user entered ^C 1170 at the password prompt when PAM is used. 1171 [c1731da0909b] <1.7> 1172 11732012-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 1174 1175 * .hgtags: 1176 Added tag SUDO_1_7_9 for changeset d896e8043fe6 1177 [52fe2a7eeead] <1.7> 1178 11792012-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 1180 1181 * pp, sudo.pp: 1182 Build flat packages, not package bundles, on Mac OS X. 1183 [d896e8043fe6] [SUDO_1_7_9] <1.7> 1184 11852012-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 1186 1187 * find_path.c, goodpath.c, sudo.h: 1188 Make sudo_goodpath() return value boolean 1189 [dc245299255d] <1.7> 1190 1191 * configure, configure.in: 1192 Don't permanently add -D_FORTIFY_SOURCE=2 to CPPFLAGS 1193 [4843521b434c] <1.7> 1194 1195 * sudo.pp: 1196 Add Mac OS X support, printing the latest chunk of the NEWS file and 1197 the license text in the installer. 1198 [ca00a22d1092] <1.7> 1199 1200 * sudo.pp: 1201 Add explicit file modes that match those used by "make install" 1202 [2b508a1fe3b2] <1.7> 1203 1204 * pp: 1205 Sync with upstream for Mac OS X fixes. 1206 [0d4463cbe348] <1.7> 1207 1208 * Makefile.in: 1209 Got back to using "install-sh -M" for files installed as non- 1210 readable by owner. This fixes "make install" as non-root for 1211 package building. 1212 [27f790e5129d] <1.7> 1213 12142012-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 1215 1216 * Makefile.in: 1217 Use -m not -M for install-sh for everything except setuid. If 1218 timedir parent doesn't exist, use default dir mode, not 0700. 1219 [0ab3e7bde003] <1.7> 1220 12212012-02-07 Todd C. Miller <Todd.Miller@courtesan.com> 1222 1223 * pp: 1224 Re-sync with upstream; no longer need a local patch. 1225 [bafde42b306b] <1.7> 1226 1227 * mkpkg: 1228 Add support for building Mac OS X packages. 1229 [1810180df7d9] <1.7> 1230 1231 * pp: 1232 Sync with upstream 1233 [3c16823fc26a] <1.7> 1234 12352012-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 1236 1237 * configure, configure.in: 1238 Error out if user specified --with-pam but we can't find the headers 1239 or library. Also throw an error if the headers are present but the 1240 library is not and vice versa. 1241 [82d24f9570b3] <1.7> 1242 12432012-01-31 Todd C. Miller <Todd.Miller@courtesan.com> 1244 1245 * sudo.c: 1246 Fix the sudoers permission check when the expected sudoers mode is 1247 owner-writable. 1248 [b92868792807] <1.7> 1249 12502012-01-30 Todd C. Miller <Todd.Miller@courtesan.com> 1251 1252 * configure, configure.in: 1253 Verify that we can link executables built with -D_FORTIFY_SOURCE 1254 before using it. 1255 [71e49b39c9c7] <1.7> 1256 1257 * configure, configure.in: 1258 Add rudimentary check for _FORTIFY_SOURCE support by checking for 1259 __sprintf_chk, one of the functions used by gcc to support it. 1260 [27e601da3911] <1.7> 1261 1262 * NEWS: 1263 add 1.7.8p2 1264 [54979cc2edda] <1.7> 1265 12662012-01-26 Todd C. Miller <Todd.Miller@courtesan.com> 1267 1268 * NEWS: 1269 Update 1270 [a262fa3d4d27] <1.7> 1271 1272 * check.c, sudo.c: 1273 We need to init the auth system regardless of whether we need a 1274 password since we will be closing the PAM session in the monitor 1275 process. Fixes a crash in the monitor on Solaris; bugzilla #533 1276 [bf5d5aef0c67] <1.7> 1277 12782012-01-25 Todd C. Miller <Todd.Miller@courtesan.com> 1279 1280 * exec.c: 1281 The change in a1e7e31519ec that caused to exit when the monitor dies 1282 created a race condition between the monitor exiting and the status 1283 being read. All we really want to do is make sure that select() 1284 notifies us that there is a status change when the monitor dies 1285 unexpectedly so shutdown the socketpair connected to the monitor for 1286 writing when it dies. That way we can still read the status that is 1287 pending on the socket and select() on Linux will tell us that the fd 1288 is ready. 1289 [71d927a3cf2d] <1.7> 1290 12912012-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 1292 1293 * aclocal.m4, configure, configure.in: 1294 Add custom version of AC_CHECK_LIB that uses the extra libs in the 1295 cache value name. With this we no longer need to rely on a modified 1296 version of autoconf. 1297 [bb1e3f8f1549] <1.7> 1298 12992012-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 1300 1301 * configure, configure.in: 1302 Better handling of network functions that need -lsocket -lnsl 1303 [d205cdb08ba1] <1.7> 1304 13052012-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 1306 1307 * configure, configure.in: 1308 Fix sh warning; use "test" instead of "[" 1309 [f0cde8f77209] <1.7> 1310 1311 * exec.c: 1312 When not logging I/O, use a signal handler that only forwards 1313 SIGINT, SIGQUIT and SIGHUP when they are user-generated signals. 1314 Fixes a race in the non-I/O logging path where the command may 1315 receive two keyboard-generated signals; one from the kernel and one 1316 from the sudo process. 1317 [9dc4a800e388] <1.7> 1318 1319 * exec.c: 1320 Back out change that put the command in its own pgrp when not 1321 logging I/O. It causes problems with pipelines. 1322 [dab8b58a6452] <1.7> 1323 13242012-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 1325 1326 * sudo.pp: 1327 Include parent directories in case they don't already exist. This 1328 fixes a directory permissions problem with the AIX package when the 1329 /usr/local directories don't already exist. 1330 [94c64d964891] <1.7> 1331 1332 * pp: 1333 sync with git version 1334 [b3e7e7be2fa8] <1.7> 1335 1336 * Makefile.in, sudo.c, sudo.h, ttyname.c: 1337 Move tty name lookup code to its own file. 1338 [224246976c4c] <1.7> 1339 13402012-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 1341 1342 * NEWS: 1343 Update for sudo 1.7.9 1344 [6addf6f6b143] <1.7> 1345 1346 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 1347 sudoers.ldap.man.in, sudoers.man.in, sudoreplay.cat, 1348 sudoreplay.man.in, visudo.cat, visudo.man.in: 1349 regen 1350 [27c747f7178d] <1.7> 1351 1352 * visudo.c: 1353 For "visudo -c" also list include files that were checked when 1354 everything is OK. 1355 [9e5cd18ce6ca] <1.7> 1356 1357 * LICENSE, configure.in: 1358 Update copyright year. 1359 [faec2e69d89a] <1.7> 1360 1361 * visudo.c: 1362 Allow "visudo -c" to work when we only have read-only access to the 1363 sudoers include files. 1364 [b59f230a6dd3] <1.7> 1365 1366 * match.c: 1367 Do not include GLOB_MARK in the flags we pass to glob(3). Fixes a 1368 bug where a pattern like "/usr/*" include /usr/bin/ in the results, 1369 which would be incorrectly be interpreted as if the sudoers file had 1370 specified a directory. From Vitezslav Cizek. 1371 [839a35f01eba] <1.7> 1372 1373 * gram.c, gram.y, parse.c: 1374 Print a more sensible error if yyparse() returns non-zero but 1375 yyerror() was not called. 1376 [1b24dcfa5c9b] <1.7> 1377 1378 * config.h.in, configure, configure.in, sudo.c: 1379 When trying to determine the tty, fall back on /proc/ppid/fd/{0,1,2} 1380 if the main process's fds 0-2 are not hooked up to a tty. On BSD, 1381 use the KERN_PROC_PID sysctl() instead. 1382 [d7938d938fbd] <1.7> 1383 1384 * exec.c: 1385 When not logging I/O, put command in its own pgrp and make that the 1386 controlling pgrp if the command is in the foreground. Fixes a race 1387 in the non-I/O logging path where the command may receive two 1388 keyboard-generated signals; one from the kernel and one from the 1389 sudo process. 1390 [15726f1e2a51] <1.7> 1391 1392 * def_data.c, def_data.in: 1393 Add missing %s printf escape to the iolog_dir description. 1394 [5319fe6868eb] <1.7> 1395 1396 * exec.c: 1397 Handle different Unix domain socket (actually socketpair) semantics 1398 in BSD vs. Linux. In BSD if one end of the socketpair goes away 1399 select() returns the fd as readable and the read will fail with 1400 ECONNRESET. This doesn't appear to happen on Linux so if we notice 1401 that the monitor process has died when I/O logging is enabled, 1402 behave like the command has exited. This means we log the wait 1403 status of the monitor, not the command, but there is nothing else we 1404 can do at that point. This should only be an issue if SIGKILL is 1405 sent to the monitor process. 1406 [a1e7e31519ec] <1.7> 1407 1408 * exec_pty.c: 1409 Catch common signals in the monitor process so they get passed to 1410 the command. Fixes a problem when the entire login session is killed 1411 when ssh is disconnected or the terminal window is closed. 1412 [39a0384e0474] <1.7> 1413 1414 * INSTALL, configure, configure.in: 1415 Mention how to configure pam_hpsec on HP-UX to play nicely with 1416 sudo. 1417 [65696ab03d89] <1.7> 1418 1419 * ldap.c: 1420 Escape values in the search expression as per RFC 4515 1421 [62f9aca28e37] <1.7> 1422 1423 * configure, configure.in: 1424 Bump version to 1.7.9 1425 [188328e38511] <1.7> 1426 1427 * sudo.c: 1428 Remove unwanted login_close() in last commit. 1429 [0efe32685263] <1.7> 1430 1431 * auth/bsdauth.c, sudo.c: 1432 Fetch the login class for the user we authenticate specifically when 1433 using BSD authentication. That user may have a different login class 1434 than what we will use to run the command. When setting the login 1435 class for the command, use the target user's struct passwd, not the 1436 invoking user's. 1437 [95bd1c8b121d] <1.7> 1438 1439 * aclocal.m4, config.h.in, configure, configure.in: 1440 No longer need SUDO_CHECK_TYPE and SUDO_TYPE_* now that the default 1441 includes have unistd.h in them. 1442 [46e1b5245f37] <1.7> 1443 1444 * config.h.in, configure, configure.in, fileops.c, interfaces.c, 1445 interfaces.h, match.c, nanosleep.c, sudo_noexec.c, sudoreplay.c: 1446 Use HAVE_STRUCT_TIMESPEC and HAVE_STRUCT_IN6_ADDR instead of 1447 HAVE_TIMESPEC and HAVE_IN6_ADDR respectively. 1448 [f1f0347562db] <1.7> 1449 1450 * visudo.c: 1451 Fix mode on sudoers as needed when the -f option is not specified. 1452 [9d729b366c36] <1.7> 1453 1454 * mkpkg: 1455 Build PIE executables for newer Debian and Ubuntu 1456 [01c6309628ea] <1.7> 1457 1458 * exec.c, exec_pty.c: 1459 Do not close error pipe or debug fd via closefrom() as we need them 1460 to report an exec error should one occur. 1461 [fe9cfd15d679] <1.7> 1462 1463 * ldap.c: 1464 Older Netscape LDAP SDKs don't prototype ldapssl_set_strength() 1465 [0d5418fc6207] <1.7> 1466 1467 * LICENSE, emul/fnmatch.h, fnmatch.c: 1468 Replace UCB fnmatch.c with a non-recursive version written by 1469 William A. Rowe Jr. 1470 [8f8dbd3e61dd] <1.7> 1471 1472 * sudo.pod, sudoers.pod: 1473 Make the env_reset descriptions consistent. 1474 [0b49736bc118] <1.7> 1475 1476 * configure, configure.in: 1477 Do multiple expansion when expanding paths to the noexec file, and 1478 sesh. Adapted from a diff by Mike Frysinger 1479 [36131e1bbe87] <1.7> 1480 1481 * .hgignore: 1482 Add ignore file 1483 [bb5b1d29df15] <1.7> 1484 1485 * config.guess, config.sub, configure, ltmain.sh, m4/libtool.m4, 1486 m4/ltoptions.m4, m4/ltversion.m4: 1487 Update to libtool 2.4.2 1488 [87302d678542] <1.7> 1489 1490 * sudoers.pod, toke.c, toke.l: 1491 Add support for relative paths in #include and #includedir 1492 [256ce31bc082] <1.7> 1493 1494 * UPGRADE: 1495 Add missing word in HOME security note. 1496 [e3fb8f091198] <1.7> 1497 1498 * gram.c, gram.y, toke.c, toke.l: 1499 Keep track of the last token returned. On error, if the last token 1500 was COMMENT, decrement sudolineno since the error most likely 1501 occurred on the preceding line. Previously we always uses 1502 sudolineno-1 which will give the wrong line number for errors within 1503 a line. 1504 [cc2de3f4f4ba] <1.7> 1505 15062011-12-18 Todd C. Miller <Todd.Miller@courtesan.com> 1507 1508 * def_data.c, def_data.in: 1509 Fix typo in visiblepw description; from Joel Pickett 1510 [1e74dd75c3e2] <1.7> 1511 15122011-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 1513 1514 * sudo.pp: 1515 Mark libexec files as optional. If there is no support for noexec, 1516 sudo will not build sudo_noexec.so. Fixes a packaging problem on 1517 AIX 4.3 1518 [b3b80e0ebeb2] <1.7> 1519 15202011-10-26 Todd C. Miller <Todd.Miller@courtesan.com> 1521 1522 * visudo.c: 1523 Make alias_remove_recursive() return TRUE/FALSE as its callers 1524 expect and remove two unused arguments. Fixes bug 519. 1525 [009d65033d04] <1.7> 1526 15272011-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 1528 1529 * NEWS, match.c: 1530 When matching a RunasAlias for a runas group, pass the alias in as 1531 the group_list, not the user_list. From Daniel Kopecek. 1532 [3ab0460a4dee] <1.7> 1533 15342011-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 1535 1536 * .hgtags: 1537 Added tag SUDO_1_7_8 for changeset 571f47a3e08c 1538 [3de502bba852] <1.7> 1539 1540 * configure, configure.in: 1541 Revert unintended commit of version change to 1.7.8rc1 1542 [571f47a3e08c] [SUDO_1_7_8] <1.7> 1543 15442011-10-10 Todd C. Miller <Todd.Miller@courtesan.com> 1545 1546 * NEWS: 1547 Add sudoedit fix 1548 [350569be47a9] <1.7> 1549 1550 * env.c: 1551 Ignore set_logname (which is now the default) for sudoedit since we 1552 want the LOGNAME, USER and USERNAME environment variables to refer 1553 to the calling user since that is who the editor runs as. This 1554 allows the editor to find the user's startup files. Fixes bugzilla 1555 #515 1556 [8615dc42239d] <1.7> 1557 15582011-09-27 Todd C. Miller <Todd.Miller@courtesan.com> 1559 1560 * auth/API, auth/bsdauth.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, 1561 auth/pam.c, auth/passwd.c, auth/secureware.c, auth/securid.c, 1562 auth/securid5.c, auth/sudo_auth.c, auth/sudo_auth.h, check.c, 1563 sudo.c, sudo.h: 1564 Modify the authentication API such that the init and cleanup 1565 functions are always called, regardless of whether or not we are 1566 going to verify a password. This is needed for proper PAM session 1567 support. 1568 [c8ea54add6cd] <1.7> 1569 15702011-09-24 Todd C. Miller <Todd.Miller@courtesan.com> 1571 1572 * pwutil.c, sudo.c, sudo.h: 1573 If the invoking user cannot be resolved by uid fake the struct 1574 passwd and store it in the cache so we can delref it on exit. 1575 [e884526c625f] <1.7> 1576 15772011-09-22 Todd C. Miller <Todd.Miller@courtesan.com> 1578 1579 * .hgtags: 1580 Added tag SUDO_1_7_7 for changeset 9fba0207f99a 1581 [9a2a6bc562ba] <1.7> 1582 15832011-09-21 Todd C. Miller <Todd.Miller@courtesan.com> 1584 1585 * TROUBLESHOOTING: 1586 Update to current reality and add bit about ssh auth 1587 [e685cf9d5b80] <1.7> 1588 1589 * gram.c, gram.y: 1590 Make "verbose" static; fixes a namespace clash with 1591 pam_ssh_agent_auth (and it doesn't need to be extern these days). 1592 [b7af22bb2a44] <1.7> 1593 1594 * config.h.in, configure, configure.in, get_pty.c: 1595 FreeBSD has libutil.h not util.h 1596 [299f690e00c1] <1.7> 1597 1598 * configure, configure.in: 1599 Define _BSD_SOURCE on FreeBSD, OpenBSD and DragonflyBSD 1600 [b62354af36fb] <1.7> 1601 16022011-09-17 Todd C. Miller <Todd.Miller@courtesan.com> 1603 1604 * NEWS, sudo.c: 1605 Apply MODE_MASK to sudo_mode in the switch statement that handles 1606 modes other than MODE_RUN. 1607 [207aa8b0d0b0] <1.7> 1608 16092011-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 1610 1611 * NEWS, configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 1612 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 1613 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 1614 Update for version 1.7.8 1615 [a1e17108be5c] <1.7> 1616 1617 * ldap.c, sudoers.ldap.pod: 1618 Add support for DEREF in ldap.conf. 1619 [125671af12dd] <1.7> 1620 1621 * configure, configure.in: 1622 Check for -libmldap too when looking for ldap libs, which is the 1623 Tivoli Directory Server client library. 1624 [bd1f9c9572f1] <1.7> 1625 1626 * parse.c: 1627 Honor NOPASSWD tag for denied commands too. 1628 [73e53bf979d0] <1.7> 1629 1630 * INSTALL, configure, configure.in: 1631 Remove --with-CC option; it doesn't work correctly now that we use 1632 libtool. Users can get the same effect by setting the CC environment 1633 variable when running configure. 1634 [b3c8e1d3b601] <1.7> 1635 1636 * visudo.c: 1637 Don't assume all editors support the +linenumber command line 1638 argument, use a whitelist of known good editors. 1639 [e639904656b6] <1.7> 1640 1641 * configure, configure.in: 1642 Use PAM by default on AIX 6 and higher. Fix some square brackets in 1643 case statements that needed to be doubled up. While here, use 1644 $OSMAJOR when it makes sense. 1645 [4a4fb717a75f] <1.7> 1646 16472011-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 1648 1649 * INSTALL, configure, configure.in: 1650 Add --enable-werror configure option. Add -Wall and -Werror after 1651 all tests so they don't cause failures. 1652 [805eb7c4af8b] <1.7> 1653 1654 * config.h.in, configure, configure.in, missing.h, sudo.h, 1655 sudo_noexec.c: 1656 Add configure test for missing errno declaration and only declare it 1657 ourselves if it is missing. 1658 [9e26d7bc28b9] <1.7> 1659 1660 * alias.c: 1661 Include errno.h before sudo.h to avoid conflicting with the system 1662 definition of errno. 1663 [991e5efb9333] <1.7> 1664 16652011-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 1666 1667 * match.c: 1668 Fix matching a network number with netmask when the network number 1669 is not the first address in the CIDR block. 1670 [18ae73d884ae] <1.7> 1671 16722011-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 1673 1674 * mkpkg: 1675 Fix building on RHEL 3 1676 [c54c381a9093] <1.7> 1677 16782011-08-14 Todd C. Miller <Todd.Miller@courtesan.com> 1679 1680 * NEWS, sudo.c: 1681 bash 2.x doesd not support the -l flag and exits with an error if it 1682 is specified so use --login instead. This causes an error with bash 1683 1.x (which uses -login instead) but this version is hopefully less 1684 used than 2.x. 1685 [9fba0207f99a] [SUDO_1_7_7] <1.7> 1686 1687 * configure, configure.in: 1688 Detect HP-UX bundled compiler on ia64 systems. 1689 [92579c1de7d6] <1.7> 1690 1691 * lbuf.c: 1692 Fix cut & pasto in K&R lbuf_append function declaration 1693 [e31c4d533e9a] <1.7> 1694 1695 * NEWS: 1696 sync 1697 [abe2abe9875b] <1.7> 1698 1699 * exec.c, exec_pty.c, sudo_exec.h: 1700 Improved background mode support. When not allocating a pty, the 1701 command is run in its own process group. This prevents write access 1702 to the tty. When running in a pty, stdin is not hooked up and we 1703 never read from /dev/tty, which results in similar behavior. 1704 [9a5513a80338] <1.7> 1705 1706 * lbuf.c, lbuf.h, ldap.c, parse.c, parse_args.c, sudo_nss.c: 1707 Add primitive format string support to the lbuf code. 1708 [2628965a3272] <1.7> 1709 1710 * sudo.c: 1711 Go back to escaping the command args for "sudo -i" and "sudo -s" in 1712 NewArgv before checking sudoers but unescape non-spaces when 1713 building user_args to make sudoers matching easier. 1714 [4c88da5fc510] <1.7> 1715 17162011-08-13 Todd C. Miller <Todd.Miller@courtesan.com> 1717 1718 * INSTALL, NEWS, README, configure, configure.in, sudo.cat, 1719 sudo.man.in, sudoers.cat, sudoers.ldap.cat, sudoers.ldap.man.in, 1720 sudoers.man.in, sudoreplay.cat, sudoreplay.man.in, visudo.cat, 1721 visudo.man.in: 1722 Prepare for sudo 1.7.7 1723 [8ea26959ac1d] <1.7> 1724 1725 * sudo.c: 1726 Only check gid of sudoers file if it is group-readable or writable. 1727 [ecb53c982ab8] <1.7> 1728 1729 * mkpkg: 1730 configure args on the command line should override builtin defaults. 1731 Add -g to CFLAG for PIE builds. 1732 [35f35e806705] <1.7> 1733 1734 * configure, configure.in: 1735 Add checks for nroff -c and -Tascii flags 1736 [897772861c2c] <1.7> 1737 1738 * configure, configure.in: 1739 When building with gcc on HP-UX, use -march=1.1 to produce portable 1740 binaries on a pa-risc2 host. Previously, the +Dportable option was 1741 used for the HP-UX C compiler but gcc always produced native 1742 binaries. 1743 [d3b0893cd038] <1.7> 1744 1745 * zlib/adler32.c, zlib/crc32.c, zlib/crc32.h, zlib/infback.c, 1746 zlib/inffast.c, zlib/inflate.c, zlib/inftrees.c, zlib/trees.c: 1747 Fix K&R compilation 1748 [e7b103358019] <1.7> 1749 1750 * sudo.c: 1751 fix K&R compilation 1752 [5d6c476a5f73] <1.7> 1753 1754 * match.c: 1755 If the user specifies a runas group via sudo's -g option that 1756 matches the runas user's group in the passwd database and that group 1757 is not denied in the Runas_Spec, allow it. Thus, if user root's gid 1758 in /etc/passwd is 0, then "sudo -u root -g root id" is allow even if 1759 no groups are present in the Runas_Spec. 1760 [fafe67fa39c1] <1.7> 1761 1762 * visudo.c: 1763 When checking aliases, also check the contents of the alias in case 1764 there are problems with an alias that is referenced inside another. 1765 Replace the self reference check with real alias cycle detection. 1766 [8957b4c7e6c9] <1.7> 1767 1768 * alias.c: 1769 Set errno to ELOOP in alias_find() if there is a cycle. Set errno to 1770 ENOENT in alias_find() and alias_remove() if the entry could not be 1771 found. 1772 [c2fa4faa8abf] <1.7> 1773 1774 * visudo.c: 1775 Increment alias_seqno before calls to alias_remove_recursive() to 1776 avoid false positives with the alias loop detection. Fixes spurious 1777 warnings about unused aliases when they are nested. 1778 [0260e8087c03] <1.7> 1779 1780 * ldap.c, sudoers.ldap.pod: 1781 Tivoli Directory Server requires that seconds be present in a 1782 timestamp, even though RFC 4517 states that they are optional. 1783 [467e8876e3da] <1.7> 1784 1785 * sudo.c: 1786 Set def_preserve_groups before searching for the command when the 1787 -P flag is specified. 1788 [ba3b399a2e55] <1.7> 1789 1790 * sudoers.pod: 1791 The group named by exempt_group should not have a % prefix. 1792 [41c7640647e5] <1.7> 1793 1794 * getdate.c, getdate.y: 1795 Do not declare yyparse() static as the actual function generated by 1796 yacc is extern. 1797 [e25721f456ef] <1.7> 1798 1799 * configure, configure.in: 1800 Disable noexec for AIX < 5. LDR_PRELOAD is only available in AIX 5.3 1801 and above. 1802 [34ebbe43f380] <1.7> 1803 1804 * mkpkg: 1805 For SuSE, only use /usr/lib64 as libexec if generating 64-bit 1806 binaries. 1807 [9277f9dfb21d] <1.7> 1808 1809 * Makefile.in, logging.c, logging.h, logwrap.c: 1810 Split out log file word wrap code into its own file. Fixes an off- 1811 by one in the word wrap when the log line length matches loglinelen. 1812 [c3759952fe9e] <1.7> 1813 1814 * audit.c: 1815 Add a NULL check in audit_success() and audit_failure() just to be 1816 on the safe side. 1817 [265ccdf16561] <1.7> 1818 1819 * check.c, ldap.c, parse.c, toke.c, toke.l: 1820 Fix some potential problems found by the clang static analyzer, none 1821 serious. 1822 [0183767382c3] <1.7> 1823 1824 * auth/aix_auth.c: 1825 For AIX, keep calling authenticate() until reenter reaches 0. 1826 [df98b55de2ab] <1.7> 1827 1828 * config.guess, config.sub, configure, configure.in, ltmain.sh, 1829 m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4, m4/lt~obsolete.m4: 1830 Update to autoconf 2.68 and libtool 2.4 1831 [d8e09ea9a10e] <1.7> 1832 1833 * auth/rfc1938.c, config.h.in, configure.in: 1834 Add check for NetBSD-style 4-argument skeychallenge() as Gentoo also 1835 has this. Adapted from a patch from Diego Elio Petteno 1836 [124c020dc27d] <1.7> 1837 18382011-08-11 Todd C. Miller <Todd.Miller@courtesan.com> 1839 1840 * sudoers.pod: 1841 Fix typo; OPT should be OTP 1842 [f24c4f190ff4] <1.7> 1843 18442011-08-10 Todd C. Miller <Todd.Miller@courtesan.com> 1845 1846 * sudo.c: 1847 Add dedicated callback function for runas_default sudoers setting 1848 that only sets runas_pw if no runas user or group was specified by 1849 the user. 1850 [0a57b26041c6] <1.7> 1851 18522011-08-09 Todd C. Miller <Todd.Miller@courtesan.com> 1853 1854 * defaults.h, sudo.c: 1855 Go back to using a callback for runas_default to keep runas_pw in 1856 sync. This is needed to make per-entry runas_default settings work 1857 with LDAP-based sudoers. Instead of declaring it a callback in 1858 def_data.in, sudo pokes sudo_defs_table[] which is a bit naughty, 1859 but avoids requiring stub functions in visudo and testsudoers. 1860 [3f5ef76c6de5] <1.7> 1861 18622011-07-13 Todd C. Miller <Todd.Miller@courtesan.com> 1863 1864 * mkpkg: 1865 Only run configure with --with-pam-login for RHEL 5 and above. 1866 [59c88e848991] <1.7> 1867 1868 * sudo.pp: 1869 Fix typo in summary 1870 [ac1d930d3822] <1.7> 1871 18722011-06-13 Todd C. Miller <Todd.Miller@courtesan.com> 1873 1874 * env.c: 1875 Preserve SHELL variable for "sudo -s". Otherwise we can end up with 1876 a situation where the SHELL variable and the actual shell being run 1877 do not match. 1878 [1eb3f17d128f] <1.7> 1879 18802011-06-10 Todd C. Miller <Todd.Miller@courtesan.com> 1881 1882 * configure, configure.in: 1883 Only enable Solaris project support when setproject() is present in 1884 libproject. 1885 [17c6f8635946] <1.7> 1886 1887 * sudo.pp: 1888 Explicitly set mode and owner of /etc/sudoers instead of relying on 1889 "cp -p" to work in the postinstall script. On AIX 6.1 at least the 1890 postinstall script runs before the final file permissions are set. 1891 [6e3fcb12a27f] <1.7> 1892 18932011-04-29 Todd C. Miller <Todd.Miller@courtesan.com> 1894 1895 * toke.c, toke.l: 1896 Split ALL, ROLE and TYPE into their own actions. Since you can only 1897 have #ifdefs inside of braces, ROLE and TYPE use a naughty goto in 1898 the non-SELinux case. This is safe because the actions are in one 1899 big switch() statement. 1900 [19863b5cecde] <1.7> 1901 1902 * toke.c, toke.l: 1903 Fix regexp for matching a CIDR-style IPv4 netmask. From Marc Espie. 1904 [cbf8c4ee2981] <1.7> 1905 1906 * sudoers.pod: 1907 Remove obsolete warning about runas_default and ordering. 1908 [eff3ac4c594b] <1.7> 1909 19102011-04-18 Todd C. Miller <Todd.Miller@courtesan.com> 1911 1912 * configure, configure.in: 1913 Need to do checks for krb5_verify_user, krb5_init_secure_context and 1914 krb5_get_init_creds_opt_alloc regardless of whether or not 1915 krb5-config is present. 1916 [6ceda8c8c126] <1.7> 1917 1918 * NEWS: 1919 sudo 1.7.6p1 updates 1920 [888e4e84b839] <1.7> 1921 19222011-04-14 Todd C. Miller <Todd.Miller@courtesan.com> 1923 1924 * sudo.pp: 1925 update copyright year 1926 [edf691539a65] <1.7> 1927 1928 * toke.c, toke.l: 1929 Treat a missing includedir like an empty one and do not return an 1930 error. 1931 [9c770ff2d0bc] <1.7> 1932 19332011-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 1934 1935 * pp: 1936 Fix ARCH setting in cross-compile Solaris packages. 1937 [057d743bd1a2] <1.7> 1938 1939 * sudo.pp: 1940 Fix aix version setting. 1941 [1a2621321f5c] <1.7> 1942 1943 * ldap.c: 1944 Remove extraneous parens in LDAP filter when sudoers_search_filter 1945 is enabled that causes a search error. From Matthew Thomas. 1946 [7a5a2d021d32] <1.7> 1947 19482011-04-09 Todd C. Miller <Todd.Miller@courtesan.com> 1949 1950 * .hgtags: 1951 Added tag SUDO_1_7_6 for changeset fafbb7b0aea2 1952 [6f5c74a8a6ac] <1.7> 1953 1954 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 1955 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 1956 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 1957 regen for 1.7.6 1958 [fafbb7b0aea2] [SUDO_1_7_6] <1.7> 1959 1960 * sudo.cat, sudo.man.in: 1961 regen man pages for 1.7.6 1962 [94d851285f31] <1.7> 1963 19642011-04-06 Todd C. Miller <Todd.Miller@courtesan.com> 1965 1966 * configure, configure.in: 1967 Fix warnings when -without-skey, --without-opie, --without-kerb4, 1968 --without-kerb5 or --without-SecurID were specified. 1969 [83a99d369286] <1.7> 1970 19712011-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 1972 1973 * NEWS: 1974 Mention %#gid support in User_List and Runas_List 1975 [8ff14765d7df] <1.7> 1976 1977 * sudoers.pod: 1978 Merge SETENV and NOSETENV description from 1.8 1979 [dd44e79b53a0] <1.7> 1980 19812011-04-01 Todd C. Miller <Todd.Miller@courtesan.com> 1982 1983 * testsudoers.c: 1984 In dump-only mode, use "root" as the default username instead of 1985 "nobody" as the latter may not be available on all systems. 1986 [8082b8a1374c] <1.7> 1987 19882011-03-31 Todd C. Miller <Todd.Miller@courtesan.com> 1989 1990 * testsudoers.c: 1991 Fix setting of user_args 1992 [0669612feeb1] <1.7> 1993 1994 * toke.c, toke.l: 1995 Add '!' token to lex tracing 1996 [7738d002a8d0] <1.7> 1997 1998 * toke.c, toke.l: 1999 Avoid using pre or post increment in a parameter to a ctype(3) 2000 function as it might be a macro that causes the increment to happen 2001 more than once. 2002 [2d23161e06dc] <1.7> 2003 20042011-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 2005 2006 * sudo.pp: 2007 Strip off the beta or release candidate version when building AIX 2008 packages. 2009 [246ebb79e64f] <1.7> 2010 2011 * aix.c: 2012 getuserattr(user, ...) will fall back to the "default" entry 2013 automatically, there's no need to check "default" manually. 2014 [dd233ca1092a] <1.7> 2015 20162011-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 2017 2018 * UPGRADE: 2019 Document parser changes. 2020 [f767c045e6c0] <1.7> 2021 2022 * testsudoers.c: 2023 Add runasgroup support to testsudoers 2024 [23f060665d23] <1.7> 2025 2026 * testsudoers.c: 2027 More useful exit codes: 2028 * 0 - parsed OK and command matched. 2029 * 1 - parse error 2030 * 2 - command not matched 2031 * 3 - command denied 2032 [bda610d9f6da] <1.7> 2033 2034 * Makefile.in: 2035 If there is an existing sudoers file, only install if it passes a 2036 syntax check. 2037 [189eaeea562e] <1.7> 2038 2039 * sudoers.pod: 2040 Document %#gid, and %:#nonunix_gid syntax. 2041 [59e7df4c91e4] <1.7> 2042 2043 * pwutil.c: 2044 Add support to user_in_group() for treating group names that begin 2045 with a '#' as gids. 2046 [3926017fbf95] <1.7> 2047 20482011-03-28 Todd C. Miller <Todd.Miller@courtesan.com> 2049 2050 * aclocal.m4: 2051 Quote first argument to AC_DEFUN(); from Elan Ruusamae 2052 [a245e4891bab] <1.7> 2053 20542011-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 2055 2056 * toke.c, toke.l: 2057 Use bitwise AND instead of modulus to check for length being odd. A 2058 newline in the middle of a string is an error unless a line 2059 continuation character is used. 2060 [37a7f1fc54b7] <1.7> 2061 2062 * gram.c, toke.c: 2063 Add missing include of config.h 2064 [b13da7baee1e] <1.7> 2065 2066 * gram.c, gram.y, toke.c, toke.l: 2067 Move lexer globals initialization into init_lexer. 2068 [b7c124212d05] <1.7> 2069 2070 * toke.c, toke.l: 2071 Fix a potential crash when a non-regular file is present in an 2072 includedir. Fixes bz #452 2073 [f1209a710607] <1.7> 2074 2075 * pp: 2076 On some Linux systems, "uname -p" contains detailed processor info 2077 so check "uname -m" first and then "uname -p" if needed. Recognize 2078 PLD Linux. 2079 [83af85a391df] <1.7> 2080 2081 * toke.c, toke.l: 2082 Make an empty group or netgroup a syntax error. 2083 [e88aa7b31a43] <1.7> 2084 2085 * toke.c, toke.l: 2086 Allow a group ID in the User_Spec. 2087 [3e58bc732e33] <1.7> 2088 2089 * toke.c, toke.l: 2090 Return an error for the empty string when a word is expected. Allow 2091 an ID for per-user or per-runas Defaults. 2092 [83bb1a9c80ad] <1.7> 2093 20942011-03-23 Todd C. Miller <Todd.Miller@courtesan.com> 2095 2096 * testsudoers.c: 2097 Fix printing "User_Alias FOO = ALL" 2098 [8e6e810e89ce] <1.7> 2099 21002011-03-22 Todd C. Miller <Todd.Miller@courtesan.com> 2101 2102 * parse_args.c: 2103 Better error message about invalid -C argument 2104 [fc14f8dc03d2] <1.7> 2105 2106 * NEWS: 2107 fix typo 2108 [f789649fdeaf] <1.7> 2109 2110 * sudoers.pod: 2111 Fix placement of equal size ('=') in user specification summary. 2112 [51861d678ac1] <1.7> 2113 21142011-03-21 Todd C. Miller <Todd.Miller@courtesan.com> 2115 2116 * toke.l: 2117 If we match a rule anchored to the beginning of a line after parsing 2118 a line continuation character, return an ERROR token. It would be 2119 nicer to use REJECT instead but that substantially slows down the 2120 lexer. 2121 [f31c6622aaf9] <1.7> 2122 2123 * toke.c, toke.l: 2124 Allow whitespace after the modifier in a Defaults entry. E.g. 2125 "Defaults: username set_home" 2126 [57c09139d10c] <1.7> 2127 21282011-03-18 Todd C. Miller <Todd.Miller@courtesan.com> 2129 2130 * mkpkg: 2131 Don't set CC when cross-compiling. Use the Sun Studio C compiler on 2132 Solaris if possible. 2133 [b91feb0678c1] <1.7> 2134 2135 * NEWS: 2136 Credit Matthew Thomas for the sudoers_search_filter changes. 2137 [4b3f239e114d] <1.7> 2138 2139 * NEWS: 2140 Update for sudo 1.7.6 beta 2141 [26cdd6578c23] <1.7> 2142 2143 * exec_pty.c: 2144 Save the controlling tty process group before suspending in pty 2145 mode. Previously, we assumed that the child pgrp == child pid 2146 (which is usually, but not always, the case). 2147 [670657004784] <1.7> 2148 2149 * ldap.c, sudoers.ldap.pod: 2150 Add support for sudoers_search_filter setting in ldap.conf. This 2151 can be used to restrict the set of records returned by the LDAP 2152 query. 2153 [c941bb5f68f2] <1.7> 2154 21552011-03-17 Todd C. Miller <Todd.Miller@courtesan.com> 2156 2157 * configure, configure.in: 2158 Remove the hack to disable -g in CFLAGS unless --with-devel 2159 [933300bf3848] <1.7> 2160 2161 * sudoers.pod: 2162 The '@' character does not normally need to be quoted. 2163 [7e96569aed54] <1.7> 2164 2165 * toke.c, toke.l: 2166 We normaly transition from GOTDEFS to STARTDEFS on whitespace, but 2167 if that whitespace is followed by a comma, we want to treat it as 2168 part of a list and not transition. 2169 [6dd87c25c79c] <1.7> 2170 2171 * Makefile.in: 2172 toke_util.c lives in $(srcdir) not $(devdir) 2173 [b1b59d72f026] <1.7> 2174 2175 * toke.c, toke.l: 2176 Fix parsing of double-quoted names in Defaults and Aliases which was 2177 broken in c2b486b12951. 2178 [30b2fdbafdc2] <1.7> 2179 21802011-03-16 Todd C. Miller <Todd.Miller@courtesan.com> 2181 2182 * NEWS: 2183 Document major changes for sudo 1.7.6 2184 [d474a2aeb411] <1.7> 2185 2186 * configure, configure.in: 2187 Update version to 1.7.6 2188 [c1c80b99ed82] <1.7> 2189 2190 * match.c: 2191 Be careful not to deref user_stat if it is NULL. This cannot 2192 currently happen in sudo but might in other programs using the 2193 parser. 2194 [0926b1653e20] <1.7> 2195 2196 * mkpkg: 2197 configure will not add -O2 to CFLAGS if it is already defined to add 2198 -O2 to the CFLAGS we pass in when PIE is being used. 2199 [a4444e287bcb] <1.7> 2200 2201 * sudoers.pod: 2202 Warn about the dangers of log_input and mention iolog_dir in the 2203 log_input and log_output descriptions. 2204 [68c3615f7487] <1.7> 2205 2206 * pp: 2207 Back out 2b81d57de4a4 and sync with git version 2208 [5a2443567b9c] <1.7> 2209 2210 * exec.c: 2211 Save the controlling tty process group before suspending so we can 2212 restore it when we resume. Fixes job control problems on Linux 2213 caused by the previous attemp to fix resuming a shell when I/O 2214 logging not enabled. 2215 [3e4e26b79f59] <1.7> 2216 2217 * exec.c: 2218 In handle_signals(), restart the read() on EINTR to make sure we 2219 keep up with the signal pipe. Don't return -1 on EAGAIN, it just 2220 means we have emptied the pipe. 2221 [5bcfe5a061c2] <1.7> 2222 2223 * lbuf.c: 2224 Fix printing of the remainder after a newline. Fixes "sudo -l" 2225 output corruption that could occur in some cases. 2226 [41e5595f0559] <1.7> 2227 22282011-03-08 Todd C. Miller <Todd.Miller@courtesan.com> 2229 2230 * mkpkg: 2231 Fix default setting of osversion variable. 2232 [c67d9d3bfa2b] <1.7> 2233 22342011-03-07 Todd C. Miller <Todd.Miller@courtesan.com> 2235 2236 * mkpkg: 2237 Add --osversion flag to specify OS instead of running "pp 2238 --probeonly" 2239 [550104604d4b] <1.7> 2240 2241 * sudo.pp: 2242 Fix expr usage w/ GNU expr 2243 [c2161988dec9] <1.7> 2244 22452011-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 2246 2247 * sudo.pp: 2248 Don't use the beta or release candidate version as the rpm release. 2249 [56f8c0b1eb46] <1.7> 2250 22512011-02-25 Todd C. Miller <Todd.Miller@courtesan.com> 2252 2253 * .hgtags: 2254 Added tag SUDO_1_7_5 for changeset 9314212577c3 2255 [75f9d661ea03] <1.7> 2256 2257 * configure, configure.in: 2258 version 1.7.5 2259 [9314212577c3] [SUDO_1_7_5] <1.7> 2260 22612011-02-21 Todd C. Miller <Todd.Miller@courtesan.com> 2262 2263 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 2264 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 2265 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 2266 1.7.5rc1 2267 [216ab95b5de0] <1.7> 2268 2269 * parse_args.c, sudo.c, sudo.pod, sudo_usage.h.in, sudoreplay.c, 2270 sudoreplay.pod, visudo.c, visudo.pod: 2271 add help text to sudo, visudo and sudoreplay for the -h option 2272 [141d348c660b] <1.7> 2273 22742011-02-19 Todd C. Miller <Todd.Miller@courtesan.com> 2275 2276 * snprintf.c: 2277 avoid using "howmany" for a parameter name since it is a select- 2278 related macro 2279 [6b6c2d504103] <1.7> 2280 2281 * Makefile.in: 2282 add localstatedir; closes bug 471 2283 [a4778228ae54] <1.7> 2284 2285 * config.h.in, configure, configure.in, exec.c, exec_pty.c, 2286 sudoreplay.c: 2287 The howmany macro lives in sys/sysmacros.h on SVR5 systems Closes 2288 Bug 470 2289 [be5dff63ff5d] <1.7> 2290 2291 * exec.c: 2292 SVR5 systems return non-zero for success on socketpair(), check for 2293 -1 instead. Closes Bug 469 2294 [13ac9d0e0934] <1.7> 2295 22962011-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 2297 2298 * auth/afs.c: 2299 Move afs includes to be before sudo ones 2300 [fbe0bdcf5798] <1.7> 2301 2302 * config.h.in, configure, configure.in: 2303 No longer use vhangup 2304 [9fce94512df9] <1.7> 2305 23062011-02-14 Todd C. Miller <Todd.Miller@courtesan.com> 2307 2308 * sudo_nss.c: 2309 Avoid printing empty "Runas and Command-specific defaults for user" 2310 line. 2311 [3df2925f9982] <1.7> 2312 2313 * lbuf.c: 2314 Truncate the buffer at buf.len before printing in the non-wordwrap 2315 case. 2316 [23a31b8d95b8] <1.7> 2317 2318 * lbuf.c: 2319 Remove extra newline when the tty width is very small or unavailable 2320 [32fa0b3ea47a] <1.7> 2321 23222011-02-13 Todd C. Miller <Todd.Miller@courtesan.com> 2323 2324 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 2325 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 2326 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 2327 1.7.5b5 2328 [0937b9bff020] <1.7> 2329 2330 * pp: 2331 don't remap numeric uids/gids to names; if the user specified and id 2332 instead of a name, they probably mean it 2333 [2b81d57de4a4] <1.7> 2334 23352011-02-11 Todd C. Miller <Todd.Miller@courtesan.com> 2336 2337 * alias.c: 2338 Remove unneeded variable. 2339 [23329353f964] <1.7> 2340 23412011-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 2342 2343 * configure, configure.in: 2344 Prefer getutxid over getutid 2345 [e89811f0e4da] <1.7> 2346 2347 * boottime.c: 2348 Include utmp.h / utmpx.h before missing.h as apparently including it 2349 afterwards causes a compilation problem on GNU Hurd. 2350 [d62781e31b27] <1.7> 2351 23522011-02-07 Todd C. Miller <Todd.Miller@courtesan.com> 2353 2354 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 2355 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 2356 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 2357 1.7.5b4 2358 [4b8a9632fe59] <1.7> 2359 2360 * exec.c, missing.h, sudo.c, toke.h: 2361 fix K&R compilation 2362 [23ebea9c2183] <1.7> 2363 2364 * mksiglist.c: 2365 Fix typo 2366 [1587615a186f] <1.7> 2367 2368 * Makefile.in, toke.h, toke.l, toke_util.c: 2369 Split tokenizer utility functions out into toke_util.c 2370 [88148d0b9338] <1.7> 2371 2372 * alloc.c, bsm_audit.c, check.c, closefrom.c, sudo_nss.c, visudo.c: 2373 Cosmetic changes to make diffing against trunk easier. 2374 [95bdfcc29a22] <1.7> 2375 2376 * exec.c, exec_pty.c, mon_systrace.c, sudo.h, sudo_exec.h, 2377 sudoreplay.c, tgetpass.c: 2378 Use RETSIGTYPE for signal handlers. 2379 [5ea1f34d1aab] <1.7> 2380 2381 * sudo_exec.h: 2382 Use special values SIGCONT_FG and SIGCONT_BG instead of SIGUSR1 and 2383 SIGUSR2 to indicate whether the child should be continued in the 2384 foreground or background. 2385 [9fec5a258d57] <1.7> 2386 23872011-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 2388 2389 * getspwuid.c: 2390 Merge trunk version 2391 [cd44ef67e57d] <1.7> 2392 2393 * exec_pty.c: 2394 Use special values SIGCONT_FG and SIGCONT_BG instead of SIGUSR1 and 2395 SIGUSR2 to indicate whether the child should be continued in the 2396 foreground or background. 2397 [6305babcf6bd] <1.7> 2398 2399 * exec.c: 2400 If perform_io() fails, kill the child before exiting so it doesn't 2401 complain about connection reset. We can get an I/O error if, for 2402 example, and we get EIO reading from stdin. 2403 [ca28e0a25698] <1.7> 2404 24052011-02-05 Todd C. Miller <Todd.Miller@courtesan.com> 2406 2407 * error.c, fileops.c, fnmatch.c, getcwd.c, getprogname.c, gettime.c, 2408 glob.c, isblank.c, memrchr.c, mksiglist.c, mkstemps.c, nanosleep.c, 2409 setsid.c, sigaction.c, snprintf.c, strcasecmp.c, strerror.c, 2410 strlcat.c, strlcpy.c, strsignal.c, sudo_noexec.c, sudoreplay.c, 2411 utimes.c, vasgroups.c, zero_bytes.c: 2412 Make local includes consistent; use double quotes for local includes 2413 [ec9d52fff4b3] <1.7> 2414 24152011-02-04 Todd C. Miller <Todd.Miller@courtesan.com> 2416 2417 * error.c, getprogname.c, memrchr.c, sigaction.c, strcasecmp.c, 2418 strerror.c, strlcat.c, strlcpy.c, strsignal.c, zero_bytes.c: 2419 Must include config.h before any other headers. 2420 [3c23ec625df0] <1.7> 2421 2422 * aclocal.m4, configure: 2423 fix --with-iologdir=no 2424 [ef60ca8b3789] <1.7> 2425 2426 * aclocal.m4, configure: 2427 fix typo that broke --with-iologdir 2428 [fca175fdfd81] <1.7> 2429 24302011-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 2431 2432 * NEWS: 2433 sync for 1.7.5b3 2434 [744e2e78ef5a] <1.7> 2435 2436 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 2437 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 2438 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 2439 1.7.5b3 2440 [7a24576e35ac] <1.7> 2441 2442 * sudoers.cat, sudoers.man.in, sudoers.pod: 2443 Attempt to clarify how users and groups interact in Runas_Specs 2444 [9e8c2fb328d0] <1.7> 2445 2446 * exec.c, exec_pty.c: 2447 Do not handle SIGARLM specially, just pass it through. 2448 [944978b640b5] <1.7> 2449 2450 * exec.c, exec_pty.c: 2451 Pass SIGUSR1/SIGUSR2 through to the child. 2452 [774506c977df] <1.7> 2453 2454 * exec.c: 2455 Made tcsetpgrp() bits conditional on HAVE_TCSETPGRP 2456 [386f69132ad4] <1.7> 2457 2458 * exec.c: 2459 Use pid_t not int and check the return value of kill() 2460 [5f15c3304a1d] <1.7> 2461 24622011-02-02 Todd C. Miller <Todd.Miller@courtesan.com> 2463 2464 * exec.c: 2465 In non-pty mode before continuing the child, make it the foreground 2466 pgrp if possible. Fixes resuming a shell. 2467 [dfaadefcc6c6] <1.7> 2468 2469 * exec_pty.c: 2470 If we get a signal other than SIGCHLD in the monitor, pass it 2471 directly to the child. 2472 [7e638105bfaf] <1.7> 2473 2474 * exec.c, exec_pty.c, sudo.h: 2475 Save signal state before changing handlers and restore before we 2476 execute the command. 2477 [83278957e630] <1.7> 2478 24792011-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 2480 2481 * toke.c, toke.l: 2482 match quoted strings the same way whether in a Defaults line or as a 2483 user/group/netgroup name. Fixes escaped double quotes in quoted 2484 user/group/netgroup names. 2485 [c2b486b12951] <1.7> 2486 2487 * iolog.c: 2488 Use a char array to map a number to a base36 digit. 2489 [d626ded3312d] <1.7> 2490 2491 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 2492 Be clear about what versions of sudo support new LDAP attributes. 2493 Fix up some formatting of attribute names. Minor other tweaks. 2494 [f7bd586ec755] <1.7> 2495 24962011-01-31 Todd C. Miller <Todd.Miller@courtesan.com> 2497 2498 * sudoers2ldif: 2499 Add sudoOrder attribute to each entry Parse LOG_{INPUT,OUTPUT} tags 2500 [05a0d25b0f8d] <1.7> 2501 25022011-01-30 Todd C. Miller <Todd.Miller@courtesan.com> 2503 2504 * UPGRADE: 2505 Mention LDAP attribute compatibility status. 2506 [adb74ad2331b] <1.7> 2507 25082011-01-28 Todd C. Miller <Todd.Miller@courtesan.com> 2509 2510 * README.LDAP: 2511 Mention phpQLAdmin 2512 [5d80d6291142] <1.7> 2513 2514 * INSTALL, NEWS, config.h.in, configure, configure.in, defaults.c, 2515 sudoers.man.in, sudoers.pod: 2516 Add --disable-env-reset configure option. 2517 [803ce2f4d85c] <1.7> 2518 2519 * sudoers.cat, sudoers.man.in, sudoers.pod: 2520 Document that sudoers_locale also affects logging and email. 2521 [080dd4338374] <1.7> 2522 2523 * NEWS, config.h.in, configure, configure.in, logging.c: 2524 Do logging and email sending in the locale specified by the 2525 "sudoers_locale" setting ("C" by default). Email send by sudo 2526 includes MIME headers when the sudoers locale is not "C". 2527 [592e5b2a3d10] <1.7> 2528 25292011-01-25 Todd C. Miller <Todd.Miller@courtesan.com> 2530 2531 * NEWS, sudo.c: 2532 Perform command escaping for "sudo -s" and "sudo -i" after 2533 validating sudoers so the sudoers entries don't need to have all the 2534 backslashes. 2535 [7d39ea9924e4] <1.7> 2536 25372011-01-24 Todd C. Miller <Todd.Miller@courtesan.com> 2538 2539 * logging.c: 2540 Prepend "list " to the command logged when "sudo -l command" is used 2541 to make it clear that the command was listed, not run. 2542 [9bcd40c1bfe9] <1.7> 2543 2544 * parse.c: 2545 cosmetic change 2546 [8ce3d60d910d] <1.7> 2547 2548 * aix.c, alias.c, alloc.c, auth/afs.c, auth/aix_auth.c, 2549 auth/bsdauth.c, auth/dce.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, 2550 auth/pam.c, auth/passwd.c, auth/rfc1938.c, auth/secureware.c, 2551 auth/securid.c, auth/securid5.c, auth/sia.c, bsm_audit.c, check.c, 2552 defaults.c, env.c, exec.c, exec_pty.c, fileops.c, find_path.c, 2553 fnmatch.c, get_pty.c, getcwd.c, getline.c, getprogname.c, 2554 getspwuid.c, gettime.c, glob.c, goodpath.c, gram.c, gram.y, iolog.c, 2555 isblank.c, lbuf.c, ldap.c, list.c, logging.c, match.c, memrchr.c, 2556 mkstemps.c, mon_systrace.c, nanosleep.c, parse.c, parse_args.c, 2557 pwutil.c, redblack.c, set_perms.c, sigaction.c, snprintf.c, 2558 strerror.c, strlcat.c, strlcpy.c, strsignal.c, sudo.c, 2559 sudo_noexec.c, sudo_nss.c, sudoreplay.c, term.c, testsudoers.c, 2560 tgetpass.c, timestr.c, toke.c, toke.l, tsgetgrpw.c, utimes.c, 2561 vasgroups.c, visudo.c: 2562 standardize on "return foo;" rather than "return(foo);" or "return 2563 (foo);" 2564 [e05dd17dcec4] <1.7> 2565 2566 * NEWS: 2567 sync 2568 [bedc1e1bc7f8] <1.7> 2569 2570 * sudo.c: 2571 Do not reject sudoers file just because it is root-writable. 2572 [26634f322b04] <1.7> 2573 25742011-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 2575 2576 * NEWS: 2577 sync 2578 [c69b7537a020] <1.7> 2579 2580 * defaults.c: 2581 When setting default iolog_dir, dynamically allocate the string. 2582 [7ad2c0cbe865] <1.7> 2583 2584 * sudo_nss.c: 2585 For "sudo -U user -l" if user is not authorized on the host, say so. 2586 [9eb5673f2f22] <1.7> 2587 2588 * ldap.c: 2589 In sudo_ldap_lookup(), always do the initial sudoers check as the 2590 invoking user. If we are listing another user's privs we will do a 2591 separate lookup using list_pw later. 2592 [9b3ab41de717] <1.7> 2593 25942011-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 2595 2596 * sudoreplay.c: 2597 change an error() to errorx() 2598 [5a0409f6c52b] <1.7> 2599 2600 * sudoers.ldap.man.in, sudoers.ldap.pod: 2601 Update copyright year to 2011 2602 [8959c05dc270] <1.7> 2603 2604 * LICENSE, Makefile.in, aclocal.m4, check.c, configure.in, ldap.c, 2605 match.c, pwutil.c, sudo_nss.c, sudoers.man.in, sudoers.pod, term.c: 2606 Update copyright year to 2011 2607 [6367fb76120e] <1.7> 2608 2609 * ldap.c: 2610 Stash pointer to user group vector in LDAP handle and only reuse the 2611 query if it has not changed. We always allocate a new buffer when 2612 we reset the group vector so a simple pointer check is sufficient. 2613 [c129d1acf7d6] <1.7> 2614 2615 * sudo_nss.c: 2616 When listing, use separate lbufs for the defaults and the privileges 2617 and only print something if the number of privileges is non-zero. 2618 Fixes extraneous Defaults output for "sudo -U unauthorized_user -l". 2619 [66aaa54f2865] <1.7> 2620 2621 * sudo_nss.c: 2622 Check initgroups() return value. 2623 [973a67304e3b] <1.7> 2624 26252011-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 2626 2627 * NEWS: 2628 sync 2629 [deb822cce3dd] <1.7> 2630 26312011-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 2632 2633 * term.c: 2634 Clear, don't set, OPOST in c_oflag as was intended in e26055d17b72. 2635 [eacd774c37c0] <1.7> 2636 26372011-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 2638 2639 * sudo.c: 2640 delref list_pw before exit 2641 [0df5a53f3484] <1.7> 2642 26432011-01-14 Todd C. Miller <Todd.Miller@courtesan.com> 2644 2645 * mkpkg, sudo.pp: 2646 Add Requires line for audit-libs >= 1.4 for RHEL5+ 2647 [a1b544018f5b] <1.7> 2648 2649 * pp: 2650 sync with git version 2651 [eb187023bb73] <1.7> 2652 26532011-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 2654 2655 * sudoers.cat, sudoers.man.in, sudoers.pod: 2656 fix typo 2657 [075e92a756a1] <1.7> 2658 26592011-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 2660 2661 * NEWS: 2662 Update for sudo 1.7.4p5 2663 [11cb87598478] <1.7> 2664 2665 * schema.OpenLDAP, schema.iPlanet: 2666 Add sudoNotBefore and sudoNotAfter attributes as optional attributes 2667 to the sudoRole object class. From Andreas Mueller 2668 [73357eb1b269] <1.7> 2669 26702011-01-11 Todd C. Miller <Todd.Miller@courtesan.com> 2671 2672 * NEWS: 2673 Mention "sudo -g group" password check fix. 2674 [8299a2d939e8] <1.7> 2675 2676 * check.c: 2677 If the user is running sudo as himself but as a different group we 2678 need to prompt for a password. 2679 [fe8a94f96542] <1.7> 2680 26812011-01-10 Todd C. Miller <Todd.Miller@courtesan.com> 2682 2683 * NEWS, config.h.in, configure, configure.in, ldap.c, 2684 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 2685 Add support for TIMEOUT in ldap.conf, mapping to the OpenLDAP 2686 LDAP_OPT_TIMEOUT. There is no corresponding option for mozilla- 2687 derived LDAP SDKs but we can pass the timeout parameter to 2688 ldap_search_ext_s() or ldap_search_st() when possible. 2689 [8f9303326db7] <1.7> 2690 2691 * sudoers.cat, sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in: 2692 regen 2693 [d56ad7169e67] <1.7> 2694 2695 * NEWS, ldap.c, sudoers.ldap.pod: 2696 Add NETWORK_TIMEOUT as an alias for BIND_TIMELIMIT for compatibility 2697 with OpenLDAP ldap.conf files. 2698 [85e33e42c008] <1.7> 2699 2700 * pwutil.c: 2701 If user has no supplementary groups, fall back on checking the group 2702 file explicitly. 2703 [c536ddb16bb6] <1.7> 2704 27052011-01-04 Todd C. Miller <Todd.Miller@courtesan.com> 2706 2707 * NEWS: 2708 update 2709 [9f6e0ec3142a] <1.7> 2710 2711 * Makefile.in: 2712 Use "mv -f" when regenerating ChangeLog 2713 [b322b5995e7f] <1.7> 2714 2715 * match.c: 2716 Fix NULL dereference with "sudo -g group" when the sudoers rule has 2717 no runas user or group listed. Fixes RedHat bug Bug 667103. 2718 [c51e2be737b2] <1.7> 2719 27202010-12-21 Todd C. Miller <Todd.Miller@courtesan.com> 2721 2722 * term.c: 2723 Clear OPOST from c_oflag like we used to. Fixes screen-based 2724 editors such as vi. 2725 [e26055d17b72] <1.7> 2726 2727 * sudoers.pod: 2728 Clarify umask option description. From Reuben Thomas. 2729 [fb8bdcb54feb] <1.7> 2730 27312010-12-18 Todd C. Miller <Todd.Miller@courtesan.com> 2732 2733 * ldap.c, sudoers.ldap.pod: 2734 Pick last match in LDAP sudoers too 2735 [607801b83e25] <1.7> 2736 27372010-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 2738 2739 * aclocal.m4, configure, configure.in, def_data.c, def_data.h, 2740 def_data.in, defaults.c, iolog.c, sudoers.pod: 2741 Make the iolog dir configurable in sudoers 2742 [2630b2dba1b5] <1.7> 2743 27442010-12-07 Todd C. Miller <Todd.Miller@courtesan.com> 2745 2746 * pp: 2747 Add missing '*' that prevented the generic ELF case from matching. 2748 [b35bbb42736f] <1.7> 2749 2750 * pp: 2751 If file(1) can't identify the ELF binary type, try readelf(1). 2752 [8a73092d8898] <1.7> 2753 27542010-11-30 Todd C. Miller <Todd.Miller@courtesan.com> 2755 2756 * auth/kerb4.c, check.c, env.c, pwutil.c, sudo.c: 2757 Use %u to print uid/gid, not %lu and adjust casts to match. 2758 [e4eb94705a54] <1.7> 2759 2760 * NEWS: 2761 Update with latest changes 2762 [2c4209b20e3d] <1.7> 2763 2764 * sudoers.ldap.pod: 2765 Clarify ordering of entries and attributes 2766 [598748ec3804] <1.7> 2767 2768 * sudoers.ldap.pod: 2769 Fix typo and editing goof. 2770 [197a2fe65be5] <1.7> 2771 2772 * ldap.c: 2773 Make sure we don't dereference a NULL handle. 2774 [b0026541de1e] <1.7> 2775 27762010-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 2777 2778 * pp: 2779 Add support for RHEL 6 file modes that include a trailing dot on 2780 files with an SELinux security context 2781 [fcc1daaf4df0] <1.7> 2782 27832010-11-22 Todd C. Miller <Todd.Miller@courtesan.com> 2784 2785 * sudoers.pod: 2786 fix typo; from Michael T Hunter 2787 [46e70e2063af] <1.7> 2788 2789 * match.c: 2790 In sudoedit mode, assume command line arguments are paths and pass 2791 FNM_PATHNAME to fnmatch(). 2792 [6087ba0064ff] <1.7> 2793 27942010-11-20 Todd C. Miller <Todd.Miller@courtesan.com> 2795 2796 * configure, configure.in: 2797 Add workaround for an error in sys/types.h on HP-UX 11.23 when large 2798 file support is enabled. Defining _XOPEN_SOURCE_EXTENDED avoids the 2799 broken bits of the header file. 2800 [12da5b3249a3] <1.7> 2801 2802 * aclocal.m4: 2803 Fix SUDO_MAILDIR usage of AC_LANG_PROGRAM 2804 [c0105d26574a] <1.7> 2805 2806 * testsudoers.c, tsgetgrpw.c, tsgetgrpw.h: 2807 Avoid conflicts with system definitions in grp.h and pwd.h 2808 [a152522c9f13] <1.7> 2809 2810 * sudo.pp: 2811 For Tru64, strip off beta version. 2812 [a16213ec9c27] <1.7> 2813 2814 * zlib/gzguts.h: 2815 Include stdio.h after zlib.h, not before. We need the large file 2816 defines to come first. 2817 [389ea592d6c2] <1.7> 2818 28192010-11-17 Todd C. Miller <Todd.Miller@courtesan.com> 2820 2821 * ldap.c: 2822 Enlarge the array of entry wrappers int blocks of 100 entries to 2823 save on allocation time. From Andreas Mueller 2824 [db8da143e803] <1.7> 2825 2826 * ldap.c: 2827 Add back call to sudo_ldap_timefilter() in sudo_ldap_build_pass2() 2828 that was mistakenly dropped. 2829 [f6f1103f9971] <1.7> 2830 28312010-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 2832 2833 * TROUBLESHOOTING: 2834 Mention that sudo needs "ar" to build. 2835 [eef95d0abfbe] <1.7> 2836 2837 * configure, configure.in: 2838 Fail with a more useful error if "ar" is not found. 2839 [1ef3c8501bf5] <1.7> 2840 28412010-11-14 Todd C. Miller <Todd.Miller@courtesan.com> 2842 2843 * ldap.c: 2844 Reorder things to avoid most of the extra prototypes. 2845 [0541a55deb86] <1.7> 2846 2847 * ldap.c: 2848 Inline sudo_ldap_result_get_entry(), it is always called in 2849 situations where the bounds are already checked. 2850 [fa65cf4eaf5e] <1.7> 2851 2852 * ldap.c: 2853 Add user_matches and host_matches to struct ldap_result and set them 2854 in sudo_ldap_result_get() which is where the user and host checks 2855 live. When iterating through the ordered results, take the first 2856 match. Remove allowed flag from struct ldap_entry_wrapper, we just 2857 use first match. 2858 [9a008cd81685] <1.7> 2859 28602010-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 2861 2862 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 2863 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 2864 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 2865 Bump version and regen man pages 2866 [918433185f26] <1.7> 2867 2868 * ldap.c, schema.ActiveDirectory, schema.OpenLDAP, schema.iPlanet, 2869 sudoers.ldap.pod: 2870 Merge in ordered LDAP entry support from Andreas Mueller. 2871 [21b8071c2f28] <1.7> 2872 28732010-11-11 Todd C. Miller <Todd.Miller@courtesan.com> 2874 2875 * ldap.c, schema.ActiveDirectory, schema.OpenLDAP, schema.iPlanet, 2876 sudoers.ldap.pod: 2877 Add timed entry support from Andreas Mueller. 2878 [10b121c46a1c] <1.7> 2879 2880 * ldap.c: 2881 Use efree() not free() and remove malloc.h include since we never 2882 directly call malloc() or free(). 2883 [f2184b2a0646] <1.7> 2884 28852010-11-10 Todd C. Miller <Todd.Miller@courtesan.com> 2886 2887 * Makefile.in, getdate.c, gram.c, toke.c: 2888 Include config.h before any other includes to make sure we get the 2889 right value for _FILE_OFFSET_BITS. 2890 [5a8c12426942] <1.7> 2891 28922010-11-09 Todd C. Miller <Todd.Miller@courtesan.com> 2893 2894 * sudo.pp: 2895 set PSTAMP for Solaris and move the backend-specific bits to their 2896 own %if [xxx] %endif blocks in %set. 2897 [0d93cb5d009a] <1.7> 2898 2899 * pp: 2900 sync with git repo 2901 [e052d78dde35] <1.7> 2902 29032010-11-03 Todd C. Miller <Todd.Miller@courtesan.com> 2904 2905 * Makefile.in: 2906 remove zlib/zconf.h for distclean 2907 [5cf14594d014] <1.7> 2908 2909 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 2910 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 2911 regen man pages for 1.7.5 2912 [29253a721cfd] <1.7> 2913 2914 * configure: 2915 regen 2916 [5b09c0dd9279] <1.7> 2917 2918 * NEWS: 2919 Update 1.7.5 entries. 2920 [73a7b2c01db4] <1.7> 2921 29222010-11-02 Todd C. Miller <Todd.Miller@courtesan.com> 2923 2924 * Makefile.in: 2925 Include zlib in the tar file. 2926 [3b7900c3f2af] <1.7> 2927 29282010-10-28 Todd C. Miller <Todd.Miller@courtesan.com> 2929 2930 * INSTALL: 2931 Better --enable-zlib description 2932 [0ca9936a7271] <1.7> 2933 2934 * mkpkg: 2935 Use system zlib on Linux Let configure decide on Solaris For all 2936 others, use builtin zlib 2937 [58e1b4383b58] <1.7> 2938 2939 * LICENSE, Makefile.in, config.h.in, configure, configure.in, 2940 license.pod, zlib/adler32.c, zlib/compress.c, zlib/crc32.c, 2941 zlib/crc32.h, zlib/deflate.c, zlib/deflate.h, zlib/gzclose.c, 2942 zlib/gzguts.h, zlib/gzlib.c, zlib/gzread.c, zlib/gzwrite.c, 2943 zlib/infback.c, zlib/inffast.c, zlib/inffast.h, zlib/inffixed.h, 2944 zlib/inflate.c, zlib/inflate.h, zlib/inftrees.c, zlib/inftrees.h, 2945 zlib/trees.c, zlib/trees.h, zlib/uncompr.c, zlib/zconf.h.in, 2946 zlib/zlib.h, zlib/zutil.c, zlib/zutil.h: 2947 Add local copy of zlib for systems that lack it. 2948 [060627a4a413] <1.7> 2949 29502010-10-12 Todd C. Miller <Todd.Miller@courtesan.com> 2951 2952 * Makefile.in: 2953 Don't overwrite ChangeLog if we can't run hg 2954 [8cad8bfce9ee] <1.7> 2955 2956 * configure, configure.in: 2957 HP-UX 10.20 libc has an incompatible getline() 2958 [6ae1631c6993] <1.7> 2959 2960 * visudo.c: 2961 Quiet an HP-UX compiler warning. 2962 [b8eb3006d68b] <1.7> 2963 29642010-10-11 Todd C. Miller <Todd.Miller@courtesan.com> 2965 2966 * pp: 2967 Don't use run_as_superuser=false on HP-UX 2968 [2a9ec2750082] <1.7> 2969 2970 * pp: 2971 Update from git repo. Debian: version numbers now compliant with 2972 policy section 5.6.12 HP-UX: minimal changes needed to work on HP-UX 2973 10.20 2974 [cfe38672e358] <1.7> 2975 2976 * configure, configure.in: 2977 Go back to checking whether the compiler is ANSI C when detecting 2978 the HP-UX bundled C compiler. 2979 [563ef7333662] <1.7> 2980 2981 * configure, configure.in: 2982 Fix syntax error 2983 [96048f77d772] <1.7> 2984 2985 * auth/pam.c: 2986 If pam_acct_mgmt() returns PAM_AUTH_ERR print a (hopefully) more 2987 useful message and return AUTH_FATAL so sudo does not keep trying to 2988 validate the user. 2989 [fffa5e51ac47] <1.7> 2990 29912010-10-07 Todd C. Miller <Todd.Miller@courtesan.com> 2992 2993 * exec_pty.c: 2994 don't need ws_col here 2995 [049b4ef9c9ce] <1.7> 2996 2997 * check.c: 2998 Having a timestamp file defined is no longer indicative of tty 2999 tickets being enabled. Check def_tty_tickets directly. 3000 [6c3803c239d9] <1.7> 3001 3002 * exec_pty.c, lbuf.c: 3003 Fix TCGETWINSZ compat. 3004 [62233ba46ec7] <1.7> 3005 30062010-10-02 Todd C. Miller <Todd.Miller@courtesan.com> 3007 3008 * exec_pty.c, lbuf.c: 3009 Prefer newer TIOCGWINSZ ioctl to old TIOCGSIZE 3010 [0813e3030b1a] <1.7> 3011 30122010-10-01 Todd C. Miller <Todd.Miller@courtesan.com> 3013 3014 * set_perms.c: 3015 Sync set_project() with trunk. 3016 [646fd9bc0537] <1.7> 3017 3018 * ldap.c: 3019 When iterating over returned LDAP entries, keep looking at remaining 3020 matches even if we have a positive match. This catches negative 3021 matches that may exist in other entries and more closely match the 3022 sudoers file behavior. 3023 [8dce1dedb967] <1.7> 3024 3025 * pp: 3026 Add support for multiple package instances on Solaris. 3027 [5bcc048375db] <1.7> 3028 3029 * set_perms.c, sudo.c: 3030 Move set_project() into runas_setup(). Fixes a NULL deref when 3031 project support is enabled and sudo's -g flag is used without the 3032 -u flag. 3033 [6ffd892243ab] <1.7> 3034 3035 * exec.c: 3036 Add missing signal_pipe[0] to fdsr for the non-pty case. 3037 [3398af88db51] <1.7> 3038 3039 * mkpkg: 3040 Add --with-project for Solaris 3041 [25bd2aa83884] <1.7> 3042 3043 * README: 3044 Need ar and ranlib too 3045 [d09e632d0a93] <1.7> 3046 30472010-09-27 Todd C. Miller <Todd.Miller@courtesan.com> 3048 3049 * env.c: 3050 Preserve ODMDIR environment variable by default on AIX. 3051 [75266d18e4a7] <1.7> 3052 30532010-09-21 Todd C. Miller <Todd.Miller@courtesan.com> 3054 3055 * linux_audit.c: 3056 Ignore ECONNREFUSED from audit_log_user_command() which will occur 3057 if auditd is not running. 3058 [a686884684ca] <1.7> 3059 30602010-09-17 Todd C. Miller <Todd.Miller@courtesan.com> 3061 3062 * pp: 3063 Sync with git version 3064 [9a328aa25c53] <1.7> 3065 30662010-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 3067 3068 * defaults.c, fileops.c: 3069 Cast isblank argument to unsigned char. 3070 [64b9f3bed954] <1.7> 3071 30722010-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 3073 3074 * INSTALL, config.h.in, configure, configure.in, defaults.c, 3075 sudoers.cat, sudoers.man.in, sudoers.pod: 3076 Implement --with-umask-override configure flag. 3077 [5065008079df] <1.7> 3078 3079 * env.c: 3080 Take MODE_LOGIN_SHELL into account when initially setting reset_home 3081 instead of special-casing it later. 3082 [25e6b8419dea] <1.7> 3083 3084 * sudo.c: 3085 In login mode, make a copy of the runas user's pw_shell for 3086 NewArgv[0] because 1) we modify it and 2) it will runas_pw gets 3087 freed before exec. 3088 [4a0851a7688a] <1.7> 3089 3090 * env.c: 3091 Reset HOME for "sudo -i" even if HOME was listed in env_keep. 3092 [8dc31006a428] <1.7> 3093 3094 * sudo.c: 3095 Use SIG_SETMASK when resetting signal mask instead of SIG_UNBLOCK. 3096 [8751ef94b18d] <1.7> 3097 3098 * sudo.c: 3099 Reset signal mask at sudo startup time; we need to be able to rely 3100 on normal signal delivery to control the child process. 3101 [c986a4b6a942] <1.7> 3102 3103 * sigaction.c: 3104 Fix SIG_UNBLOCK emulation 3105 [f14264f8a0da] <1.7> 3106 31072010-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 3108 3109 * install-sh: 3110 Use sed instead of expr to split a flag from its argument. Fixes a 3111 problem with expr interpreting its arguments as a flag when they 3112 start with a dash. 3113 [16372da8a286] <1.7> 3114 3115 * lbuf.c: 3116 Back out rev e165f67d3127 3117 [e9b70079698d] <1.7> 3118 3119 * lbuf.c: 3120 Include sys/time.h for utimes() and struct timeval. 3121 [e165f67d3127] <1.7> 3122 3123 * snprintf.c: 3124 Quiet bogus compiler warnings. 3125 [176fceb8db3c] <1.7> 3126 3127 * missing.h: 3128 Declare innetgr() for HP-UX which is missing a declaration. Declare 3129 domainname() for HP-UX and Solaris which are missing a declaration. 3130 [0b4c1296d4da] <1.7> 3131 3132 * bsm_audit.c: 3133 Use __sun for consistency with the rest of the sources. 3134 [8f0db6350b3a] <1.7> 3135 3136 * pwutil.c: 3137 Don't try to delref a NULL group. 3138 [57e94fc5df3e] <1.7> 3139 3140 * alloc.c, lbuf.c: 3141 Include memory.h on systems that need it. 3142 [e43d8d8a0008] <1.7> 3143 31442010-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 3145 3146 * exec.c: 3147 Quiet gcc warnings on glibc systems that use warn_unused_result for 3148 write(2). 3149 [f22696affc78] <1.7> 3150 31512010-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 3152 3153 * NEWS, README, configure, configure.in: 3154 Update for sudo 1.7.5 3155 [62ed8c6cb7c2] <1.7> 3156 3157 * exec.c, exec_pty.c, list.c, list.h, sudo_exec.h: 3158 Instead of using a array to store received signals, open a pipe and 3159 have the signal handler write the signal number to one end and 3160 select() on the other end. This makes it possible to handle signals 3161 similar to I/O without race conditions. 3162 [2d9dd09a9fce] <1.7> 3163 3164 * INSTALL: 3165 --with-iologdir not --enable-iologdir 3166 [457471aaeda6] <1.7> 3167 31682010-09-09 Todd C. Miller <Todd.Miller@courtesan.com> 3169 3170 * visudo.c, visudo.pod: 3171 Make "visudo -c -f -" check the standard input. 3172 [8ed46ff3141a] <1.7> 3173 3174 * sudoers.pod: 3175 set_home and always_set_home have an effect if HOME is present in 3176 the env_keep list. 3177 [a2b26d62176d] <1.7> 3178 3179 * env.c: 3180 Make -H flag work when HOME is listed in env_keep. Also makes 3181 "set_home" and "always_set_home" override override HOME in env_keep. 3182 [91d842b6adc6] <1.7> 3183 31842010-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 3185 3186 * bsm_audit.c: 3187 Solaris BSM audit return EINVAL when auditing is not enabled, 3188 whereas OpenBSM returns ENOSYS. 3189 [bb9c94a8fa7d] <1.7> 3190 31912010-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 3192 3193 * toke.c, toke.l: 3194 Add missing LOG_INPUT/LOG_OUTPUT support in the lexer. 3195 [0a5519756bf1] <1.7> 3196 3197 * sudo.c: 3198 Set NewArgv[0] to the name of the pseudo-command we are running. 3199 Fixes a problem with "sudo -l" when auditing is enabled and the user 3200 is not allowed to run any commands on the host. Adapted from a patch 3201 from Daniel Kopecek. 3202 [694ed1a75a4a] <1.7> 3203 3204 * sudo.c: 3205 Update comment to reality. 3206 [de302f39566b] <1.7> 3207 3208 * missing.h: 3209 Need stdio.h for FILE *, not just NULL. 3210 [77cf303f5696] <1.7> 3211 32122010-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 3213 3214 * match.c: 3215 When matching the runas user and runas group (-u and -g command line 3216 options), keep track of runas group and runas user matches 3217 separately. Only return a positive match if we have a match for 3218 both runas user and runas group (if specified). 3219 [68d30216c13a] <1.7> 3220 32212010-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 3222 3223 * ldap.c, parse.c: 3224 Do not return -1 on error from the display functions; the call 3225 expects a return value >= 0. 3226 [e50e6ae4d06d] <1.7> 3227 3228 * ldap.c: 3229 display_bound_defaults now returns a count so make the stub return 3230 0, not 1. 3231 [97293ced4908] <1.7> 3232 3233 * fnmatch.c: 3234 Add #include of sys/types.h for .c files that include missing.h to 3235 be sure that size_t and ssize_t are defined. 3236 [a4f3070d0a2b] <1.7> 3237 32382010-09-03 Todd C. Miller <Todd.Miller@courtesan.com> 3239 3240 * get_pty.c: 3241 It looks like AIX doesn't need to push STREAMS modules for ptys. 3242 [62c281fcd4ad] <1.7> 3243 32442010-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 3245 3246 * error.c, getprogname.c, isblank.c, missing.h, mksiglist.c, 3247 sigaction.c, strerror.c, strsignal.c, sudo_noexec.c: 3248 Add #include of sys/types.h for .c files that include missing.h to 3249 be sure that size_t and ssize_t are defined. 3250 [2ffbbb12f322] <1.7> 3251 3252 * Makefile.in: 3253 Install sudoers file from the build dir not hte src dir. 3254 [a26afd8db531] <1.7> 3255 32562010-08-26 Todd C. Miller <Todd.Miller@courtesan.com> 3257 3258 * set_perms.c: 3259 If runas_pw changes, reset the stashed runas aux group vector. 3260 Otherwise, if runas_default is set in a per-command Defaults 3261 statement, the command runs with root's aux group vector (i.e. the 3262 one that was used when locating the command). 3263 [24a695707b67] <1.7> 3264 3265 * Makefile.in: 3266 Add target to generate sudoers file Remove generated sudoers file as 3267 part of distclean 3268 [448627fc35b6] <1.7> 3269 32702010-08-23 millert <millert@rh4-x86.home.courtesan.com> 3271 3272 * exec.c: 3273 When not logging I/O install a handler for SIGCONT and deliver it to 3274 the command upon resume. Fixes bugzilla #431 3275 [e84690aa67bd] <1.7> 3276 32772010-08-21 Todd C. Miller <Todd.Miller@courtesan.com> 3278 3279 * sudo.c, sudo.h: 3280 g/c unused auth_pw global 3281 [e30778d73c0b] <1.7> 3282 3283 * check.c, sudo.c: 3284 Move get_auth() into check.c where it is actually used. 3285 [3130e37787af] <1.7> 3286 3287 * sudo.c: 3288 Don't need to fork and wait when compiled with --disable-pam-session 3289 [2ae1bbe4437a] <1.7> 3290 32912010-08-20 Todd C. Miller <Todd.Miller@courtesan.com> 3292 3293 * lbuf.c: 3294 Convert a remaining puts() and putchar() to use the output function. 3295 [d68c213feb0f] <1.7> 3296 32972010-08-18 Todd C. Miller <Todd.Miller@courtesan.com> 3298 3299 * Makefile.in: 3300 Replace sudoers with sudoers.in in DISTFILES 3301 [616509f85d6c] <1.7> 3302 3303 * env.c: 3304 Set dupcheck to TRUE when setting new HOME value if !env_reset but 3305 always_set_home is true. Prevents a duplicate HOME in the 3306 environment (old value plus the new one) introduced in 9f97e4b43a4b. 3307 [2672ae047984] <1.7> 3308 3309 * configure, configure.in, sudoers, sudoers.in: 3310 Substitute sysconfdir in the installed sudoers file to get the 3311 correct path for sudoers.d. 3312 [ab14a68e546f] <1.7> 3313 33142010-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 3315 3316 * boottime.c, get_pty.c: 3317 Fix typos that prevented compilation on Irix; Friedrich Haubensak 3318 [a3e6c5a66890] <1.7> 3319 33202010-08-16 Todd C. Miller <Todd.Miller@courtesan.com> 3321 3322 * Makefile.in, aix.c, audit.c, boottime.c, compat.h, error.c, 3323 fnmatch.c, getcwd.c, getdate.c, getdate.y, getline.c, getprogname.c, 3324 gettime.c, glob.c, isblank.c, linux_audit.c, memrchr.c, missing.h, 3325 mksiglist.c, nanosleep.c, sesh.c, setsid.c, sigaction.c, snprintf.c, 3326 strcasecmp.c, strerror.c, strlcat.c, strlcpy.c, strsignal.c, sudo.h, 3327 sudo_noexec.c, sudoreplay.c, timestr.c, utimes.c, vasgroups.c, 3328 zero_bytes.c: 3329 Merge compat.h and missing.h into missing.h 3330 [905905c7a8f0] <1.7> 3331 33322010-08-14 Todd C. Miller <Todd.Miller@courtesan.com> 3333 3334 * auth/pam.c: 3335 If the user hits ^C while a password is being read, error out before 3336 reading any further passwords in the pam conversation function. 3337 Otherwise, if multiple PAM auth methods are required, the user will 3338 have to hit ^C for each one. 3339 [c8f6bc58fd86] <1.7> 3340 33412010-08-09 Todd C. Miller <Todd.Miller@courtesan.com> 3342 3343 * exec.c: 3344 Fix waitpid() loop termination condition. 3345 [97719b3259f2] <1.7> 3346 3347 * exec_pty.c: 3348 Use sudo_waitpid() instead of bare waitpid() 3349 [624a40269189] <1.7> 3350 33512010-08-07 Todd C. Miller <Todd.Miller@courtesan.com> 3352 3353 * sudo.pp: 3354 Set pp_kit_version and strip off patchlevel 3355 [814c87778567] <1.7> 3356 3357 * sudo.pp: 3358 Better handling of versions with a patchlevel. For rpm and deb, use 3359 the patchlevel+1 as the release. For AIX, use the patchlevel as the 3360 4th version number. For the rest, just leave the patchlevel in the 3361 version string. 3362 [d18ef30f0a72] <1.7> 3363 33642010-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 3365 3366 * auth/sudo_auth.c: 3367 For non-standalone auth methods, stop reading the password if the 3368 user enters ^C at the prompt. 3369 [59d2b1328d1e] <1.7> 3370 3371 * configure, configure.in: 3372 Don't print getspwuid as an auth method. 3373 [d35cf4628d9a] <1.7> 3374 3375 * Makefile.in, auth/passwd.c, auth/secureware.c, auth/sudo_auth.c, 3376 auth/sudo_auth.h, configure, configure.in, pwutil.c: 3377 No need to look up shadow password unless we are doing password- 3378 style authentication. This moves the shadow password lookup to the 3379 auth functions that need it. 3380 [10a85eebbf4c] <1.7> 3381 3382 * check.c: 3383 When removing/resetting the timestamp file ignore the tty ticket 3384 contents. 3385 [8b285f601ec0] <1.7> 3386 33872010-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 3388 3389 * sudo.c: 3390 delref sudo_user.pw, runas_pw and runas_gr immediately before we 3391 exec. 3392 [220be2de2f31] <1.7> 3393 3394 * sudo.c: 3395 Move calls to sudo_endgrent() and sudo_endpwent() to be after 3396 set_perms(), which may do passwd or group lookups. 3397 [883f0db94fd4] <1.7> 3398 33992010-08-04 Todd C. Miller <Todd.Miller@courtesan.com> 3400 3401 * check.c: 3402 Make sure we don't try to delref NULL. 3403 [19bc5a47db06] <1.7> 3404 3405 * pwutil.c: 3406 Add missing delref in user_in_group() 3407 [fafb278f47a6] <1.7> 3408 3409 * sudo.c: 3410 delref the old runas group in set_runasgr() 3411 [0a7dd113cb1f] <1.7> 3412 3413 * match.c: 3414 Repair usergr_matches() return value broken in last checkin. 3415 [460b7b6ca2ce] <1.7> 3416 3417 * check.c, get_pty.c, glob.c, ldap.c, match.c, pwutil.c, sudo.c, 3418 sudo.h: 3419 Reference count cached passwd and group structs. The cache holds 3420 one reference itself and another is added by sudo_getgr{gid,nam} and 3421 sudo_getpw{uid,nam}. The final ref on the runas and user passwd and 3422 group structs are persistent for now. 3423 [e414c67e11fd] <1.7> 3424 3425 * UPGRADE: 3426 Fix typo 3427 [0f443aa22e96] <1.7> 3428 34292010-08-03 Todd C. Miller <Todd.Miller@courtesan.com> 3430 3431 * check.c: 3432 Do not produce a warning for "sudo -k" if the ticket file does not 3433 exist. 3434 [eeaaa73d7f5b] <1.7> 3435 3436 * pwutil.c: 3437 Instead of caching struct passwd and struct group in the red-black 3438 tree, store a struct cache_item which includes both the key and 3439 datum. This allows us to user the actual name that was looked up as 3440 the key instead of the contents of struct passwd or struct group. 3441 This matters because the name in the database may not match what we 3442 looked up, due either to case folding or truncation (historically at 3443 8 characters). Also mark the disabled calls to sudo_freepwcache() 3444 and sudo_freegrcache() as broken since we use cached data for things 3445 like set_perms() and the logging functions. Fixing this would 3446 require making a copy of the structs for user and runas or adding a 3447 reference count (better). 3448 [2c1d8ec4fa5f] <1.7> 3449 3450 * check.c, exec_pty.c, get_pty.c, logging.c, sudoreplay.c, tgetpass.c, 3451 visudo.c: 3452 Quiet gcc warnings on glibc systems that use warn_unused_result for 3453 write(2) and others. 3454 [5faf88695c66] <1.7> 3455 34562010-08-02 Todd C. Miller <Todd.Miller@courtesan.com> 3457 3458 * toke.c, toke.l: 3459 Add %option noinput 3460 [8a5e05d6f71f] <1.7> 3461 3462 * aclocal.m4, configure: 3463 Add cross-compile defaults for remaining AC_TRY_RUN usage. 3464 [fb88d22eabc6] <1.7> 3465 34662010-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 3467 3468 * aclocal.m4, config.h.in, configure, configure.in, snprintf.c: 3469 Use AC_CHECK_MEMBER in SUDO_SOCK_SA_LEN Use AC_TYPE_LONG_LONG_INT 3470 and AC_CHECK_SIZEOF([long int]) instead of rolling our own. 3471 [5e7cc557a46e] <1.7> 3472 34732010-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 3474 3475 * .hgtags: 3476 Added tag SUDO_1_7_4 for changeset 2920a3b9d568 3477 [e929004d5102] <1.7> 3478 3479 * pp: 3480 Debian: Remove dots from decoded release number AIX: looser matching 3481 of file command output for AIX 5.1 3482 [2920a3b9d568] [SUDO_1_7_4] <1.7> 3483 3484 * .hgtags: 3485 Added tag SUDO_1_7_4 for changeset 0d844aa34c1d 3486 [cf65ddcec602] <1.7> 3487 34882010-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 3489 3490 * exec_pty.c: 3491 exec_monitor is static 3492 [0d844aa34c1d] <1.7> 3493 3494 * pp: 3495 Update to latest version 3496 [7b8a00defbd6] <1.7> 3497 34982010-07-28 Todd C. Miller <Todd.Miller@courtesan.com> 3499 3500 * sudo.pp: 3501 Let pp determine pp_aix_version itself. 3502 [c5ee7944af03] <1.7> 3503 3504 * INSTALL, config.h.in, configure, configure.in, mkpkg, sudo.c: 3505 Add support for Ubuntu admin flag file and enable it when building 3506 Ubuntu packages. 3507 [2d97501cda0c] <1.7> 3508 3509 * sudo.pp, sudoers: 3510 Add commented out SuSE-like targetpw settings 3511 [f4ad331ace46] <1.7> 3512 3513 * configure, configure.in: 3514 Only try to use +DAportable for non-GCC on hppa Check the value of 3515 $pic_flag insteaf of whether the compiler is ANSI C when detecting 3516 the HP-UX bundled C compiler. 3517 [654da0091c16] <1.7> 3518 3519 * configure, configure.in: 3520 Prevent configure from adding the -g flag unless in devel mode 3521 [e3c11f228c56] <1.7> 3522 35232010-07-27 Todd C. Miller <Todd.Miller@courtesan.com> 3524 3525 * sudo.pp: 3526 Go back to sudo-flavor to match existing packages and only use an 3527 underscore for those that need it. 3528 [1f78ecf3b990] <1.7> 3529 3530 * sudo.pp: 3531 Use sudo_$flavor instead of sudo-$flavor since that causes the least 3532 amount of trouble for the various package managers. 3533 [7e1e07115788] <1.7> 3534 3535 * mkpkg: 3536 Fix handling of the ldap flavor Remove destdir unless --debug was 3537 specified Make distclean before running configure if there is a 3538 Makefile present 3539 [2bde3925346d] <1.7> 3540 3541 * configure, configure.in: 3542 Back out version change in 5baf2187a138 3543 [bbc3a81afbba] <1.7> 3544 3545 * mkpkg: 3546 Pass extra args on to configure on HP-UX, if we don't have the HP C 3547 compiler, disable zlib to prevent gcc from finding it in 3548 /usr/local/lib. 3549 [87201c7f1116] <1.7> 3550 3551 * configure, configure.in, mkpkg: 3552 Use the HP ANSI C compiler on HP-UX if possible 3553 [5baf2187a138] <1.7> 3554 3555 * sudoreplay.c: 3556 Some getline() implementations (FreeBSD 8.0) do not ignore the 3557 length pointer when the line pointer is NULL as they should. 3558 [8652300785ed] <1.7> 3559 3560 * sudoreplay.c: 3561 Don't need to check for *cp being non-zero, isdigit() will do that. 3562 [107301a99b6a] <1.7> 3563 3564 * sudoreplay.c: 3565 Add setlocale() so the command line arguments that use floating 3566 point work in different locales. Since sudo now logs the timing 3567 data in the C locale we must Parse the seconds in the timing file 3568 manually instead of using strtod(). Furthermore, sudo 1.7.3 logged 3569 the number of seconds with the user's locale so if the decimal point 3570 is not '.' try using the locale-specific version. 3571 [2b8ed181e37c] <1.7> 3572 3573 * exec.c: 3574 Do I/O logging in the C locale so the floating point numbers in the 3575 timing file are not locale-dependent. 3576 [18abbca14078] <1.7> 3577 3578 * sudoreplay.c: 3579 Use errorx() not error() for thingsthat don't set errno. 3580 [a2e7c6793d26] <1.7> 3581 35822010-07-26 Todd C. Miller <Todd.Miller@courtesan.com> 3583 3584 * sudo.pp: 3585 Add Tru64 kit support 3586 [40e2d21aa17f] <1.7> 3587 3588 * pp: 3589 Better support for 1.2.3 style versions in Tru64 kits 3590 [f7133199a711] <1.7> 3591 3592 * pp: 3593 Remove apparently unnecessary use of sudo 3594 [a667a69eeab0] <1.7> 3595 3596 * Makefile.in: 3597 Create timedir as part of install-dirs target. 3598 [a2e394d694dd] <1.7> 3599 3600 * exec_pty.c: 3601 Handle ENXIO from read/write which can occur when reading/writing a 3602 pty that has gone away. Fixes bugzilla 422 3603 [142f4c2efa17] <1.7> 3604 3605 * pwutil.c: 3606 sudo_pwdup() was not expanding an empty pw_shell to _PATH_BSHELL 3607 [82e5e46bf458] <1.7> 3608 3609 * mkpkg: 3610 platform is a pp flag not a variable 3611 [9d0ab9b9bf0c] <1.7> 3612 3613 * Makefile.in, mkpkg, sudo.pp: 3614 Add simple arg parsing for mkpkg so we can set debug, flavor or 3615 platform. 3616 [8142ab01ccd9] <1.7> 3617 3618 * pp: 3619 Make rpm backend work on AIX 5.x 3620 [2467a79d0b4d] <1.7> 3621 36222010-07-25 Todd C. Miller <Todd.Miller@courtesan.com> 3623 3624 * sudoers: 3625 Add commented out Defaults entry for log_output 3626 [b3fe97e59ae0] <1.7> 3627 36282010-07-23 Todd C. Miller <Todd.Miller@courtesan.com> 3629 3630 * Makefile.in: 3631 Install binary files with -b~ to make a backup. Fixes "text file 3632 busy" error on HP-UX during install. 3633 [3563e3e0163a] <1.7> 3634 3635 * install-sh: 3636 "mv -f" on HP-UX doesn't unlink the destination first so add an 3637 explicit rm before moving the temporary into place. 3638 [3994af813c88] <1.7> 3639 3640 * configure, configure.in: 3641 Some more ${foo} -> $(foo) conversion for consistent Makefiles. 3642 [c214d50c32ec] <1.7> 3643 36442010-07-22 Todd C. Miller <Todd.Miller@courtesan.com> 3645 3646 * pathnames.h.in: 3647 Add missing include of maillock.h for Solaris 3648 [343f04b7a581] <1.7> 3649 3650 * NEWS, TROUBLESHOOTING, UPGRADE, configure, configure.in, 3651 sample.syslog.conf, sudoers.cat: 3652 Change the default syslog facility from local2 to authpriv (or auth 3653 if the operating system doesn't support authpriv). 3654 [949f39cf4a59] <1.7> 3655 3656 * Makefile.in, configure, configure.in, sudo.pp: 3657 Install sudoers as /etc/sudoers on RPM and debian systems where the 3658 package manager will not replace a user-modified configuration file. 3659 This fixes upgrades from the vendor sudo packages. 3660 [74c7ff01e880] <1.7> 3661 3662 * pp: 3663 RPM: use %config(noreplace) instead of %config for volatile This 3664 results in the new file being installed with a .rpmnew suffix 3665 instead of the file being replaced and the old one renamed with a 3666 .rpmsave suffix. 3667 [166133a4fb9e] <1.7> 3668 36692010-07-21 Todd C. Miller <Todd.Miller@courtesan.com> 3670 3671 * boottime.c, mkstemps.c: 3672 Include time.h for struct timeval. 3673 [50446e0b8398] <1.7> 3674 3675 * exec_pty.c: 3676 The return value of strsignal() may be const and should be treated 3677 as const regardless. 3678 [c035b17b50e3] <1.7> 3679 3680 * sudoers.cat, sudoers.man.in, sudoers.pod: 3681 Mention that 127.0.0.1 will not match, nor will localhost unless 3682 that is the actual host name. 3683 [e9977ec7ac4f] <1.7> 3684 3685 * Makefile.in: 3686 fix typo 3687 [f216d653404d] <1.7> 3688 3689 * Makefile.in, NEWS, README, UPGRADE, WHATSNEW: 3690 Rename WHATSNEW -> NEWS 3691 [f3ce0a462ca0] <1.7> 3692 3693 * pp: 3694 Updated pp with latest patches 3695 [cded68af5ba0] <1.7> 3696 3697 * WHATSNEW, exec.c, exec_pty.c, set_perms.c, sudo.c, sudo.h: 3698 If pam is in use, wait until the process has finished before calling 3699 pam_close_session(). 3700 [fb3d7de50a05] <1.7> 3701 3702 * sudoers.cat, sudoers.man.in: 3703 regen sudoers manual 3704 [7498a058eeb1] <1.7> 3705 3706 * UPGRADE, sudoers, sudoers.pod: 3707 Add commented out line to add HOME to env_keep and add a warning to 3708 the note about the HOME change in UPGRADE. 3709 [0f7e08f09b9f] <1.7> 3710 37112010-07-20 Todd C. Miller <Todd.Miller@courtesan.com> 3712 3713 * sudoreplay.c: 3714 Add LINE_MAX define for those without it. 3715 [6248dd44573c] <1.7> 3716 3717 * WHATSNEW: 3718 Mention that tty_tickets is now the default. 3719 [4cf26eaee5ba] <1.7> 3720 3721 * INSTALL, UPGRADE, config.h.in, configure, configure.in, defaults.c, 3722 sudoers.cat, sudoers.man.in, sudoers.pod: 3723 The tty_tickets option is now on by default. 3724 [73dd2b82a3a9] <1.7> 3725 3726 * WHATSNEW: 3727 Mention that AIX authdb support has been fixed. 3728 [9331829dc276] <1.7> 3729 3730 * aix.c: 3731 setauthdb() only sets the "old" registry if it was set by a previous 3732 call to setauthdb(). To restore the original value, passing NULL 3733 (or an empty string) to setauthdb() is sufficient. 3734 [d956fd763521] <1.7> 3735 37362010-07-19 Todd C. Miller <Todd.Miller@courtesan.com> 3737 3738 * sudoers.cat, sudoers.man.in, sudoers.pod: 3739 Mention new handling of HOME in always_set_home and set_home 3740 descriptions. 3741 [a69c9bed3164] <1.7> 3742 3743 * sudo.cat, sudo.man.in, sudo.pod: 3744 fix typo 3745 [9b90bb3e9187] <1.7> 3746 3747 * UPGRADE, WHATSNEW, env.c, sudo.cat, sudo.man.in, sudo.pod: 3748 Reset HOME when env_reset is enabled unless it is in env_keep 3749 [18223dfd1ac3] <1.7> 3750 3751 * sudoers.cat, sudoers.man.in, sudoers.pod: 3752 The default for set_logname has been "true" for some time now. 3753 [9f97e4b43a4b] <1.7> 3754 3755 * sudoers.cat, sudoers.man.in, sudoers.pod: 3756 Document that MAIL it set in env_reset mode. 3757 [dcf9ad98079e] <1.7> 3758 3759 * boottime.c: 3760 Add missing include of time.h 3761 [57bee414982d] <1.7> 3762 3763 * defaults.c, sudo.c: 3764 Check return value of setdefs() but don't stop setting defaults if 3765 we hit an unknown one. 3766 [a42cb2d6b7ed] <1.7> 3767 3768 * logging.c: 3769 Fix check for dup2() return value. 3770 [916cd7fdeba7] <1.7> 3771 3772 * visudo.c: 3773 Treat an unknown defaults entry as a parse error. 3774 [1f94675835d9] <1.7> 3775 3776 * env.c: 3777 Check KEPT_MAIL not DID_MAIL when determining whether to set MAIL in 3778 -i and env_reset mode. 3779 [aa6657ccfe01] <1.7> 3780 3781 * env.c: 3782 Add PYTHONUSERBASE to initial_badenv_table 3783 [93058374f0d9] <1.7> 3784 3785 * WHATSNEW, aclocal.m4, config.h.in, configure, configure.in, env.c, 3786 pathnames.h.in, sudo.cat, sudo.man.in, sudo.pod: 3787 If env_reset is enabled, set the MAIL environment variable based on 3788 the target user unless MAIL is explicitly preserved in sudoers. 3789 [d903c904dcd4] <1.7> 3790 37912010-07-17 Todd C. Miller <Todd.Miller@courtesan.com> 3792 3793 * pp: 3794 decode debian code names 3795 [2df0ecbc23b4] <1.7> 3796 3797 * WHATSNEW: 3798 fix typo 3799 [b66a95fa1869] <1.7> 3800 38012010-07-16 Todd C. Miller <Todd.Miller@courtesan.com> 3802 3803 * WHATSNEW: 3804 Add entry about SuSE bash script fix. 3805 [04af78fa281c] <1.7> 3806 3807 * sudo.c: 3808 Restore RLIMIT_NPROC after the uid switch if it appears that 3809 runas_setup() did not do it for us. Fixes a bash script problem on 3810 SuSE with RLIMIT_NPROC set to RLIM_INFINITY. 3811 [bb14802d48b1] <1.7> 3812 38132010-07-15 Todd C. Miller <Todd.Miller@courtesan.com> 3814 3815 * mkpkg, pp, sudo.pp: 3816 Restore the dot removal in the os version reported by polypkg. Adapt 3817 mkpkg and sudo.pp to the change. 3818 [83c7870130fe] <1.7> 3819 38202010-07-16 Todd C. Miller <Todd.Miller@courtesan.com> 3821 3822 * WHATSNEW: 3823 Mention polypkg 3824 [c5f6e40bbb58] <1.7> 3825 3826 * README, WHATSNEW: 3827 Update for sudo 1.7.4 3828 [0c688f1f8160] <1.7> 3829 3830 * INSTALL: 3831 document --with-pam-login 3832 [33ca3f6308ae] <1.7> 3833 3834 * sudoers.cat, sudoers.man.in, sudoers.pod: 3835 The tag is NOSETENV, not UNSETENV. From Petr Uzel. 3836 [95f37e63ca15] <1.7> 3837 38382010-07-15 Todd C. Miller <Todd.Miller@courtesan.com> 3839 3840 * sudo.pp: 3841 Include flavor in solaris package name 3842 [b6d56ccf367e] <1.7> 3843 3844 * mkpkg: 3845 Older shells don't support IFS= so set explictly to space, tab, 3846 newline. 3847 [336925525e17] <1.7> 3848 3849 * mkpkg: 3850 Use '=' not '==' in test 3851 [98c692271cfd] <1.7> 3852 3853 * mkpkg: 3854 Fix typo that prevented debian from matching 3855 [af4deec35e37] <1.7> 3856 3857 * mkpkg: 3858 Add missing prefix setting for debian 3859 [d0c1941cb6ec] <1.7> 3860 3861 * sudo.pp: 3862 Use tab indents to reduce the chance of problem with <<- Uncomment 3863 some env_keep lines for RHEL, SLES and Debian to more closely match 3864 the vendor sudoers files. 3865 [74ba26566cdc] <1.7> 3866 3867 * sudo.pp: 3868 Fix indentation Fix the debian %set section, pp does not set 3869 pp_deb_distro Uncomment %sudo line in sudoers for debian Add pam.d 3870 to %files for debian Remove the /etc/sudo-ldap.conf symlink on 3871 debian for ldap flavor 3872 [f15ff41b5afd] <1.7> 3873 3874 * sudoers: 3875 Add commented out env_keep entries, sample Aliases and a %sudo line 3876 for debian. 3877 [8264e4ed42dc] <1.7> 3878 3879 * configure, configure.in: 3880 Remove check for egrep; configure has its own 3881 [27b3d85ebf4f] <1.7> 3882 3883 * configure.in: 3884 Use enable_zlib instead of enableval for consistency 3885 [4a15cfd43d3e] <1.7> 3886 38872010-07-14 Todd C. Miller <Todd.Miller@courtesan.com> 3888 3889 * mkpkg: 3890 Enable zlib for linux distros 3891 [fcab91448bb0] <1.7> 3892 3893 * mkpkg: 3894 Add ldap flavor to default build 3895 [e35a577c8994] <1.7> 3896 3897 * mkpkg, sudo.pp: 3898 Simplify rpm linux distro settings 3899 [f30547765636] <1.7> 3900 3901 * UPGRADE, aclocal.m4, configure, configure.in, sudo.cat, sudo.man.in, 3902 sudoers.cat: 3903 Move time stamp files from /var/run/sudo to /var/{db,lib,adm}/sudo. 3904 [8c9440423d98] <1.7> 3905 3906 * Makefile.in, mkpkg, sudo.pp: 3907 Add ldap "flavor" for debian, controlled by the SUDO_FLAVOR 3908 environment variable. 3909 [9f418defc08a] <1.7> 3910 3911 * sudo.pp: 3912 Create sudo group on debian 3913 [4b0cc7b8b0b5] <1.7> 3914 3915 * mkpkg, sudo.pp: 3916 Add debian 4/5/6 and use the dot when doing version matches 3917 [d5184f0a1efc] <1.7> 3918 3919 * sudoers.cat, sudoers.man.in, sudoers.pod: 3920 Remove spurious "and"; from debian 3921 [8b9f2a5937bc] <1.7> 3922 3923 * aclocal.m4, configure: 3924 Use a loop when searching for mv, sendmail and sh 3925 [a1c7d19721a4] <1.7> 3926 3927 * aclocal.m4, configure, configure.in, sudoers.cat, sudoers.man.in, 3928 sudoers.pod, visudo.cat, visudo.man.in, visudo.pod: 3929 Substitute the value of EDITOR into the sudoers and visudo manuals. 3930 [f00dc9343f94] <1.7> 3931 39322010-07-13 Todd C. Miller <Todd.Miller@courtesan.com> 3933 3934 * mkpkg, pp, sudo.pp: 3935 Initial debian 4.0 support 3936 [6d73c000723f] <1.7> 3937 3938 * mkpkg: 3939 Some platforms need -fPIE instead of -fpie 3940 [8533a29633e8] <1.7> 3941 3942 * Makefile.in: 3943 Add packaging bits to DISTFILES 3944 [dea9f374f28b] <1.7> 3945 3946 * auth/pam.c: 3947 Only set PAM_RHOST for Solaris, where it is needed to avoid a bug. 3948 On Linux it causes a DNS lookup via libaudit. 3949 [22e04d2f5f0f] <1.7> 3950 3951 * sudo.psf: 3952 We now use pp to generate HP-UX packages 3953 [6c9f8ae6bc11] <1.7> 3954 39552010-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 3956 3957 * auth/pam.c: 3958 Fix indentation 3959 [e52e9e6338d5] <1.7> 3960 3961 * INSTALL, Makefile.in: 3962 isntall-man -> install-doc 3963 [02cc8198ea7a] <1.7> 3964 3965 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 3966 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 3967 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 3968 Bump version to 1.7.4 3969 [df6ce4ea908a] <1.7> 3970 3971 * INSTALL.binary, Makefile.binary.in, Makefile.in: 3972 Remove remaining bits of the old binary package 3973 [8d4f82c23c22] <1.7> 3974 3975 * sudo.pp: 3976 Use http://rc.quest.com/topics/polypkg/ for packaging 3977 [d71793085629] <1.7> 3978 3979 * Makefile.in, mkpkg, pp: 3980 Use http://rc.quest.com/topics/polypkg/ for packaging 3981 [675e505758c5] <1.7> 3982 3983 * install-sh: 3984 Just ignore the -c option, it is the default Add support for -d 3985 option 3986 [2adfb3a63231] <1.7> 3987 3988 * env.c, logging.c, pathnames.h.in: 3989 Use _PATH_STDPATH instead of _PATH_DEFPATH 3990 [2c22d54a1f02] <1.7> 3991 3992 * Makefile.in: 3993 Do not strip binaries. 3994 [bc84682b372c] <1.7> 3995 3996 * INSTALL, configure, configure.in: 3997 Add --insults=disabled configure option to allow people to build in 3998 insult support but have the insults disabled unless explicitly 3999 enabled in sudoers. 4000 [6d9f40db9cca] <1.7> 4001 40022010-07-10 Todd C. Miller <Todd.Miller@courtesan.com> 4003 4004 * env.c, sudoreplay.c: 4005 Fix K&R compilation 4006 [e44d3be7ab85] <1.7> 4007 40082010-07-09 Todd C. Miller <Todd.Miller@courtesan.com> 4009 4010 * auth/pam.c, config.h.in, configure, configure.in, env.c, sudo.c, 4011 sudo.h: 4012 Add support for a sudo-i pam.d file to be used for "sudo -i". 4013 Adapted from a RedHat patch. 4014 [2984c3831d88] <1.7> 4015 4016 * Makefile.in: 4017 Fix installation of sudo_noexec.so 4018 [d1f7ca8331b6] <1.7> 4019 4020 * Makefile.in, config.h.in, configure, configure.in, missing.h, 4021 mkstemp.c, mkstemps.c, sudo_edit.c: 4022 Use mkstemps() instead of mkstemp() in sudoedit. This allows 4023 sudoedit to preserve the file extension (if any) which may be used 4024 by the editor (like emacs) to choose the editing mode. 4025 [46399679d9ae] <1.7> 4026 40272010-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 4028 4029 * ldap.c, sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 4030 TLS_CACERT is now an alias for TLS_CACERTFILE. OpenLDAP uses 4031 TLS_CACERT, not TLS_CACERTFILE in its ldap.conf. Other LDAP client 4032 code, such as nss_ldap, uses TLS_CACERTFILE. Also document why you 4033 should avoid disabling TLS_CHECKPEER is possible. 4034 [1d626a5cf8c0] <1.7> 4035 40362010-07-07 Todd C. Miller <Todd.Miller@courtesan.com> 4037 4038 * toke.c, toke.l: 4039 Add suport for negated user/host/command lists in a Defaults entry. 4040 E.g. Defaults:!baduser noexec 4041 [24f07a805dce] <1.7> 4042 40432010-07-01 Todd C. Miller <Todd.Miller@courtesan.com> 4044 4045 * sudoers.ldap.pod: 4046 fix typo. 4047 [d5f2922cecf2] <1.7> 4048 40492010-06-29 Todd C. Miller <Todd.Miller@courtesan.com> 4050 4051 * .hgtags: 4052 Added tag SUDO_1_7_3 for changeset 72fd1f510a08 4053 [cc8b2277e17e] <1.7> 4054 4055 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 4056 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 4057 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 4058 Sudo 1.7.3 GA 4059 [72fd1f510a08] [SUDO_1_7_3] <1.7> 4060 4061 * alias.c, alloc.c, auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, 4062 auth/dce.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, 4063 auth/passwd.c, auth/rfc1938.c, auth/secureware.c, auth/securid.c, 4064 auth/securid5.c, auth/sia.c, auth/sudo_auth.c, boottime.c, check.c, 4065 defaults.c, env.c, exec.c, exec_pty.c, fileops.c, find_path.c, 4066 fnmatch.c, get_pty.c, getcwd.c, getdate.c, getdate.y, getline.c, 4067 getspwuid.c, glob.c, goodpath.c, gram.c, gram.y, interfaces.c, 4068 iolog.c, lbuf.c, ldap.c, logging.c, match.c, parse.c, parse_args.c, 4069 pwutil.c, set_perms.c, snprintf.c, sudo.c, sudo_edit.c, sudo_nss.c, 4070 sudoreplay.c, term.c, testsudoers.c, tgetpass.c, toke.c, toke.l, 4071 tsgetgrpw.c, visudo.c: 4072 Include strings.h even if string.h exists since they may define 4073 different things. Fixes warnings on AIX and others. 4074 [7c6de7fb5dba] <1.7> 4075 4076 * env.c: 4077 Do not rely on env.env_len when unsetting a variable, just use the 4078 NULL terminator. 4079 [faf088613ce5] <1.7> 4080 4081 * env.c: 4082 In unsetenv() check for NULL or empty name as per POSIX 1003.1-2008 4083 [47f8dfcc7a48] <1.7> 4084 40852010-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 4086 4087 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 4088 Mention that multiple URI lines are merged into a single one. 4089 [1dc0ac5929bf] <1.7> 4090 4091 * WHATSNEW: 4092 Document AIX fixes 4093 [be36e8a6dddd] <1.7> 4094 40952010-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 4096 4097 * env.c, sudo.c, sudo.h: 4098 For env_init() just use environ not the envp from main(). 4099 [d4f3e374caeb] <1.7> 4100 41012010-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 4102 4103 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 4104 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 4105 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 4106 Update version to 1.7.3rc1 4107 [fe43fe79070d] <1.7> 4108 4109 * TODO: 4110 fqdn issue is resolved 4111 [f35cb63eb74b] <1.7> 4112 4113 * env.c: 4114 In unsetenv(), assign ep in the for loop instead of doing it 4115 earlier. This version of the code does not change env.envp in 4116 between when ep is assigned and when it is used but older versions 4117 (e.g. 1.7.2) do. 4118 [a4cd29c862c9] <1.7> 4119 4120 * aix.c: 4121 Use S_REGISTRY instead of S_AUTHSYSTEM as the argument to 4122 getuserattr() when fetching the administrative domain to be used by 4123 setauthdb(). This was suggested by AIX support and is consistent 4124 with what OpenSSH does. 4125 [d3109706ec85] <1.7> 4126 4127 * vasgroups.c: 4128 Use warningx() instead of log_error() since the latter is not 4129 available to visudo or testsudoers. This does mean that they don't 4130 end up in syslog. 4131 [0174e89f983b] <1.7> 4132 4133 * sudo.c: 4134 Defer call to sudo_nonunix_groupcheck_cleanup() until after we have 4135 closed the sudoers sources. From Quest sudo. 4136 [c1b33e3e0f9e] <1.7> 4137 4138 * pwutil.c: 4139 Ignore case when matching user/group names in the cache. From Quest 4140 sudo. 4141 [72df368a8a0e] <1.7> 4142 41432010-06-24 Todd C. Miller <Todd.Miller@courtesan.com> 4144 4145 * config.h.in, configure, configure.in, selinux.c: 4146 Add check for setkeycreatecon() when --with-selinux is specified. 4147 [24144c52c0cc] <1.7> 4148 4149 * configure, configure.in: 4150 Bump version to 1.7.3b5 Error out if libaudit.h is missing or 4151 ununable when --with-linux-audit was specified 4152 [215c7653d9bc] <1.7> 4153 4154 * aix.c: 4155 K&R function declaration for aix_setauthdb() 4156 [82da12d222a6] <1.7> 4157 4158 * env.c, sudo.c, sudo.h: 4159 If env_init() was called implicitly via getenv(), setenv() or 4160 putenv() just use the specified envp instead of mallocing a new 4161 copy. This prevents an infinite loop on OpenBSD which calls 4162 getenv() from malloc() to get MALLOC_OPTIONS. 4163 [8e82ce63f774] <1.7> 4164 4165 * ldap.c: 4166 Add support for multiple URI lines by joining the contents and 4167 passing the result to ldap_initialize. 4168 [b4e10b2ffdb1] <1.7> 4169 41702010-06-23 Todd C. Miller <Todd.Miller@courtesan.com> 4171 4172 * pwutil.c, set_perms.c, sudo_nss.c: 4173 Bracket initgroups with calls to aix_setauthdb() and 4174 aix_restoreauthdb() 4175 [363dbe449f1c] <1.7> 4176 4177 * aix.c: 4178 Include compat.h before alloc.h to get __P 4179 [819a2667ffd7] <1.7> 4180 4181 * auth/aix_auth.c: 4182 Include usersec.h for authenticate() prototype 4183 [2b8dd2b67131] <1.7> 4184 4185 * aix.c: 4186 Add missing includes Add missing trailing NUL in userinfo string 4187 [8deaedf44943] <1.7> 4188 41892010-06-22 Todd C. Miller <Todd.Miller@courtesan.com> 4190 4191 * HISTORY, history.pod: 4192 Mention when LDAP was incorporated. 4193 [4e6c8ec4f67c] <1.7> 4194 41952010-06-21 Todd C. Miller <Todd.Miller@courtesan.com> 4196 4197 * configure: 4198 Define _LINUX_SOURCE_COMPAT on AIX for strsignal() prototype, it is 4199 not covered by _ALL_SOURCE. 4200 [3657f1b181b9] <1.7> 4201 4202 * pwutil.c: 4203 Include usersec.h on AIX to get IDtouser() prototype. 4204 [11483bbe15c7] <1.7> 4205 4206 * configure.in: 4207 Define _LINUX_SOURCE_COMPAT on AIX for strsignal() prototype, it is 4208 not covered by _ALL_SOURCE. 4209 [fd48e6e2136b] <1.7> 4210 42112010-06-18 Todd C. Miller <Todd.Miller@courtesan.com> 4212 4213 * iolog.c: 4214 Add a cast to quiet a compiler warning. 4215 [51e9d419bd83] <1.7> 4216 4217 * boottime.c: 4218 Use memset() instead of zero_bytes() since we don't include sudo.h 4219 [f310b2123ba9] <1.7> 4220 4221 * Makefile.in: 4222 getline.o is already in LIB_OBJS, do not need it in COMMON_OBJS 4223 [c8750c2d75ab] <1.7> 4224 4225 * getdate.c, getdate.y: 4226 Quiet a compiler warning. 4227 [9f231be15958] <1.7> 4228 4229 * defaults.c, sudo.c: 4230 Call set_fqdn() after sudoers has parsed instead of inline as a 4231 callback. 4232 [26d413ddb6dd] <1.7> 4233 4234 * WHATSNEW: 4235 Do not call set_fqdn() until sudoers parses (where is gets run as a 4236 callback). 4237 [582453a993a1] <1.7> 4238 4239 * sudo.c: 4240 Do not call set_fqdn() until sudoers parses (where is gets run as a 4241 callback). Otherwise, if sudo is built --with-fqdn the fqdn will be 4242 set even if !fqdn is set in sudoers. 4243 [aa01e867d1bb] <1.7> 4244 4245 * configure, configure.in, sudo.cat, sudo.man.in, sudoers.cat, 4246 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 4247 sudoreplay.cat, sudoreplay.man.in, visudo.cat, visudo.man.in: 4248 Bump version to 1.7.3b4 4249 [c1c5a73766b6] <1.7> 4250 4251 * WHATSNEW: 4252 mention the change in tty ticket behavior when there is no tty 4253 [93ddde63e453] <1.7> 4254 4255 * TODO: 4256 remove done items 4257 [9601b2e8dcef] <1.7> 4258 4259 * aix.c: 4260 Remove comment; NAME in usrinfo should be user name. 4261 [eb46f1e8ea08] <1.7> 4262 4263 * check.c: 4264 Do not update tty ticket if there is no tty. 4265 [e64e8c8f2286] <1.7> 4266 4267 * sudo.cat, sudo.man.in, sudo.pod: 4268 No longer need to use -- with the -s flag 4269 [e45c18dd79dc] <1.7> 4270 4271 * Makefile.in: 4272 Add missing $(srcdir) to sudo.man.in target 4273 [2bd89f6ca9f3] <1.7> 4274 4275 * Makefile.in: 4276 Do not rely on BSD make's $> 4277 [cb328b82cb92] <1.7> 4278 4279 * configure, configure.in: 4280 Set timedir to /var/db/sudo for darwin to match Apple sudo's 4281 location 4282 [860c7f1b001f] <1.7> 4283 42842010-06-16 Todd C. Miller <Todd.Miller@courtesan.com> 4285 4286 * Makefile.in, configure, configure.in: 4287 Move aix.o from SUDO_OBJS to COMMON_OBJS 4288 [f8a9bdf346c1] <1.7> 4289 4290 * config.h.in, configure, configure.in, defaults.c, iolog.c, 4291 sudoreplay.c: 4292 Check for zlib.h in addition to libz. 4293 [fb77e44d5196] <1.7> 4294 4295 * Makefile.in, exec.c, exec_pty.c, sudo.h, sudo_exec.h: 4296 Move functions and symbols shared between exec.c and exec_pty.c into 4297 sudo_exec.h. 4298 [e798d945424e] <1.7> 4299 4300 * sudo.h: 4301 Add missing prototypes for aix_setauthdb and aix_restoreauthdb 4302 [8bc2af6d4e17] <1.7> 4303 4304 * Makefile.in: 4305 Comment out rules to build .man.in and .cat files unless --with- 4306 devel 4307 [81d6726a19ab] <1.7> 4308 4309 * aix.c, pwutil.c, set_perms.c, sudo.h: 4310 Fix AIX compilation problems. 4311 [7d95f73eca42] <1.7> 4312 4313 * sudo.c: 4314 Cast isalnum() arg to unsigned char. 4315 [5fff9a81af00] <1.7> 4316 4317 * WHATSNEW: 4318 Add Linux audit support. 4319 [e59e0670ba79] <1.7> 4320 4321 * sudo.c: 4322 Quote any non-alphanumeric characters other than '_' or '-' when 4323 passing a command to be run via the shell for the -s and -i options. 4324 [d35a3f4cb3c0] <1.7> 4325 4326 * sudo.c: 4327 Add missing braces that broke -i mode. 4328 [7fe124b078ec] <1.7> 4329 4330 * linux_audit.c: 4331 Fix linux_audit_command() return value 4332 [0c582476181c] <1.7> 4333 43342010-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 4335 4336 * Makefile.in, linux_audit.c, linux_audit.h: 4337 Add Linux audit support. 4338 [b207dc9960de] <1.7> 4339 43402010-06-16 Todd C. Miller <Todd.Miller@courtesan.com> 4341 4342 * INSTALL, audit.c, bsm_audit.c, config.h.in, configure, configure.in, 4343 logging.h, selinux.c: 4344 Add Linux audit support. 4345 [26ae31d7ff93] <1.7> 4346 43472010-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 4348 4349 * sudoreplay.c, sudoreplay.cat, sudoreplay.man.in, sudoreplay.pod: 4350 Sync sudoreplay with trunk 4351 [65b780cccfa5] <1.7> 4352 4353 * exec_pty.c: 4354 Remove an XXX 4355 [8304ac649241] <1.7> 4356 4357 * aix.c, configure, configure.in, pwutil.c, set_perms.c, sudo.h: 4358 Set usrinfo for AIX Set adminstrative domain for the process when 4359 looking up user's password info and when preparing for execve(). 4360 [52b48cbe97fd] <1.7> 4361 4362 * ldap.c, parse.c: 4363 Better prefix determination now that we can't rely on len==0 to tell 4364 the beginning on an entry. 4365 [32f1875d9605] <1.7> 4366 4367 * WHATSNEW, ldap.c, sudoers.ldap.cat, sudoers.ldap.man.in, 4368 sudoers.ldap.pod: 4369 Add support for multiple sudoers_base entries in ldap.conf. From 4370 Joachim Henke 4371 [3c0b59fce7b4] <1.7> 4372 4373 * configure, configure.in: 4374 Remove duplicate setsid check 4375 [7712d6d52da1] <1.7> 4376 4377 * Makefile.in, config.h.in, configure, configure.in, exec_pty.c, 4378 logging.c, missing.h, setsid.c: 4379 Move setsid emulation into setsid.c 4380 [f24743c9e4e9] <1.7> 4381 4382 * exec_pty.c, logging.c, selinux.c, sudo.c, tgetpass.c: 4383 Check for dup2() failure. 4384 [b1b6ba761b61] <1.7> 4385 4386 * config.h.in, configure, configure.in: 4387 Remove dup2 check, it is not optional. 4388 [cfbe5f3b5956] <1.7> 4389 43902010-06-14 Todd C. Miller <Todd.Miller@courtesan.com> 4391 4392 * WHATSNEW: 4393 Add mbr_check_membership support and SELinux fixes 4394 [af1936a7cf2f] <1.7> 4395 4396 * Makefile.in: 4397 Sync SRCS and DISTFILES with reality 4398 [0971b5dcb1be] <1.7> 4399 4400 * INSTALL: 4401 Update OS specific notes. Delete some really ancient ones and move 4402 older ones to the end of the list. 4403 [872dd8b437a8] <1.7> 4404 4405 * README: 4406 Bump for sudo 1.7.3 Merge some changes from trunk 4407 [a3088c75bf22] <1.7> 4408 4409 * selinux.c, sudo.c: 4410 Call selinux_restore_tty() as part of cleanup() so it gets called 4411 from error()/errorx() 4412 [0197c07d4c1e] <1.7> 4413 4414 * compat.h: 4415 No longer use SA_NOCLDSTOP 4416 [73ca654cd3f8] <1.7> 4417 4418 * interfaces.h, match.c: 4419 Move union sudo_in_addr_un into interfaces.h 4420 [c84bda7c332a] <1.7> 4421 4422 * pathnames.h.in: 4423 Update copyright year 4424 [94871f44206b] <1.7> 4425 4426 * HISTORY, LICENSE, aix.c, alias.c, alloc.h, boottime.c, bsm_audit.h, 4427 compat.h, defaults.c, defaults.h, env.c, fileops.c, find_path.c, 4428 gettime.c, gram.y, history.pod, lbuf.h, license.pod, logging.c, 4429 match.c, missing.h, nanosleep.c, parse.h, set_perms.c, 4430 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod, 4431 sudoreplay.c, term.c, tgetpass.c, toke.l, visudo.c, visudo.cat, 4432 visudo.man.in, visudo.pod: 4433 Update copyright year 4434 [4cfb47c799b8] <1.7> 4435 4436 * Makefile.in: 4437 Remove varsub as part of clean 4438 [61f04a21b0bb] <1.7> 4439 4440 * match.c: 4441 Quiet a compiler warning. 4442 [06d8cfe916c8] <1.7> 4443 4444 * getdate.c, getdate.y: 4445 Quiet a compiler warning. 4446 [473d2b7d44a1] <1.7> 4447 4448 * ldap.c, sudo.h: 4449 Make the remaining functions in ldap.c static 4450 [ba555565b30a] <1.7> 4451 4452 * ldap.c: 4453 Make private functions static. Diff from Joachim Henke 4454 [1603035b1863] <1.7> 4455 4456 * schema.ActiveDirectory: 4457 Updates from Alain Roy to provide better examples for importing the 4458 schema and to fix problems caused by Windows validating attributes 4459 which have not yet been added before committing the changes. 4460 [83f11ae00f19] <1.7> 4461 44622010-06-12 Todd C. Miller <Todd.Miller@courtesan.com> 4463 4464 * Makefile.in, configure, configure.in, sudo.cat, sudoers.cat: 4465 Generate .cat files directly from .man.in instead of .man using 4466 default values in configure.in 4467 [0a92b41c5ce5] <1.7> 4468 44692010-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 4470 4471 * configure, configure.in, sudo.c, sudo_usage.h.in: 4472 Print configure args with verbose version information. 4473 [ca4a5fcf0af8] <1.7> 4474 4475 * visudo.c: 4476 Remove tfd from struct sudoersfile; it is not used. Add prev pointer 4477 to struct sudoersfile. Declare list of sudoersfile using TQ_DECLARE. 4478 Use tq_append to append sudoers entries to the tail queue. 4479 [344c631d0d43] <1.7> 4480 44812010-06-10 Todd C. Miller <Todd.Miller@courtesan.com> 4482 4483 * WHATSNEW: 4484 Describe tty timestamp improvements 4485 [136b0f832903] <1.7> 4486 4487 * toke.c, toke.l: 4488 A comment character may not be part of a command line argument 4489 unless it is quoted with a backslash. Fixes parsing of: 4490 testuser ALL=NOPASSWD: /usr/bin/wl #comment foo bar closes bz #441 4491 [2a0c82ffedde] <1.7> 4492 4493 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in: 4494 regen 4495 [c9fddd23c7e1] <1.7> 4496 4497 * sudoers.pod: 4498 Make this read a little bit better when passwd_timeout is 0. 4499 [51644950823f] <1.7> 4500 4501 * Makefile.in: 4502 Use the --file argument to config.status instead of setting 4503 CONFIG_FILES 4504 [fc2b42c60b5d] <1.7> 4505 4506 * sudo.man.pl, sudo.pod: 4507 Attempt to handle a default password prompt timeout of zero more 4508 gracefully. 4509 [478b8e720993] <1.7> 4510 4511 * toke.c, toke.l: 4512 Do not override value of keepopen global, instead restore it to the 4513 value we pushed onto the stack when popping. 4514 [dc370d57a668] <1.7> 4515 4516 * exec.c, exec_pty.c, logging.c, mon_systrace.c, tgetpass.c: 4517 Use SA_INTERRUPT in sa_flags 4518 [3845c6637361] <1.7> 4519 4520 * getdate.c, getdate.y, ldap.c, sudoreplay.c: 4521 Silence some compiler warnings 4522 [112ac65afd0c] <1.7> 4523 45242010-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 4525 4526 * exec.c, exec_pty.c, sudo.c, sudo.h: 4527 Implement background mode. If I/O logging we use pipes instead of a 4528 pty. 4529 [8d448eaf2aaa] <1.7> 4530 4531 * compat.h, exec.c, exec_pty.c, mksiglist.c, strsignal.c, tgetpass.c: 4532 Move compat definition of NSIG to compat.h 4533 [cae72a4c9dec] <1.7> 4534 4535 * tgetpass.c: 4536 Ignore SIGPIPE for "sudo -S" 4537 [c6595c8527c4] <1.7> 4538 4539 * tgetpass.c: 4540 Properly handle TGP_ECHO again. Print a newline if the user 4541 interrupted password input. 4542 [15acbe4fb535] <1.7> 4543 4544 * exec_pty.c: 4545 Use POSIX tcgetpgrp() instead of BSD TIOCGPGRP ioctl 4546 [dd041fc9554c] <1.7> 4547 45482010-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 4549 4550 * exec.c, exec_pty.c, selinux.c, sudo.c, sudo.h: 4551 Return an error from selinux_setup() instead of exiting. Call 4552 selinux_setup() from exec_setup(). 4553 [b518225cafba] <1.7> 4554 4555 * compat.h: 4556 Add definition of WCOREDUMP for systems without it. This is known 4557 to work on AIX and SunOS 4, but may be incorrect on other systems 4558 that lack WCOREDUMP. 4559 [365e56db7cd5] <1.7> 4560 4561 * check.c, compat.h, config.h.in, configure, configure.in, iolog.c, 4562 nanosleep.c, sudo_edit.c, visudo.c: 4563 Replace timerfoo macros with timevalfoo since the timer macros are 4564 known to be busted on some systems. 4565 [4bb5228606c5] <1.7> 4566 4567 * toke.c, toke.l: 4568 If a file in a #includedir has improper permissions or owner just 4569 skip it. This prevents packages that incorrectly install a file 4570 into /etc/sudoers.d from breaking sudo so easily. Syntax errors in 4571 #includedir files still result in a parse error (for now). 4572 [b7fb75eddb77] <1.7> 4573 4574 * TODO, auth/pam.c, exec.c, exec_pty.c, set_perms.c, sudo.c, sudo.h: 4575 Defer call to pam_close_session() until after the command finishes 4576 if there is a monitor process. 4577 [0a39c8e6a81b] <1.7> 4578 4579 * WHATSNEW, def_data.c, def_data.h, def_data.in, exec.c, sudoers.cat, 4580 sudoers.man.in, sudoers.pod: 4581 Add use_pty sudoers option to force use of a pty even when not 4582 logging I/O. 4583 [aea971f1456a] <1.7> 4584 4585 * env.c, sudo.c, sudo.h: 4586 Instead of trying to keep the global environment in sync with our 4587 private copy, provide our own getenv() that returns values from the 4588 private environment and use env_get() to pass the environment in to 4589 run_command(). 4590 [58c85c5695dc] <1.7> 4591 4592 * set_perms.c: 4593 Fix typo 4594 [0f677fcdde04] <1.7> 4595 45962010-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 4597 4598 * sudo.h: 4599 Rename pty.c -> get_pty.c 4600 [39137dcc4420] <1.7> 4601 4602 * iolog.c: 4603 Add #define for maximum session id 4604 [2a487437f013] <1.7> 4605 4606 * Makefile.in, configure, configure.in, exec.c, exec_pty.c, iolog.c, 4607 selinux.c, sudo.c, sudo.h, sudo_edit.c: 4608 Split exec.c into exec.c and exec_pty.c Pass a flag in to 4609 sudo_execve to indicate whether we need to wait for the command 4610 to finish (fork + execve vs. execve). 4611 [b197515585db] <1.7> 4612 4613 * Makefile.in, configure, configure.in, get_pty.c, pty.c: 4614 Rename pty.c -> get_pty.c 4615 [c0e5270bb28a] <1.7> 4616 4617 * aclocal.m4, configure, configure.in: 4618 Fix --without-iologdir 4619 [dcd6c5907b10] <1.7> 4620 46212010-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 4622 4623 * iolog.c: 4624 Only use I/O input log file if def_log_input is set and output file 4625 if def_log_output is set. 4626 [96cdd49be996] <1.7> 4627 46282010-06-05 Todd C. Miller <Todd.Miller@courtesan.com> 4629 4630 * parse_args.c, sudo.c: 4631 Include sudo_usage.h after sudo.h now that it has function 4632 prototypes to guarantee that __P is defined. 4633 [c67b77f8d6b1] <1.7> 4634 46352010-06-04 Todd C. Miller <Todd.Miller@courtesan.com> 4636 4637 * tgetpass.c: 4638 Do signal setup after turning off echo, not before. If we are using 4639 a tty but are not the foreground pgrp this will generate SIGTTOU so 4640 we want the default action to be taken (suspend process). Use an 4641 array for signals received instead of a single variable so we don't 4642 lose any when there are multiple different signals. 4643 [de356064ea01] <1.7> 4644 4645 * defaults.h, lbuf.h, sudo.h: 4646 Reorg function prototypes a bit 4647 [5c40f58bb28e] <1.7> 4648 4649 * Makefile.in, parse_args.c, sudo.c, sudo.h, sudo_usage.h.in: 4650 Move argument parsing into parse_args.c 4651 [fad7b8737c12] <1.7> 4652 4653 * Makefile.in, config.h.in, configure, configure.in, missing.h, 4654 mksiglist.c, mksiglist.h, siglist.in, strsignal.c: 4655 Build our own sys_siglist for systems that lack it. 4656 [3b5f671936dc] <1.7> 4657 4658 * exec.c, iolog.c, missing.h, sudo_edit.c: 4659 K&R fixes 4660 [dad62986f2fe] <1.7> 4661 4662 * exec.c, pty.c, sudo.c, sudo.h, sudo_edit.c: 4663 Log sudoedit sessions as well; adapted from trunk 4664 [2c5d9695022b] <1.7> 4665 4666 * configure: 4667 regen 4668 [9b319e89a6c4] <1.7> 4669 4670 * INSTALL, Makefile.in, WHATSNEW, aclocal.m4, configure, configure.in, 4671 def_data.c, def_data.h, def_data.in, defaults.c, exec.c, gram.c, 4672 gram.h, gram.y, iolog.c, parse.c, parse.h, pathnames.h.in, pty.c, 4673 script.c, selinux.c, sudo.c, sudo.h, sudoers.cat, sudoers.man.in, 4674 sudoers.pod, sudoreplay.c, sudoreplay.cat, sudoreplay.man.in, 4675 sudoreplay.pod, term.c: 4676 Merge I/O logging changes from trunk. Disabling I/O log support at 4677 compile time does not currently work. Sudoedit is not yet hooked up 4678 to I/O logging. 4679 [968c2c74c69b] <1.7> 4680 46812010-06-03 Todd C. Miller <Todd.Miller@courtesan.com> 4682 4683 * INSTALL, configure, configure.in: 4684 Add --enable-warnings configure option 4685 [19cf967c36d1] <1.7> 4686 4687 * check.c, lbuf.h, script.c, sudo.c, sudo_nss.c: 4688 Fix K&R compilation issues on HP-UX. 4689 [c01a547cdcf8] <1.7> 4690 4691 * lbuf.c, lbuf.h, ldap.c, parse.c, sudo.c, sudo_nss.c: 4692 Pass in output function to lbuf_init() instead of writing to stdout. 4693 A side effect is that the usage info can now go to stderr as it 4694 should. Add support for embedded newlines in lbuf and use that 4695 instead of multiple calls to lbuf_print. 4696 [596a427ff873] <1.7> 4697 4698 * configure, configure.in, sudo.man.pl, sudoers.man.pl: 4699 Use numeric registers to handle conditionals instead of trying to do 4700 it all with text processing. 4701 [31570c372e0e] <1.7> 4702 4703 * sudoers.pod: 4704 Document per-command SELinux settings 4705 [bbce5acad1be] <1.7> 4706 4707 * sudo.pod: 4708 timestamp -> time stamp 4709 [d7335ce6286f] <1.7> 4710 4711 * tsgetgrpw.c: 4712 Set close on exec flag in private versions of setpwent() and 4713 setgrent(). 4714 [954814bdbd56] <1.7> 4715 4716 * logging.c: 4717 Make send_mail() take a printf-style argument list 4718 [0783ad585062] <1.7> 4719 4720 * Makefile.binary.in, Makefile.in, aclocal.m4, acsite.m4, 4721 config.guess, config.h.in, config.sub, configure, configure.in, 4722 ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, 4723 m4/ltversion.m4, m4/lt~obsolete.m4: 4724 Update to autoconf 2.65 and libtool 2.2.6b 4725 [3544dd2f1a94] <1.7> 4726 4727 * boottime.c: 4728 Don't use TRUE/FALSE which may not be defined. 4729 [8649bf22b3b2] <1.7> 4730 4731 * sudo.cat, sudo.man.in, sudo.pod: 4732 Document new tty_ticket behavior 4733 [0663e0390338] <1.7> 4734 4735 * find_path.c, sudo.c, sudo.h, visudo.c: 4736 Make find_path() a little more generic by not checking def_foo 4737 variables inside it. Instead, pass in ignore_dot as a function 4738 argument. 4739 [16c3f27cd9b9] <1.7> 4740 4741 * check.c: 4742 Store info from stat(2)ing the tty in the tty ticket when tty 4743 tickets are in use. If the tty lives on a devpts (Linux) or devices 4744 (Solaris) filesystem, stash the ctime in the tty ticket file, as it 4745 is not updated when the tty is written to. This helps us determine 4746 when a tty has been reused without the user authenticating again 4747 with sudo. 4748 [f9aec9ab9054] <1.7> 4749 4750 * boottime.c, check.c, sudo.h: 4751 get_boottime() now fills in a timeval struct 4752 [dbd2003659c0] <1.7> 4753 47542010-06-02 Todd C. Miller <Todd.Miller@courtesan.com> 4755 4756 * check.c, compat.h, config.h.in, configure, configure.in, fileops.c, 4757 gettime.c, sudo.h, sudo_edit.c, visudo.c: 4758 Use timeval directly instead of converting to timespec when dealing 4759 with file times and time of day. 4760 [c85bf3e41839] <1.7> 4761 4762 * auth/pam.c: 4763 Fix OpenPAM detection for newer versions. 4764 [67f29a0703d0] <1.7> 4765 4766 * vasgroups.c: 4767 Sync with Quest sudo git repo 4768 [2680ad9762c2] <1.7> 4769 4770 * aclocal.m4, configure, configure.in: 4771 HP-UX ld uses +b instead or -R or -rpath Fix typo in libvas check 4772 libvas may need libdl for dlopen() Add missing template for 4773 ENV_DEBUG Adapted from Quest sudo 4774 [6c886eb9070a] <1.7> 4775 4776 * README.LDAP: 4777 Fix typos; from Quest Sudo 4778 [cf258fc69f1a] <1.7> 4779 4780 * Makefile.in, configure.in: 4781 Use value of SHELL from configure in Makefile 4782 [08aaf12221d6] <1.7> 4783 47842010-05-28 Todd C. Miller <Todd.Miller@courtesan.com> 4785 4786 * env.c: 4787 Handle duplicate variables in the environment. For unsetenv(), keep 4788 looking even after remove the first instance. For sudo_putenv(), 4789 check for and remove dupes after we replace an existing value. 4790 [086c6397d8cd] <1.7> 4791 47922010-04-29 Todd C. Miller <Todd.Miller@courtesan.com> 4793 4794 * visudo.c: 4795 Fix a crash when checking a sudoers file that has aliases that 4796 reference themselves. Based on a diff from David Wood. 4797 [5efc702a3b35] <1.7> 4798 47992010-04-15 Todd C. Miller <Todd.Miller@courtesan.com> 4800 4801 * alias.c: 4802 Fix use after free in error message when a duplicate alias exists. 4803 [9eaac49bd22b] <1.7> 4804 48052010-04-14 Todd C. Miller <Todd.Miller@courtesan.com> 4806 4807 * visudo.c: 4808 Set errorfile to the sudoers path if we set parse_error manually. 4809 This prevents a NULL dereference in printf() when checking a sudoers 4810 file in strict mode when alias errors are present. 4811 [b4eed2f0615d] <1.7> 4812 48132010-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 4814 4815 * TODO, sudoers.cat, sudoers.man.in, sudoers.pod: 4816 Fix typo 4817 [57198cae9cf5] <1.7> 4818 48192010-04-09 Todd C. Miller <Todd.Miller@courtesan.com> 4820 4821 * find_path.c: 4822 Qualify the command even if it is in the current working directory, 4823 e.g. "./foo" instead of just returning "foo". This removes an 4824 ambiguity between real commands and possible pseudo-commands in 4825 command matching. 4826 [fb4d571495fa] <1.7> 4827 48282010-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 4829 4830 * sudoers.cat, sudoers.man.in, sudoers.pod: 4831 Add a note about the security implications of the fast_glob option. 4832 [84f8097553d9] <1.7> 4833 4834 * memrchr.c: 4835 Remove duplicate includes 4836 [3e8d90f4c30f] <1.7> 4837 48382010-03-22 Todd C. Miller <Todd.Miller@courtesan.com> 4839 4840 * configure, configure.in: 4841 Fix installation of sudoers.ldap in "make install" when --with-ldap 4842 was specified without a directory. From Prof. Dr. Andreas Mueller 4843 [5177a284b9ff] <1.7> 4844 48452010-03-09 Todd C. Miller <Todd.Miller@courtesan.com> 4846 4847 * match.c: 4848 When doing a glob match, short circuit if gl.gl_pathc is 0. From 4849 Mark Kettenis. 4850 [549f8f7c2463] <1.7> 4851 48522010-03-08 Todd C. Miller <Todd.Miller@courtesan.com> 4853 4854 * script.c: 4855 Use parent process group id instead of parent process id when 4856 checking foreground status and suspending parent. Fixes an issue 4857 when running commands under /usr/bin/time and others. 4858 [eac86126e335] <1.7> 4859 4860 * env.c: 4861 In setenv(), if the var is empty, return 1 and set errno to EINVAL 4862 instead of returning EINVAL directly. 4863 [d202091ec15e] <1.7> 4864 48652010-02-22 Todd C. Miller <Todd.Miller@courtesan.com> 4866 4867 * match.c: 4868 Check for pseudo-command by looking at the first character of the 4869 command in sudoers instead of checking the user-supplied command for 4870 a slash. 4871 [88f3181692fe] <1.7> 4872 48732010-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 4874 4875 * toke.l: 4876 Avoid a duplicate fclose() of the sudoers file. 4877 [164d39108dde] <1.7> 4878 4879 * toke.l: 4880 Fix size arg when realloc()ing include stack. From Daniel Kopecek 4881 [8900bccef219] <1.7> 4882 48832010-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 4884 4885 * aix.c, config.h.in, configure, configure.in: 4886 Use setrlimit64(), if available, instead of setrlimit() when setting 4887 AIX resource limits since rlim_t is 32bits. 4888 [2cbb14d98fc1] <1.7> 4889 4890 * logging.c: 4891 Fix use after free when sending error messages. From Timo Juhani 4892 Lindfors 4893 [caf183fd9d94] <1.7> 4894 48952010-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 4896 4897 * ChangeLog, Makefile.in: 4898 Generate the ChangeLog as part of "make dist" instead of having it 4899 in the repo. 4900 [836c31615859] <1.7> 4901 49022010-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 4903 4904 * Makefile.in: 4905 Generate correct ChangeLog for 1.7 branch. 4906 [586dd90b8878] <1.7> 4907 49082010-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 4909 4910 * Makefile.binary.in, Makefile.in, aix.c, alias.c, alloc.c, alloc.h, 4911 auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, auth/dce.c, 4912 auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/passwd.c, 4913 auth/rfc1938.c, auth/secureware.c, auth/securid.c, auth/securid5.c, 4914 auth/sia.c, auth/sudo_auth.c, auth/sudo_auth.h, check.c, 4915 closefrom.c, compat.h, configure.in, defaults.c, defaults.h, 4916 emul/charclass.h, emul/timespec.h, env.c, error.c, error.h, 4917 fileops.c, find_path.c, getcwd.c, getprogname.c, getspwuid.c, 4918 gettime.c, goodpath.c, gram.c, gram.y, ins_2001.h, ins_classic.h, 4919 ins_csops.h, ins_goons.h, insults.h, interfaces.c, interfaces.h, 4920 isblank.c, lbuf.c, lbuf.h, ldap.c, list.c, list.h, logging.c, 4921 logging.h, match.c, memrchr.c, missing.h, mkinstalldirs, mkstemp.c, 4922 mon_systrace.c, nanosleep.c, parse.c, parse.h, pathnames.h.in, 4923 pty.c, pwutil.c, redblack.c, redblack.h, sample.pam, sample.sudoers, 4924 sample.syslog.conf, script.c, selinux.c, sesh.c, set_perms.c, 4925 sigaction.c, snprintf.c, strcasecmp.c, strerror.c, strlcat.c, 4926 strlcpy.c, strsignal.c, sudo.c, sudo.h, sudo.man.in, sudo.pod, 4927 sudo_edit.c, sudo_noexec.c, sudo_nss.c, sudo_nss.h, sudo_usage.h.in, 4928 sudoers.ldap.man.in, sudoers.ldap.pod, sudoers.man.in, sudoers.pod, 4929 sudoers2ldif, sudoreplay.c, sudoreplay.man.in, sudoreplay.pod, 4930 term.c, testsudoers.c, tgetpass.c, timestr.c, toke.c, toke.l, 4931 utimes.c, visudo.c, visudo.man.in, visudo.pod, zero_bytes.c: 4932 Remove CVS $Sudo$ tags. 4933 [de683a8b31f5] 4934 49352009-12-26 Todd C. Miller <Todd.Miller@courtesan.com> 4936 4937 * sudo_usage.h.in: 4938 make this match sudoers SYNOPSIS 4939 [c74ba66944c2] 4940 4941 * lbuf.c, parse.c: 4942 Print a newline between Runas and Command-specific defaults in sudo 4943 -l. 4944 [b5bdfcc9ce4b] 4945 4946 * term.c: 4947 Use SET and CLR macros in term_raw 4948 [50ca42609d6c] 4949 4950 * sudoreplay.c: 4951 Set stdin to non-blocking mode early instead of in check_input. Use 4952 term_raw instead of term_cbreak since the data we get has already 4953 been expanded via OPOST. 4954 [51c47e803d62] 4955 49562009-12-23 Todd C. Miller <Todd.Miller@courtesan.com> 4957 4958 * script.c, term.c: 4959 Enable/disable all postprocessing instead of just nl->crnl 4960 processing since things like tab expansion matter too. However, if 4961 stdout is a tty leave postprocessing on in the pty since we run into 4962 problems doing it only on the real stdout with .e.g nvi. 4963 [62666e309673] 4964 49652009-12-19 Todd C. Miller <Todd.Miller@courtesan.com> 4966 4967 * check.c: 4968 If tty_tickets is enabled and there is no tty, prompt for a 4969 password. Do not lecture user for "sudo -k command" if user has a 4970 timestamp. 4971 [5880200c5f6b] 4972 4973 * INSTALL: 4974 Document missing options: --with-efence and --with-bsm-audit 4975 [d83afcdf9ff3] 4976 4977 * sudo.cat, sudo.man.in, sudo.pod, sudoers.cat, sudoers.ldap.cat, 4978 sudoers.ldap.man.in, sudoers.ldap.pod, sudoers.man.in, sudoers.pod, 4979 sudoreplay.cat, sudoreplay.man.in, sudoreplay.pod, visudo.cat, 4980 visudo.man.in, visudo.pod: 4981 username -> user name groupname -> group name hostname -> host name 4982 [10c85646f45d] 4983 4984 * INSTALL, README.LDAP, sudoers.pod: 4985 filename -> file name like the rest of the docs 4986 [1ef8ab5a9018] 4987 49882009-12-17 Todd C. Miller <Todd.Miller@courtesan.com> 4989 4990 * parse.c: 4991 Fix printing of entries with multiple host entries on a single line. 4992 [226ceaf91d8d] 4993 49942009-12-14 Todd C. Miller <Todd.Miller@courtesan.com> 4995 4996 * sudoers.pod: 4997 Mention that targetpw affects the timestamp file name. 4998 [a26e22e4f72e] 4999 5000 * def_data.c, def_data.h, def_data.in, defaults.c, script.c, 5001 sudoers.pod: 5002 Add compress_transcript option. 5003 [6e94f8cb9dfb] 5004 50052009-12-13 Todd C. Miller <Todd.Miller@courtesan.com> 5006 5007 * configure, configure.in: 5008 bump to 1.7.3b2 5009 [906d7e347d15] 5010 5011 * pwutil.c, set_perms.c, sudo.c, sudo_nss.c: 5012 Better split of membership vs. traditional group check in 5013 user_in_group(). Allow user_ngroups to be < 0 if getgroups() fails. 5014 [6ebc55d4716b] 5015 50162009-12-12 Todd C. Miller <Todd.Miller@courtesan.com> 5017 5018 * pwutil.c: 5019 Fix pasto and add default return value. 5020 [7973b5e4599c] 5021 5022 * check.c, match.c, pwutil.c, sudo.h: 5023 refactor group member checking into user_in_group() 5024 [48ca8c2eddf8] 5025 5026 * check.c, config.h.in, configure, configure.in, match.c, sudo.c, 5027 sudo.h: 5028 Add support for mbr_check_membership() as present in darwin. 5029 [5501aed02b9f] 5030 50312009-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 5032 5033 * match.c: 5034 Rename label to be accurate 5035 [3af17dd960f7] 5036 5037 * Makefile.in, boottime.c, check.c, config.h.in, configure, 5038 configure.in, sudo.h: 5039 Treat timestamp files from before we booted as old. Idea from and 5040 Apple patch. 5041 [5c96e484c05a] 5042 50432009-12-09 Todd C. Miller <Todd.Miller@courtesan.com> 5044 5045 * sudo.c, sudo.pod, sudo_usage.h.in: 5046 Allow the -u flag to be used in conjunction with the -v flag as per 5047 older versions of sudo. 5048 [591e9fc13c1a] 5049 5050 * logging.c: 5051 fix typo in last commit 5052 [4fd0c692dcf0] 5053 50542009-12-08 Todd C. Miller <Todd.Miller@courtesan.com> 5055 5056 * logging.c: 5057 Convert fmt_first and fmt_confd into macros. 5058 [32e870158b29] 5059 5060 * sudoers.pod: 5061 timeouts can be floats now 5062 [89de639a9679] 5063 5064 * WHATSNEW, def_data.c, def_data.h, def_data.in, defaults.c, 5065 defaults.h, mkdefaults: 5066 Add support for floating point timeout values (e.g. 2.5 minutes). 5067 [210ffa291733] 5068 50692009-12-07 Todd C. Miller <Todd.Miller@courtesan.com> 5070 5071 * sudo.pod: 5072 The -L flag will be removed in sudo 1.7.4 5073 [ffd026084333] 5074 50752009-12-06 Todd C. Miller <Todd.Miller@courtesan.com> 5076 5077 * sudoreplay.c: 5078 Fix a bug due to order of operators. 5079 [938d34464283] 5080 50812009-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 5082 5083 * match.c: 5084 cmnd_matches() already deals with negation so _cmndlist_matches() 5085 does not need to do so itself. Fixes a bug with negated entries in 5086 a Cmnd_List. 5087 [71c845f6ce73] 5088 50892009-11-22 Todd C. Miller <Todd.Miller@courtesan.com> 5090 5091 * sudo.c: 5092 Don't exit() from open_sudoers, just return NULL for all errors. 5093 [8cfa832f972a] 5094 5095 * script.c: 5096 Can't rely on the shell sending us SIGCONT when transitioning from 5097 backgroup to foreground process. 5098 [3c6c5b6cb4b3] 5099 5100 * toke.c, toke.l: 5101 Add missing extern def for parse_error 5102 [45b7b59d03b7] 5103 51042009-11-21 Todd C. Miller <Todd.Miller@courtesan.com> 5105 5106 * toke.c, toke.l: 5107 Avoid a parse error when #includedir doesn't find any files. Closes 5108 bug #375 5109 [1ce1b850e9e6] 5110 5111 * Makefile.in: 5112 Include sudo.man.pl and sudoers.man.pl in the distribution tarball. 5113 [6a22e32da108] 5114 51152009-11-15 Todd C. Miller <Todd.Miller@courtesan.com> 5116 5117 * script.c: 5118 Start command out in foreground mode if stdout is a tty. Works 5119 around issues with some curses-based programs that don't handle 5120 tcsetattr getting interrupted by a signal. Still allows us to avoid 5121 hogging the tty if the command is part of a pipeline. 5122 [1c32f2b94769] 5123 5124 * script.c, sudo.c, sudo.h, sudoreplay.c, term.c, tgetpass.c: 5125 Use a socketpair to pass signals from parent to child. Child will 5126 now pass command status change info back via the socketpair. This 5127 allows the parent to distinguish between signals it has been sent 5128 directly and signals the command has received. It also means the 5129 parent can once again print the signal notifications to the tty so 5130 all writes to the pty master occur in the parent. The command is 5131 now always started in background mode with tty signals handled by 5132 the parent. 5133 [c6790b82986d] 5134 51352009-11-04 Todd C. Miller <Todd.Miller@courtesan.com> 5136 5137 * configure, configure.in: 5138 Fix a few typos in the descriptions; from Jeff Makey Only do the 5139 check for krb5_get_init_creds_opt_free() taking two arguments if we 5140 find krb5_get_init_creds_opt_alloc(). Otherwise we will get a false 5141 positive when using our own krb5_get_init_creds_opt_free which takes 5142 only a single argument. 5143 [845a9ff6f93d] 5144 51452009-11-03 Todd C. Miller <Todd.Miller@courtesan.com> 5146 5147 * configure, configure.in: 5148 Remove a spurious comma in the kerb5 bits. 5149 [3433eab083db] 5150 5151 * auth/kerb5.c: 5152 Call krb5_get_init_creds_opt_init() in our emulated 5153 krb5_get_init_creds_opt_alloc() for MIT kerberos. 5154 [7ffb40bf43e9] 5155 51562009-11-01 Todd C. Miller <Todd.Miller@courtesan.com> 5157 5158 * config.h.in: 5159 Add HAVE_ZLIB 5160 [9297bde61ecc] 5161 5162 * script.c: 5163 Need to ignore SIGTT{IN,OU} in child when running the command in the 5164 background. Also some minor cleanup. 5165 [dc208d982319] 5166 51672009-10-31 Todd C. Miller <Todd.Miller@courtesan.com> 5168 5169 * script.c: 5170 Instead of calling sigsuspend when waiting for SIGUSR[12] from 5171 parent, install the signal handlers w/o SA_RESTART and let them 5172 interrupt waitpid(). 5173 [759c7d18203b] 5174 5175 * script.c: 5176 Pass along SIGHUP and SIGTERM from parent to child. 5177 [035b0e254568] 5178 5179 * script.c: 5180 Close unused bits of script_fds in processes that don't need them. 5181 Restore default SIGCONT handler in child. 5182 [e037378ab0c1] 5183 5184 * script.c: 5185 Update foreground/background status in SIGCONT handler in parent 5186 process. 5187 [3f7f91333264] 5188 51892009-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 5190 5191 * script.c: 5192 Defer setting terminal into raw mode until just before we fork() and 5193 only do it if sudo is the foreground process. If we get SIGTT{IN,OU} 5194 and sudo is already in the foreground be sure to set raw mode before 5195 continuing the child. 5196 [1102ef40832c] 5197 51982009-10-24 Todd C. Miller <Todd.Miller@courtesan.com> 5199 5200 * script.c: 5201 Fix handling of SIGTTOU/SIGTTIN in program being run. We now only 5202 give the command the controlling tty if the main sudo process is the 5203 foreground process. 5204 [cf3a91cb5682] 5205 5206 * script.c: 5207 Don't bother with sudo_waitpid() here for now. 5208 [9086de480c2d] 5209 5210 * script.c: 5211 fix non-zlib case 5212 [a258bff0f9a6] 5213 52142009-10-23 Todd C. Miller <Todd.Miller@courtesan.com> 5215 5216 * script.c: 5217 Remove non-wroking code that crept into rev 1.55 5218 [2802dd55cff5] 5219 52202009-10-22 Todd C. Miller <Todd.Miller@courtesan.com> 5221 5222 * INSTALL, configure, configure.in, script.c, sudoreplay.c: 5223 First pass at zlib support for transcript data files 5224 [5d10260807da] 5225 5226 * Makefile.in: 5227 remove vestiges of ZLDFLAGS 5228 [1fa0caf1c0fb] 5229 5230 * script.c: 5231 Add missing variable declaration for when TIOCSCTTY is not defined. 5232 Need to include sys/termio.h for TIOCSCTTY on some systems. 5233 [ee7f41ac2709] 5234 5235 * script.c: 5236 when resuming command, send SIGCONT to its pgrp not just pid 5237 [5cd63c1d565b] 5238 5239 * selinux.c: 5240 remove unused variable 5241 [df67df4be228] 5242 5243 * script.c: 5244 include selinux.h for is_selinux_enabled() proto 5245 [85ebaa880cc1] 5246 5247 * script.c: 5248 Don't use log_error() in the child process. 5249 [def65fe2a433] 5250 5251 * script.c: 5252 Do I/O in parent instead of child since the parent can have both 5253 /dev/tty as well as the pty fds open. The child just sets things up 5254 and waits for its grandchild and writes the signal description to 5255 the pty master if the command was killed by a signal. 5256 [95e473208982] 5257 52582009-10-18 Todd C. Miller <Todd.Miller@courtesan.com> 5259 5260 * missing.h, sudo.h: 5261 Move two struct forward declarations from sudo.h to missing.h 5262 [90ad28294a8c] 5263 5264 * script.c: 5265 Make comment at the top of script_exec() match reality. 5266 [c5042d27dbe0] 5267 5268 * sudo.c: 5269 if neither stdin nor stdout is a tty, check stderr 5270 [c532ff20c8d8] 5271 5272 * Makefile.in: 5273 Add back dependecy of gram.h on gram.y 5274 [c58382b7fcca] 5275 5276 * script.c: 5277 Make transcript mode work as long as we can figure out our tty, even 5278 if it is not stdin. We'd like to use /dev/tty but that won't be 5279 valid after the setsid(). 5280 [7b8bba8d99e7] 5281 52822009-10-17 Todd C. Miller <Todd.Miller@courtesan.com> 5283 5284 * config.h.in, configure, configure.in, pty.c: 5285 Add support for IRIX-style dynamic ptys 5286 [bedc9bac44c1] 5287 5288 * Makefile.in, alloc.h, getline.c, sudo.h, sudoreplay.c: 5289 Move alloc.c protos into alloc.h 5290 [b6a90649617d] 5291 5292 * missing.h: 5293 Move prototypes for missing libc functions to missing.h 5294 [dda9ae1ccaf8] 5295 5296 * Makefile.in, sudo.h, sudoreplay.c: 5297 Move prototypes for missing libc functions to missing.h 5298 [7483166b577b] 5299 53002009-10-16 Todd C. Miller <Todd.Miller@courtesan.com> 5301 5302 * config.h.in, configure, configure.in: 5303 Disable transcript support if no tcsetpgrp until we support older 5304 BSD-style job control. 5305 [27ac1d8163df] 5306 5307 * configure, configure.in, pty.c, script.c: 5308 Break out pty code into pty.c 5309 [e85509b25d41] 5310 5311 * compat.h, config.h.in, configure, configure.in: 5312 add killpg macro if no killpg function 5313 [3a125f4a51f0] 5314 5315 * config.h.in, configure, configure.in, script.c: 5316 Push ptem and ldterm for STERAMS-based systems when allocating a 5317 pty. 5318 [36bb39b30ff2] 5319 53202009-10-15 Todd C. Miller <Todd.Miller@courtesan.com> 5321 5322 * script.c: 5323 Sprinkle some more O_NOCTTY and call grantpt() before unlockpt() 5324 [d94bd5c9bf4e] 5325 5326 * script.c: 5327 Call tcgetpgrp() in the parent, not the child and have the child 5328 spin until it is granted. Fixes a race on darwin. 5329 [6e8d435339ce] 5330 5331 * script.c: 5332 Only use TIOCNOTTY in the non-setsid case. If no TIOCSCTTY, just 5333 reopen slave. 5334 [0bdc63c019ca] 5335 53362009-10-14 Todd C. Miller <Todd.Miller@courtesan.com> 5337 5338 * script.c: 5339 In script mode, if the command is killed by a signal, print the 5340 signal description as well as a core dump notification like the 5341 shell does. 5342 [9df61738df07] 5343 5344 * Makefile.in, config.h.in, configure, configure.in, strsignal.c, 5345 sudo.h: 5346 Add check for strsignal() and a simple implementation if it is not 5347 there but sys_siglist is 5348 [61421a188ef4] 5349 5350 * script.c: 5351 Add missing WUNTRACED and store the signal that stopped the 5352 grandchild in suspended, not signo. 5353 [df65042b200e] 5354 5355 * script.c: 5356 g/c unused code 5357 [40d8cb5c9203] 5358 5359 * script.c: 5360 Associate the grandchild's pgrp with the tty instead of the child's 5361 and just get suspend notifications via SIGCHLD instead of directly. 5362 This fixes a hang with programs that try to set terminal attributes 5363 and is more consistent with how the shell handles things. 5364 [6865abff7e94] 5365 53662009-10-12 Todd C. Miller <Todd.Miller@courtesan.com> 5367 5368 * script.c: 5369 Move setpgid() of child into the parent side of the fork() where it 5370 belongs. 5371 [3defa782777c] 5372 53732009-10-11 Todd C. Miller <Todd.Miller@courtesan.com> 5374 5375 * script.c: 5376 fix typo 5377 [b6a612b3622c] 5378 5379 * script.c: 5380 Run command in its own pgrp (like the shell does) for easier 5381 signalling. No need to relay SIGINT or SIGQUIT to parent, just send 5382 to grandchild. Don't want grandchild stopped events in the child 5383 (only termination). Flush output after suspending grandchild before 5384 signalling parent. 5385 [db556bf2176f] 5386 5387 * script.c: 5388 Back out revision 1.34; the problem lies elsewhere. 5389 [85f590a03275] 5390 5391 * script.c: 5392 Don't set stdout to blocking mode when flushing remaining output. 5393 It can cause us to hang when trying to exit. Need to investigate 5394 why. 5395 [6f803a3e33ca] 5396 5397 * script.c: 5398 Handle SIGTTOU and remove some debugging. 5399 [52d17279053e] 5400 5401 * term.c: 5402 Back out revision 1.10 as the signal that interrupts us may be 5403 SIGTTOU or SIGTTIN which the caller must handle. 5404 [7e2fa9107975] 5405 5406 * script.c: 5407 Apparently we need to send SIGSTOP to the command as well as ourself 5408 when we get SIGTSTP, the kernel doesn't automatically stop the 5409 process for us. 5410 [1a936e9309c4] 5411 5412 * script.c: 5413 Use an extra process to act as the glue bewteen the sessions 5414 associated with the user's controlling tty (what the shell uses) and 5415 the tty that sudo is using to do its logging. Basically, this means 5416 that if we get, e.g. SIGTSTP from the process sudo is running, we 5417 relay the signal to the parent so it's shell can do the job control. 5418 [6dd296988060] 5419 5420 * term.c: 5421 Handle getting/setting terminal attributes when the fd is in non- 5422 blocking mode. 5423 [ae5ae535ea7b] 5424 54252009-10-07 Todd C. Miller <Todd.Miller@courtesan.com> 5426 5427 * sudoreplay.c, sudoreplay.cat, sudoreplay.man.in, sudoreplay.pod: 5428 Add support for pausing and changing the speed in interactive mode. 5429 [72a2063780a7] 5430 5431 * script.c: 5432 Already define O_NOCTTY in compat.h, don't need it here 5433 [b5d80ed3e5ce] 5434 54352009-10-06 Todd C. Miller <Todd.Miller@courtesan.com> 5436 5437 * sudoreplay.c: 5438 Add missing protos 5439 [c4cb4e7f4d8a] 5440 54412009-09-30 Todd C. Miller <Todd.Miller@courtesan.com> 5442 5443 * sudo_edit.c: 5444 Always update the stashed mtime of the temp file instead of using 5445 what we have for the original because the time resolution of the 5446 filesystem the temporary is on may not match that of the filesystem 5447 that holds the original. Should fix bz #371 found by Philippe Levan. 5448 [c86ca4bec60c] 5449 5450 * sudoreplay.c: 5451 Use cbreak mode instead of raw mode and add signal handlers to 5452 restore the tty on interrupt. 5453 [84dd283da41c] 5454 5455 * script.c, sudo.h, term.c: 5456 Retain NL to NLCR conversion on the real tty and skip it on the pty 5457 we allocate. That way, if stdout is not a pty there are no extra 5458 carriage returns. 5459 [32e4f570414e] 5460 5461 * script.c: 5462 Fix log_output(); just pass in a string and a length. 5463 [ca980cc0a3fb] 5464 54652009-09-28 Todd C. Miller <Todd.Miller@courtesan.com> 5466 5467 * script.c: 5468 do not use errno when complaining out lack of a tty 5469 [8f9b8c55ab8e] 5470 54712009-09-27 Todd C. Miller <Todd.Miller@courtesan.com> 5472 5473 * Makefile.in, sudoreplay.c, term.c: 5474 Instead of messing with line endings, just set terminal to raw mode 5475 in sudoreplay. 5476 [90943fa87acb] 5477 5478 * term.c: 5479 When copying the terminal attributes to the pty, be sure not to set 5480 ONLCR. This prevents extra carriage returns from ending up in the 5481 script output file. 5482 [e6b5475ac2aa] 5483 5484 * script.c: 5485 Convert a do {} while into a while 5486 [e461310d2c77] 5487 5488 * Makefile.in: 5489 Use if then instead of test && when installing binaries that may not 5490 exist. 5491 [ad4f9490d971] 5492 5493 * script.c: 5494 Add O_NOCTTY when opening a tty device. Explicitly disconnect from 5495 old tty before associatng with new one. 5496 [0e0ca634b80c] 5497 5498 * script.c, selinux.c, sudo.c, sudo.h: 5499 First cut at refactoring some of the selinux code so it can be used 5500 in conjunction with sudo's transcript support. 5501 [779b0d8f9d29] 5502 55032009-09-26 Todd C. Miller <Todd.Miller@courtesan.com> 5504 5505 * aclocal.m4, configure, configure.in: 5506 Fix default case of transcript_enabled being unset. 5507 [f8aa96186e6b] 5508 5509 * script.c, sudoreplay.c: 5510 Use _PATH_SUDO_TRANSCRIPT instead of _PATH_SUDO_SESSDIR 5511 [2844a7a851fa] 5512 5513 * INSTALL, Makefile.in, aclocal.m4, configure, configure.in, sudo.c: 5514 Hook up --disable-transcript and --enable-transcript=DIR 5515 [b3fa7e6b2480] 5516 55172009-09-25 Todd C. Miller <Todd.Miller@courtesan.com> 5518 5519 * aclocal.m4, configure, configure.in, pathnames.h.in: 5520 _PATH_SUDO_SESSDIR -> _PATH_SUDO_TRANSCRIPT Add --enable- 5521 transcript=DIR option to specify the directory 5522 [b0bb76d43cda] 5523 5524 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in: 5525 regen 5526 [c7a8a0a9027c] 5527 5528 * configure, configure.in, sudoers.man.pl, sudoers.pod: 5529 Substitute in default value for secure_path 5530 [c8f9ac6dbf93] 5531 5532 * sudo.pod: 5533 Mention that the password must be followed by a newline with the -S 5534 option. 5535 [2fc589a3ee7e] 5536 55372009-09-20 Todd C. Miller <Todd.Miller@courtesan.com> 5538 5539 * script.c: 5540 Go back to dropping out of the select() loop when the process dies; 5541 Linux ptys apparently don't behave the same as BSD in regards to 5542 select(). No need to flush remaining output to the transcript, only 5543 to stdout. Add back code to check the master pty for additional data 5544 when we exit the main select loop. 5545 [abed9a9cbc6b] 5546 55472009-09-19 Todd C. Miller <Todd.Miller@courtesan.com> 5548 5549 * Makefile.in: 5550 Add getline.o to COMMON_OBJS 5551 [04ef7643cbc2] 5552 5553 * Makefile.in: 5554 sudoreplay depends on libsudo.a 5555 [142bd0472631] 5556 5557 * Makefile.in: 5558 More pwutil.o into COMMON_OBJS 5559 [4a016b933629] 5560 5561 * pwutil.c, testsudoers.c, tsgetgrpw.c: 5562 Remove my_* redirection in pwutil.c for testsudoers and just use the 5563 normal libc get{pw,gr}* names. 5564 [9b76d637d86b] 5565 5566 * sudoreplay.cat, sudoreplay.man.in, sudoreplay.pod: 5567 More time and date examples 5568 [c6ee0175ec56] 5569 5570 * Makefile.in, configure, configure.in, nanosleep.c, sudoreplay.c: 5571 Move nanosleep() emulation into its own file Check librt.a for 5572 nanosleep if we don't find it in libc 5573 [4da0cc26aad7] 5574 5575 * Makefile.in, configure, configure.in: 5576 Build libsudo with the common bits and link things against that. 5577 [2b53bc0b081a] 5578 5579 * script.c: 5580 Fix final flush. 5581 [6da287d833da] 5582 5583 * script.c: 5584 Keep reading from the pty master -> log file until read returns <= 5585 0. Do our best to write everything to stdout when flushing any 5586 remaining bits. 5587 [2a45d4ae280c] 5588 5589 * sudoreplay.c: 5590 Use unbuffered I/O when writing to stdout and make sure we write the 5591 entire buffer. 5592 [f39ef9844a47] 5593 55942009-09-18 Todd C. Miller <Todd.Miller@courtesan.com> 5595 5596 * sudoreplay.c: 5597 Only use max_wait if it is non-zero 5598 [f6c10604d2e8] 5599 5600 * getdate.c, getdate.y, getline.c: 5601 Need compat.h here 5602 [5d6722e225a0] 5603 5604 * sudoreplay.c: 5605 Fix nanosleep emulation 5606 [34e5e5d72a76] 5607 5608 * script.c: 5609 Fix comment after #endif 5610 [bd1347718b25] 5611 5612 * sudoreplay.c: 5613 Add protos for missing libc bits 5614 [644f496427a2] 5615 5616 * configure, configure.in: 5617 add missing line continuation char 5618 [db13c0d402cd] 5619 5620 * config.h.in, configure, configure.in, getline.c: 5621 Implement getline() in terms of fgetln() if we have it. 5622 [3ab786eaadc5] 5623 5624 * sudoreplay.c: 5625 Print year when formatting log line 5626 [90be669e3443] 5627 5628 * sudoreplay.pod: 5629 Document cwd, attempt to document time/date formats. 5630 [6290fb9b65c6] 5631 5632 * sudoreplay.c: 5633 Fix getline return value check. 5634 [d696d6657261] 5635 5636 * Makefile.in, config.h.in, configure, configure.in, getline.c, 5637 sudoreplay.c: 5638 Use getline() if the system has it, else use provide our own for 5639 sudoreplay. 5640 [afca1d6fbe5e] 5641 5642 * script.c: 5643 Refactor code to update output and timing files. 5644 [361491332b1a] 5645 56462009-09-17 Todd C. Miller <Todd.Miller@courtesan.com> 5647 5648 * sudoreplay.c: 5649 Make sudo_getln() behave more like glibc getline. 5650 [40c9f2ea29e6] 5651 5652 * script.c: 5653 When flushing remaining output, also update timing file. 5654 [5a9a5a627549] 5655 5656 * sudoreplay.c: 5657 Use get_timestr() and make the -l output look like the regular sudo 5658 log. 5659 [452ba9d436c9] 5660 5661 * logging.c, sudo.h, timestr.c: 5662 Make get_timestr() take a time_t so we can use it properly in 5663 sudoreplay. 5664 [82e67cc53c9c] 5665 5666 * script.c: 5667 Create session dir earlier now that we update the seq number early. 5668 [797fe8d6dc61] 5669 56702009-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 5671 5672 * sudoreplay.c: 5673 Use fromdate and todate as the keywords instead of from and to; the 5674 short forms will still be accepted. 5675 [d14d9b116df4] 5676 5677 * sudoreplay.c: 5678 Fix reading long liensin sudo_getln() 5679 [58dadd74118c] 5680 5681 * script.c, sudoreplay.c: 5682 Log the cwd in the script log file. Add sudo_getln() to read 5683 arbitrarily long lines. 5684 [faceb802ab8f] 5685 5686 * Makefile.in, logging.c, sudo.h, timestr.c: 5687 Move get_timestr() into its own source file so sudoreplay can use 5688 it. 5689 [99b054bfa20a] 5690 56912009-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 5692 5693 * sudoreplay.c: 5694 Add to and from perdicates (date ranges); needs documentation 5695 [1d629174dcf4] 5696 56972009-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 5698 5699 * Makefile.in, getdate.c, getdate.y: 5700 Fix warning and add generated getdate.c 5701 [b877a86b5a03] 5702 5703 * Makefile.in, getdate.y: 5704 Add getdate.y to be used for sudoreplay date parsing. 5705 [b8e26fbb7a40] 5706 57072009-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 5708 5709 * sudoreplay.c: 5710 Check more than just the first character of a predicate 5711 [4fe53728adb1] 5712 5713 * sudoreplay.cat, sudoreplay.man.in, sudoreplay.pod: 5714 Add examples, sort predicates 5715 [70f8075cbccc] 5716 5717 * Makefile.in, sudoreplay.c, sudoreplay.cat, sudoreplay.man.in, 5718 sudoreplay.pod: 5719 Implement search expressions in sudoreplay similar in concept to 5720 what find or tcpdump uses. TODO: date ranges 5721 [f7ce4fb4cf3a] 5722 57232009-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 5724 5725 * script.c: 5726 Remove vhangup as it was hanging up the wrong tty. Should really 5727 vhangup in the child after it as set its tty. 5728 [2eed9df73010] 5729 5730 * sudoers.pod: 5731 Fix cut at documenting transcript support. 5732 [e6c533a5568a] 5733 5734 * logging.c: 5735 ID= -> TSID= for transcript ID 5736 [1bf755a35333] 5737 57382009-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 5739 5740 * sudoers.pod: 5741 Move fast_glob description to where it belongs in sorted order 5742 [5901cfb0d25f] 5743 5744 * def_data.c, def_data.h, def_data.in, gram.c, gram.h, gram.y, 5745 parse.c, parse.h, sudo.c: 5746 Rename script -> transcript 5747 [e06cf823122c] 5748 57492009-09-03 Todd C. Miller <Todd.Miller@courtesan.com> 5750 5751 * compat.h: 5752 Add timeradd and timersub for those without them 5753 [929f8aa06c2b] 5754 5755 * script.c: 5756 Sanity check sessid before using it. 5757 [aa8ca5211d43] 5758 5759 * sudo.c: 5760 Only set the session id if we are running a command or editing a 5761 file. 5762 [7205d717c098] 5763 5764 * script.c: 5765 Actually. qsort is fine since most versions fal back to a cheaper 5766 sort when the number of elements to sort is small (like in our 5767 case). 5768 [d11c7cd352fe] 5769 5770 * config.h.in, configure, configure.in, script.c: 5771 Check for dup2 and use dup instead if we don't have it. 5772 [98bd89830f8a] 5773 5774 * script.c, sudo.c, sudo.h: 5775 Move the code to dup2 the script fds to low numbered descriptors 5776 into script_duplow() and fix the fd sorting. 5777 [9453fdc5fba6] 5778 5779 * script.c, sudo.c, sudo.h: 5780 Move script_setup() back to immediately before we drop privs and 5781 call the new script_nextid() in its place, which will set 5782 sudo_user.sessid for the logging functions. 5783 [8434d0c8ff08] 5784 57852009-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 5786 5787 * Makefile.in: 5788 Install sudoreplay 5789 [6acf2cdb4d3f] 5790 5791 * sudoreplay.c: 5792 remove unused variable 5793 [2316360bb992] 5794 57952009-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 5796 5797 * logging.c, script.c, sudo.c, sudo.h: 5798 Log the session ID, if there is one. Currently logs ID=XXXXXX, 5799 perhaps should be SESSIONID or SESSID. 5800 [53976905b0a6] 5801 5802 * Makefile.in, configure, configure.in, sudoreplay.cat, 5803 sudoreplay.man.in, sudoreplay.pod: 5804 Add sudoreplay docs 5805 [da4f14f0e64c] 5806 5807 * sudoreplay.c: 5808 add -V (version) flag 5809 [b5e743639ee3] 5810 5811 * sudoreplay.c: 5812 Hook up max_wait. 5813 [2ec5697a92ba] 5814 5815 * script.c, sudoreplay.c: 5816 Use base36 number for the ID and store script files with paths like 5817 /var/log/sudo-session/00/00/00{,.tim,.scr}. This gives us 36^6 5818 (2,176,782,336) unique IDs. 5819 [6aab019d07aa] 5820 58212009-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 5822 5823 * config.h.in, configure.in: 5824 Add check for regcomp 5825 [44c3ebd7ff34] 5826 5827 * sudoreplay.c: 5828 Add support for selecting by pattern and tty when listing. 5829 [66189f840c52] 5830 58312009-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 5832 5833 * sudoreplay.c: 5834 The beginnings of a list mode. 5835 [8d0150b4a52c] 5836 58372009-08-16 Todd C. Miller <Todd.Miller@courtesan.com> 5838 5839 * Makefile.in: 5840 fix pasto 5841 [616b4640b8a8] 5842 5843 * Makefile.in, config.h.in, configure.in: 5844 Add scaffolding for building sudoreplay 5845 [a32958505dbe] 5846 5847 * sudoreplay.c: 5848 include error.h first arg to nanotime is const 5849 [fe5a7bb31bc5] 5850 5851 * sudoreplay.c: 5852 Initial cut at sudoreplay; replay a sudo session. 5853 [f149fba372bd] 5854 58552009-08-08 Todd C. Miller <Todd.Miller@courtesan.com> 5856 5857 * script.c: 5858 Fix wait() usage and use correct wait status. 5859 [f4745ed7ad05] 5860 5861 * sudo.c, sudo.h, tgetpass.c: 5862 Add protos for term_* to sudo.h 5863 [14fe1abd7e7b] 5864 5865 * script.c: 5866 Fix detection of the child process exiting. Since the child is in 5867 its own session we should only ever get SIGCHLD for that process but 5868 better safe than sorry. 5869 [7edfdadd8505] 5870 5871 * config.h.in: 5872 Add UNIX98 pty support. 5873 [82f4b53a0e8f] 5874 5875 * configure, configure.in, script.c: 5876 Add UNIX98 pty support. 5877 [795b8bb0a3a1] 5878 58792009-08-07 Todd C. Miller <Todd.Miller@courtesan.com> 5880 5881 * term.c: 5882 For raw mode, don't bother clearing BRKINT or PARMRK and clear IUCLC 5883 if it is defined. 5884 [40f8b83baf69] 5885 5886 * auth/pam.c: 5887 Set PAM_RUSER and PAM_RHOST early so they can be used during 5888 authentication. Based on a patch from Jamie Beverly. 5889 [3d567b453a6a] 5890 5891 * match.c: 5892 Close dir before returning if strlcpy() reports overflow. From 5893 Martynas Venckus. 5894 [6a82f96473e5] 5895 5896 * config.h.in, configure, configure.in, script.c: 5897 On Linux, the openpty proto libes in pty.h 5898 [98643a018d1c] 5899 5900 * script.c: 5901 Call vhangup on exit if the system has it Use setpgrp() if no 5902 setsid() 5903 [3a9e13149829] 5904 59052009-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 5906 5907 * config.h.in, configure, configure.in: 5908 Add checks for revoke and vhangup if we don't have openpty 5909 [fcb04572e994] 5910 5911 * script.c: 5912 Session logging guts that got forgotten in the previous commit. 5913 [c2af08a63ea9] 5914 5915 * Makefile.in, aclocal.m4, compat.h, config.h.in, configure, 5916 configure.in, def_data.c, def_data.h, def_data.in, gram.c, gram.h, 5917 gram.y, parse.c, parse.h, pathnames.h.in, sudo.c, sudo.h, term.c, 5918 tgetpass.c: 5919 First cut at session logging for sudo. Still need to write 5920 get_pty() for Unix 98 and old-style BSD ptys. Also needs 5921 documentation and general cleanup. 5922 [77e3f5e25738] 5923 59242009-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 5925 5926 * sudo.c, sudo_edit.c: 5927 Fix a bug introduced with def_closefrom. The value of def_closefrom 5928 already includes the +1. 5929 [7291c136300d] 5930 59312009-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 5932 5933 * Makefile.in: 5934 Generate sudo distributions with pax in ustar mode. No longer need 5935 to use a temp file or have the source dir name match the version. 5936 [9778177a8272] 5937 59382009-07-18 Todd C. Miller <Todd.Miller@courtesan.com> 5939 5940 * toke.c, toke.l: 5941 Fix expansion of %h in #include names. Fixes bugzilla 363 5942 [6e346879ba24] 5943 59442009-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 5945 5946 * mkdefaults: 5947 If no arg assume def_data.in 5948 [c1dd28c0e675] 5949 5950 * README, WHATSNEW: 5951 Update for 1.7.2 5952 [f5ad45f69f05] [SUDO_1_7_2] 5953 5954 * ChangeLog: 5955 sync 5956 [6283549396ff] 5957 59582009-06-30 Todd C. Miller <Todd.Miller@courtesan.com> 5959 5960 * sudoers.cat, sudoers.man.in, sudoers.pod: 5961 Add missing single quotes around a colon in Runas_Spec definition. 5962 From Elias Benali. 5963 [ccc6ee4fca83] 5964 59652009-06-29 Todd C. Miller <Todd.Miller@courtesan.com> 5966 5967 * sudo.man.in, sudoers.man.in: 5968 regen 5969 [546e75304ebf] 5970 5971 * redblack.c: 5972 In rbrepair, re-color the root or the first non-block node we find 5973 to be black. Re-coloring the root is probably not needed but won't 5974 hurt. 5975 [34d01ebe241b] 5976 5977 * sudo.cat, sudoers.cat: 5978 regen 5979 [bebf5a39f54f] 5980 59812009-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 5982 5983 * redblack.c: 5984 When repairing the tree, don't touch the root node. 5985 [9841f0d5d789] 5986 59872009-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 5988 5989 * set_perms.c: 5990 Protect call to setegid in runas_setup with #ifdef HAVE_SETEUID. 5991 Reported by Josef Schmid. 5992 [ed044b1eb879] 5993 59942009-06-23 Todd C. Miller <Todd.Miller@courtesan.com> 5995 5996 * sudoers.pod: 5997 Document that we accept env_pam-style environment files 5998 [e3b545456352] 5999 6000 * env.c: 6001 Adapt to accept pam_env-style /etc/environment which allows shell- 6002 style lines such as: export EDITOR="/usr/bin/vi" 6003 [752eb75bf007] 6004 6005 * sudoers.pod: 6006 Make it clear that env_delete only works when !env_reset. From Lo??c 6007 Minier 6008 [3bd3f8e351ba] 6009 60102009-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 6011 6012 * sudo.pod, sudoers.pod: 6013 Add non-unix group bits, adapted from Quest 6014 [8ce427de8dea] 6015 6016 * Makefile.in: 6017 build the .cat page in the current working dir, not the src dir 6018 [00e87a307674] 6019 6020 * env.c: 6021 Return EINVAL in setenv() if var is NULL or the empty string to 6022 match glibc behavior. 6023 [23fd7c247142] 6024 60252009-06-13 Todd C. Miller <Todd.Miller@courtesan.com> 6026 6027 * configure, configure.in: 6028 Use AS_HELP_STRING for AC_ARG_WITH and AC_ARG_ENABLE 6029 [fedd4a3e2a85] 6030 60312009-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 6032 6033 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 6034 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 6035 regen 6036 [7b9f461a40b3] 6037 60382009-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 6039 6040 * INSTALL: 6041 Document --with-libvas and --with-libvas-rpath 6042 [a071e6d96c89] 6043 60442009-05-29 Todd C. Miller <Todd.Miller@courtesan.com> 6045 6046 * ldap.c, sudoers.ldap.pod: 6047 For netscape-derived LDAP SDKs the cert and key paths may be a 6048 directory or a file. However, version 5.0 of the SDK only seems to 6049 support using a directory. If ldapssl_clientauth_init fails and the 6050 cert or key paths look like they could be files, strip off the last 6051 path element and try again. 6052 [ac4e49d83043] 6053 6054 * Makefile.in: 6055 Add non-Unix group .o to COMMON_OBJS and substitute in path to flex. 6056 [4547cc1a335f] 6057 60582009-05-27 Todd C. Miller <Todd.Miller@courtesan.com> 6059 6060 * configure, configure.in, match.c, sudo.c, vasgroups.c: 6061 Update non-Unix group support from Quest, as reworked by me. 6062 [1abafce29dc6] 6063 6064 * toke.c: 6065 regen 6066 [01bfca9148b7] 6067 6068 * toke.l: 6069 Add support for escaped hex chars in names, e.g. \x20 for space. 6070 [3c7be8e58a39] 6071 60722009-05-25 Todd C. Miller <Todd.Miller@courtesan.com> 6073 6074 * LICENSE, Makefile.in, aclocal.m4, alias.c, auth/aix_auth.c, 6075 auth/pam.c, auth/sudo_auth.c, auth/sudo_auth.h, check.c, env.c, 6076 fileops.c, glob.c, gram.y, interfaces.c, lbuf.c, ldap.c, logging.c, 6077 logging.h, match.c, parse.c, parse.h, pathnames.h.in, pwutil.c, 6078 set_perms.c, sudo.c, sudo.h, sudo.pod, sudo_nss.c, sudo_nss.h, 6079 sudo_usage.h.in, sudoers.ldap.pod, sudoers.pod, testsudoers.c, 6080 tgetpass.c, toke.l, visudo.c: 6081 Update copyright years. 6082 [e615f676c764] 6083 60842009-05-24 Todd C. Miller <Todd.Miller@courtesan.com> 6085 6086 * interfaces.c, lbuf.c: 6087 Minor fixes for Minix-3 6088 [898c510d23f9] 6089 60902009-05-22 Todd C. Miller <Todd.Miller@courtesan.com> 6091 6092 * set_perms.c: 6093 Handle getgroups() returning 0. Also add missing check for 6094 HAVE_GETGROUPS. 6095 [d73b958f9ffd] 6096 60972009-05-19 Todd C. Miller <Todd.Miller@courtesan.com> 6098 6099 * Makefile.in, config.h.in, configure, configure.in, sudo.c, 6100 version.h, visudo.c: 6101 Replace version.h with PACKAGE_VERSION set via AC_INIT in configure. 6102 [5050579a264d] 6103 61042009-05-18 Todd C. Miller <Todd.Miller@courtesan.com> 6105 6106 * set_perms.c: 6107 Remove group setting code in setusercontext case, we will do it 6108 ourselves later on in runas_setup. Set the gid after 6109 initgroups/setgroups is called, since on Mac OS X it seems to change 6110 the egid. 6111 [09dc21d8b42d] 6112 61132009-05-17 Todd C. Miller <Todd.Miller@courtesan.com> 6114 6115 * LICENSE, Makefile.in, config.h.in, match.c, nonunix.h, sudo.c, 6116 vasgroups.c: 6117 Initial bits of non-unix group support using Quest Authentication 6118 Services 6119 [1eecab0ff27e] 6120 6121 * toke.c, toke.l: 6122 Accept %:foo as a non-Unix group 6123 [4c4b5dd899a6] 6124 6125 * toke.c, toke.l: 6126 Allow user/group to be double quoted in the case of non-Unix groups 6127 which contain spaces. 6128 [47a3d568b7e8] 6129 61302009-05-11 Todd C. Miller <Todd.Miller@courtesan.com> 6131 6132 * match.c: 6133 Don't allow the user to specify the default runas user if their 6134 sudoers entry only allows them to run as a group. 6135 [4d726177227c] 6136 61372009-05-10 Todd C. Miller <Todd.Miller@courtesan.com> 6138 6139 * sudo.c: 6140 Must call audit_success before we change uids. 6141 [04a9e6ce6e55] 6142 6143 * logging.c, set_perms.c, sudo.h, testsudoers.c: 6144 Add option for set_perm to not exit on failure and use this in the 6145 logging routines. 6146 [833dce7b7f42] 6147 6148 * parse.c: 6149 In -l mode, if the user is only allowed to run as a group, display 6150 the user's name, not root's before the allowed group. 6151 [ef92ff99d265] 6152 6153 * sudo.c: 6154 Fix -g mode, broken by rev 1.503 which had the side effect of 6155 setting the runas user to root unilaterally. 6156 [50a2f7df4385] 6157 61582009-05-08 Todd C. Miller <Todd.Miller@courtesan.com> 6159 6160 * fileops.c: 6161 When unlocking a file with fcntl, use F_SETLK, not F_SETLKW. 6162 [30fbe832dcf3] 6163 6164 * pwutil.c: 6165 Only cache by the method we fetched for pwd and grp lookups. 6166 Previously we cached both by namd and id but this can cause problems 6167 for entries that share the same id. Also add more info in the error 6168 message in case the insert fails (which should now be impossible). 6169 [ef95a4f0bab5] 6170 61712009-04-30 Todd C. Miller <Todd.Miller@courtesan.com> 6172 6173 * sudoers.pod: 6174 Add a clarification from Nick Sieger 6175 [1eadad329561] 6176 61772009-04-25 Todd C. Miller <Todd.Miller@courtesan.com> 6178 6179 * env.c: 6180 Inline the setting of the environment string. 6181 [9515d11c6295] 6182 61832009-04-24 Todd C. Miller <Todd.Miller@courtesan.com> 6184 6185 * env.c: 6186 setenv(3) in Linux treats a NUL value as the empty string setenv(3) 6187 in BSD doesn't return an error if the name has '=' in it, it just 6188 treats the '=' as end of string. 6189 [941260bf94d2] 6190 61912009-04-22 Todd C. Miller <Todd.Miller@courtesan.com> 6192 6193 * toke.c, toke.l: 6194 Not all systems have d_namlen 6195 [e377b18d8e2d] 6196 61972009-04-20 Todd C. Miller <Todd.Miller@courtesan.com> 6198 6199 * sudoers.pod: 6200 Fix up some pod2html issues. 6201 [823a1f10ab60] 6202 62032009-04-19 Todd C. Miller <Todd.Miller@courtesan.com> 6204 6205 * interfaces.c: 6206 Check for NULL ifa_addr and ifa_netmask. Adapted from a diff from 6207 Quest Software. 6208 [73de36653131] 6209 6210 * sudoers.pod: 6211 Ignore files ending in '~' in sudo.d (emacs backup files) 6212 [7871fad702db] 6213 6214 * toke.c, toke.l: 6215 Ignore files ending in '~' in sudo.d (emacs backup files) 6216 [53fded2a469f] 6217 62182009-04-18 Todd C. Miller <Todd.Miller@courtesan.com> 6219 6220 * sudoers.cat, sudoers.man.in, sudoers.pod, toke.c, toke.l: 6221 For #includedir, ignore any file containing a dot 6222 [a7daa1bce6c2] 6223 6224 * Makefile.in, version.h: 6225 Bump version 6226 [ef60f14ffc44] 6227 6228 * gram.c, gram.y, parse.c, parse.h, sudo.c, sudo.h, sudoers.cat, 6229 sudoers.man.in, sudoers.pod, testsudoers.c, toke.c, toke.l, 6230 visudo.c: 6231 Implement #includedir directive. Files in an includedir are not 6232 edited by visudo unless they contain a syntax error. 6233 [3923d85a6c79] 6234 6235 * ChangeLog: 6236 sync 6237 [8741ed61a78b] [SUDO_1_7_1] 6238 6239 * WHATSNEW: 6240 Forgot umask_override 6241 [7c86a21a5504] 6242 6243 * ChangeLog, TODO: 6244 sync 6245 [57339ca6bccf] 6246 62472009-04-16 Todd C. Miller <Todd.Miller@courtesan.com> 6248 6249 * visudo.c: 6250 Rewind stream if we fdopen sudoers since it may not be at the 6251 beginning. Set the keepopen flag on already-open files too so the 6252 lexer doesn't close them out from under us. 6253 [61292d819aff] 6254 6255 * visudo.c: 6256 Print the proper file name when there is a parse error in an include 6257 file. 6258 [b0e85d4aedde] 6259 62602009-04-11 Todd C. Miller <Todd.Miller@courtesan.com> 6261 6262 * WHATSNEW: 6263 Sync 6264 [997e5d485ea3] 6265 62662009-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 6267 6268 * configure, configure.in: 6269 Fix a warning when --without-ldap is specified. 6270 [d91fd9481b30] 6271 62722009-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 6273 6274 * alias.c, parse.h, visudo.c: 6275 Store aliases that we remove during check_aliases in a freelist and 6276 free them at the end so we don't leak memory. 6277 [805e2272f6a3] 6278 62792009-03-28 Todd C. Miller <Todd.Miller@courtesan.com> 6280 6281 * visudo.c: 6282 Check aliases in -c mode too. 6283 [9199e188d9f2] 6284 6285 * alias.c, parse.h, visudo.c: 6286 Make alias_remove return the alias struct instead of freeing it 6287 directly. Fixes a use after free in alias_remove_recursive, the only 6288 consumer. 6289 [a04b61804800] 6290 6291 * alias.c, match.c, parse.c, parse.h, visudo.c: 6292 Rename find_alias -> alias_find for consistency. 6293 [48b0a82924f3] 6294 62952009-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 6296 6297 * visudo.c: 6298 When checking for unused aliases, recurse if the alias points to 6299 another alias. 6300 [2d4d1a7f3a41] 6301 63022009-03-16 Todd C. Miller <Todd.Miller@courtesan.com> 6303 6304 * ldap.c: 6305 Back out rev 1.105 for now. Real ldapux_client.conf support will be 6306 done later after some refactoring. 6307 [8ad72e69b277] 6308 63092009-03-14 Todd C. Miller <Todd.Miller@courtesan.com> 6310 6311 * ldap.c: 6312 Treat ldap_hostport the same as "host" for ldapux. 6313 [3281dcc66da8] 6314 6315 * configure, configure.in: 6316 Only check for ldap_sasl_interactive_bind_s if we can find sasl.h. 6317 Fixes compilation with ldapux. 6318 [ca1ed585ef0e] 6319 63202009-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 6321 6322 * fileops.c: 6323 fix char subscript 6324 [41e51f080d00] 6325 63262009-03-11 Todd C. Miller <Todd.Miller@courtesan.com> 6327 6328 * Makefile.in: 6329 remove errant carriage returns 6330 [e9e258a31c7b] 6331 6332 * audit.c, env.c: 6333 fix K&R compilation 6334 [d182e8920f13] 6335 6336 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 6337 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 6338 regen 6339 [791a5cbf04e5] 6340 63412009-03-10 Todd C. Miller <Todd.Miller@courtesan.com> 6342 6343 * config.h.in: 6344 Add missing HAVE_BSM_AUDIT 6345 [49ad1bb96f04] 6346 6347 * WHATSNEW: 6348 Add 1.7.1 features 6349 [f107f1604c61] 6350 6351 * INSTALL: 6352 Mention --with-netsvc 6353 [d1e90d147795] 6354 6355 * sudoers.ldap.pod: 6356 Document netsvc.conf support 6357 [e78f8abce6af] 6358 6359 * configure, configure.in, pathnames.h.in, sudo.c, sudo_nss.c, 6360 sudo_nss.h: 6361 Add support for AIX netsvc.conf (like nsswitch.conf). 6362 [1df56a84dee5] 6363 63642009-03-08 Todd C. Miller <Todd.Miller@courtesan.com> 6365 6366 * config.h.in, configure, configure.in, env.c: 6367 Add --enable-env-debug flag to enable environment sanity checks. 6368 [128cdd8832e7] 6369 6370 * sudoers.ldap.pod, sudoers.pod: 6371 Work around some pod2html issue. 6372 [e733b9609bd2] 6373 63742009-03-07 Todd C. Miller <Todd.Miller@courtesan.com> 6375 6376 * env.c: 6377 Only sync environ for putenv, setenv, and unsetenv. We need to make 6378 sure that sudo_putenv and sudo_setenv only modify env.envp, not 6379 environ. 6380 [be3ac732243c] 6381 63822009-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 6383 6384 * env.c: 6385 Really fix UNSETENV_VOID 6386 [08ab7e882507] 6387 6388 * env.c: 6389 Fix unsetenv when UNSETENV_VOID 6390 [d3038b3f2f15] 6391 6392 * aclocal.m4, configure: 6393 Fix SUDO_FUNC_PUTENV_CONST 6394 [de35569c572b] 6395 6396 * ldap.c: 6397 tivoli-based ldap does not have ldapssl_err2string 6398 [c63fd90d5e99] 6399 6400 * configure: 6401 regen 6402 [f38f1ee828ad] 6403 64042009-03-01 Todd C. Miller <Todd.Miller@courtesan.com> 6405 6406 * config.h.in, configure, configure.in, ldap.c: 6407 Add support for Tivoli-based LDAP start TLS as seen in AIX. 6408 Untested. 6409 [8f8771829f85] 6410 6411 * env.c: 6412 Add sanity checks for setenv/unsetenv 6413 [adbd1d95856b] 6414 6415 * Makefile.in: 6416 Include bsm_audit.h in the tarball 6417 [4a4aa02b2c32] 6418 6419 * Makefile.in, version.h: 6420 bump version for sudo 1.7.1 6421 [362c71d21595] 6422 6423 * aclocal.m4, auth/aix_auth.c, config.h.in, configure, configure.in, 6424 env.c, ldap.c, sudo.h: 6425 Replace sudo_setenv/sudo_unsetenv with calls to setenv/unsetenv and 6426 provide our own setenv/unsetenv/putenv that operates on own env 6427 pointer. Make sync_env() inline in setenv/unsetenv/putenv functions. 6428 [276edcd23032] 6429 64302009-02-25 Todd C. Miller <Todd.Miller@courtesan.com> 6431 6432 * sudo.c: 6433 Make "sudoedit -h" work as expected 6434 [2bcbbb45d389] 6435 6436 * auth/pam.c: 6437 Make sure def_prompt is always defined. This is a workaround for 6438 pam configs that prompt for a password in the session but don't have 6439 an auth line. A better fix is to expand the sudo prompt earlier and 6440 set def_prompt to that when initializing. 6441 [ee073c04aec3] 6442 6443 * sudo.pod: 6444 Mention that the helper for -A may be graphical. 6445 [b64a940c4082] 6446 6447 * TROUBLESHOOTING: 6448 Document what happens if there is no tty. 6449 [313d58a856a5] 6450 6451 * sudo.c: 6452 cosmetic changes 6453 [894f5e3b0c3e] 6454 6455 * term.c: 6456 Fix term_restore 6457 [6c6315ff14bc] 6458 6459 * sudo.c: 6460 Fix "sudo -k" with no other args 6461 [59e94dc419c6] 6462 64632009-02-24 Todd C. Miller <Todd.Miller@courtesan.com> 6464 6465 * check.c, sudo.c, sudo.pod, sudo_usage.h.in: 6466 Allow the -k flag to be specified in conjunction with a command or 6467 another option that may require authentication. 6468 [5960ff20355d] 6469 64702009-02-23 Todd C. Miller <Todd.Miller@courtesan.com> 6471 6472 * configure, configure.in: 6473 Remove unneeded AC_CANONICAL_TARGET; from Diego E. 'Flameeyes' 6474 [e86ab69c4a57] 6475 6476 * Makefile.in: 6477 Parallel make fix. From Diego E. 'Flameeyes' 6478 [1289d7ee27db] 6479 64802009-02-21 Todd C. Miller <Todd.Miller@courtesan.com> 6481 6482 * def_data.c, def_data.h, def_data.in, sudo.c, sudoers.pod: 6483 Implement umask_override 6484 [8b87a3f7c5aa] 6485 6486 * toke.c: 6487 regen 6488 [79d7ca9ac873] 6489 6490 * sudoers.pod, toke.l, visudo.c: 6491 Implement %h escape in sudoers include filenames. 6492 [a7f288dd64f0] 6493 6494 * audit.c: 6495 Need to include compat.h 6496 [c0dc07ce2f70] 6497 6498 * Makefile.in, audit.c, bsm_audit.c, bsm_audit.h, logging.h, sudo.c: 6499 Make audit_success and audit_failure generic functions in 6500 preparation for integrating linux audit support. 6501 [7df020a8fd6f] 6502 6503 * term.c: 6504 remove duplicate include 6505 [1dfcd01a7e46] 6506 65072009-02-20 Todd C. Miller <Todd.Miller@courtesan.com> 6508 6509 * bsm_audit.c: 6510 Add missing include 6511 [fb56e08c37ee] 6512 6513 * sudo.c: 6514 May need to update the runas user after parsing command-based 6515 defaults. 6516 [246f130d7802] 6517 65182009-02-18 Todd C. Miller <Todd.Miller@courtesan.com> 6519 6520 * glob.c: 6521 Add missing pair of braces introduced with character class support. 6522 [0e2afa2e03e9] 6523 65242009-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 6525 6526 * def_data.c, def_data.h, def_data.in, sudoers.pod, tgetpass.c: 6527 Rename pwstars to pwfeedback 6528 [a9f85a57ebac] 6529 65302009-02-11 Todd C. Miller <Todd.Miller@courtesan.com> 6531 6532 * bsm_audit.c, bsm_audit.h: 6533 Add const to make MacOS happy. 6534 [4274432d6627] 6535 6536 * Makefile.in, auth/sudo_auth.c, bsm_audit.c, bsm_audit.h, configure, 6537 configure.in, sudo.c: 6538 Add bsm audit support from Christian S.J. Peron 6539 [bef61cd8693d] 6540 6541 * term.c: 6542 This is new code, no DARPA notice. 6543 [ec6ad09b9c23] 6544 65452009-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 6546 6547 * def_data.c, def_data.h, def_data.in, match.c, sudoers.pod: 6548 Rename simple_glob -> fast_glob 6549 [68d9ed803cc1] 6550 6551 * match.c: 6552 g/c unused var 6553 [693fa0464eb6] 6554 6555 * def_data.c, def_data.h, def_data.in, match.c, sudoers.pod: 6556 Add simple_glob option to use fnmatch() instead of glob(). This is 6557 useful when you need to specify patterns that reference network file 6558 systems. 6559 [77ba634f6949] 6560 6561 * tgetpass.c: 6562 add term_* proto 6563 [520f5149d073] 6564 6565 * sudoers.pod: 6566 mention glob() 6567 [ddaab8e03c52] 6568 65692009-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 6570 6571 * tgetpass.c: 6572 Delete any pwstars we wrote after the user hits return. That way 6573 there is no record on screen as to the user's password length. 6574 [fae25cda762b] 6575 65762009-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 6577 6578 * term.c: 6579 Move terminal setting bits from tgetpass.c to term.c 6580 [03d43325ee99] 6581 6582 * Makefile.in, def_data.c, def_data.h, def_data.in, sudoers.pod, 6583 tgetpass.c: 6584 Add pwstars sudoers option that causes sudo to print a star every 6585 time the user presses a key. 6586 [7aab417e184d] 6587 65882009-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 6589 6590 * Makefile.in: 6591 Fix up F<> brokenness for visudo.man.in and sudoers.ldap.man.in. 6592 [64f70e879816] 6593 65942009-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 6595 6596 * ldap.c: 6597 For ldap_search_ext_s() the sizelimit param should be 0, not -1, to 6598 indicate no limit. From Mark Janssen. 6599 [e2c5732d54f5] 6600 66012009-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 6602 6603 * toke.c, toke.l: 6604 Comments that begin with #- should not be parsed as uids. 6605 [a72a50f12f41] 6606 66072009-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 6608 6609 * sudo.c: 6610 Do not try to set the close on exec flag if we didn't actually open 6611 sudoers. 6612 [ece3ca256904] 6613 66142008-12-19 Todd C. Miller <Todd.Miller@courtesan.com> 6615 6616 * ChangeLog: 6617 regen 6618 [e11f0e4c1bdd] [SUDO_1_7_0] 6619 66202008-12-14 Todd C. Miller <Todd.Miller@courtesan.com> 6621 6622 * TODO: 6623 sync 6624 [5b8954462bb3] 6625 66262008-12-09 Todd C. Miller <Todd.Miller@courtesan.com> 6627 6628 * auth/pam.c: 6629 Return PAM_AUTH_ERR instead of PAM_CONV_ERR if user enters ^C at the 6630 password prompt. 6631 [8563601cb3de] 6632 6633 * configure, configure.in: 6634 Don't try to build sudo_noexec.so on HP-UX with the bundled compiler 6635 as it cannot generate shared objects. 6636 [6d4262ef9669] 6637 6638 * emul/charclass.h, glob.c, lbuf.c, tgetpass.c: 6639 K&R compilation fixes 6640 [77921678d17c] 6641 6642 * parse.c: 6643 Use tq_foreach_fwd when checking pseudo-commands to make it clear 6644 that we are not short-circuiting on last match. When pwcheck is 6645 'all', initialize nopass to TRUE and override it with the first non- 6646 TRUE entry. 6647 [96b209f4778f] 6648 66492008-12-08 Todd C. Miller <Todd.Miller@courtesan.com> 6650 6651 * parse.c: 6652 Do not short circuit pseudo commands when we get a match since, 6653 depending on the settings, we may need to examine all commands for 6654 tags. 6655 [fdbaf89d6f35] 6656 66572008-12-03 Todd C. Miller <Todd.Miller@courtesan.com> 6658 6659 * sudoers.cat, sudoers.man.in: 6660 regen 6661 [1ecce7c1b841] 6662 6663 * sudoers.pod: 6664 hostnames may also contain wildcards 6665 [82b76695601c] 6666 6667 * Makefile.in: 6668 remove stamp-* files and linux core files in clean target 6669 [22003f091467] 6670 66712008-12-02 Todd C. Miller <Todd.Miller@courtesan.com> 6672 6673 * auth/sudo_auth.h, config.h.in, configure, configure.in: 6674 Use HAVE_SIA_SES_INIT instead of HAVE_SIA for Digital UNIX 6675 [6905bede8410] 6676 66772008-11-26 Todd C. Miller <Todd.Miller@courtesan.com> 6678 6679 * configure, configure.in: 6680 correctly enable SIA on Digital UNIX 6681 [a51881d13995] 6682 6683 * TODO: 6684 checkpoint 6685 [af0fe8d94d42] 6686 6687 * ChangeLog: 6688 sync 6689 [831f623cf99c] 6690 66912008-11-25 Todd C. Miller <Todd.Miller@courtesan.com> 6692 6693 * check.c, sudo.h, tgetpass.c: 6694 Even if neither stdin nor stdout are ttys we may still have /dev/tty 6695 available to us. 6696 [20f306ba883b] 6697 66982008-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 6699 6700 * sudoers.cat, sudoers.man.in: 6701 regen 6702 [76d97c4c318f] 6703 6704 * sudoers.pod: 6705 fix typos; Markus Lude 6706 [bff8bc1e2066] 6707 6708 * ChangeLog: 6709 sync 6710 [f108552531cd] 6711 6712 * toke.c: 6713 regen 6714 [de828413c67e] 6715 6716 * toke.l: 6717 Fix matching of a line that only consists of a comment char 6718 [09c953d8d5ca] 6719 67202008-11-22 Todd C. Miller <Todd.Miller@courtesan.com> 6721 6722 * auth/pam.c: 6723 MacOS pam will retry conversation function if it fails so just treat 6724 ^C as an empty password. 6725 [d056058930bc] 6726 6727 * visudo.c: 6728 When checking for alias use, also check defaults bindings. 6729 [2647f82c7dbd] 6730 6731 * redblack.c: 6732 unused var 6733 [b7ff71c17c18] 6734 6735 * redblack.c: 6736 Replace my rbdelete with Emin's version (which actually works ;-) 6737 [21b133dd0c72] 6738 67392008-11-19 Todd C. Miller <Todd.Miller@courtesan.com> 6740 6741 * testsudoers.c: 6742 malloc debugging 6743 [0fb446fa3279] 6744 6745 * visudo.c: 6746 malloc options in devel mode for visudo too 6747 [98d06c6afeef] 6748 67492008-11-18 Todd C. Miller <Todd.Miller@courtesan.com> 6750 6751 * sudo.c: 6752 fix compilation on non-C99; from Theo 6753 [7c304e16c536] 6754 6755 * visudo.c: 6756 fix check_aliases 6757 [83f30a3b1765] 6758 6759 * alias.c: 6760 when destroying an alias, free the correct data pointer 6761 [6e1a8bd86c01] 6762 6763 * auth/sudo_auth.h: 6764 add proto for aixauth_cleanup; from Dale King 6765 [eba94ffc8f63] 6766 67672008-11-15 Todd C. Miller <Todd.Miller@courtesan.com> 6768 6769 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 6770 visudo.man.in: 6771 regen 6772 [409fa57fff83] 6773 6774 * sudo.pod, sudoers.pod, visudo.pod: 6775 standardize on the term 'option' for command line options (not flag) 6776 [228caefc2e36] 6777 67782008-11-14 Todd C. Miller <Todd.Miller@courtesan.com> 6779 6780 * INSTALL: 6781 Add note on configuring HP-UX pam 6782 [f7674a581baf] 6783 67842008-11-11 Todd C. Miller <Todd.Miller@courtesan.com> 6785 6786 * check.c, sudo.c: 6787 Move tty checks into check_user() so we only do them if we actually 6788 need a password. 6789 [7d997d7106d6] 6790 6791 * sudo.c: 6792 Don't error out if no tty or askpass unless we actually need to 6793 authenticate. 6794 [9f23b83ed66c] 6795 67962008-11-10 Todd C. Miller <Todd.Miller@courtesan.com> 6797 6798 * ChangeLog: 6799 regen 6800 [23f9aef32da6] 6801 6802 * pathnames.h.in, sudo.c: 6803 s/overriden/overridden/; from Tobias Stoeckmann 6804 [9f7459a8fac5] 6805 68062008-11-09 Todd C. Miller <Todd.Miller@courtesan.com> 6807 6808 * WHATSNEW, visudo.c: 6809 check sudoers owner and mode in strict mode 6810 [a3468c5ac1c4] 6811 6812 * gram.c, toke.c: 6813 regen 6814 [7d6b515a5443] 6815 6816 * sudo.man.in, sudoers.man.in, visudo.man.in: 6817 Update copyright years. 6818 [52d340cb8cba] 6819 6820 * LICENSE, alias.c, alloc.c, auth/afs.c, auth/aix_auth.c, 6821 auth/bsdauth.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, 6822 auth/securid.c, auth/securid5.c, auth/sia.c, auth/sudo_auth.h, 6823 closefrom.c, compat.h, defaults.c, defaults.h, env.c, fileops.c, 6824 gettime.c, gram.y, ins_csops.h, insults.h, interfaces.c, 6825 interfaces.h, lbuf.c, license.pod, list.c, logging.c, logging.h, 6826 parse.c, parse.h, pwutil.c, redblack.c, redblack.h, snprintf.c, 6827 sudo.c, sudo.pod, sudo_edit.c, sudo_nss.h, sudoers.pod, 6828 testsudoers.c, toke.l, tsgetgrpw.c, utimes.c, version.h, visudo.c, 6829 visudo.pod, zero_bytes.c: 6830 Update copyright years. 6831 [b4e6bf2beafa] 6832 6833 * emul/charclass.h, fnmatch.c, glob.c: 6834 add my copyright 6835 [28681385014a] 6836 68372008-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 6838 6839 * toke.c, toke.l: 6840 The loop in fill_cmnd() was going one byte too far past the end, 6841 resulting in a NUL being written immediately after the buffer end. 6842 [a5a49d603cd7] 6843 6844 * UPGRADE, WHATSNEW: 6845 add sections on tgetpass changes 6846 [2e6929b6a102] 6847 6848 * tgetpass.c: 6849 Treat EOF w/o newline as an error. 6850 [aa02b1db9240] 6851 68522008-11-07 Todd C. Miller <Todd.Miller@courtesan.com> 6853 6854 * parse.c: 6855 Fix "sudo -v" when NOPASSWD is set. 6856 [f4914711ea80] 6857 6858 * auth/bsdauth.c, auth/fwtk.c, auth/pam.c, auth/sudo_auth.c, 6859 auth/sudo_auth.h: 6860 No longer treat an empty password at the prompt as special. To quit 6861 out of sudo you now need to hit ^C at the password prompt. 6862 [980f760ad419] 6863 6864 * sudoers.cat, sudoers.man.in: 6865 regen 6866 [6ca21a2cd869] 6867 6868 * def_data.c, def_data.h, def_data.in, sudo.c, sudoers.pod: 6869 Sudo will now refuse to run if no tty is present unless the new 6870 visiblepw sudoers flag is set. 6871 [0cc56943252e] 6872 68732008-11-06 Todd C. Miller <Todd.Miller@courtesan.com> 6874 6875 * aix.c: 6876 just use RLIM_INFINITY for RLIM_SAVED_MAX if RLIM_SAVED_MAX not 6877 defined 6878 [24fc6f712d5c] 6879 6880 * aix.c: 6881 fix fallback value for RLIM_SAVED_MAX 6882 [e09e04e1af89] 6883 6884 * auth/aix_auth.c, auth/sudo_auth.h: 6885 Move clearing of AUTHSTATE into aixauth_cleanup. 6886 [e14ae7bd259c] 6887 6888 * auth/aix_auth.c, env.c: 6889 Unset AUTHSTATE after calling authenticate() as it may not be 6890 correct for the user we are running the command as. 6891 [d14f68f1b0ab] 6892 6893 * isblank.c: 6894 Add isblank() function for systems without it. Needed for POSIX 6895 character class matching in fnmatch.c and glob.c. 6896 [16cba30b283f] 6897 68982008-11-05 Todd C. Miller <Todd.Miller@courtesan.com> 6899 6900 * TROUBLESHOOTING: 6901 expound on sudo and cd 6902 [8e0fa9033637] 6903 69042008-11-04 Todd C. Miller <Todd.Miller@courtesan.com> 6905 6906 * ChangeLog: 6907 regen 6908 [40cf320a10fc] 6909 6910 * sudoers.cat, sudoers.man.in: 6911 regen 6912 [7cac761ae2c6] 6913 6914 * sudoers.pod: 6915 mention defauts parse order 6916 [4e2ce86d1394] 6917 69182008-11-03 Todd C. Miller <Todd.Miller@courtesan.com> 6919 6920 * Makefile.in, aclocal.m4, compat.h, configure: 6921 Add isblank() function for systems without it. Needed for POSIX 6922 character class matching in fnmatch.c and glob.c. 6923 [a1ab55da8424] 6924 6925 * Makefile.in: 6926 add emul/charclass.h to HDRS 6927 [7e8a019dcaa4] 6928 69292008-11-02 Todd C. Miller <Todd.Miller@courtesan.com> 6930 6931 * TODO: 6932 checkpoint 6933 [afeb9bc1baed] 6934 6935 * defaults.c, parse.c, testsudoers.c, visudo.c: 6936 Move update_defaults into defaults.c and call it properly from 6937 visudo and testsudoers. 6938 [f4dbb369461f] 6939 6940 * defaults.c, interfaces.c, pwutil.c, sudo.c, sudo_edit.c, tgetpass.c, 6941 tsgetgrpw.c: 6942 use zero_bytes() instead of memset() for consistency 6943 [4cee0465f4a8] 6944 6945 * logging.c, mon_systrace.c, parse.c, sudo.c, sudo_edit.c, tgetpass.c, 6946 visudo.c: 6947 Zero out sigaction_t before use in case it has non-standard entries. 6948 [120092225459] 6949 6950 * match.c: 6951 quiet gcc 6952 [098a1df49b23] 6953 6954 * match.c: 6955 Short circuit glob() checks if basename(pattern) != 6956 basename(command). Refactor code that checks for a command in a 6957 directory and use it in the glob case if the resolved pattern ends 6958 in a '/'. 6959 [3c46fd317acb] 6960 69612008-11-01 Todd C. Miller <Todd.Miller@courtesan.com> 6962 6963 * defaults.h, parse.c, sudo.c, testsudoers.c, visudo.c: 6964 Defer setting runas defaults until after runaspw/gr is setup. 6965 [12e75ee49c0c] 6966 69672008-10-29 Todd C. Miller <Todd.Miller@courtesan.com> 6968 6969 * match.c, sudo.c, testsudoers.c: 6970 Use MAXHOSTNAMELEN+1 when allocating host/domain name since some 6971 systems do not include space for the NUL in the size. Also manually 6972 NUL-terminate buffer from gethostname() since POSIX is wishy-washy 6973 on this. 6974 [7266ab3296a3] 6975 69762008-10-26 Todd C. Miller <Todd.Miller@courtesan.com> 6977 6978 * sudo.c, sudoers.pod: 6979 When setting the umask, use the union of the user's umask and the 6980 default value set in sudoers so that we never lower the user's umask 6981 when running a command. 6982 [4e804b004e38] 6983 6984 * sudo.c: 6985 Don't try to read from a zero-length sudoers file. Remove the bogus 6986 Solaris work-around for EAGAIN. Since we now use fgetc() it should 6987 not be a problem. 6988 [bb8e5f68d944] 6989 69902008-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 6991 6992 * parse.c: 6993 In update_defaults() check the return value of user*_matches against 6994 ALLOW so we don't inadvertantly match on UNSPEC. 6995 [4e422fa1527e] 6996 69972008-10-24 Todd C. Miller <Todd.Miller@courtesan.com> 6998 6999 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 7000 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 7001 regen man pages; no more hyphenation 7002 [15de4fe2fe01] 7003 7004 * sudo.c: 7005 Don't error out on a zero-length sudoers file. With the advent of 7006 #include the user could create a situation where sudo is unusable. 7007 [6eb461319fa5] 7008 70092008-10-23 Todd C. Miller <Todd.Miller@courtesan.com> 7010 7011 * auth/kerb5.c, config.h.in, configure, configure.in: 7012 Newer heimdal has 2-argument krb5_get_init_creds_opt_free() like MIT 7013 krb5. Really old heimdal has no krb5_get_init_creds_opt_alloc() at 7014 all. Add configure tests to handle all the cases. 7015 [4b554a98470d] 7016 70172008-10-08 Todd C. Miller <Todd.Miller@courtesan.com> 7018 7019 * sudo.pod: 7020 resort ENVIRONMENT 7021 [f4f20f40653e] 7022 7023 * sudoers.pod: 7024 document sudoers_locale 7025 [0bffd2dbe806] 7026 7027 * sudo.pod, sudo_edit.c: 7028 add SUDO_EDITOR variable that sudoedit uses in preference to VISUAL 7029 or EDITOR 7030 [0ef8cb248cee] 7031 7032 * toke.c, toke.l: 7033 In fill_cmnd(), collapse any escaped sudo-specific characters. 7034 Allows character classes to be used in pathnames. 7035 [5685244c8e44] 7036 70372008-10-03 Todd C. Miller <Todd.Miller@courtesan.com> 7038 7039 * lbuf.c: 7040 fix typo in non-C89 function declaration 7041 [99a7113b3a05] 7042 7043 * sudoers.pod: 7044 Mention POSIX characters classes now that out fnmatch() and glob() 7045 support them. 7046 [9c916f1230c3] 7047 7048 * sample.sudoers, sudoers.pod: 7049 Replace [A-z] (which won't match in UTF8) with [A-Za-z] which is 7050 locale agnostic. 7051 [a60a62bec244] 7052 7053 * parse.h: 7054 use __signed char if we are going to assign a negative value since 7055 on Power, char is unsigned by default 7056 [2877b319df17] 7057 7058 * config.h.in, configure, configure.in: 7059 Add tests for __signed char and signed char. 7060 [5eb874fdf1d4] 7061 7062 * aix.c: 7063 Fix AIX limit setting. getuserattr() returns values in disk blocks 7064 rather than bytes. The default hard stack size in newer AIX is 7065 RLIM_SAVED_MAX. From Dale King. 7066 [3db67415ecc3] 7067 70682008-09-26 Todd C. Miller <Todd.Miller@courtesan.com> 7069 7070 * emul/charclass.h, fnmatch.c, glob.c: 7071 Add character class support to included glob(3) and fnmatch(3). 7072 [6b5b4ad77899] 7073 70742008-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 7075 7076 * emul/fnmatch.h: 7077 Remove UCB advertising clause and some compatibility defines. 7078 [2ade7bee74e1] 7079 70802008-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 7081 7082 * sudo_edit.c: 7083 Check EDITOR/VISUAL to make sure sudoedit is not re-invoking itself 7084 or sudo. This allows one to set EDITOR to sudoedit without getting 7085 into an infinite loop of sudoedit running itself until the path gets 7086 too big. 7087 [aa49ab68f82d] 7088 7089 * def_data.c, def_data.h, def_data.in, defaults.c, sudo.c: 7090 Add sudoers_locale Defaults option to override the default sudoers 7091 locale of "C". 7092 [0639886a35bf] 7093 70942008-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 7095 7096 * sudo.c: 7097 Set locale to system default except for during sudoers parse. 7098 [016dd2736728] 7099 71002008-09-12 Todd C. Miller <Todd.Miller@courtesan.com> 7101 7102 * match.c: 7103 Redo change in 1.34 to use pointer arithmetic. 7104 [f9e7b63bb450] 7105 71062008-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 7107 7108 * match.c: 7109 Fix a dereference (read) of a freed pointer. Reported by Patrick 7110 Williams. 7111 [69877b633753] 7112 71132008-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 7114 7115 * sudo.c: 7116 Set locale to "C" to avoid interpretation issues with character 7117 ranges in sudoers. May want to make the locale a sudoers option in 7118 the future. 7119 [098a95de1746] 7120 71212008-08-20 Todd C. Miller <Todd.Miller@courtesan.com> 7122 7123 * config.h.in: 7124 we no longer use setproctitle 7125 [c7f20fb747ea] 7126 7127 * sudo.h: 7128 remove #if 1 7129 [a368ee6816c6] 7130 7131 * LICENSE, mkstemp.c: 7132 Use my replacement mkstemp() from the mktemp package. 7133 [d07c2beb0f9e] 7134 71352008-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 7136 7137 * gram.c: 7138 regen with yacc skeleton bug fixed 7139 [24784571cbb8] 7140 7141 * sudoers.pod: 7142 Remove duplicate "as root". From Martin Toft. 7143 [97241acfee5e] 7144 71452008-07-02 Todd C. Miller <Todd.Miller@courtesan.com> 7146 7147 * pwutil.c, sudo.c, sudo.h, testsudoers.c: 7148 Flesh out the fake passwd entry used for running commands as a uid 7149 not listed in the passwd database. Fixes an issue with some PAM 7150 modules. 7151 [a6648227f3f2] 7152 71532008-07-01 Todd C. Miller <Todd.Miller@courtesan.com> 7154 7155 * sudo.c: 7156 Error out in -i mode if the user has no shell. This can happen when 7157 running commands as a uid with no password entry. 7158 [0c174bef36ff] 7159 71602008-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 7161 7162 * toke.c, toke.l: 7163 Better fix for line continuation inside double quotes. Now accepts 7164 whitespace between the backslash and the newline like the main 7165 lexer. 7166 [64efcdf86d31] 7167 71682008-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 7169 7170 * toke.c, toke.l: 7171 Fix line continuation in strings. It was only being honored if 7172 preceded by whitespace. 7173 [96c21271a3e4] 7174 71752008-06-22 Todd C. Miller <Todd.Miller@courtesan.com> 7176 7177 * config.h.in, configure, configure.in, logging.c: 7178 Replace the double fork with a fork + daemonize. 7179 [328505441e67] 7180 71812008-06-21 Todd C. Miller <Todd.Miller@courtesan.com> 7182 7183 * env.c, sudo.c: 7184 The -i flag should imply env_reset. This got broken in sudo 1.6.9. 7185 [3caedfeaec87] 7186 7187 * logging.c, sudo.c, sudo_edit.c, visudo.c: 7188 Change how the mailer is waited for. Instead of having a SIGCHLD 7189 handler, use the double fork trick to orphan the child that opens 7190 the pipe to sendmail. Fixes a problem running su on some Linux 7191 distros. 7192 [b59ce60a393d] 7193 71942008-06-20 Todd C. Miller <Todd.Miller@courtesan.com> 7195 7196 * configure, configure.in: 7197 Fix configure test for dirfd() on Linux where DIR is opaque. 7198 [b8f729cdfecc] 7199 72002008-06-17 Todd C. Miller <Todd.Miller@courtesan.com> 7201 7202 * tgetpass.c: 7203 Get rid of the QNX TCSAFLUSH -> TCSADRAIN hack. If QNX still has 7204 this problem we'll need to revisit this again. 7205 [c17fee8ad530] 7206 72072008-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 7208 7209 * logging.c: 7210 Ignore SIGPIPE instead of blocking it when piping to the mailer. If 7211 we only block the signal it may be delivered later when we unblock. 7212 Also, there is no need to block SIGCHLD since we no longer do the 7213 double fork. The normal SIGCHLD handler is sufficient. 7214 [e94a49e992e5] 7215 72162008-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 7217 7218 * configure, configure.in: 7219 Add description for NO_PAM_SESSION, from a redhat patch. 7220 [b9e4c939ec09] 7221 72222008-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 7223 7224 * sudo.cat, sudo.man.in, sudo.pod: 7225 Fix typos in -i usage 7226 [2d7ce5de0235] 7227 72282008-05-18 Todd C. Miller <Todd.Miller@courtesan.com> 7229 7230 * configure, configure.in: 7231 Redo the test for dgettext() in a way that hopefully will work 7232 around the libintl_dgettext() undefined problem. 7233 [d27beb0cf85e] 7234 72352008-05-11 Todd C. Miller <Todd.Miller@courtesan.com> 7236 7237 * schema.ActiveDirectory: 7238 change filename in comment 7239 [733da4ee9ac5] 7240 72412008-05-10 Todd C. Miller <Todd.Miller@courtesan.com> 7242 7243 * Makefile.in, README.LDAP, sudoers.ldap.cat, sudoers.ldap.man.in, 7244 sudoers.ldap.pod: 7245 Reference schema.ActiveDirectory 7246 [d6aec537800e] 7247 72482008-05-09 Todd C. Miller <Todd.Miller@courtesan.com> 7249 7250 * schema.OpenLDAP, schema.iPlanet: 7251 Mark sudoRunAs as deprecated. 7252 [00c50df807af] 7253 7254 * schema.ActiveDirectory: 7255 add sudoRunAsUser and sudoRunAsGroup 7256 [19bcce6f72fb] 7257 7258 * schema.ActiveDirectory: 7259 Active Directory schema by Chantal Paradis and Eric Paquet 7260 [06a09c92c6a5] 7261 72622008-05-08 Todd C. Miller <Todd.Miller@courtesan.com> 7263 7264 * parse.c: 7265 remove an XXX that was fixed 7266 [b88038062fa2] 7267 7268 * ChangeLog: 7269 sync 7270 [8fc27c17270e] 7271 7272 * parse.c: 7273 Initialize tags to UNSPEC instead of def_* in "sudo -l" mode. This 7274 fixes a problem where the tag value printed was influenced by 7275 defaults set in the first pass through the parser. 7276 [588ccd630367] 7277 72782008-05-04 Todd C. Miller <Todd.Miller@courtesan.com> 7279 7280 * Makefile.in, sudo.psf: 7281 No point in packaging the TODO file 7282 [9590248fffe1] 7283 7284 * ChangeLog: 7285 sync 7286 [152acf4c6813] 7287 72882008-05-03 Todd C. Miller <Todd.Miller@courtesan.com> 7289 7290 * WHATSNEW, def_data.c, def_data.h, def_data.in, env.c, sudo.c, 7291 sudo.h, sudoers.cat, sudoers.man.in, sudoers.pod: 7292 Add env_file Defaults option that is similar to /etc/environment on 7293 some systems. 7294 [1daf53d51e18] 7295 72962008-05-02 Todd C. Miller <Todd.Miller@courtesan.com> 7297 7298 * Makefile.in, README, TODO, WHATSNEW, sudo.cat, sudo.man.in, 7299 sudoers.cat, sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.man.in, 7300 version.h, visudo.cat, visudo.man.in: 7301 change version to 1.7.0 7302 [d41d126b9bd8] 7303 7304 * UPGRADE: 7305 initial valgrind pass done 7306 [c59c3876d8ca] 7307 73082008-04-23 Todd C. Miller <Todd.Miller@courtesan.com> 7309 7310 * ldap.c: 7311 Fix typo/think in sudo_ldap_read_secret() when storing the secret. 7312 [830d246c09b0] 7313 73142008-04-11 Todd C. Miller <Todd.Miller@courtesan.com> 7315 7316 * ldap.c: 7317 define LDAPS_PORT if the system headers do not 7318 [247b12325701] 7319 73202008-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 7321 7322 * gram.c, gram.y: 7323 Fix another memory leak in init_parser(). 7324 [7bba47deba11] 7325 7326 * configure, configure.in: 7327 There was a missing space before the ldap libs in SUDO_LIBS for some 7328 configurations. 7329 [7524cfc93759] 7330 7331 * alias.c, gram.c, gram.y, toke.c, toke.l: 7332 Clean up some memory leaks pointed out by valgrind. 7333 [a965866ece1a] 7334 73352008-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 7336 7337 * sudo.c: 7338 fix "sudo -s" broken by mode/flags breakout 7339 [acffe984d408] 7340 7341 * configure, configure.in: 7342 remove duplicate check for dgettext 7343 [58145529133c] 7344 73452008-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 7346 7347 * aix.c: 7348 Fall back to default stanza if no user-specific limit is found. 7349 [7b8cb29123ee] 7350 73512008-04-02 Todd C. Miller <Todd.Miller@courtesan.com> 7352 7353 * snprintf.c: 7354 include stdint.h if present 7355 [f0ec38529306] 7356 7357 * snprintf.c: 7358 Use LLONG_MAX, not the old QUAD_MAX 7359 [01041ce508fb] 7360 73612008-04-01 Todd C. Miller <Todd.Miller@courtesan.com> 7362 7363 * sudoers.ldap.pod: 7364 fix cut and pasto 7365 [34240fdef5ab] 7366 73672008-03-31 Todd C. Miller <Todd.Miller@courtesan.com> 7368 7369 * pwutil.c: 7370 Add #ifdef PURITY 7371 [ce1b571ad526] 7372 73732008-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 7374 7375 * auth/bsdauth.c: 7376 remove useless cast 7377 [494f8a862e1d] 7378 73792008-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 7380 7381 * ChangeLog: 7382 sync 7383 [f5c97ffaabcc] 7384 7385 * TODO: 7386 sync 7387 [96ff1c44c182] 7388 7389 * sudo.h: 7390 Split MODE_* defines into primary and flags. 7391 [c02ee3027cb9] 7392 73932008-03-26 Todd C. Miller <Todd.Miller@courtesan.com> 7394 7395 * aix.c: 7396 It turns out the logic for getting AIX limits is more convoluted 7397 than I realized and differs depending on whether the soft and/or 7398 hard limits are defined. 7399 [cf8d3f85d395] 7400 74012008-03-23 Todd C. Miller <Todd.Miller@courtesan.com> 7402 7403 * Makefile.in, configure, configure.in: 7404 Back out AIX-specific change to set the sudo_noexec path to the .a 7405 file, we do really want to use the .so file. Since libtool doesn't 7406 do that correctly, just install the .so file ourselves in the 7407 Makefile. 7408 [05c6f33177d9] 7409 7410 * install-sh: 7411 If the file given to install is a path, only use the basename of the 7412 file when building the destination path. 7413 [695ba4e429ce] 7414 74152008-03-18 Todd C. Miller <Todd.Miller@courtesan.com> 7416 7417 * sudo.c: 7418 parse_args() cleanup: Sort command line options in the getopt() 7419 switch The -U option requires a parameter Normalize a few ISSET 7420 calls Split mode into mode and flags and retire the now-obsolete 7421 excl variable 7422 [0d156835f861] 7423 7424 * WHATSNEW, check.c, sudo.c, sudo.cat, sudo.h, sudo.man.in, sudo.pod, 7425 sudo_usage.h.in: 7426 Add -n (non-interactive) flag. 7427 [e3e50400d32d] 7428 7429 * sudo.c: 7430 Move version printing, etc. into a separate function. 7431 [18c91b476e2c] 7432 7433 * sudo.c: 7434 Don't try to cleanup nsswitch if it has not been initialized. 7435 [aeb1ca1b399d] 7436 74372008-03-17 Todd C. Miller <Todd.Miller@courtesan.com> 7438 7439 * logging.c: 7440 Block SIGPIPE in send_mail() so sudo is not killed by a problem 7441 executing the mailer. 7442 [f130e7924cca] 7443 74442008-03-14 Todd C. Miller <Todd.Miller@courtesan.com> 7445 7446 * configure, configure.in: 7447 AIX shared libs end in .a, not .so. 7448 [a5deb07020d8] 7449 74502008-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 7451 7452 * env.c: 7453 Preserve HOME by default too. Matches documentation and previous 7454 behavior. 7455 [c16f17f1047c] 7456 74572008-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 7458 7459 * sudo.c: 7460 Use getopt() to parse the command line. We need to be able to 7461 intersperse env variables and options yet still honor "--"" which 7462 complicates things slightly. 7463 [60f271ce5c16] 7464 74652008-03-06 Todd C. Miller <Todd.Miller@courtesan.com> 7466 7467 * ChangeLog: 7468 sync 7469 [685e67964eda] 7470 7471 * acsite.m4, configure, ltmain.sh: 7472 update to libtool-1.5.26 7473 [4c9a8c3d3b40] 7474 7475 * config.guess, config.sub: 7476 update from libtool-1.5.26 distribution 7477 [c6641aef2527] 7478 7479 * aix.c, sudo.h: 7480 attempt to fix compilation errors on AIX 7481 [edb13e5b2184] 7482 7483 * Makefile.in: 7484 fix typo in last commit 7485 [25ba7f7ceae4] 7486 7487 * Makefile.in: 7488 Add WHATSNEW file to the distribution 7489 [213f4115de8f] 7490 7491 * visudo.c: 7492 use warningx instead of fprintf(stderr, ...) 7493 [a3494b8ccb19] 7494 7495 * list.c: 7496 add DEBUG to list2tq 7497 [115d24a3000c] 7498 7499 * ChangeLog, TODO: 7500 sync 7501 [60e6f4d1fac0] 7502 7503 * WHATSNEW: 7504 mention mailfrom 7505 [e2498f9e18d6] 7506 7507 * Makefile.in, aix.c, config.h.in, configure, configure.in, 7508 set_perms.c, sudo.h: 7509 Add aix_setlimits() to set resource limits on AIX using a 7510 combination of getuserattr() and setrlimit(). Currently untested. 7511 [9b1441fd89ca] 7512 75132008-03-05 Todd C. Miller <Todd.Miller@courtesan.com> 7514 7515 * def_data.c, def_data.h, def_data.in, logging.c, sudoers.cat, 7516 sudoers.man.in, sudoers.pod: 7517 Add mailfrom Defaults option that sets the value of the From: field 7518 in the warning/error mail. If unset the login name of the invoking 7519 user is used. 7520 [029b9f05d3d9] 7521 7522 * defaults.c: 7523 store a copy of _PATH_SUDO_ASKPASS in def_askpass that is freeable 7524 [a90e407d5e00] 7525 7526 * gram.c, gram.y: 7527 When adding a default, only call list2tq() once to do the list to tq 7528 conversion. It is not legal to call list2tq multiple times on the 7529 same list since list2tq consumes and modifies the list argument. 7530 [fbc25d245c4a] 7531 7532 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 7533 comment out XXXs for now 7534 [595a1d43309d] 7535 7536 * WHATSNEW: 7537 mention askpass 7538 [b993e0837c22] 7539 75402008-03-04 Todd C. Miller <Todd.Miller@courtesan.com> 7541 7542 * sudo.c: 7543 Error out if both -A and -S are specified Error out if -A is 7544 specified but no askpass is configured 7545 [24f1df2638f6] 7546 7547 * configure, configure.in: 7548 we are not going to ship a sudo-specific askpass 7549 [61949e7a3943] 7550 75512008-03-03 Todd C. Miller <Todd.Miller@courtesan.com> 7552 7553 * sudo.h: 7554 fix definition of TGP_ASKPASS 7555 [0447c57ba4c3] 7556 7557 * def_data.c, def_data.in: 7558 make askpass boolean-capable 7559 [e0885893a325] 7560 7561 * INSTALL: 7562 document --with-askpass 7563 [c76e15ba97cf] 7564 7565 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 7566 sudoers.man.in, visudo.cat: 7567 regen 7568 [8d16242980b7] 7569 75702008-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 7571 7572 * sudo.pod, sudo_usage.h.in, sudoers.pod: 7573 document -A and askpass 7574 [02c07505a78c] 7575 7576 * auth/sudo_auth.c, check.c, configure, configure.in, def_data.c, 7577 def_data.h, def_data.in, defaults.c, pathnames.h.in, sudo.c, sudo.h, 7578 sudo_usage.h.in, tgetpass.c: 7579 Add support for running a helper program to read the password when 7580 no tty is present (or when specified with the -A flag). TODO: docs. 7581 [05780f5f71fd] 7582 7583 * def_data.c, def_data.in: 7584 add missing printf format to SELinux role and type strings 7585 [2b32774715e7] 7586 75872008-02-27 Todd C. Miller <Todd.Miller@courtesan.com> 7588 7589 * INSTALL, configure, configure.in: 7590 Disable use of gss_krb5_ccache_name() by default and add 7591 --enable-gss-krb5-ccache-name configure option to enable it. It 7592 seems that gss_krb5_ccache_name() doesn't work properly with some 7593 combinations of Heimdal and OpenLDAP. 7594 [f61ebd3b19bd] 7595 75962008-02-22 Todd C. Miller <Todd.Miller@courtesan.com> 7597 7598 * selinux.c: 7599 Ignore setexeccon() failing in permissive mode. Also add a call to 7600 setkeycreatecon() (though this is probably insufficient). From Dan 7601 Walsh. 7602 [52564fc1c069] 7603 7604 * auth/pam.c: 7605 Only set std_prompt for the PAM_PROMPT_* cases. The conversation 7606 function may be called for non-password reading purposes so we must 7607 be careful not to use def_prompt in cases where it may not be set. 7608 [29d88ca575ba] 7609 76102008-02-20 Todd C. Miller <Todd.Miller@courtesan.com> 7611 7612 * selinux.c: 7613 Don't free the new tty context, we need to keep it around when we 7614 restore the tty context after the command completes 7615 [5b4bd39b6ea8] 7616 76172008-02-19 Todd C. Miller <Todd.Miller@courtesan.com> 7618 7619 * selinux.c: 7620 s/newrole/sudo/ 7621 [21b8a96ff8df] 7622 7623 * sudo.man.pl, sudo.pod: 7624 Only put login_cap(3) in SEE ALSO section if we have login.conf 7625 support 7626 [05250ddff2c0] 7627 76282008-02-18 Todd C. Miller <Todd.Miller@courtesan.com> 7629 7630 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 7631 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 7632 regen 7633 [301e5c5ccdbe] 7634 7635 * sudoers.pod: 7636 Substitute in comment characters for lines partaining to login.conf, 7637 BSD auth and SELinux and only enable them if pertinent. 7638 [c1c98fa163ce] 7639 7640 * sudoers.man.pl: 7641 Substitute in comment characters for lines partaining to login.conf, 7642 BSD auth and SELinux and only enable them if pertinent. 7643 [6c88f30b878a] 7644 7645 * sudo.pod: 7646 Substitute in comment characters for lines partaining to login.conf, 7647 BSD auth and SELinux and only enable them if pertinent. 7648 [acdbdfd24e1d] 7649 7650 * sudo.man.pl: 7651 Substitute in comment characters for lines partaining to login.conf, 7652 BSD auth and SELinux and only enable them if pertinent. 7653 [0c56d4750ac3] 7654 7655 * Makefile.in, configure, configure.in: 7656 Substitute in comment characters for lines partaining to login.conf, 7657 BSD auth and SELinux and only enable them if pertinent. 7658 [9a02bd6a6658] 7659 7660 * Makefile.in, sudo.pod, sudoers.ldap.pod, sudoers.pod, visudo.pod: 7661 Remove the =cut on the first line (above the copyright notice) to 7662 quiet pod2man. Also remove the hackery in the FILES section and 7663 just deal with the fact that there will a newline between each 7664 pathname. 7665 [2ac1ab191835] 7666 76672008-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 7668 7669 * Makefile.in: 7670 run sudo.man.pl when generating sudo.man.in 7671 [859727369168] 7672 7673 * configure, configure.in, sudo.man.pl: 7674 comment out SELinux manual bits unless --with-selinux was specified 7675 [97ff4212b649] 7676 7677 * sudoers.pod: 7678 document role and type defaults for SELinux 7679 [870f303366b3] 7680 7681 * sudo.c, sudo.cat, sudo.man.in, sudo.pod, sudo_usage.h.in: 7682 Document "sudo -ll" and make "sudo -l -l" be equivalent. 7683 [3ce6dc429ea3] 7684 76852008-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 7686 7687 * configure, configure.in: 7688 Treat k*bsd*-gnu like Linux, not BSD. Fixes compilation problems on 7689 Debian GNU/kFreeBSD. 7690 [c4efa567a328] 7691 76922008-02-13 Todd C. Miller <Todd.Miller@courtesan.com> 7693 7694 * auth/kerb5.c: 7695 Avoid Heimdal'isms introduced in the rev 1.32 rewrite of 7696 verify_krb_v5_tgt() 7697 [f80538e5a6fa] 7698 7699 * logging.c, logging.h, sudo.c: 7700 Remove dependence on VALIDATE_NOT_OK in logging functions. Split 7701 log_auth() into log_allowed() and log_denial() Replace mail_auth() 7702 with should_mail() and a call to send_mail() 7703 [58aac9997557] 7704 77052008-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 7706 7707 * ldap.c: 7708 Add debugging so we can tell if the krb5 ccache is accessible 7709 [c679322527bb] 7710 7711 * INSTALL: 7712 mention --with-selinux 7713 [9efbe0b52194] 7714 77152008-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 7716 7717 * configure: 7718 regen 7719 [467a834f867c] 7720 7721 * selinux.c: 7722 add Sudo tag 7723 [d004ee669bed] 7724 7725 * sudo.c, sudo.cat, sudo.h, sudo.man.in, sudo.pod, sudo_usage.h.in, 7726 sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod, 7727 testsudoers.c, toke.c, toke.l: 7728 Add support for SELinux RBAC. Sudoers entries may specify a role 7729 and type. There are also role and type defaults that may be used. 7730 To make sure a transition occurs, when using RBAC commands are 7731 executed via the new sesh binary. Based on initial changes from Dan 7732 Walsh. 7733 [1d4abfe2c004] 7734 7735 * sesh.c: 7736 Add support for SELinux RBAC. Sudoers entries may specify a role 7737 and type. There are also role and type defaults that may be used. 7738 To make sure a transition occurs, when using RBAC commands are 7739 executed via the new sesh binary. Based on initial changes from Dan 7740 Walsh. 7741 [1e3b395ce049] 7742 7743 * Makefile.in, config.h.in, configure.in, def_data.c, def_data.h, 7744 def_data.in, gram.c, gram.h, gram.y, ldap.c, parse.c, parse.h, 7745 pathnames.h.in, selinux.c: 7746 Add support for SELinux RBAC. Sudoers entries may specify a role 7747 and type. There are also role and type defaults that may be used. 7748 To make sure a transition occurs, when using RBAC commands are 7749 executed via the new sesh binary. Based on initial changes from Dan 7750 Walsh. 7751 [6b421948286e] 7752 77532008-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 7754 7755 * lbuf.c, ldap.c, parse.c, sudo.c, sudo.h, sudo_nss.c: 7756 Add long list (sudo -ll) support for printing verbose LDAP and 7757 sudoers file entries. Still need to update manual. 7758 [2875be37935c] 7759 77602008-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 7761 7762 * ldap.c, parse.c, sudo.h, sudo_nss.c, sudo_nss.h: 7763 Unify the -l output for file and ldap based sudoers and use lbufs 7764 for both. The ldap output does not currently include options that 7765 cannot be represented as tags. This will be remedied in a long list 7766 output mode to come. 7767 [b2e429456596] 7768 77692008-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 7770 7771 * set_perms.c: 7772 Use a specific error message for errno == EAGAIN when setuid() et al 7773 fails. On Linux systems setuid() will fail with errno set to EAGAIN 7774 if changing to the new uid would result in a resource limit 7775 violation. 7776 [08d0aecd9f03] 7777 7778 * sudo.c: 7779 Unlimit nproc on Linux systems where calling the setuid() family of 7780 syscalls causes the nroc resource limit to be checked. The limits 7781 will be reset by pam_limits.so when PAM is used. In the non-PAM 7782 case the nproc limit will remain unlimited but there doesn't seem to 7783 be a way around that other than having sudo parse 7784 /etc/security/limits.conf directly. 7785 [df024b415a8d] 7786 7787 * env.c, sudo.c, sudo.pod: 7788 Only read /etc/environment on Linux and AIX 7789 [90669e2aefdb] 7790 77912008-01-23 Todd C. Miller <Todd.Miller@courtesan.com> 7792 7793 * configure, configure.in: 7794 Use SUDO_DEFINE_UNQUOTED instead of AC_DEFINE_UNQUOTED to prevent 7795 ldap.conf and ldap.secret paths from going into config.h. Avoid 7796 single quotes in variable expansion when using SUDO_DEFINE_UNQUOTED 7797 since in some versions of bash they will end up literally in the 7798 resulting define. 7799 [25390f3ef10a] 7800 78012008-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 7802 7803 * README.LDAP: 7804 mention --with-nsswitch=no 7805 [c509df927263] 7806 7807 * configure, configure.in: 7808 ldap_ssl.h depends on ldap.h being included first 7809 [d96d90e9b21f] 7810 7811 * config.h.in, configure, configure.in, ldap.c: 7812 Include ldap_ssl.h if we can find it. Needed for the 7813 ldapssl_set_strength defines on HP-UX at least. 7814 [9e530470948a] 7815 7816 * sudoers.ldap.pod: 7817 sync 7818 [b9d101f4673a] 7819 7820 * TODO: 7821 sync 7822 [2ce951b2ecd0] 7823 7824 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.ldap.cat, 7825 sudoers.ldap.man.in, sudoers.man.in, visudo.cat, visudo.man.in: 7826 regen 7827 [b61d793987e0] 7828 7829 * Makefile.in: 7830 Use 78n line length when formatting cat pages. 7831 [761bee9d5759] 7832 7833 * README.LDAP: 7834 Remove redundant info that is now in sudoers.ldap.pod 7835 [01828dcce59e] 7836 78372008-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 7838 7839 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 7840 Reorganize the first section a bit. Substitute the proper path for 7841 /etc/sudoers. 7842 [11ae165e065d] 7843 7844 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 7845 Substitute values for ldap.conf, ldap.secret and nsswitch.conf Move 7846 schema into EXAMPLES 7847 [ab6509d1dde7] 7848 7849 * configure, configure.in: 7850 Substitute values for ldap.conf, ldap.secret and nsswitch.conf into 7851 sudoers.ldap.man. 7852 [6e689972f465] 7853 7854 * configure, configure.in: 7855 substitute for sudoers.ldap.man 7856 [5a4a25766dee] 7857 7858 * Makefile.in: 7859 Fix cut & pasto introduced when adding sudoers.ldap man page. 7860 [a7b069af8894] 7861 7862 * sudoers.ldap.cat, sudoers.ldap.man.in, sudoers.ldap.pod: 7863 Fill in some of the missing pieces. Still needs some reorganization 7864 and editing. 7865 [5e7331722166] 7866 78672008-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 7868 7869 * Makefile.in, sudoers.ldap.cat, sudoers.ldap.man.in, 7870 sudoers.ldap.pod: 7871 Beginnings of a sudoers.ldap man page. Currently, much of the 7872 information is adapted from README.LDAP. 7873 [aad28c8a922d] 7874 78752008-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 7876 7877 * pwutil.c: 7878 When copying gr_mem we must guarantee that the storage space for 7879 gr_mem is properly aligned. The simplest way to do this is to 7880 simply store gr_mem directly after struct group. This is not a 7881 problem for gr_passwd or gr_name as they are simple strings. 7882 [af58fc76f1ed] 7883 7884 * ldap.c: 7885 Fix a typo/thinko in one of the calls to 7886 sudo_ldap_check_user_netgroup(). From Marco van Wieringen. 7887 [70b2eb8097f5] 7888 78892008-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 7890 7891 * config.h.in, configure, configure.in, ldap.c: 7892 include <mps/ldap_ssl.h> in ldap.c if available 7893 [34346206ef16] 7894 78952008-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 7896 7897 * gram.c, gram.y: 7898 Make sure we define SIZE_MAX for yacc's skeleton.c 7899 [d8a45c7a3c42] 7900 7901 * tgetpass.c: 7902 Use TCSAFLUSH when restoring terminal settings (and echo) to 7903 guarantee that any pending output is discarded 7904 [549a184479e5] 7905 79062008-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 7907 7908 * sudoers: 7909 no longer need to specify SETENV when user has sudo ALL 7910 [3051b41f8032] 7911 7912 * testsudoers.c: 7913 sync user_args size calculation with sudo.c Add -g group option, 7914 renaming old -g to -G Add set_runasgr() and set_runaspw() and use 7915 them 7916 [0850325180f0] 7917 7918 * sudo.c, sudo.h: 7919 Make set_runaspw static void 7920 [5d44d7a340ce] 7921 7922 * testsudoers.c, visudo.c: 7923 g/c set_runaspw stub 7924 [79ebb5e2cc38] 7925 7926 * configure, configure.in: 7927 Don't add -llber twice. 7928 [4356d302eef4] 7929 79302008-01-14 Todd C. Miller <Todd.Miller@courtesan.com> 7931 7932 * ldap.c: 7933 fix typo 7934 [249cecc557e9] 7935 79362008-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 7937 7938 * gram.c: 7939 regen 7940 [2f94ea375b67] 7941 7942 * configure, configure.in: 7943 Fix check that determines whether -llber is required. 7944 [6afa99523379] 7945 7946 * README.LDAP, config.h.in, configure, configure.in, ldap.c: 7947 For netscape-based LDAP, use ldapssl_set_strength() to implement the 7948 checkpeer ldap.conf option. 7949 [16ae24d73795] 7950 7951 * auth/kerb5.c: 7952 Delay krb5_cc_initialize() until we actually need to use the cred 7953 cache, which is what krb5_verify_user() does. Better cleanup on 7954 failure. 7955 [d12e5f1695b8] 7956 79572008-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 7958 7959 * auth/kerb5.c: 7960 Rewrite verify_krb_v5_tgt() based on what heimdal's 7961 krb5_verify_user() does. 7962 [05b5815f86c9] 7963 79642008-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 7965 7966 * gram.c: 7967 The U suffix on constants is an ANSI feature 7968 [c6dfce3167f1] 7969 7970 * configure, configure.in: 7971 Add check for ber_set_option() in -llber 7972 [43d0c0566074] 7973 79742008-01-07 Todd C. Miller <Todd.Miller@courtesan.com> 7975 7976 * README.LDAP: 7977 default if no nsswitch.conf is files only 7978 [c13001d9c998] 7979 79802008-01-06 Todd C. Miller <Todd.Miller@courtesan.com> 7981 7982 * README.LDAP: 7983 don't tell people to mail aaron about LDAP stuff 7984 [8165ec1ef0c6] 7985 7986 * README.LDAP: 7987 timelimit and bind_timelimit 7988 [44f74cbed167] 7989 7990 * ChangeLog: 7991 sync 7992 [aba1a0ab02bd] 7993 7994 * ldap.c: 7995 Move ldap.secret reading into a separate function. 7996 [1948acc9f7a4] 7997 7998 * check.c: 7999 user_runas -> runas_pw 8000 [334490fc2bae] 8001 80022008-01-05 Todd C. Miller <Todd.Miller@courtesan.com> 8003 8004 * TODO: 8005 sync 8006 [c7b165cc47c6] 8007 8008 * check.c, sudo.pod, sudoers.pod: 8009 Add and document the %p escape in the password prompt. Based on a 8010 patch from Patrick Schoenfeld. 8011 [3972d4f31ffa] 8012 8013 * ldap.c: 8014 Check strlcpy() return values. 8015 [9b42f3ae8ff1] 8016 8017 * ldap.c: 8018 refactor ldap binding code into sudo_ldap_bind_s() 8019 [cb0c66a4d955] 8020 8021 * README.LDAP: 8022 Make it clear that host and uri can take multiple parameters. URI is 8023 now supported for more than just openldap nsswitch.conf does't 8024 accept "compat" 8025 [f610dea656d6] 8026 8027 * sudo.c: 8028 comment cleanup and update (c) year 8029 [6cd69c810ca5] 8030 8031 * parse.c, sudo_nss.c: 8032 Move display_privs() and display_cmnd() from parse.c to sudo_nss.c. 8033 This should make it possible to build an LDAP-only sudo binary. 8034 [61c3f27066a0] 8035 8036 * ldap.c, parse.c, sudo.c, sudo.h, sudo_nss.h: 8037 Improve chaining of multiple sudoers sources by passing in the 8038 previous return value to the next in the chain 8039 [2c0b722b1b2d] 8040 8041 * gram.y: 8042 Free up parser data structures in sudo_file_close(). 8043 [2251531d4519] 8044 8045 * gram.c, parse.c: 8046 Free up parser data structures in sudo_file_close(). 8047 [8371f130f401] 8048 8049 * ldap.c: 8050 Parse uri ourself if no ldap_initialize() is present Use 8051 ldap_create() instead of deprecated ldap_init() Use 8052 ldap_sasl_bind_s() instead of deprecated ldap_simple_bind_s() 8053 [85d3825b1953] 8054 8055 * config.h.in, configure, configure.in: 8056 Add check for ldap_sasl_bind_s() Remove -DLDAP_DEPRECATED from 8057 CFLAGS 8058 [240524512bc5] 8059 80602008-01-04 Todd C. Miller <Todd.Miller@courtesan.com> 8061 8062 * config.h.in, configure, configure.in: 8063 add check for ldap_create 8064 [3089badd73b8] 8065 80662008-01-03 Todd C. Miller <Todd.Miller@courtesan.com> 8067 8068 * config.h.in, configure, configure.in, ldap.c: 8069 Add sudo_ldap_get_first_rdn() to return the first rdn of an entry's 8070 dn using the mechanism appropriate for the LDAP SDK in use. Use 8071 ldap_unbind_ext_s() instead of deprecated ldap_unbind_s(). Emulate 8072 ldap_unbind_ext_s() and ldap_search_ext_s() for SDK's without them. 8073 [6deeca3d00cc] 8074 8075 * lbuf.c: 8076 include unistd.h 8077 [8419ed0bae7f] 8078 8079 * config.h.in, configure.in: 8080 fix typo in mtim_getnsec 8081 [2d5f21230a60] 8082 80832008-01-02 Todd C. Miller <Todd.Miller@courtesan.com> 8084 8085 * config.h.in, configure, configure.in: 8086 add check for st__tim in struct stat as used by SCO 8087 [587060ea2a89] 8088 8089 * ldap.c: 8090 use ldap_search_ext_s instead of deprecated ldap_search_s 8091 [5fc44fe3b44c] 8092 8093 * Makefile.in, TODO, sudo.cat, sudo.man.in: 8094 add sudo_nss.h to HDRS 8095 [86f01a70ff29] 8096 8097 * ldap.c: 8098 Replace deprecated ldap_explode_dn() with calls to ldap_str2dn() and 8099 ldap_rdn2str(). 8100 [aa217002cfae] 8101 81022008-01-01 Todd C. Miller <Todd.Miller@courtesan.com> 8103 8104 * ldap.c: 8105 Use ldap_get_values_len()/ldap_value_free_len() instead of the 8106 deprecated ldap_get_values()/ldap_value_free(). 8107 [e22dceb85e57] 8108 8109 * ChangeLog: 8110 sync 8111 [adad27b36107] 8112 8113 * TODO: 8114 sync 8115 [c449eb47e0ef] 8116 8117 * gettime.c, sudo.c: 8118 Remove some already fixed XXXs 8119 [532788d0e6da] 8120 8121 * ldap.c: 8122 Same return value as non-existent sudoers if LDAP was unable to 8123 connect. 8124 [5819810e8e4e] 8125 8126 * sudo.pod: 8127 mention /etc/environment 8128 [ea8e6102f853] 8129 8130 * README.LDAP, UPGRADE, WHATSNEW: 8131 Update to reflect recent developments. 8132 [ed1fb026fe77] 8133 8134 * sudo.c: 8135 Print nsswitch.conf, ldap.conf and ldap.secret paths in -V output. 8136 [55b68a58260d] 8137 8138 * ldap.c: 8139 When building up a query don't list groups in the aux group vector 8140 that are the same as the passwd file group. On most systems the 8141 first gid in the group vector is the same as the passwd entry gid. 8142 [4bb51e297e0d] 8143 8144 * env.c, ldap.c: 8145 Define LDAPNOINIT before calling ldap_init(), etc. to disable user 8146 ldaprc and system defaults that could affect how LDAP works. 8147 [ce5036440db2] 8148 8149 * INSTALL, configure, configure.in, pathnames.h.in, sudo.c, 8150 sudo_nss.c, sudo_nss.h: 8151 Rename read_nss -> sudo_read_nss Add --with-nsswitch to allow users 8152 to specify nsswitch.conf path or disable it. If --with-nsswitch=no 8153 but --with-ldap, order is LDAP, then sudoers. Fix --with-ldap-conf- 8154 file and --with-ldap-secret-file 8155 [ea5d7704381f] 8156 8157 * parse.c: 8158 Honor def_ignore_local_sudoers 8159 [f38e1121fae1] 8160 81612007-12-31 Todd C. Miller <Todd.Miller@courtesan.com> 8162 8163 * ldap.c: 8164 no longer need to check def_ignore_local_sudoers here 8165 [fce2a72f96fb] 8166 8167 * parse.c: 8168 Refactor group vector resetting into a function and also call it 8169 from display_cmnd. Stop after the first sucessful match in 8170 display_cmnd. Print a newline between each display_privs method. 8171 [981b37b5adff] 8172 8173 * parse.c: 8174 fix double free introduced in rev 1.218 8175 [c574b02d8747] 8176 8177 * ldap.c: 8178 belt and suspenders; zero out result after freeing it 8179 [7732988d4620] 8180 8181 * env.c, fileops.c, ldap.c, sudo.h, sudo_nss.c: 8182 Refactor line reading into a separate function, sudo_parseln(), 8183 which removes comments, leading/trailing whitespace and newlines. 8184 May want to rethink the use of sudo_parseln() for /etc/ldap.secret 8185 [61d9068f0645] 8186 8187 * parse.c, sudo.c: 8188 Make the inability to read the sudoers file a non-fatal error if 8189 there are other sudoers sources available. sudoers_file_lookup now 8190 returns "not OK" if sudoers was not present 8191 [643babf597a8] 8192 8193 * ldap.c: 8194 make it clear that the global options are from LDAP 8195 [9ff950349463] 8196 8197 * logging.c: 8198 allocate proper amount of space for error string 8199 [8bebb7d46d19] 8200 8201 * sudo_nss.c, sudo_nss.h: 8202 actual sudo nss code 8203 [5bd7d52d7738] 8204 8205 * ldap.c, parse.c, sudo.c, sudo.h: 8206 nss-ify display_privs and display_cmnd. 8207 [cccfdd3253f2] 8208 8209 * defaults.c, parse.c, testsudoers.c, visudo.c: 8210 move update_defaults() to parse.c 8211 [ace144b958a9] 8212 8213 * Makefile.in, ldap.c, list.c, parse.c, parse.h, sudo.c, sudo.h: 8214 Use nsswitch to hide some sudoers vs. ldap implementation details 8215 and reduce the number of #ifdef LDAP TODO: fix display routines and 8216 error handling 8217 [6225edde89a6] 8218 82192007-12-28 Todd C. Miller <Todd.Miller@courtesan.com> 8220 8221 * Makefile.in, README.LDAP, ldap.c, pathnames.h.in, sudo.c, sudo.h: 8222 First cut at nsswitch.conf support. Further reorganizaton and 8223 related changes are forthcoming. 8224 [717f59d0790b] 8225 82262007-12-21 Todd C. Miller <Todd.Miller@courtesan.com> 8227 8228 * env.c, pathnames.h.in, sudo.c, sudo.h: 8229 Add support for reading and /etc/environment file. Still needs to 8230 be documented and should probably only applies to OSes that have it 8231 (AIX and Linux, maybe others). 8232 [15d3edae27e4] 8233 8234 * ldap.c: 8235 include limits.h 8236 [e19875ef0f82] 8237 82382007-12-20 Todd C. Miller <Todd.Miller@courtesan.com> 8239 8240 * WHATSNEW: 8241 reword LDAP SASL 8242 [7ec3c4ec31b5] 8243 82442007-12-19 Todd C. Miller <Todd.Miller@courtesan.com> 8245 8246 * TODO: 8247 sync 8248 [87c5a7aea7bf] 8249 8250 * README.LDAP: 8251 Add an example sudoRole, clarify netscape vs. openldap a bit more 8252 [6f96c0ca8107] 8253 8254 * README.LDAP: 8255 Be clear on what is OpenLDAP vs. Netscape-derived 8256 [a33c8314dec5] 8257 8258 * config.h.in, configure, configure.in, ldap.c: 8259 Use ldapssl_init() for ldaps support instead of trying to do it 8260 manually with ldap_init() + ldapssl_install_routines(). Use tls_cert 8261 and tls_key for cert7.db and key3.db respectively. Don't print 8262 debugging info for options that are not set. Add warning if 8263 start_tls specified when not supported. 8264 [abb62dc7e4a3] 8265 8266 * ldap.c: 8267 fix compilation on solaris 8268 [03d449684e80] 8269 8270 * Makefile.in: 8271 add missing .h and .c files for missing lib objs 8272 [8b37825bdfc7] 8273 82742007-12-18 Todd C. Miller <Todd.Miller@courtesan.com> 8275 8276 * ldap.c: 8277 fix LDAP_OPT_NETWORK_TIMEOUT setting 8278 [226eba89c0ad] 8279 8280 * ldap.c: 8281 fix compilation on Solaris 8282 [917d47639eb6] 8283 82842007-12-17 Todd C. Miller <Todd.Miller@courtesan.com> 8285 8286 * configure, configure.in: 8287 fix typo 8288 [009d5c81b225] 8289 8290 * README.LDAP: 8291 try to clear up which variables are for OpenLDAP and which are for 8292 netscape-derived SDKs 8293 [f8d9823ee73c] 8294 8295 * config.h.in, configure, configure.in, ldap.c: 8296 Add support for "ssl on" in both netscape and openldap flavors. Only 8297 the OpenLDAP flavor has been tested. 8298 [952745829ec5] 8299 8300 * logging.c, sudo.c, sudo.h: 8301 Call cleanup() before exit in log_error() instead of calling 8302 sudo_ldap_close() directly. ldap_conn can now be static to sudo.c 8303 [da02d1b67a2c] 8304 8305 * sudo.c: 8306 ld -> ldap_conn 8307 [01afa6d927cc] 8308 83092007-12-16 Todd C. Miller <Todd.Miller@courtesan.com> 8310 8311 * logging.c, sudo.c, sudo.h: 8312 Better ldap cleanup. 8313 [25b9abe2d617] 8314 8315 * ldap.c: 8316 Distinguish between LDAP conf settings that are connection-specific 8317 (which take an ld pointer) and those that are default settings 8318 (which do not). 8319 [d48dc6c9c3b4] 8320 83212007-12-14 Todd C. Miller <Todd.Miller@courtesan.com> 8322 8323 * ldap.c: 8324 Improved warnings on error. 8325 [c8dce7b4feb4] 8326 8327 * ldap.c: 8328 Make ldap config table driven and set the config *after* we open the 8329 connection. 8330 [d9698b5a2681] 8331 83322007-12-13 Todd C. Miller <Todd.Miller@courtesan.com> 8333 8334 * ldap.c: 8335 fix LDAP_OPT_X_CONNECT_TIMEOUT compat define 8336 [598c6df06660] 8337 8338 * configure, configure.in: 8339 some operating systems need to link with -lkrb5support when using 8340 krb5 8341 [8896365dde9e] 8342 83432007-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 8344 8345 * WHATSNEW: 8346 minor update 8347 [acfeeb7f4886] 8348 8349 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in: 8350 regen 8351 [a3c6699674f9] 8352 83532007-12-08 Todd C. Miller <Todd.Miller@courtesan.com> 8354 8355 * ChangeLog, TODO: 8356 sync 8357 [138e99b925ee] 8358 8359 * ldap.c, schema.OpenLDAP, schema.iPlanet, sudoers2ldif: 8360 add -g support for LDAP 8361 [8fc27dbe9287] 8362 83632007-12-03 Todd C. Miller <Todd.Miller@courtesan.com> 8364 8365 * WHATSNEW, sudo.c, sudo.pod, sudo_usage.h.in: 8366 The -i and -s flags can now take an optional command. 8367 [6afec104ee77] 8368 83692007-12-02 Todd C. Miller <Todd.Miller@courtesan.com> 8370 8371 * auth/pam.c, def_data.c, def_data.h, def_data.in, sudo.c, sudo.pod, 8372 sudoers.pod: 8373 Add passprompt_override flag to sudoers that will cause the prompt 8374 to be overridden in all cases. This flag is also set when the user 8375 specifies the -p flag. 8376 [e4c5402131a6] 8377 8378 * sudo.c: 8379 Move setting of login class until after sudoers has been parsed. Set 8380 NewArgv[0] for -i after runas_pw has been set. 8381 [62a48c8c56fa] 8382 8383 * configure, configure.in: 8384 Move the dgettext check. 8385 [5fd8a4712d1c] 8386 83872007-12-01 Todd C. Miller <Todd.Miller@courtesan.com> 8388 8389 * auth/pam.c, config.h.in, configure, configure.in: 8390 Add basic support for looking up the string "Password: " in the PAM 8391 localized text db. This allows us to determine whether the PAM 8392 prompt is the default "Password: " one even if it has been 8393 localized. 8394 8395 TODO: concatenate non-std PAM prompts and user-specified sudo 8396 prompts. 8397 [81c25a415d41] 8398 83992007-11-27 Todd C. Miller <Todd.Miller@courtesan.com> 8400 8401 * Makefile.in, config.h.in, configure, configure.in, parse.c, 8402 set_perms.c, sudo.c, sudo.h: 8403 Use AC_FUNC_GETGROUPS instead of a home-grown attempt that was 8404 insufficient. 8405 [1cce6ec1a91e] 8406 8407 * acsite.m4, configure, interfaces.c, memrchr.c: 8408 Fix typos; Martynas Venckus 8409 [be1233cca11a] 8410 84112007-11-26 Todd C. Miller <Todd.Miller@courtesan.com> 8412 8413 * set_perms.c: 8414 Don't assume runas_pw is set; it may not be in the -g case. 8415 [aa11bd2193ac] 8416 84172007-11-25 Todd C. Miller <Todd.Miller@courtesan.com> 8418 8419 * logging.c, set_perms.c: 8420 Set aux group vector for PERM_RUNAS and restore group vector for 8421 PERM_ROOT if we previously changed it. Stash the runas group vector 8422 so we don't have to call initgroups more than once. Also add no-op 8423 check to check_perms. 8424 [53837fc755f7] 8425 84262007-11-21 Todd C. Miller <Todd.Miller@courtesan.com> 8427 8428 * WHATSNEW, check.c, def_data.in, defaults.c, gram.c, gram.h, gram.y, 8429 ldap.c, logging.c, match.c, mon_systrace.c, parse.c, parse.h, 8430 pwutil.c, set_perms.c, sudo.c, sudo.cat, sudo.h, sudo.man.in, 8431 sudo.pod, sudo_usage.h.in, sudoers.cat, sudoers.man.in, sudoers.pod, 8432 testsudoers.c, visudo.c, visudo.cat, visudo.man.in: 8433 Add support for runas groups. This allows the user to run a command 8434 with a different effective group. If the -g option is specified 8435 without -u the command will be run as the current user (only the 8436 group will change). the -g and -u options may be used together. 8437 TODO: implement runas group for ldap improve runas group 8438 documentation add testsudoers support 8439 [9019309df6d0] 8440 8441 * configure, configure.in: 8442 fix setting of mandir 8443 [2c60f269399f] 8444 8445 * sudo.pod, sudoers.pod: 8446 document that ALL implies SETENV 8447 [bcc8e5b703b9] 8448 8449 * ldap.c: 8450 s/setenv_ok/setenv_implied/g 8451 [f005df2c2eea] 8452 8453 * ldap.c: 8454 hostname_matches() returns TRUE on match in sudo 1.7. 8455 [c3d4377b6e8b] 8456 8457 * ldap.c: 8458 use strcmp, not strcasecmp when comparing ALL 8459 [e486024574a1] 8460 8461 * ldap.c: 8462 Make sudo ALL imply setenv. Note that unlike with file-based 8463 sudoers this does affect all the commands in the sudoRole. 8464 [bc12f54321d1] 8465 8466 * gram.c, gram.y, parse.c, parse.h: 8467 sudo "ALL" now implies the SETENV tag but, unlike an explicit tag, 8468 it is not passed on to other commands in the list. 8469 [026e2cb40680] 8470 8471 * visudo.c: 8472 Add missing sudo_setpwent() and sudo_setgrent() calls. Also use 8473 sudo_getpwuid() instead of getpwuid(). 8474 [86f30a8fbd49] 8475 84762007-11-15 Todd C. Miller <Todd.Miller@courtesan.com> 8477 8478 * sudoers: 8479 Expand on the dangers of not using visudo to edit sudoers. 8480 [e434e8057d02] 8481 84822007-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 8483 8484 * parse.c: 8485 Don't quote *?[]! on output since the lexer does not strip off the 8486 backslash when reading those in. 8487 [561da4a13afa] 8488 84892007-11-07 Todd C. Miller <Todd.Miller@courtesan.com> 8490 8491 * glob.c: 8492 expand "u_foo" types to "unsigned foo" to avoid compatibility 8493 issues. 8494 [b0d7c64d78c3] 8495 84962007-11-04 Todd C. Miller <Todd.Miller@courtesan.com> 8497 8498 * logging.c: 8499 Refactor log line generation in to new_logline(). 8500 [6a9b9730615d] 8501 85022007-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 8503 8504 * TROUBLESHOOTING: 8505 fix typo 8506 [9e19d4f86e47] 8507 85082007-10-24 Todd C. Miller <Todd.Miller@courtesan.com> 8509 8510 * config.h.in, configure, configure.in, interfaces.c, interfaces.h, 8511 match.c: 8512 Add configure check for struct in6_addr instead of relying on 8513 AF_INET6 since some systems define AF_INET6 but do not include IPv6 8514 support. 8515 [e24082c416bd] 8516 85172007-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 8518 8519 * configure, configure.in: 8520 Fix block to add -lutil for FreeBSD and NetBSD when logincap is in 8521 use. 8522 [76a9df4a63be] 8523 85242007-10-20 Todd C. Miller <Todd.Miller@courtesan.com> 8525 8526 * configure, configure.in: 8527 POSIX states that struct timespec be declared in time.h so check 8528 there regardless of the value of TIME_WITH_SYS_TIME. 8529 [e42c55ec9daf] 8530 85312007-10-17 Todd C. Miller <Todd.Miller@courtesan.com> 8532 8533 * tgetpass.c: 8534 Instead of defining a macro to call the appropriate method for 8535 turning on/off echo, just define tc[gs]etattr() and the related 8536 defines that use the correct terminal ioctls if needed. Also go back 8537 to using TCSAFLUSH instead of TCSADRAIN on all but QNX. 8538 [5dfb2379d995] 8539 85402007-10-09 Todd C. Miller <Todd.Miller@courtesan.com> 8541 8542 * Makefile.in: 8543 g/c @ALLOCA@ 8544 [e6946c2e3820] 8545 8546 * configure: 8547 regen 8548 [9bac7159a138] 8549 8550 * INSTALL, auth/pam.c, config.h.in, configure.in: 8551 Add --disable-pam-session configure option to disable calling 8552 pam_{open,close}_session. May work around bugs in some PAM 8553 implementations. 8554 [273d0fdb4a9d] 8555 85562007-10-08 Todd C. Miller <Todd.Miller@courtesan.com> 8557 8558 * tgetpass.c: 8559 quiet gcc warnings 8560 [325565c5a579] 8561 8562 * tgetpass.c: 8563 Avoid printing the prompt if we are already backgrounded. E.g. if 8564 the user runs "sudo foo &" from the shell. In this case, the call 8565 to tcsetattr() will cause SIGTTOU to be delivered. 8566 [db2139a8d8b8] 8567 85682007-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 8569 8570 * def_data.c, def_data.h, def_data.in: 8571 Reorder things such that the definition of env_reset come right 8572 before the env variable lists. 8573 [e0d8e22a581a] 8574 8575 * parse.h: 8576 Shrink type and seqno in struct alias from int to u_short 8577 [9425263dd565] 8578 8579 * alias.c, match.c, parse.c, parse.h: 8580 Add a sequence number in the aliases for loop detection. If we find 8581 an alias with the seqno already set to the current (global) value we 8582 know we've visited it before so ignore it. 8583 [301a0548ffff] 8584 85852007-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 8586 8587 * TODO, auth/pam.c, sudo.c, sudo.h: 8588 PAM wants the full tty path so add user_ttypath which holds the full 8589 path to the tty or is NULL if no tty was present. 8590 [c7c1dd4b36c8] 8591 8592 * auth/pam.c: 8593 Set PAM_RHOST to work around a bug in Solaris 7 and lower that 8594 results in a segv. 8595 [3a8865b3a357] 8596 85972007-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 8598 8599 * gram.c: 8600 regen 8601 [5647be127950] 8602 8603 * alias.c, defaults.c, gram.y, list.c, list.h, match.c, parse.c, 8604 parse.h, testsudoers.c, visudo.c: 8605 rename lh_ -> tq_ 8606 [8f500c542c4a] 8607 86082007-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 8609 8610 * alloc.c: 8611 remove some useless casts 8612 [409a448b23f5] 8613 8614 * alloc.c: 8615 pull in inttypes.h for SIZE_MAX; we avoid stdint.h since inttypes.h 8616 predates the final C99 spec and the standard specifies that it shall 8617 include stdint.h anyway 8618 [ae478fdef61a] 8619 86202007-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 8621 8622 * Makefile.in, alloca.c, configure.in: 8623 Since we ship with a pre-generated parser there is no need to ship a 8624 bogus alloca implementation. 8625 [3f611a7cc0e5] 8626 8627 * configure: 8628 regen 8629 [771eccf5269c] 8630 8631 * configure.in: 8632 remove initial setting of CHECKSIA, we require that it be unset if 8633 not used 8634 [a2e91adc5aa2] 8635 8636 * Makefile.in: 8637 add list.c to SRCS 8638 [7db0e56cf5b9] 8639 8640 * configure: 8641 regen 8642 [3716ec30172e] 8643 8644 * configure.in: 8645 only do SIA checks on Digital Unix 8646 [6a96e1af2597] 8647 86482007-09-05 Todd C. Miller <Todd.Miller@courtesan.com> 8649 8650 * sudoers.cat, sudoers.man.in: 8651 regen 8652 [ac1dc29de72b] 8653 8654 * ChangeLog, TODO: 8655 sync 8656 [781effce0a2d] 8657 8658 * auth/kerb5.c: 8659 Remove call to krb5_cc_register() as it is not needed for modern 8660 kerb5. 8661 [351b8b764f16] 8662 8663 * configure: 8664 regen 8665 [ac21dbcc9c2c] 8666 8667 * aclocal.m4, configure.in: 8668 New method for setting the default authentication type and avoiding 8669 conflicts in auth types. 8670 [5fb15be11f78] 8671 8672 * match.c, parse.c, testsudoers.c: 8673 Each entry in a cmndlist now has an associated runaslist so no need 8674 to keep track of the most recent non-NULL one. 8675 [582e015786b0] 8676 86772007-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 8678 8679 * ldap.c: 8680 back out partial ldaps support mistakenly committed 8681 [357703e94b2d] 8682 8683 * ldap.c: 8684 Add support for unix groups and netgroups in sudoRunas 8685 [2f04eb91c6d0] 8686 86872007-09-03 Todd C. Miller <Todd.Miller@courtesan.com> 8688 8689 * sudo_edit.c: 8690 Fix sudoedit of a non-existent file. From Tilo Stritzky. 8691 [a5488a03bddd] 8692 86932007-09-02 Todd C. Miller <Todd.Miller@courtesan.com> 8694 8695 * configure: 8696 regen 8697 [541177376ee1] 8698 8699 * INSTALL: 8700 update --passprompt escape info 8701 [6d57db4cd538] 8702 8703 * configure.in: 8704 remove now-bogus comment and update copyright date 8705 [6a4af45fa331] 8706 8707 * configure.in: 8708 Fix up use of with_passwd 8709 [7c79d8640f77] 8710 8711 * acsite.m4, config.guess, config.sub, configure.in, ltmain.sh: 8712 Update to autoconf-2.61 andf libtool-1.5.24 8713 [045259b0b439] 8714 8715 * Makefile.in: 8716 "cmp -s" not just cmp Add @datarootdir@ to quiet autoconf-2.61 8717 [f5b6a7afb817] 8718 87192007-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 8720 8721 * gram.c: 8722 regen 8723 [b5b78e71d2cb] 8724 8725 * gram.y: 8726 move tags and runaslist propagation to be earlier 8727 [94f7805f4489] 8728 8729 * visudo.c: 8730 If -f flag given use the permissions of the original file as a 8731 template 8732 [9303d22bddb0] 8733 8734 * gram.y: 8735 prevent a double free() when re-initing the parser 8736 [5b3907c4de5a] 8737 87382007-08-31 Todd C. Miller <Todd.Miller@courtesan.com> 8739 8740 * configure: 8741 regen 8742 [49a90b19a17d] 8743 8744 * aclocal.m4, alias.c, alloc.c, auth/API, auth/afs.c, auth/bsdauth.c, 8745 auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/securid.c, 8746 auth/securid5.c, auth/sia.c, auth/sudo_auth.h, config.h.in, 8747 configure.in, env.c, ldap.c, list.c, list.h, memrchr.c, parse.c, 8748 parse.h, pwutil.c, redblack.c, redblack.h, snprintf.c, sudo.c, 8749 sudo.h, testsudoers.c, visudo.c, zero_bytes.c: 8750 Remove support for compilers that don't support void * 8751 [35e1d01ae197] 8752 8753 * gram.c: 8754 regen 8755 [70ce412a458a] 8756 8757 * Makefile.in, alias.c, defaults.c, gram.y, list.c, list.h, match.c, 8758 parse.c, parse.h, testsudoers.c, visudo.c: 8759 Move list manipulation macros to list.h and create C versions of the 8760 more complex ones in list.c. The names have been down-cased so they 8761 appear more like normal functions. 8762 [9cea0e281148] 8763 8764 * Makefile.in: 8765 Fix cmp command when regenerating parser. Make gram.o the first 8766 dependency for all programs so gram.h will be generated before 8767 anything that needs it. 8768 [429ea065abf1] 8769 8770 * gram.y, parse.h: 8771 Convert NEW_DEFAULT anf NEW_MEMBER into static functions. 8772 [2f3433833589] 8773 8774 * match.c, parse.c, testsudoers.c: 8775 Use LH_FOREACH_REV when checking permission and short-circuit on the 8776 first non-UNSPEC hit we get for the command. This means that 8777 instead of cycling through the all the parsed sudoers entries we 8778 start at the end and work backwards and quit after the first 8779 positive or negative match. 8780 [881474532f3e] 8781 8782 * gram.c: 8783 regen 8784 [9152a19d4188] 8785 8786 * defaults.c, gram.y, parse.c, parse.h, testsudoers.c, visudo.c: 8787 Change list head macros to take a pointer, not a struct. 8788 [054f1dcce4cc] 8789 8790 * gram.c: 8791 regen 8792 [be154aae6235] 8793 8794 * gram.y: 8795 Propagate the runasspec from one command to the next in a cmndspec. 8796 [4957b1cb03a3] 8797 87982007-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 8799 8800 * match.c: 8801 Replace has_meta() with a macro that calls strpbrk(). 8802 [a2e58846a542] 8803 8804 * regen 8805 [5a932a5c9451] 8806 8807 * alias.c, defaults.c, gram.y, match.c, parse.c, parse.h, 8808 testsudoers.c, visudo.c: 8809 Use a list head struct when storing the semi-circular lists and 8810 convert to tail queues in the process. This will allow us to 8811 reverse foreach loops more easily and it makes it clearer which 8812 functions expect a list as opposed to a single member. 8813 8814 Add macros for manipulating lists. Some of these should become 8815 functions. 8816 8817 When freeing up a list, just pop off the last item in the queue 8818 instead of going from head to tail. This is simpler since we don't 8819 have to stash a pointer to the next member, we always just use the 8820 last one in the queue until the queue is empty. 8821 8822 Rename match functions that take a list to have list in the name. 8823 Break cmnd_matches() into cmnd_matches() and cmndlist_matches. 8824 [7c37b271607a] 8825 8826 * parse.c: 8827 Fix pasto, append "!" not negated (which is an int) for sudo -l 8828 output. 8829 [93a444c3997f] 8830 8831 * Makefile.in: 8832 Remove the dependency of gram .h on gram.y, the .c dependency is 8833 enough. Only move y.tab.h to gram.h if it is different; avoids 8834 needless rebuilding. 8835 [67bf4ea2a2e5] 8836 88372007-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 8838 8839 * sudoers.pod: 8840 Defaults lines may be associated with lists of users, hosts, 8841 commands and runas users, not just single entries. 8842 [795effacb6be] 8843 88442007-08-26 Todd C. Miller <Todd.Miller@courtesan.com> 8845 8846 * Makefile.in: 8847 Revert the "cmp" portion of the last diff, it doesn't make sense. 8848 [26f34bf4e2e3] 8849 8850 * Makefile.in: 8851 Remove *.lo for clean: When generating the parser, only move the 8852 generated files into place if they differ from the existing ones. 8853 [84673fea371b] 8854 88552007-08-25 Todd C. Miller <Todd.Miller@courtesan.com> 8856 8857 * toke.c, toke.l: 8858 Replace IPV6 regexp with a much simpler (readable) one and add an 8859 extra check when it matches to make sure we have a valid address. 8860 [592e9f690556] 8861 8862 * match.c: 8863 Fix thinko introduced when merging IPV6 support. 8864 [da38cd5eb8c7] 8865 88662007-08-24 Todd C. Miller <Todd.Miller@courtesan.com> 8867 8868 * HISTORY, LICENSE: 8869 regen 8870 [0d7b27b90634] 8871 8872 * license.pod: 8873 add 2007 8874 [510e5048ae1a] 8875 8876 * UPGRADE: 8877 mention #uid vs. comment pitfall 8878 [4d2861898bcc] 8879 8880 * acsite.m4: 8881 Merge in a patch from the libtool cvs that fixes a problem with the 8882 latest autoconf. From Stepan Kasal. 8883 [0c279ae7df3e] 8884 8885 * parse.h: 8886 Back out he XOR swap trick, it is slower than a temp variable on 8887 modern CPUs. 8888 [91c4b024e317] 8889 8890 * gram.c: 8891 regen 8892 [cb6d4106fb74] 8893 8894 * gram.y, parse.h: 8895 Convert the tail queue to a semi-circle queue and use the XOR swap 8896 trick to swap the prev pointers during append. 8897 [8bf4d9fbee58] 8898 88992007-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 8900 8901 * parse.h: 8902 remove useless statement 8903 [421ec1dd73e6] 8904 8905 * toke.c, toke.l: 8906 Refactor #include parsing into a separate function and return 8907 unparsed chars (such as newline or comment) back to the lexer. 8908 [64166917aa3d] 8909 89102007-08-22 Todd C. Miller <Todd.Miller@courtesan.com> 8911 8912 * WHATSNEW: 8913 mention better uid support 8914 [56f510e7f2ec] 8915 8916 * sudoers.pod: 8917 Users may now consist of a uid. 8918 [5fd31b2c55ed] 8919 8920 * gram.c, gram.h, toke.c: 8921 regen 8922 [599e58af6dc1] 8923 8924 * parse.c: 8925 Use lbuf_append_quoted() for sudo -l output to quote characters that 8926 would require quoting in sudoers. 8927 [3132d05c990a] 8928 8929 * lbuf.c, lbuf.h: 8930 Add lbuf_append_quoted() which takes a set of characters which 8931 should be quoted with a backslash when displayed. 8932 [ab09bebb1d65] 8933 8934 * toke.l: 8935 Require that the first character after a comment not be a digit or a 8936 dash. This allows us to remove the GOTRUNAS state and treat 8937 uid/gids similar to other words. It also means that we can now 8938 specify uids in User_Lists and a User_Spec may now contain a uid. 8939 [461fe01f8392] 8940 8941 * gram.y, toke.l: 8942 Replace RUNAS token with '(' and ')' tokens to make the runas 8943 portion of the grammar more natural. 8944 [e0c383b4684d] 8945 8946 * BUGS: 8947 The BUGS file is history 8948 [4d9a809585c7] 8949 8950 * Makefile.in, README: 8951 The BUGS file is history 8952 [d9500e261172] 8953 89542007-08-21 Todd C. Miller <Todd.Miller@courtesan.com> 8955 8956 * toke.c, toke.l: 8957 Allow comments after a RunasAlias as long as the character after the 8958 pound sign isn't a digit or a dash. 8959 [d7f3bd94eeda] 8960 8961 * WHATSNEW: 8962 Glob support was back-ported to 1.6.9 8963 [d1d5cfd46228] 8964 89652007-08-20 Todd C. Miller <Todd.Miller@courtesan.com> 8966 8967 * Makefile.in: 8968 remove sudo_usage.h in distclean 8969 [df05ce9c4127] 8970 8971 * parse.c: 8972 If a Defaults value contains a blank, double-quote the string. 8973 [9057a910daad] 8974 8975 * toke.c, toke.l: 8976 Properly deal with Defaults double-quoted strings that span multiple 8977 lines using the line continuation char. Previously, the entire 8978 thing, including the continuation char, newline, and spaces was 8979 stored as-is. 8980 [4a4e8eacefe6] 8981 8982 * sudo.c: 8983 Be consistent when using single quotes and backticks. 8984 [d010b83a0fa1] 8985 89862007-08-19 Todd C. Miller <Todd.Miller@courtesan.com> 8987 8988 * Makefile.in, configure, configure.in, lbuf.c, lbuf.h, parse.c, 8989 sudo.c, sudo_usage.h.in: 8990 Add new linebuf code to do appends of dynamically allocated strings 8991 and word-wrapped output. Currently used for sudo's usage() and sudo 8992 -l output. Sudo usage strings are now in sudo_usage.h which is 8993 generated at configure time. 8994 [4dfd0ee8d961] 8995 89962007-08-18 Todd C. Miller <Todd.Miller@courtesan.com> 8997 8998 * parse.c, sudo.c, sudo.h: 8999 Fix line wrapping in usage() and use the actual tty width instead of 9000 assuming 80. 9001 [700eab37c5a6] 9002 90032007-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 9004 9005 * history.pod: 9006 some more info 9007 [8140112a8ae1] 9008 9009 * history.pod: 9010 Mentioned Chris Jepeway's parser and also the new one that is in 9011 sudo 1.7. 9012 [2132d00f0597] 9013 90142007-08-16 Todd C. Miller <Todd.Miller@courtesan.com> 9015 9016 * sudo.pod, visudo.pod: 9017 For the options list, add flag args where appropriate and increase 9018 the indent level so there is room for them. 9019 [2b60fb572e12] 9020 90212007-08-15 Todd C. Miller <Todd.Miller@courtesan.com> 9022 9023 * parse.c: 9024 Fix some spacing in "sudo -l" and add a comment about some bogosity 9025 in the line wrapping. 9026 [b59b056f5ee2] 9027 9028 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 9029 visudo.man.in: 9030 regen 9031 [5fb719f18ebc] 9032 9033 * INSTALL, Makefile.in, WHATSNEW, config.h.in, configure.in, 9034 def_data.c, def_data.h, def_data.in, gram.c, gram.h, gram.y, 9035 parse.c, parse.h, pathnames.h.in, sudo.c, sudo.h, sudoers.pod, 9036 testsudoers.c, toke.c, toke.l: 9037 Remove monitor support until there is a versino of systrace that 9038 uses a lookaside buffer (or we have a better mechanism to use). 9039 [61ff76878e4a] 9040 9041 * config.h.in, configure, configure.in, sudo.c: 9042 use getaddrinfo() instead of gethostbyname() if it is available 9043 [cc33c136aa6a] 9044 90452007-08-14 Todd C. Miller <Todd.Miller@courtesan.com> 9046 9047 * parse.c, sudo.c: 9048 Deal with OSes where sizeof(gid_t) < sizeof(int). 9049 [130a89cbdfba] 9050 9051 * interfaces.c: 9052 repair non-getifaddrs() code after ipv6 integration 9053 [7ae7a89e2236] 9054 9055 * sudo.c: 9056 If we can open sudoers but fail to read the first byte, close the 9057 file stream before trying again. 9058 [6f31272fae7b] 9059 90602007-08-13 Todd C. Miller <Todd.Miller@courtesan.com> 9061 9062 * toke.c: 9063 regen 9064 [4d7afe0aa6fa] 9065 9066 * gram.y, interfaces.c, interfaces.h, match.c, sudoers.pod, toke.l: 9067 Add IPv6 support; adapted from patches by YOSHIFUJI Hideaki 9068 [4e6ff2965a42] 9069 9070 * sudo.pod, sudoers.pod, visudo.pod: 9071 Add some missing markup Update copyright 9072 [7e6d3c686b5e] 9073 90742007-08-12 Todd C. Miller <Todd.Miller@courtesan.com> 9075 9076 * configure, configure.in: 9077 fix sudo_noexec extension which got broken in the libtool update 9078 [3a5b447df861] 9079 90802007-08-10 Todd C. Miller <Todd.Miller@courtesan.com> 9081 9082 * Makefile.in: 9083 explicitly specify -Tascii to nroff 9084 [45c8da4cbefe] 9085 90862007-08-08 Todd C. Miller <Todd.Miller@courtesan.com> 9087 9088 * logging.c: 9089 remove an ANSI-ism that crept in 9090 [29086f87b2ca] 9091 90922007-08-07 Todd C. Miller <Todd.Miller@courtesan.com> 9093 9094 * sudo.pod: 9095 Adjust list indents Prevent -- from being turned into an em dash Use 9096 a list for the environment instead of a literal paragraph 9097 [c3abcd8f76f4] 9098 9099 * visudo.pod: 9100 Use a list for the environment instead of an indented literal 9101 paragraph. 9102 [0ffcfcb7349f] 9103 9104 * sudoers.pod: 9105 Adjust list indentation 9106 [615c89e3123a] 9107 9108 * license.pod: 9109 add =head3 9110 [8b2e0d38c0bd] 9111 91122007-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 9113 9114 * sudo.pod: 9115 mention that when specifying a uid for the -u option the shell may 9116 require that the # be escaped 9117 [3e3a17bff150] 9118 91192007-08-02 Todd C. Miller <Todd.Miller@courtesan.com> 9120 9121 * match.c: 9122 Fix off by one in group matching. 9123 [b529602b7fba] 9124 91252007-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 9126 9127 * env.c: 9128 Fix typo: PYTHONINSPEC should be PYTHONINSPECT. From David Krause. 9129 [ffbf8907c6e7] 9130 91312007-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 9132 9133 * configure, configure.in: 9134 Add missing define of HAVE_GSS_KRB5_CCACHE_NAME for the 9135 -lgssapi_krb5 case. 9136 [2b85a89c2252] 9137 9138 * aclocal.m4, configure, configure.in: 9139 Fix link tests such that new gcc doesn't optimize away the test. 9140 [83484ec95cba] 9141 91422007-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 9143 9144 * sudo.pod, sudoers.pod, visudo.pod: 9145 add missing over/back 9146 [251a12c89b91] 9147 9148 * sudo.pod, sudoers.pod, visudo.pod: 9149 Change FILES section to use =item 9150 [60b9efc3a0b2] 9151 9152 * env.c: 9153 Add back allocation of the env struct in rebuild_env but save a copy 9154 of the old pointer and free it before returning. 9155 [1100cd4fa997] 9156 9157 * env.c: 9158 Don't init the private environment in rebuild_env() since it may 9159 have already been done implicitly sudo_setenv/sudo_unsetenv. 9160 9161 Multiply length by sizeof(char *) in memcpy/memmove when copying the 9162 environment so we copy the full thing. 9163 9164 Add missing set of parens so we deref the right pointer in 9165 sudo_unsetenv when searching for a matching variable. 9166 [9086a8f756b1] 9167 91682007-07-26 Todd C. Miller <Todd.Miller@courtesan.com> 9169 9170 * sudo.pod, sudoers.pod, visudo.pod: 9171 Use file markup for paths in the FILES section 9172 [940d99f731f2] 9173 9174 * sudo.pod, sudoers.pod, visudo.pod: 9175 Don't capitalize sudo/visudo 9176 [f067a455d44b] 9177 9178 * sudoers.pod: 9179 Sort sudoers options; based on a diff from Igor Sobrado. 9180 [a9b9befe85ac] 9181 91822007-07-25 Todd C. Miller <Todd.Miller@courtesan.com> 9183 9184 * sudo.pod, sudoers.pod, visudo.pod: 9185 Use 8 and 5 instead of @mansectsu@ and @mansectform@ since the 9186 latter confuses pod2man. The Makefile rules for the .man.in file 9187 will add @mansectsu@ and @mansectform@ back in after pod2man is done 9188 anyway. 9189 [b50ea0db727c] 9190 91912007-07-22 Todd C. Miller <Todd.Miller@courtesan.com> 9192 9193 * LICENSE, Makefile.in, license.pod: 9194 Move license info to pod format 9195 [25bdd82e592b] 9196 9197 * configure, configure.in, sudoers.pod: 9198 Substitute value of path_info into sudoers man page. 9199 [9ba661a82798] 9200 9201 * WHATSNEW: 9202 remove features that were back-ported to 1.6.9 9203 [e76d756cbe65] 9204 9205 * sudo.c, sudo.pod, visudo.c, visudo.pod: 9206 Sort SYNOPSIS and sync usage. From Igor Sobrado. 9207 [4970386c9e54] 9208 9209 * env.c: 9210 Only need sudo_setenv/sudo_unsetenv if we are going to use 9211 ldap_sasl_interactive_bind_s() but don't have 9212 gss_krb5_ccache_name(). 9213 [f1a73d8b35c5] 9214 9215 * ChangeLog: 9216 rebuild without branch info 9217 [5d5a33494677] 9218 9219 * Makefile.in: 9220 Add ChangeLog target 9221 [a702034fdd89] 9222 9223 * auth/pam.c: 9224 Run cleanup code if the user hits ^C at the password prompt. 9225 [9cf87768e921] 9226 9227 * auth/pam.c: 9228 Some versions of pam_lastlog have a bug that will cause a crash if 9229 PAM_TTY is not set so if there is no tty, set PAM_TTY to the empty 9230 string. 9231 [5b63f6c88866] 9232 92332007-07-20 Todd C. Miller <Todd.Miller@courtesan.com> 9234 9235 * Makefile.in: 9236 ChageLog not Changelog 9237 [1243d8473ceb] 9238 9239 * ChangeLog: 9240 sync 9241 [d887df98c6b0] 9242 9243 * Makefile.in: 9244 CHANGE -> Changelog 9245 [917738df30dd] 9246 9247 * TODO: 9248 sync 9249 [cd382f7d1948] 9250 92512007-07-19 Todd C. Miller <Todd.Miller@courtesan.com> 9252 9253 * config.h.in, configure, configure.in, ldap.c: 9254 Add configure hooks for gss_krb5_ccache_name() and the gssapi 9255 headers. 9256 [139606209991] 9257 92582007-07-18 Todd C. Miller <Todd.Miller@courtesan.com> 9259 9260 * env.c, sudo.c: 9261 rebuild_env() and insert_env_vars() no longer return environment 9262 pointer, they set environ directly. 9263 9264 No longer need to pass around an envp pointer since we just operate 9265 on environ now. 9266 9267 Add dosync argument to insert_env() that indicates whether it should 9268 reset environ when realloc()ing env.envp. 9269 9270 Use an initial size of 128 for the environment. 9271 [4735fd5fddb8] 9272 9273 * env.c: 9274 Split sudo_setenv() into an external version and a version only for 9275 use by rebuild_env(). 9276 [fda7d655adb1] 9277 92782007-07-16 Todd C. Miller <Todd.Miller@courtesan.com> 9279 9280 * ldap.c: 9281 Add support for using gss_krb5_ccache_name() instead of setting 9282 KRB5CCNAME. Also use sudo_unsetenv() in the non- 9283 gss_krb5_ccache_name() case if there was no KRB5CCNAME in the 9284 original environment. TODO: configure setup for 9285 gss_krb5_ccache_name() 9286 [fcafa5a49caf] 9287 9288 * README.LDAP: 9289 add krb5_ccname 9290 [fceb8f883886] 9291 9292 * README.LDAP, ldap.c: 9293 Add support for sasl_secprops in ldap.conf 9294 [1f06f4bf7347] 9295 9296 * env.c, sudo.h: 9297 Add sudo_unsetenv() and refactor private env syncing code into 9298 sync_env(). 9299 [045ecb3fd22b] 9300 9301 * README.LDAP, ldap.c: 9302 The ldap.conf variable is sasl_auth_id not sasl_authid. 9303 [a5f98491311b] 9304 93052007-07-15 Todd C. Miller <Todd.Miller@courtesan.com> 9306 9307 * ldap.c, sudo.c, sudo.h: 9308 Add support for krb5_ccname in ldap.conf. If specified, it will 9309 override the default value of KRB5CCNAME in the environment for the 9310 duration of the call to ldap_sasl_interactive_bind_s(). 9311 [b08a10c3045b] 9312 9313 * env.c, sudo.h: 9314 Remove format_env() Add sudo_setenv() to replace most format_env() + 9315 insert_env() combinations. insert_env() no longer takes a struct 9316 environment * 9317 [131da52f43f3] 9318 9319 * ldap.c: 9320 Fix use_sasl vs. rootuse_sasl logic. 9321 [0c0417b6918c] 9322 9323 * README.LDAP, config.h.in, configure, configure.in, ldap.c: 9324 Add support for SASL auth when connecting to an LDAP server. Adapted 9325 from a diff by Tom McLaughlin. 9326 [a6285f1356ea] 9327 93282007-07-14 Todd C. Miller <Todd.Miller@courtesan.com> 9329 9330 * configure, configure.in: 9331 Only enable AIX or BSD auth if no other exclusive auth method has 9332 been chosen. Allows people to e.g., use PAM on AIX without adding 9333 --without-aixauth. A better solution is needed to deal with default 9334 authentication since if a non-exclusive method is chosen we will 9335 still get an error. 9336 [83f7afdc0ec3] 9337 93382007-07-11 Todd C. Miller <Todd.Miller@courtesan.com> 9339 9340 * HISTORY, Makefile.in, history.pod: 9341 Generate HISTORY from history.pod (which is also used for web pages) 9342 [60bcd5164931] 9343 93442007-07-09 Todd C. Miller <Todd.Miller@courtesan.com> 9345 9346 * sudo.man.in, sudoers.man.in: 9347 regen 9348 [63956a366191] 9349 9350 * sudo.pod: 9351 Better explanation of environment handling in the sudo man page. 9352 [6c247742f7ee] 9353 9354 * env.c, sudo.c: 9355 Defer setting user-specified env vars until after authentication. 9356 [4750b79323ee] 9357 9358 * env.c: 9359 honor def_default_path for PATH set on the command line 9360 [6db31d9b6d65] 9361 9362 * env.c, sudo.c, sudo.pod, sudoers.pod: 9363 Allow user to set environment variables on the command line as long 9364 as they are allowed by env_keep and env_check. Ie: apply the same 9365 restrictions as normal environment variables. TODO: deal with 9366 secure_path 9367 [26c0da3840cf] 9368 93692007-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 9370 9371 * sudo.c, sudo_edit.c: 9372 Call rebuild_env() in call cases. Pass original envp to sudo_edit(). 9373 Don't allow -E or env var setting in sudoedit mode. More accurate 9374 usage() when called as sudoedit. 9375 [a4af20658361] 9376 9377 * ldap.c: 9378 warn -> warning 9379 [d87d1192b048] 9380 9381 * sudo.pod: 9382 add -c option to sudoedit synopsis 9383 [15b596a7e2db] 9384 9385 * TODO: 9386 udpate to reality 9387 [e2f8fde89db1] 9388 9389 * parse.c: 9390 Use ALLOW/DENY instead of TRUE/FALSE when dealing with the return 9391 value from {user,host,runas,cmnd}_matches(). Rename *matches 9392 variables -> *match. Purely cosmetic. 9393 [e54a44c00a88] 9394 9395 * parse.c: 9396 Move setting of FLAG_NO_CHECK into the if(pwflag) block. No change 9397 in behavior. 9398 [c6272b4f2127] 9399 9400 * sudoers: 9401 add SETENV tag 9402 [3a3066bb6788] 9403 94042007-07-06 Todd C. Miller <Todd.Miller@courtesan.com> 9405 9406 * parse.c: 9407 Make pwcheck local to the pwflag block. Use pwcheck even if user 9408 didn't match since Defaults options may still apply. 9409 [45da9efbbafd] 9410 9411 * check.c, sudo.c: 9412 Do not update timestamp if user not validated by sudoers. 9413 [a4a9d4364827] 9414 9415 * set_perms.c: 9416 for PERM_RUNAS, set the egid to the runas user's gid and restore to 9417 the user's original in PERM_ROOT 9418 [1514bfb32847] 9419 9420 * logging.c, mon_systrace.c, set_perms.c, sudo.h: 9421 PERM_FULL_ROOT is now no different than PERM_ROOT so remove 9422 PERM_FULL_ROOT 9423 [b9d047a3178c] 9424 9425 * check.c: 9426 don't check timestamp mtime if we are just going to remove it 9427 [5d2470bc6cbd] 9428 9429 * sudoers.pod: 9430 Move sudoers defaults parameters into their own section. 9431 [54701fbc0ff3] 9432 9433 * testsudoers.c: 9434 Reduce a level of indent by a few placed continue statements. 9435 [5d5a9838c8ef] 9436 9437 * parse.c: 9438 Make matching but negated commands/hosts/runas entries override a 9439 previous match as expected. Also reduce some levels of indent by a 9440 few placed continue statements. 9441 [dd59fa4b91a1] 9442 94432007-07-05 Todd C. Miller <Todd.Miller@courtesan.com> 9444 9445 * parse.c: 9446 Print default runas in "sudo -l" if sudoers don't specify one. 9447 [07d408c400bd] 9448 9449 * match.c: 9450 Less hacky way of testing whether the domain was set. 9451 [a537059776e5] 9452 94532007-07-04 Todd C. Miller <Todd.Miller@courtesan.com> 9454 9455 * INSTALL: 9456 Mention pam-devel and openldap-devel for Linux 9457 [9e708c54ecc3] 9458 94592007-07-03 Todd C. Miller <Todd.Miller@courtesan.com> 9460 9461 * README.LDAP: 9462 or vs. are 9463 [abe8c0f3a410] 9464 94652007-07-01 Todd C. Miller <Todd.Miller@courtesan.com> 9466 9467 * sudo.c: 9468 fix typo in Solaris project support 9469 [2ffeb2d80959] 9470 9471 * HISTORY: 9472 update 9473 [df162b36f120] 9474 9475 * sudo.c: 9476 Make -- on the command line match the manual page. The implied shell 9477 case has been simplified as a result. 9478 [cd217a1f6694] 9479 94802007-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 9481 9482 * sudoers2ldif: 9483 add simplistic support for sudoRunas; note that if a sudoers entry 9484 contains multiple Runas users, all will apply to the sudoRole 9485 [65b11421f5c8] 9486 9487 * sudoers2ldif: 9488 honor SETENV and NOSETENV tags 9489 [2c0d5ba7a09b] 9490 94912007-06-24 Todd C. Miller <Todd.Miller@courtesan.com> 9492 9493 * mon_systrace.c: 9494 Redo setting of user_args. We now build up a private copy of argv 9495 first and then replace the NULs?with spaces. 9496 [ccbba72ea112] 9497 9498 * mon_systrace.c: 9499 getcwd() returns NULL on failure, not 0 on success 9500 [88cd9e66e530] 9501 9502 * mon_systrace.c: 9503 allow chunksiz to reach 1 before erroring out 9504 [619d68f14964] 9505 9506 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 9507 visudo.man.in: 9508 regen 9509 [8db512d3caf0] 9510 95112007-06-23 Todd C. Miller <Todd.Miller@courtesan.com> 9512 9513 * def_data.c, def_data.h, def_data.in, env.c, gram.c, gram.h, gram.y, 9514 logging.c, parse.c, parse.h, sudo.c, sudo.h, sudo.pod, sudoers.pod, 9515 toke.c, toke.l: 9516 Add support for setting environment variables on the command line. 9517 This is only allowed if the setenv sudoers options is enabled or if 9518 the command is prefixed with the SETENV tag. 9519 [5744caebd969] 9520 9521 * README.LDAP: 9522 replace Aaron's email address with the sudo-workers list 9523 [2ffce5f9afc0] 9524 9525 * configure: 9526 regen 9527 [8013dff82c0c] 9528 95292007-06-22 Todd C. Miller <Todd.Miller@courtesan.com> 9530 9531 * schema.OpenLDAP, schema.iPlanet: 9532 Break schema out into separate files. 9533 [15e598e4c60b] 9534 9535 * Makefile.in, README.LDAP: 9536 Break schema out into separate files. 9537 [1a53966ca1fa] 9538 95392007-06-21 Todd C. Miller <Todd.Miller@courtesan.com> 9540 9541 * auth/aix_auth.c: 9542 free message if set by authenticate() 9543 [849c220c1236] 9544 9545 * match.c: 9546 deal with NULL gr_mem 9547 [49e4d74f0bbe] 9548 95492007-06-20 Todd C. Miller <Todd.Miller@courtesan.com> 9550 9551 * config.h.in: 9552 regen 9553 [fead999ad3e9] 9554 9555 * configure.in: 9556 add template for HAVE_PROJECT_H 9557 [e6c42c2eaad1] 9558 9559 * closefrom.c: 9560 include fcntl.h 9561 [54d98b382f03] 9562 95632007-06-19 Todd C. Miller <Todd.Miller@courtesan.com> 9564 9565 * INSTALL: 9566 mention --with-project 9567 [d3ea3baad7c5] 9568 9569 * config.h.in, configure.in, sudo.c: 9570 Add Solaris 10 "project" support. From Michael Brantley. 9571 [f14f3c8c6554] 9572 9573 * sudoers.pod: 9574 fix typo 9575 [50db81a19787] 9576 9577 * configure: 9578 regen 9579 [ea71afd3e564] 9580 9581 * configure.in: 9582 Fix preservation of LDFLAGS in the LDAP case. 9583 [40a3a47e8059] 9584 9585 * memrchr.c: 9586 Remove dependecy on NULL 9587 [c957ae5e1733] 9588 9589 * configure: 9590 regen 9591 [4955ce0c6912] 9592 9593 * aclocal.m4, configure.in: 9594 Can't use the regular autoconf fnmatch() check since we need 9595 FNM_CASEFOLD so go back to our custom one. 9596 [f10d76237486] 9597 9598 * env.c: 9599 Fix preserving of variables in env_keep. 9600 [d040049d6b84] 9601 9602 * env.c: 9603 add XAUTHORIZATION 9604 [0d589a5fe015] 9605 9606 * UPGRADE: 9607 expand upon env resetting and mention that it began in 1.6.9 not 9608 1.7. 9609 [dba251655c76] 9610 9611 * sudoers.pod: 9612 Update descriptions of env_keep and env_check to match current 9613 reality. 9614 [dba77357954b] 9615 96162007-06-18 Todd C. Miller <Todd.Miller@courtesan.com> 9617 9618 * env.c: 9619 Add LINGUAS to initial_checkenv_table. Add COLORS, HOSTNAME, 9620 LS_COLORS, MAIL, PS1, PS2, XAUTHORITY to intial_keepenv_table. 9621 [eec4632bd190] 9622 9623 * env.c, logging.c: 9624 Treat USERNAME environemnt variable like LOGNAME/USER 9625 [09f52dcfd70c] 9626 9627 * env.c: 9628 Don't need to populate keepenv table with the contents of the 9629 checkenv table. 9630 [527a14afd973] 9631 9632 * sudo.c: 9633 Don't force sudo into the C locale. 9634 [8a5bd301ef96] 9635 9636 * env.c: 9637 Make env_check apply when env_reset it true. Environment variables 9638 are passed through unless they contain '/' or '%'. There is no need 9639 to have a variable in both env_check and env_keep. 9640 [840c802721e4] 9641 96422007-06-16 Todd C. Miller <Todd.Miller@courtesan.com> 9643 9644 * visudo.c: 9645 Remove an duplicate lock_file() call and add a comment. 9646 [5af9dcdf0eb6] 9647 9648 * UPGRADE: 9649 Add sudo 1.6.9 upgrade note. 9650 [1585149f2914] 9651 96522007-06-14 Todd C. Miller <Todd.Miller@courtesan.com> 9653 9654 * interfaces.c: 9655 Solaris will return EINVAL if the buffer used in SIOCGIFCONF is too 9656 small. From Klaus Wagner. 9657 [d6899fc44f77] 9658 9659 * logging.c, sudo.h: 9660 Redo the long syslog line splitting based on a patch from Eygene 9661 Ryabinkin. Include memrchr() for systems without it. 9662 [66a50e8d553a] 9663 9664 * memrchr.c: 9665 Redo the long syslog line splitting based on a patch from Eygene 9666 Ryabinkin. Include memrchr() for systems without it. 9667 [2f6702b7d41b] 9668 9669 * Makefile.in, config.h.in, configure, configure.in: 9670 Redo the long syslog line splitting based on a patch from Eygene 9671 Ryabinkin. Include memrchr() for systems without it. 9672 [407a46190921] 9673 9674 * configure.in: 9675 Since we need to be able to convert timespec to timeval for utimes() 9676 the last 3 digits in the tv_nsec are not significant. This makes the 9677 sudoedit file date comparison work again. 9678 [9d0258849fa9] 9679 96802007-06-13 Todd C. Miller <Todd.Miller@courtesan.com> 9681 9682 * aclocal.m4, configure, configure.in: 9683 Add SUDO_ADD_AUTH macro to deal with adding things to AUTH_OBJS. 9684 This deals with exclusive authentication methods in a simple way. 9685 [7d70072c0f35] 9686 96872007-06-12 Todd C. Miller <Todd.Miller@courtesan.com> 9688 9689 * LICENSE: 9690 mkstemp.c is BSD code too. 9691 [29e236d98162] 9692 9693 * sudo.pod, sudoers.pod, visudo.pod: 9694 No commercial support for now. 9695 [7c76b3e192dd] 9696 96972007-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 9698 9699 * sudo.c: 9700 cleanenv() is no more. 9701 [518080514408] 9702 97032007-06-10 Todd C. Miller <Todd.Miller@courtesan.com> 9704 9705 * ChangeLog: 9706 Display branch info in Changelog 9707 [44e3b27427c7] 9708 9709 * utimes.c: 9710 Include config.h early so we have it for TIME_WITH_SYS_TIME 9711 [4bf1a00d0703] 9712 9713 * ChangeLog: 9714 Fix Changelog generation and update. 9715 [6e960dbcbece] 9716 97172007-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 9718 9719 * closefrom.c: 9720 Use /proc/self/fd instead of /proc/$$/fd 9721 9722 Move old-style fd closing into closefrom_fallback() and call that if 9723 /proc/self/fd doesn't exist or the F_CLOSEM fcntl() fails 9724 [faa7e4810758] 9725 9726 * auth/kerb5.c, config.h.in, configure.in: 9727 o use krb5_verify_user() if available instead of doing it by hand o 9728 use krb5_init_secure_context() if we have it o pass an encryption 9729 type of 0 to krb5_kt_read_service_key() instead of 9730 ENCTYPE_DES_CBC_MD5 to let kerberos choose. 9731 [df7acf72bd7c] 9732 9733 * env.c: 9734 Check TERM and COLORTERM for '%' and '/' characters. From Debian. 9735 [f92d05197e40] 9736 9737 * configure.in: 9738 Fix closefrom() substitution in the Makefile 9739 [b642b13fcc5c] 9740 9741 * TROUBLESHOOTING: 9742 Mention alternate sudo pronunciation. 9743 [7c71dc73409f] 9744 97452007-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 9746 9747 * env.c: 9748 Remove KRB5_KTNAME from environment. Allow COLORTERM. 9749 [70f35a79f780] 9750 9751 * auth/kerb5.c: 9752 If we cannot get a valid service key using the default keytab it is 9753 a fatal error. Fixes a bug where sudo could be tricked into 9754 allowing access when it should not by a fake KDC. From Thor Lancelot 9755 Simon. 9756 [a3ae6a47cb23] 9757 97582007-05-12 Todd C. Miller <Todd.Miller@courtesan.com> 9759 9760 * aclocal.m4, configure, configure.in: 9761 Update long long checks to use AC_CHECK_TYPES and to cache values. 9762 [047318eaaeb2] 9763 9764 * aclocal.m4, configure.in: 9765 Use AC_FUNC_FNMATCH instead of a homebrew fnmatch checker. We can't 9766 use AC_REPLACE_FNMATCH since that assumes replacing with GNU 9767 fnmatch. 9768 [80513a1003ea] 9769 97702007-05-11 Todd C. Miller <Todd.Miller@courtesan.com> 9771 9772 * configure, configure.in: 9773 Add closefrom() to LIB_OBJS not SUDO_OBJS if it is missing since we 9774 need it for visudo now too. 9775 [50837c7c2b5e] 9776 97772007-04-24 Todd C. Miller <Todd.Miller@courtesan.com> 9778 9779 * sudoers.pod: 9780 Attempt to clarify the bit talking about network numbers w/o 9781 netmasks. 9782 [211e68c1d034] 9783 9784 * sudo.pod: 9785 Clarify timestamp dir ownership sentence. 9786 [9178f132c7f7] 9787 97882007-04-20 Todd C. Miller <Todd.Miller@courtesan.com> 9789 9790 * auth/pam.c: 9791 Linux PAM now defines __LINUX_PAM__, not __LIBPAM_VERSION. From 9792 Dmitry V. Levin. 9793 [81fce91667bc] 9794 97952007-04-16 Todd C. Miller <Todd.Miller@courtesan.com> 9796 9797 * sudo.c: 9798 -i is also one of the mutually exclusive options to list it in the 9799 warning message. Noted by Chris Pepper. 9800 [7da73fb248e9] 9801 98022007-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 9803 9804 * visudo.pod: 9805 The sudoers variable is env_editor, not enveditor. From Jean- 9806 Francois Saucier. 9807 [2a86ec09a6db] 9808 98092007-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 9810 9811 * redblack.c: 9812 I tracked down the original author so credit him and include his 9813 license info. 9814 [3733553a1bba] 9815 98162007-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 9817 9818 * sudo.cat, sudo.man.in, sudo.pod, sudoers.cat, sudoers.man.in, 9819 sudoers.pod: 9820 Fix typos; from Jason McIntyre. 9821 [1ee4ce2512f2] 9822 9823 * logging.c: 9824 Restore signal mask before calling reapchild(). Fixes a possible 9825 race condition that could prevent sudo from properly waiting for the 9826 child. 9827 [9ee4192385dc] 9828 98292007-01-31 Todd C. Miller <Todd.Miller@courtesan.com> 9830 9831 * pwutil.c: 9832 Don't declare pw_free() if we are not going to use it. 9833 [adb79a4289ca] 9834 9835 * env.c: 9836 Add NOEXEC support for AIX 5.3 which supports LDR_PRELOAD and 9837 LDR_PRELOAD64. The 64-bit version is not currently supported. 9838 Remove zero_env() prototype as it no longer exists. 9839 [b4fe65027fb6] 9840 98412006-12-11 Todd C. Miller <Todd.Miller@courtesan.com> 9842 9843 * logging.c: 9844 Add "Auto-Submitted: auto-generated" line to sudo mail for rfc 3834. 9845 [78002ad90f7b] 9846 98472006-09-29 Todd C. Miller <Todd.Miller@courtesan.com> 9848 9849 * auth/pam.c: 9850 If the user enters ^C at the password prompt, abort instead of 9851 trying to authenticate with an empty password (which causes an 9852 annoying delay). 9853 [da3f27b747c7] 9854 98552006-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 9856 9857 * closefrom.c, config.h.in, configure, configure.in: 9858 Add fcntl F_CLOSEM support to closefrom(); adapted from a diff by 9859 Darren Tucker. 9860 [0331b7780759] 9861 9862 * pwutil.c: 9863 pw_free() is only used by sudo_freepwcache() so ifdef it out too. 9864 [0014c0d9eeba] 9865 98662006-08-04 Todd C. Miller <Todd.Miller@courtesan.com> 9867 9868 * config.guess, config.sub: 9869 Update to latest versions from cvs.savannah.gnu.org 9870 [aa0143101c20] 9871 98722006-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 9873 9874 * pwutil.c, sudo_edit.c: 9875 Move password/group cache cleaning out of sudo_end{pw,grp}ent() so 9876 we can close the passwd/group files early. 9877 [559074bd7eb7] 9878 9879 * config.h.in, configure, configure.in, set_perms.c: 9880 Add seteuid() flavor of set_perms() for systems without setreuid() 9881 or setresuid() that have a working seteuid(). Tested on Darwin. 9882 [508d8da99189] 9883 98842006-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 9885 9886 * mon_systrace.c: 9887 systrace_read() returns ssize_t 9888 [9f97d1d1a59d] 9889 9890 * configure, configure.in: 9891 Fix typo, -lldap vs. -ldap; from Tim Knox. 9892 [a8cc43c3bb2a] 9893 98942006-07-28 Todd C. Miller <Todd.Miller@courtesan.com> 9895 9896 * HISTORY: 9897 Fix typo; Matt Ackeret 9898 [86964ee3dfbd] 9899 99002006-07-17 Todd C. Miller <Todd.Miller@courtesan.com> 9901 9902 * sudo.c: 9903 Print sudoers path in -V mode for root. 9904 [dc43f2d75bd9] 9905 99062006-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 9907 9908 * ldap.c: 9909 Do a sub tree search instead of a base search (one level in the tree 9910 only) for sudo right objects. This allows system administrators to 9911 categorize the rights in a tree to make them easier to manage. 9912 [6d2d9abf996e] 9913 99142005-12-28 Todd C. Miller <Todd.Miller@courtesan.com> 9915 9916 * sudo.pod: 9917 fix typo 9918 [1473413bcbda] 9919 99202005-12-04 Todd C. Miller <Todd.Miller@courtesan.com> 9921 9922 * ldap.c: 9923 Convert GET_OPT and GET_OPTI to use just 2 args. Add timelimit and 9924 bind_timelimit support; adapted from gentoo. 9925 [afc816093026] 9926 99272005-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 9928 9929 * ldap.c: 9930 Support comments that start in the middle of a line 9931 [c25df6ee3db8] 9932 9933 * configure, configure.in: 9934 Define LDAP_DEPRECATED until we start using ldap_get_values_len() 9935 [ee249bfe230a] 9936 99372005-11-18 Todd C. Miller <Todd.Miller@courtesan.com> 9938 9939 * closefrom.c: 9940 Silence gcc -Wsign-compare; djm@openbsd.org 9941 [28769ce6418d] 9942 9943 * error.c, sudo.c, sudo.h, testsudoers.c, visudo.c: 9944 cleanup() now takes an int as an arg so it can be used as a signal 9945 handler too. 9946 [2bb0df34d09c] 9947 9948 * sudo.c: 9949 Make a copy of the shell field in the passwd struct for NewArgv to 9950 avoid a use after free situation after sudo_endpwent() is called. 9951 [5dcc9ffd362e] 9952 99532005-11-17 Todd C. Miller <Todd.Miller@courtesan.com> 9954 9955 * config.h.in, configure, configure.in: 9956 Add mkstemp() for those poor souls without it. 9957 [5fdd02e863e0] 9958 9959 * mkstemp.c: 9960 Add mkstemp() for those poor souls without it. 9961 [c99401207860] 9962 9963 * Makefile.in: 9964 Add mkstemp() for those poor souls without it. 9965 [9c1cf2678f24] 9966 99672005-11-15 Todd C. Miller <Todd.Miller@courtesan.com> 9968 9969 * env.c: 9970 Add PERL5DB to list of environment variables to remove. 9971 [7375c27ecf75] 9972 99732005-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 9974 9975 * mon_systrace.c, mon_systrace.h: 9976 Instead of calling the check function twice with a state cookie use 9977 separate check/log functions. 9978 9979 Check more ioctl() calls for failure. 9980 9981 systrace_{read,write} now return the number of bytes read/written or 9982 -1 on error. 9983 [3dc8946d90e9] 9984 9985 * env.c: 9986 Add more environment variables to remove; from gentoo linux Add some 9987 comments about what bad env variables go to what (more to do) 9988 [6918110a6b82] 9989 99902005-11-11 Todd C. Miller <Todd.Miller@courtesan.com> 9991 9992 * sudo.c, sudo_edit.c: 9993 Move sudo_end{gr,pw}ent() until just before the exec since they free 9994 up our cached copy of the passwd structs, including sudo_user and 9995 sudo_runas. Fixes a use-after-free bug. 9996 [54de3778bad0] 9997 9998 * visudo.c: 9999 Close all fd's before executing editor. 10000 [4fcc05e1bec8] 10001 10002 * sudo.c: 10003 Enable malloc debugging on OpenBSD when SUDO_DEVEL is set. 10004 [ef0e8ffa5c9f] 10005 10006 * check.c: 10007 Fix fd leak when lecture file option is enabled. From Jerry Brown 10008 [ce97f9207cd8] 10009 100102005-11-07 Todd C. Miller <Todd.Miller@courtesan.com> 10011 10012 * env.c: 10013 Add PERLLIB, PERL5LIB and PERL5OPT to the default list of 10014 environment variables to remove. From Charles Morris 10015 [c96e1367d1c1] 10016 100172005-11-01 Todd C. Miller <Todd.Miller@courtesan.com> 10018 10019 * env.c: 10020 add JAVA_TOOL_OPTIONS to initial_badenv_table for java 5 10021 [72a6a1571226] 10022 100232005-10-28 Todd C. Miller <Todd.Miller@courtesan.com> 10024 10025 * env.c: 10026 add PS4 and SHELLOPTS to initial_badenv_table for bash 10027 [89dfb3f318f3] 10028 100292005-08-15 Todd C. Miller <Todd.Miller@courtesan.com> 10030 10031 * sudoers.pod: 10032 Fix typo; Toby Peterson 10033 [b7a3222b23f4] 10034 100352005-08-02 Todd C. Miller <Todd.Miller@courtesan.com> 10036 10037 * tsgetgrpw.c: 10038 Make return buffers static so they don't get clobbered 10039 [13323a39b9f5] 10040 100412005-07-28 Todd C. Miller <Todd.Miller@courtesan.com> 10042 10043 * auth/securid5.c: 10044 Fix securid5 authentication, was not checking for ACM_OK. Also add 10045 default cases for the two switch()es. Problem noted by ccon at 10046 worldbank 10047 [14091e418333] 10048 100492005-06-27 Todd C. Miller <Todd.Miller@courtesan.com> 10050 10051 * ldap.c: 10052 Remove ncat() in favor of just counting bytes and pre-allocating 10053 what is needed. 10054 [25b8712adb61] 10055 100562005-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 10057 10058 * ldap.c: 10059 Fix up some comments Add missing fclose() for the rootbinddn case 10060 [ae95c8a89711] 10061 10062 * ldap.c: 10063 align struct ldap_config 10064 [35d0d64c76f8] 10065 10066 * ldap.c: 10067 use LINE_MAX for max conf file line size 10068 [da116cb8853d] 10069 10070 * pathnames.h.in: 10071 add _PATH_LDAP_SECRET 10072 [128b04ecfab7] 10073 10074 * README.LDAP: 10075 Mention rootbinddn Give example ou=SUDOers container 10076 [852edc69bd1c] 10077 100782005-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 10079 10080 * INSTALL, configure, configure.in, ldap.c: 10081 Support rootbinddn in ldap.conf 10082 [1615c91522a1] 10083 10084 * env.c, sudo.pod, sudoers.pod: 10085 Preserve DISPLAY environment variable by default. 10086 [05f503d5f438] 10087 10088 * acsite.m4, configure: 10089 set need_lib_prefix=no for all cases; this is safe for LD_PRELOAD 10090 [18a04dea8d05] 10091 10092 * acsite.m4, configure: 10093 set need_version=no for all cases; this is safe for LD_PRELOAD 10094 [b542560e1a73] 10095 10096 * aclocal.m4: 10097 typo 10098 [c040df0fcd5a] 10099 10100 * configure, configure.in: 10101 Add dragonfly 10102 [f13794618636] 10103 10104 * auth/pam.c: 10105 Fix call to pam_end() when pam_open_session() fails. 10106 [0be47cdfdef1] 10107 10108 * configure: 10109 regen 10110 [7f5c13b4b800] 10111 10112 * acsite.m4: 10113 rebuild acsite.m4 from libtool 1.9f libtool.m4 ltoptions.m4 10114 ltsugar.m4 ltversion.m4 10115 [a7ba9fd1a2ab] 10116 10117 * config.guess, config.sub, ltmain.sh: 10118 merge in local changes: config.guess: o better openbsd support 10119 config.sub: o hiuxmpp support ltmain.sh o remove requirement that 10120 libs must begin with "lib" o don't print a bunch of crap about 10121 library installs o don't run ldconfig 10122 [f4149f2c720f] 10123 10124 * config.guess, config.sub, ltmain.sh: 10125 libtool 1.9f 10126 [82a534e7121f] 10127 10128 * configure.in: 10129 Update with autoupdate and make minor changes for libtool 1.9f 10130 [11b5ae5c1428] 10131 101322005-06-23 Todd C. Miller <Todd.Miller@courtesan.com> 10133 10134 * parse.c: 10135 don't call sudo_ldap_display_cmnd if ldap not setup 10136 [8bcf6c094ffe] 10137 10138 * sudo_edit.c, visudo.c: 10139 Move declatation of struct timespec to its own include files for 10140 systems without it since it needs time_t defined. 10141 [b95c333299a0] 10142 10143 * gettime.c: 10144 Move declatation of struct timespec to its own include files for 10145 systems without it since it needs time_t defined. 10146 [021b4569cc0c] 10147 10148 * fileops.c: 10149 Move declatation of struct timespec to its own include files for 10150 systems without it since it needs time_t defined. 10151 [dd8573b2ee7d] 10152 10153 * emul/timespec.h: 10154 Move declatation of struct timespec to its own include files for 10155 systems without it since it needs time_t defined. 10156 [f95137771564] 10157 10158 * check.c, compat.h: 10159 Move declatation of struct timespec to its own include files for 10160 systems without it since it needs time_t defined. 10161 [2ef2ace8fe85] 10162 10163 * ldap.c: 10164 Don't set safe_cmnd for the "sudo ALL" case. 10165 [ad7fa9e07da0] 10166 101672005-05-27 Todd C. Miller <Todd.Miller@courtesan.com> 10168 10169 * auth/pam.c: 10170 Call pam_open_session() and pam_close_session() to give pam_limits a 10171 chance to run. Idea from Karel Zak. 10172 [fed46d471350] 10173 101742005-04-24 Todd C. Miller <Todd.Miller@courtesan.com> 10175 10176 * check.c, sudo.c: 10177 Add explicit cast from mode_t -> u_int in printf to silence warnings 10178 on Solaris 10179 [17bb961fe22d] 10180 10181 * parse.c: 10182 include grp.h to silence a warning on Solaris 10183 [14386fbab640] 10184 101852005-04-23 Todd C. Miller <Todd.Miller@courtesan.com> 10186 10187 * parse.c: 10188 Fix printing of += and -= defaults. 10189 [a667604c56cd] 10190 101912005-04-17 Todd C. Miller <Todd.Miller@courtesan.com> 10192 10193 * mon_systrace.c: 10194 Sanity check number of syscall args with argsize. Not really needed 10195 but a little paranoia never hurts. 10196 [6bb455a2c2d6] 10197 10198 * mon_systrace.c, mon_systrace.h: 10199 Don't do pointer arithmetic on void * Use int, not size_t/ssize_t 10200 for systrace lengths (since it uses int) 10201 [3cafccffcffd] 10202 102032005-04-16 Todd C. Miller <Todd.Miller@courtesan.com> 10204 10205 * mon_systrace.c: 10206 Add some memsets for paranoia Fix namespace collsion w/ error Check 10207 rval of decode_args() and update_env() Remove improper setting of 10208 validated variable 10209 [3d385158354d] 10210 102112005-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 10212 10213 * parse.c, sudo.c, sudo.h: 10214 In -l mode, only check local sudoers file if def_ignore_sudoers is 10215 not set and call LDAP versions from display_privs() and 10216 display_cmnd() instead of directly from main(). Because of this we 10217 need to defer closing the ldap connection until after -l processing 10218 has ocurred and we must pass in the ldap pointer to display_privs() 10219 and display_cmnd(). 10220 [1dfc2e8c9f2b] 10221 10222 * ldap.c: 10223 Reorganize LDAP code to better match normal sudoers parsing. 10224 Instead of storing strings for later printing in -l mode we do 10225 another query since the authenticating user and the user being 10226 listed may not be the same (the new -U flag). Also add support for 10227 "sudo -l command". 10228 10229 There is still a fair bit if duplicated code that can probably be 10230 refactored. 10231 [e9568f19bde5] 10232 102332005-04-11 Todd C. Miller <Todd.Miller@courtesan.com> 10234 10235 * ldap.c: 10236 Replace pass variable with do_netgr for better readability. 10237 [1bba841b6e79] 10238 10239 * ldap.c: 10240 use DPRINTF macro 10241 [02b159b66bb5] 10242 10243 * ldap.c: 10244 estrdup, not strdup 10245 [22cdee7973c1] 10246 102472005-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 10248 10249 * parse.c: 10250 Add macro to test if the tag changed to improve readability. 10251 [4e11b4819556] 10252 10253 * parse.c: 10254 Avoid printing defaults header if there are no defaults to print... 10255 [41a28627df03] 10256 10257 * glob.c: 10258 Fix a warning on systems without strlcpy(). 10259 [6814e0f0e4f4] 10260 10261 * pwutil.c: 10262 Use macros where possible for sudo_grdup() like sudo_pwdup(). 10263 [30f201ff35cd] 10264 102652005-04-08 Todd C. Miller <Todd.Miller@courtesan.com> 10266 10267 * utimes.c: 10268 It is possible for tv_usec to hold >= 1000000 usecs so add in 10269 tv_usec / 1000000. 10270 [794ac4d53a65] 10271 102722005-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 10273 10274 * auth/kerb5.c: 10275 The component in krb5_principal_get_comp_string() should be 1, not 0 10276 for Heimdal. From Alex Plotnick. 10277 [fefa351c5044] 10278 102792005-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 10280 10281 * alias.c, alloc.c, check.c, defaults.c, find_path.c, gram.c, gram.y, 10282 interfaces.c, ldap.c, logging.c, match.c, mon_systrace.c, pwutil.c, 10283 redblack.c, sudo.c, sudo.h, toke.c, toke.l, visudo.c: 10284 Add efree() for consistency with emalloc() et al. Allows us to rely 10285 on C89 behavior (free(NULL) is valid) even on K&R. 10286 [7876bb80d87c] 10287 10288 * parse.c, sudo.c: 10289 Move initgroups() for -U option into display_privs() so group 10290 matching in sudoers works correctly. 10291 [b074428ad2ca] 10292 102932005-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 10294 10295 * ldap.c: 10296 Removed duplicate call to ldap_unbind_s introduced along with 10297 sudo_ldap_close. 10298 [19acc1c20f7c] 10299 10300 * parse.c: 10301 Add missing space in Defaults printing 10302 [95d2935bf6d4] 10303 103042005-03-25 Todd C. Miller <Todd.Miller@courtesan.com> 10305 10306 * pwutil.c: 10307 Sync sudo_pwdup with OpenBSD changes: use macros for size computaton 10308 and string copies. 10309 [6b6b241495e5] 10310 103112005-03-19 Todd C. Miller <Todd.Miller@courtesan.com> 10312 10313 * pwutil.c: 10314 Zero old pw_passwd before replacing with version from shadow file. 10315 [3251b349dfe1] 10316 10317 * configure, configure.in: 10318 Only attempt shadow password detection if PAM is not being used Add 10319 shadow_* variables to make shadow password detection more generic. 10320 [d498a3423ac9] 10321 10322 * configure.in: 10323 Use OSDEFS for os-specific -D_FOO_BAR stuff rather than CPPFLAGS 10324 [04d55bbd5e35] 10325 103262005-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 10327 10328 * sudoers.pod: 10329 use a non-breaking space to avoid a double space after e.g. 10330 [11cdb54bdf7b] 10331 10332 * sudo.pod: 10333 commna, not colon after e.g. 10334 [8d5875ff72e0] 10335 103362005-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 10337 10338 * sudo_noexec.c: 10339 Add __ variants of the exec functions. GNU libc at least uses 10340 __execve() internally. 10341 [d1880473d790] 10342 10343 * indent.pro: 10344 Match reality a bit more. 10345 [633e3fa875a7] 10346 10347 * pwutil.c: 10348 Missed piece from rev. 1.6, fix sudo_getpwnam() too. 10349 [128f7b21c2ee] 10350 10351 * pwutil.c: 10352 Store shadow password after making a local copy of struct passwd in 10353 case normal and shadow routines use the same internal buffer in 10354 libc. 10355 [f806052a6ffc] 10356 103572005-03-11 Todd C. Miller <Todd.Miller@courtesan.com> 10358 10359 * alloc.c, logging.c: 10360 Make varargs usage consistent with the rest of the code. 10361 [3d45affc9851] 10362 103632005-03-10 Todd C. Miller <Todd.Miller@courtesan.com> 10364 10365 * sudo_noexec.c: 10366 Wrap more of the exec family since on Linux the others do not appear 10367 to go through the normal execve() path. 10368 [8167769b4e19] 10369 10370 * visudo.c: 10371 make print_unused static like proto says 10372 [ecf10e1bae55] 10373 10374 * glob.c: 10375 silence a warning on K&R systems 10376 [2e00425f1a5c] 10377 10378 * alias.c, error.c: 10379 make this build in K&R land 10380 [156f65f8525a] 10381 10382 * parse.c: 10383 make this build in K&R land 10384 [6fc9276889cb] 10385 103862005-03-08 Todd C. Miller <Todd.Miller@courtesan.com> 10387 10388 * toke.c: 10389 regen 10390 [3b349748cd21] 10391 103922005-03-06 Todd C. Miller <Todd.Miller@courtesan.com> 10393 10394 * ldap.c: 10395 return(foo) not return foo optimize _atobool() slightly 10396 [11d09d154ed5] 10397 10398 * ldap.c: 10399 Use TRUE/FALSE 10400 [53999320d98f] 10401 10402 * ldap.c: 10403 Reformat to match the rest of sudo's code. 10404 [1bd0f2afa0e7] 10405 10406 * sudo.pod: 10407 I am the primary author 10408 [5d311ecd85c6] 10409 104102005-02-23 Todd C. Miller <Todd.Miller@courtesan.com> 10411 10412 * Makefile.in, README, RUNSON: 10413 The RUNSON file is toast--it confused too many people and really 10414 isn't needed in a configure-oriented world. 10415 [96a6ef7bbc08] 10416 10417 * INSTALL: 10418 alternate -> alternative 10419 [b65015c5d0a2] 10420 10421 * tgetpass.c: 10422 Use TCSADRAIN instead of TCSAFLUSH since some OSes have issues with 10423 TCSAFLUSH. 10424 [c66b4763ffdc] 10425 10426 * toke.l: 10427 Allow leading blanks before Defaults and Foo_Alias definitions 10428 [2add513d9277] 10429 10430 * Makefile.in: 10431 fix rules to build toke.o and gram.o in devel mode 10432 [96cbb414ebd3] 10433 104342005-02-20 Todd C. Miller <Todd.Miller@courtesan.com> 10435 10436 * sudoers.pod: 10437 env_keep overrides set_logname 10438 [401877193a15] 10439 10440 * env.c: 10441 Fix disabling set_logname and make env_keep override set_logname. 10442 [0906e7a5ed93] 10443 10444 * compat.h, config.h.in, configure, configure.in: 10445 No longer need memmove() 10446 [43bdb6efe3f2] 10447 10448 * env.c, sudo.c: 10449 Just clean the environment once. This assumes that any further 10450 setenv/putenv will be able to handle the fact that we replaced 10451 environ with our own malloc'd copy but all the implementations I've 10452 checked do. 10453 [11658fe92ba2] 10454 104552005-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 10456 10457 * env.c, sudo.c: 10458 In -i mode, base the value of insert_env()'s dupcheck flag on 10459 DID_FOO flags. Move checks for $HOME resetting into rebuild_env() 10460 [8365b0bd0c71] 10461 104622005-02-13 Todd C. Miller <Todd.Miller@courtesan.com> 10463 10464 * env.c, sudo.c: 10465 Move setting of user_path, user_shell, user_prompt and prev_user 10466 into init_vars() since user_shell at least is needed there. 10467 [37e22dce66e9] 10468 104692005-02-12 Todd C. Miller <Todd.Miller@courtesan.com> 10470 10471 * Makefile.in: 10472 fix devel builds 10473 [9fbb15ef164c] 10474 10475 * sudo.c: 10476 Fix some printf format mismatches on error. 10477 [ffc1c3f11740] 10478 10479 * check.c: 10480 Fix some printf format mismatches on error. 10481 [7b3b508adf50] 10482 10483 * configure, gram.c, toke.c: 10484 regen 10485 [aa76f9d8b02a] 10486 10487 * Makefile.in, aclocal.m4, alias.c, alloc.c, auth/afs.c, 10488 auth/aix_auth.c, auth/bsdauth.c, auth/dce.c, auth/fwtk.c, 10489 auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/passwd.c, 10490 auth/rfc1938.c, auth/secureware.c, auth/securid.c, auth/securid5.c, 10491 auth/sia.c, auth/sudo_auth.c, auth/sudo_auth.h, check.c, 10492 closefrom.c, compat.h, configure.in, defaults.c, defaults.h, 10493 emul/utime.h, env.c, error.c, fileops.c, find_path.c, getprogname.c, 10494 getspwuid.c, gettime.c, goodpath.c, gram.y, interfaces.c, 10495 interfaces.h, ldap.c, logging.c, logging.h, match.c, mon_systrace.c, 10496 parse.c, redblack.c, redblack.h, set_perms.c, sigaction.c, 10497 snprintf.c, strcasecmp.c, strerror.c, strlcat.c, strlcpy.c, sudo.c, 10498 sudo.h, sudo.pod, sudo_edit.c, sudo_noexec.c, sudoers.pod, 10499 testsudoers.c, tgetpass.c, toke.l, utimes.c, version.h, visudo.c, 10500 visudo.pod, zero_bytes.c: 10501 Update copyright years. 10502 [0610c3654739] 10503 10504 * Makefile.binary.in: 10505 Update copyright years. 10506 [d78ffc9f2e2b] 10507 10508 * LICENSE: 10509 Update copyright years. 10510 [f60473bca4b1] 10511 10512 * BUGS, INSTALL, INSTALL.binary, Makefile.in, README, configure.in: 10513 version 1.7 10514 [aa977a544ca1] 10515 10516 * WHATSNEW: 10517 What's new in sudo 1.7, based on the 1.7 CHANGES entries. 10518 [ecfcf7269c14] 10519 105202005-02-11 Todd C. Miller <Todd.Miller@courtesan.com> 10521 10522 * compat.h, logging.h, sudo.h: 10523 Add __printflike and use it with gcc to warn about printf-like 10524 format mismatches 10525 [b192ad4a0548] 10526 105272005-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 10528 10529 * CHANGES, ChangeLog: 10530 Replaced CHANGES file with ChangeLog generated from cvs logs 10531 [d9ace9dab98f] 10532 10533 * set_perms.c: 10534 Use warning/error instead of perror/fatal. 10535 [e33259df7738] 10536 10537 * config.guess: 10538 Update OpenBSD section 10539 [9d2c23de6801] 10540 10541 * UPGRADE: 10542 Add upgrading noted for 1.7 10543 [1fb6b6d6df07] 10544 10545 * env.c, sudo.c, sudoers.pod: 10546 Instead of zeroing out the environment, just prune out entries based 10547 on the env_delete and env_check lists. Base building up the new 10548 environment on the current environment and the variables we removed 10549 initially. 10550 [fc192df8fd15] 10551 10552 * config.h.in, configure, configure.in, sudo.c: 10553 Set locale to "C" if locales are supported, just to be safe. 10554 [91fbaa98f02e] 10555 10556 * toke.c, toke.l: 10557 Cast?argument to ctype functions to unsigned char. 10558 [e096b4d65796] 10559 105602005-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 10561 10562 * env.c: 10563 correct value for DID_USER 10564 [b5b05d36ec15] 10565 10566 * error.c, fnmatch.c, getcwd.c, glob.c, snprintf.c: 10567 #include <compat.h> not "compat.h" 10568 [7a0ad9a0ccd7] 10569 10570 * defaults.c: 10571 Reset the environment by default. 10572 [4ecc6423e0f0] 10573 10574 * sudo.c: 10575 Alloc an extra slot in NewArgv. Removes the need to malloc an new 10576 vector if execve() fails. 10577 [83dfb6f584a7] 10578 105792005-02-07 Todd C. Miller <Todd.Miller@courtesan.com> 10580 10581 * INSTALL, config.h.in, configure, configure.in, sudo.c: 10582 Use execve(2) and wrap the command in sh if we get ENOEXEC. 10583 [c0c6af4e2a21] 10584 105852005-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 10586 10587 * sudo_noexec.c: 10588 Only include time.h on systems that lack struct timespec which gets 10589 defind in compat.h (using time_t). 10590 [e373e518b4cb] 10591 10592 * sudo_noexec.c: 10593 Include time.h for time_t in compat.h for systems w/o struct 10594 timespec. 10595 [a34b5637e458] 10596 10597 * compat.h, config.h.in, configure, configure.in: 10598 use bcopy on systems w/o memmove 10599 [f835eafd78c6] 10600 10601 * compat.h: 10602 __attribute__((__unused__)) doesn't work in gcc 2.7.2.1 so limit its 10603 use to gcc >= 2.8. 10604 [1cb9a4e58566] 10605 10606 * Makefile.in: 10607 Add explicit rule to build sudo_noexec.lo 10608 [df1dfcf8dd77] 10609 106102005-02-05 Todd C. Miller <Todd.Miller@courtesan.com> 10611 10612 * INSTALL.configure, Makefile.in: 10613 No longer depend on VPATH; pointed out a bunch of missed 10614 dependencies. 10615 [601a45d4af6b] 10616 10617 * TROUBLESHOOTING: 10618 Help for PAM when account section is missing 10619 [9b8221256756] 10620 10621 * auth/pam.c: 10622 Give user a clue when there is a missing "account" section in the 10623 PAM config. 10624 [2529625c0495] 10625 10626 * auth/pam.c: 10627 Better error handling. 10628 [518c9bda23d8] 10629 10630 * config.h.in, configure, configure.in: 10631 Move _FOO_SOURCE to CPPFLAGS so it takes effect as early as 10632 possible. Silences a warning about isblank() on linux. 10633 [19c94d7ecdc8] 10634 10635 * auth/pam.c: 10636 Fix typo (missing comma) that caused an incorrect number of args to 10637 be passed to log_error(). 10638 [0099dfec560f] 10639 106402005-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 10641 10642 * pwutil.c: 10643 Don't try to destroy a tree we didn't create. 10644 [d43c4fe03aa4] 10645 106462005-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 10647 10648 * alias.c, alloc.c, auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, 10649 auth/dce.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, 10650 auth/passwd.c, auth/rfc1938.c, auth/secureware.c, auth/securid.c, 10651 auth/securid5.c, auth/sia.c, auth/sudo_auth.c, check.c, closefrom.c, 10652 compat.h, defaults.c, env.c, error.c, fileops.c, find_path.c, 10653 fnmatch.c, getcwd.c, getprogname.c, getspwuid.c, gettime.c, 10654 goodpath.c, gram.c, gram.y, interfaces.c, ldap.c, logging.c, 10655 match.c, mon_systrace.c, parse.c, pwutil.c, set_perms.c, 10656 sigaction.c, snprintf.c, strcasecmp.c, strerror.c, strlcat.c, 10657 strlcpy.c, sudo.c, sudo_edit.c, sudo_noexec.c, testsudoers.c, 10658 tgetpass.c, toke.c, toke.l, utimes.c, visudo.c, zero_bytes.c: 10659 Add __unused to rcsids 10660 [ad6b4ac45705] 10661 106622005-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 10663 10664 * configure, configure.in: 10665 Fix error message when mixing invalid auth types 10666 [68069b3ff5bc] 10667 10668 * INSTALL: 10669 PAM, AIX auth, BSD auth and login_cap are now on by default if the 10670 OS supports them. 10671 [4e44e9098cf0] 10672 10673 * auth/sudo_auth.h, config.h.in: 10674 s/HAVE_AUTHENTICATE/HAVE_AIXAUTH/g 10675 [2d569b43b23e] 10676 10677 * configure.in: 10678 Better checking for conflicting authentication methods Display the 10679 authentication methods used at the end of configure Rename --with- 10680 authenticate -> --with-aixauth Use --with-aixauth, --with-bsdauth, 10681 --with-pam, --with-logincap by default on systems that support them 10682 unless disabled. Add OSMAJOR variable that replaces old OSREV; now 10683 OSREV has full version number 10684 [a21115b6fe9f] 10685 106862005-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 10687 10688 * def_data.c, def_data.in, sudo.c, sudoers.pod: 10689 s/-O/-C/ 10690 [ee73f1b81923] 10691 106922005-01-14 Todd C. Miller <Todd.Miller@courtesan.com> 10693 10694 * configure.in: 10695 Replace: test -n "$FOO" || FOO="bar" 10696 10697 With: : ${FOO='bar'} 10698 [37552d9054fc] 10699 107002005-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 10701 10702 * pwutil.c, testsudoers.c, tsgetgrpw.c: 10703 Use function pointers to only call private passwd/group routines 10704 when using a nonstandard passwd/group file. 10705 [215908681dfb] 10706 107072005-01-06 Todd C. Miller <Todd.Miller@courtesan.com> 10708 10709 * CHANGES: 10710 sync 10711 [2e55c03f5790] 10712 10713 * tsgetgrpw.c: 10714 Can't use strtok() since it doesn't handle empty fields so add 10715 getpwent()/getgrent() functions and call those. 10716 [bdaa5b0db70e] 10717 107182005-01-05 Todd C. Miller <Todd.Miller@courtesan.com> 10719 10720 * Makefile.in: 10721 Fix dummied out toke.c and gram.c dependencies. 10722 [4b909c8b2ebe] 10723 10724 * Makefile.in: 10725 Rename PARSESRCS -> GENERATED since it is only used in the clean 10726 target Add devdir variable and use it to specify the path to parser 10727 sources 10728 [f27b3f41ca23] 10729 10730 * configure: 10731 regen 10732 [22c6435dbd46] 10733 10734 * configure.in: 10735 Add a devdir variables that defaults to $(srcdir) and is set to . if 10736 --devel was specified. Allows for proper dependecies building the 10737 parser. 10738 [a36d694c6d21] 10739 10740 * testsudoers.c: 10741 Add support for custom passwd/group files. 10742 [296549ff4b87] 10743 10744 * Makefile.in: 10745 Build private copy of pwutil.o for testsudoers with MYPW defined so 10746 it uses our own passwd/group routines. 10747 [bafa54ec78ca] 10748 10749 * visudo.c: 10750 Remove sudo_*{pw,gr}* stubs and add sudo_setspent/sudo_endspent 10751 stubs instead. We can now just use the caching sudo_*{pw,gr}* 10752 functions in pwutil.c Add comment about wanting to call 10753 sudo_endpwent/sudo_endgrent in cleanup() 10754 [7e59d6b5510d] 10755 10756 * tsgetgrpw.c: 10757 Remove caching; we will just use what is in pwutil.c Use global 10758 buffers for passwd/group structs Rename functions from sudo_* to 10759 my_* 10760 [8c1e068f574c] 10761 10762 * logging.c, sudo.c: 10763 g/c pwcache_init/pwcache_destroy 10764 [60a24909b947] 10765 10766 * sudo.h: 10767 Undo last commit and add sudo_setspent and sudo_endspent instead. 10768 [bac80db08296] 10769 10770 * getspwuid.c, pwutil.c: 10771 Move all but the shadow stuff from getspwuid.c to pwutil.c and 10772 pwcache_get and pwcache_put as they are no longer needed. Also add 10773 preprocessor magic to use private versions of the passwd and group 10774 routines if MYPW is defined (for use by testsudoers). 10775 [a16b8678a426] 10776 10777 * tsgetgrpw.c: 10778 zero out struct passwd/group before filling it in so if there are 10779 fields we don't handle they end up as 0. 10780 [274cb6a93301] 10781 10782 * logging.c, sudo.c, sudo.h, testsudoers.c, visudo.c: 10783 Adapt to pwutil.c 10784 [43ebd04c8b82] 10785 10786 * Makefile.in: 10787 Add tsgetgrpw.c and pwutil.c Rename the *OBJ variables for better 10788 readability. 10789 [7f88c6061e2d] 10790 10791 * tsgetgrpw.c: 10792 Passwd and group lookup routines for testsudoers that support 10793 alternate passwd and group files. 10794 [d7803101d34e] 10795 10796 * getspwuid.c, pwutil.c: 10797 Split off pw/gr cache and dup code into its own file. This allows 10798 visudo and testsudoers to use the pw/gr cache too. 10799 [ef333d3ffedf] 10800 108012005-01-02 Todd C. Miller <Todd.Miller@courtesan.com> 10802 10803 * parse.c: 10804 Print Defaults info in "sudo -l" output and wrap lines based on the 10805 terminal width. 10806 [e559eae4250e] 10807 108082005-01-01 Todd C. Miller <Todd.Miller@courtesan.com> 10809 10810 * match.c, testsudoers.c, visudo.c: 10811 Only check group vector in usergr_matches() if we are matching the 10812 invoking or list user. Always check the group members, even if 10813 there was a group vector. 10814 [d0c7ceb2a041] 10815 108162004-12-17 Todd C. Miller <Todd.Miller@courtesan.com> 10817 10818 * LICENSE, Makefile.in, fnmatch.3: 10819 No longer bundle fnmatch.3 10820 [72db4a4ff4e1] 10821 10822 * CHANGES, TODO: 10823 checkpoint 10824 [e92781bfd99c] 10825 108262004-12-16 Todd C. Miller <Todd.Miller@courtesan.com> 10827 10828 * sudo.c: 10829 sort usage 10830 [15e3b876ec2c] 10831 10832 * sudo.pod: 10833 Sort command line options 10834 [c1fa56584bc4] 10835 10836 * def_data.c, def_data.h, def_data.in, defaults.c, logging.c, sudo.c, 10837 sudo.pod, sudoers.pod: 10838 Add closefrom sudoers option to start closing at a point other than 10839 3. Add closefrom_override sudoers option and -C sudo flag to allow 10840 the user to specify a different closefrom starting point. 10841 [370652b099d1] 10842 10843 * pathnames.h.in: 10844 Add _PATH_DEVNULL for those without it. 10845 [0c4c3e0ceb8b] 10846 10847 * LICENSE: 10848 no more UCB strcasecmp 10849 [397a6298e07f] 10850 10851 * strcasecmp.c: 10852 replace BSD licensed one with version derived from pdksh 10853 [d7cfda8c57a2] 10854 108552004-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 10856 10857 * sudo.c: 10858 Fix last commit. 10859 [7afb9a180532] 10860 10861 * sudo.c: 10862 Make sure stdin, stdout and stderr are open and dup them to 10863 /dev/null if not. 10864 [590f387068bd] 10865 108662004-12-03 Todd C. Miller <Todd.Miller@courtesan.com> 10867 10868 * ldap.c, mon_systrace.c, sudo.c, sudo.h: 10869 add sudo_ldap_close 10870 [4273a36765a7] 10871 10872 * fileops.c, gettime.c, sudo.c, sudo_edit.c, utimes.c, visudo.c: 10873 Use TIME_WITH_SYS_TIME 10874 [c32b59bf15fb] 10875 10876 * config.h.in, configure, configure.in: 10877 Add TIME_WITH_SYS_TIME_H 10878 [57cb146f451d] 10879 108802004-12-02 Todd C. Miller <Todd.Miller@courtesan.com> 10881 10882 * env.c: 10883 Add missing braces to avoid DYLD_FORCE_FLAT_NAMESPACE being set 10884 unconditionally on darwin. From Toby Peterson. 10885 [d69959681c87] 10886 10887 * getspwuid.c: 10888 Check rbinsert() return value. In the case of faked up entries 10889 there is usually a negative response cached that we need to 10890 overwrite. 10891 10892 In pwfree() don't try to zero out a NULL pw_passwd pointer. 10893 [00b32d1a48c1] 10894 10895 * mon_systrace.c: 10896 Use the double fork trick to avoid the monitor process being waited 10897 for by the main program run through sudo. 10898 [e0ce556712ff] 10899 109002004-11-29 Todd C. Miller <Todd.Miller@courtesan.com> 10901 10902 * sudo.c: 10903 Call initgroups() in -U mode so group matches work normally. 10904 [2235bea15283] 10905 10906 * def_data.h, mkdefaults: 10907 Don't print a trailing comma for the last entry in enum def_tupple 10908 [c43a96bb31df] 10909 109102004-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 10911 10912 * sudoers.cat, sudoers.man.in, sudoers.pod: 10913 Mention values when lecture, listpw and verifypw are used in boolean 10914 context. 10915 [a0b5c0abaccf] 10916 10917 * def_data.c, def_data.in: 10918 verifypw when used in a boolean TRUE context should be "all", not 10919 "any". 10920 [2eb076ddd5e2] 10921 109222004-11-26 Todd C. Miller <Todd.Miller@courtesan.com> 10923 10924 * def_data.in, defaults.c: 10925 Allow tuples that can be used as booleans to be used as boolean 10926 TRUE. In this case the 2nd possible value of the tuple is used for 10927 TRUE. 10928 [bd99aa77e88b] 10929 109302004-11-25 Todd C. Miller <Todd.Miller@courtesan.com> 10931 10932 * configure, configure.in: 10933 Correct the test for 2-parameter timespecsub 10934 [d41c9cb26b97] 10935 10936 * sudo.h: 10937 Add strub struct definitions for passwd, timeval and timespec 10938 [c4ce5c43d8c5] 10939 10940 * config.h.in, configure, configure.in, sudo_edit.c, visudo.c: 10941 Add check for 2-argument form of timespecsub (FreeBSD and BSD/OS) 10942 and fix a typo in the gettimeofday check. 10943 [8ac9893057ce] 10944 109452004-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 10946 10947 * match.c, testsudoers.c: 10948 Deal with user_stat being NULL as it is for visudo and testsudoers. 10949 [3605a6ff64d0] 10950 10951 * parse.c, sudo.c, sudo.cat, sudo.h, sudo.man.in, sudo.pod: 10952 Add -U option to use in conjunction with -l instead of -u. Add 10953 support for "sudo -l command" to test a specific command. 10954 [99638789d415] 10955 10956 * gram.c, gram.y, sudo.c: 10957 Set safe_cmnd after sudoers_lookup() if it has not been set. 10958 Previously it was set by sudo "ALL" in the parser but at that point 10959 the fully-qualified pathname has not yet been found. 10960 [ac30d98f8225] 10961 109622004-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 10963 10964 * parse.c, testsudoers.c: 10965 Correctly handle multiple privileges per userspec and runas 10966 inheritence. 10967 [a98a965181af] 10968 109692004-11-21 Todd C. Miller <Todd.Miller@courtesan.com> 10970 10971 * defaults.c: 10972 Zero out sd_un for each entry in sudo_defs_table in init_defaults. 10973 [031d3cd4a848] 10974 109752004-11-19 Todd C. Miller <Todd.Miller@courtesan.com> 10976 10977 * toke.c, toke.l: 10978 make per-command defaults work with sudoedit 10979 [e56fe33db916] 10980 10981 * ldap.c, parse.c, sudo.c, sudo.h: 10982 Remove the FLAG_NOPASS, FLAG_NOEXEC and FLAG_MONITOR flags. 10983 Instead, we just set the approriate defaults variable. 10984 [756eeecc1d86] 10985 10986 * sample.sudoers, sudoers.cat, sudoers.man.in, sudoers.pod: 10987 Document per-command Defaults. 10988 [92a0f84b91c1] 10989 10990 * defaults.c, defaults.h, gram.c, gram.h, gram.y, mon_systrace.c, 10991 sudo.c, testsudoers.c, toke.c, toke.l, visudo.c: 10992 Add support for command-specific Defaults entries. E.g. 10993 Defaults!/usr/bin/vi noexec 10994 [be3d52bf01cf] 10995 10996 * defaults.c, match.c, parse.c, parse.h, testsudoers.c: 10997 Change an occurence of user_matches() -> runas_matches() missed 10998 previously runas_matches(), host_matches() and cmnd_matches() only 10999 really need to pass in a list of members. user_matches() still 11000 needs to pass in a passwd struct because of "sudo -l" 11001 [833b22fc6fa0] 11002 11003 * parse.c: 11004 Check def_authenticate, def_noexec and def_monitor when setting 11005 return flags. XXX May be better to just set the defaults directly 11006 and get rid of those flags. 11007 [b6db22b59d69] 11008 11009 * alias.c, alloc.c, auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, 11010 auth/dce.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, 11011 auth/passwd.c, auth/rfc1938.c, auth/secureware.c, auth/securid.c, 11012 auth/securid5.c, auth/sia.c, auth/sudo_auth.c, check.c, closefrom.c, 11013 defaults.c, env.c, error.c, fileops.c, find_path.c, fnmatch.c, 11014 getcwd.c, getprogname.c, getspwuid.c, gettime.c, glob.c, goodpath.c, 11015 gram.c, gram.y, interfaces.c, ldap.c, logging.c, match.c, 11016 mon_systrace.c, parse.c, redblack.c, set_perms.c, snprintf.c, 11017 strcasecmp.c, strerror.c, strlcat.c, strlcpy.c, sudo.c, sudo_edit.c, 11018 sudo_noexec.c, testsudoers.c, tgetpass.c, toke.c, toke.l, utimes.c, 11019 visudo.c, zero_bytes.c: 11020 Use: #include <config.h> Not: #include "config.h" That way we get 11021 the correct config.h when build dir != src dir 11022 [97e5670a442b] 11023 11024 * Makefile.in: 11025 Back out part of rev 1.263; fix -I order 11026 [197ea01cad5d] 11027 11028 * toke.c, toke.l: 11029 More robust parsing if #include; could be much better still. 11030 [31bc3cd8f045] 11031 11032 * sudo_edit.c, visudo.c: 11033 Make arg splitting in visudo and sudoedit consistent. 11034 [7bc74485f246] 11035 11036 * Makefile.in, alias.c, gram.c, gram.y, parse.h: 11037 Split alias routines out into their own file. 11038 [d90f633cf9ae] 11039 11040 * error.h: 11041 __attribute__ is already defined in compat.h 11042 [676ed3fe9203] 11043 11044 * visudo.c: 11045 quit() should not be __noreturn__ as it is non-void on some 11046 platforms. 11047 [e528c2b6ba10] 11048 11049 * auth/fwtk.c, auth/rfc1938.c, auth/securid.c, auth/securid5.c: 11050 Add local error/warning functions like err/warn but that call an 11051 additional cleanup routine in the error case. This means we no 11052 longer need to compile a special version of alloc.o for visudo. 11053 [e78e8aae882e] 11054 11055 * parse.h: 11056 Clarify comments about the data structures 11057 [ae894e266701] 11058 110592004-11-18 Todd C. Miller <Todd.Miller@courtesan.com> 11060 11061 * visudo.c: 11062 Add support for VISUAL and EDITOR containing command line args. If 11063 env_editor is not set any args in VISUAL and EDITOR are ignored. 11064 Arguments are also now supported in def_editor. 11065 [ff7303b8e298] 11066 110672004-11-17 Todd C. Miller <Todd.Miller@courtesan.com> 11068 11069 * parse.h: 11070 alias_matches() is no more 11071 [b59825e28084] 11072 11073 * CHANGES, TODO: 11074 sync 11075 [2b8f5f63c1de] 11076 11077 * Makefile.in: 11078 When regenerating the parser, don't replace gram.h unless it has 11079 changed. 11080 [819949668018] 11081 11082 * Makefile.in: 11083 remove Makefile.binary for distclean 11084 [351eec8d00b2] 11085 11086 * env.c: 11087 Preserve KRB5CCNAME in zero_env() and add a paranoia check to make 11088 sure we can't overflow new_env. 11089 [3284d17b9c6d] 11090 11091 * sudo_edit.c: 11092 paranoia when stripping trailing slashes from tempdir. 11093 [012f1aa2b81f] 11094 11095 * sudo.c: 11096 Set user_ngroups to 0 if getgroups() returns an error. 11097 [c46d43e9449a] 11098 110992004-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 11100 11101 * config.h.in, configure, configure.in, sudo.c: 11102 Add configure check for getgroups() 11103 [5d8a214e2cef] 11104 11105 * ldap.c: 11106 Use supplementary group vector in struct sudo_user. 11107 [3d0c463c034d] 11108 11109 * match.c: 11110 Only do string comparisons on the group members if there is no 11111 supplemental group list. 11112 [be1c8362f7ef] 11113 11114 * CHANGES, TODO: 11115 sync 11116 [db188bc5b975] 11117 11118 * sudo_edit.c: 11119 On Digital UNIX _PATH_VAR_TMP doesn't end with a trailing slash so 11120 chop off any trailing slashes we see and add an explicit one. 11121 [e1b477dafee1] 11122 11123 * match.c: 11124 remove bogus XXX comment 11125 [8aecb8a28d40] 11126 11127 * match.c: 11128 Get rid of alias_matches and correctly fall through to the non-alias 11129 cases when there is no alias with the specified name. 11130 [2cd555246f09] 11131 11132 * getspwuid.c: 11133 Cache non-existent passwd/group entries too. 11134 [8de9a467d271] 11135 11136 * gram.c: 11137 regen 11138 [9ece18c58f36] 11139 11140 * getspwuid.c: 11141 fix typo 11142 [9a7ae371eac1] 11143 11144 * check.c, getspwuid.c, glob.c, ldap.c, logging.c, match.c, 11145 mon_systrace.h, sudo.c, sudo.h, testsudoers.c, visudo.c: 11146 Implement group caching and use the passwd and group caches 11147 throughout. 11148 [f1d8c5015169] 11149 111502004-11-15 Todd C. Miller <Todd.Miller@courtesan.com> 11151 11152 * match.c: 11153 Properly negate the return value of alias_matches() when 11154 appropriate. 11155 [ce59c4ce77ad] 11156 11157 * match.c: 11158 Make hostname_matches() return TRUE for a match, else FALSE like the 11159 caller expects. 11160 [1dc03902d3a2] 11161 11162 * Makefile.in: 11163 Add missing dependencies on gram.h 11164 [4f94bbb1d50c] 11165 11166 * match.c: 11167 Use runas_matches in alias_matches() now that we have it. 11168 [284d22e91178] 11169 11170 * parse.c, parse.h: 11171 Expand aliases in "sudo -l" mode 11172 [f67a38b79c44] 11173 11174 * gram.y, match.c: 11175 Use ALIAS for the member type when storing an alias instead of 11176 HOSTALIAS/RUNASALIAS/CMNDALIAS/USERALIAS since match.c relies on the 11177 more generic type. Expand runas_matches instead of calling 11178 user_matches() inside of it since user_matches() looks up 11179 USERALIASes, not RUNASALIASes. 11180 [52004d75232b] 11181 11182 * CHANGES, getspwuid.c: 11183 Paranoia; zero out pw_passwd before freeing passwd entry. 11184 [bd1b22638f00] 11185 11186 * LICENSE, Makefile.in, alloc.c, check.c, config.h.in, configure, 11187 configure.in, defaults.c, emul/err.h, env.c, err.c, error.c, 11188 error.h, find_path.c, interfaces.c, logging.c, mon_systrace.c, 11189 sudo.c, sudo.h, sudo_edit.c, testsudoers.c, visudo.c: 11190 Add local error/warning functions like err/warn but that call an 11191 additional cleanup routine in the error case. This means we no 11192 longer need to compile a special version of alloc.o for visudo. 11193 [25000b676cfe] 11194 11195 * match.c: 11196 Use userpw_matches() to compare usernames, not strcmp(), since the 11197 latter checks for "#uid". 11198 [fcbe4b859f66] 11199 11200 * getspwuid.c, mon_systrace.c, mon_systrace.h, sudo.c: 11201 Cache passwd db entries in 2 reb-black trees; one indexed by uid, 11202 the other by user name. The data returned from the cache should be 11203 considered read-only and is destroyed by sudo_endpwent(). 11204 [ee2418ff3f86] 11205 11206 * match.c: 11207 add cast to uid_t 11208 [eb6415302d84] 11209 11210 * gram.y: 11211 missing free in alias_destroy 11212 [572ecb680ad8] 11213 11214 * redblack.c: 11215 Can't use rbapply() for rbdestroy since the destructor is passed a 11216 data pointer, not a node pointer. 11217 [11ce713830c0] 11218 11219 * getspwuid.c, logging.c, sudo.c, sudo.h: 11220 Create and use private versions of setpwent() and endpwent() that 11221 set/end the shadow password file too. 11222 [616bc76d23bf] 11223 11224 * gram.c, gram.h, gram.y, match.c, parse.h, testsudoers.c, visudo.c: 11225 Store aliases in a red-black tree. 11226 [ce017d540416] 11227 11228 * Makefile.in, redblack.c, redblack.h: 11229 red-black tree implementation 11230 [cd5586e8f48b] 11231 11232 * visudo.c: 11233 Edit all sudoers file if there were unused or undefined aliases and 11234 we are in strict mode. 11235 [b6d5f5bb7262] 11236 112372004-11-12 Todd C. Miller <Todd.Miller@courtesan.com> 11238 11239 * CHANGES, def_data.c, def_data.h, def_data.in, defaults.c, env.c, 11240 find_path.c, sudoers.cat, sudoers.man.in, sudoers.pod, visudo.c: 11241 Bring back the "secure_path" Defaults option now that Defaults take 11242 effect before the path is searched. 11243 [2e52c0e27606] 11244 112452004-11-11 Todd C. Miller <Todd.Miller@courtesan.com> 11246 11247 * logging.c, parse.c: 11248 A user can always list their own entries, even with -u. Better error 11249 message when failing to list another user's entries. 11250 [e2e24deb0071] 11251 11252 * parse.c, sudo.c, sudo.h: 11253 The syntax to list another user's entries is now "-u otheruser -l". 11254 Only root or users with sudo "ALL" may list other user's entries. 11255 [3c0657e8f5fe] 11256 11257 * sudo.cat, sudo.man.in, sudo.pod: 11258 Update env variable info in SECURITY NOTES 11259 [299716071024] 11260 11261 * env.c: 11262 strip CDPATH too 11263 [9b97643b26f9] 11264 11265 * env.c: 11266 strip exported bash functions from the environment. 11267 [9e5090c8284f] 11268 112692004-10-27 Todd C. Miller <Todd.Miller@courtesan.com> 11270 11271 * sudo.c: 11272 Only reset sudo_user.pw based on SUDO_USER environment variables for 11273 real commands and sudoedit. This avoids a confusing message when a 11274 user tries "sudo -l" or "sudo -v" and is denied. 11275 [3ea6d0053274] 11276 11277 * gram.c, gram.y, parse.h: 11278 Extend LIST_APPEND to deal with appending lists too 11279 [d963e42f622f] 11280 112812004-10-26 Todd C. Miller <Todd.Miller@courtesan.com> 11282 11283 * logging.c: 11284 Convert some bitwise AND to ISSET 11285 [130dc40d268e] 11286 11287 * lex.yy.c, toke.c: 11288 toke.c replaces lex.yy.c 11289 [048858df79e7] 11290 11291 * CHANGES, TODO: 11292 sync 11293 [d19e7abf251c] 11294 11295 * BUGS: 11296 new parser fixes most of the outstanding bugs 11297 [0891f66e3758] 11298 11299 * configure: 11300 regen 11301 [1a3358cc7283] 11302 11303 * visudo.c: 11304 Rework for the new parser. Now checks for unused aliases in sudoers. 11305 [ad462ede3094] 11306 11307 * testsudoers.c: 11308 Rewrite for the new parser. Now supports a -d flag (dump) and adds 11309 a -h flag (host). It now defaults to the local hostname unless 11310 otherwise specified. 11311 [1b69685cc601] 11312 11313 * sudo.h: 11314 Add new prototypes. Remove NOMATCH/UNSPEC (now in parse.h) 11315 [2e4fb3abfef0] 11316 11317 * sudo.c: 11318 Update for new parse. We now call find_path() *after* we have 11319 updated the global defaults based on sudoers. Also adds support for 11320 listing other user's privs if you are root. 11321 [cf3db9fc3024] 11322 11323 * mon_systrace.c: 11324 Working LDAP support; also remove a now-unneeded rewind(). 11325 [649ecf1baf6b] 11326 11327 * logging.c, logging.h: 11328 Add NO_STDERR flag. 11329 [6cb935af94e0] 11330 11331 * ldap.c: 11332 Split sudo_ldap_check() into three pieces: sudo_ldap_open(), 11333 udo_ldap_update_defaults() and sudo_ldap_check(). This allows us to 11334 connecto to LDAP, apply the default options, find the command in the 11335 user's path, and then check whether the user is allowed to run it. 11336 The important thing here is that the default runas user may be 11337 specified as a default option and that needs to be set before we 11338 search for the command. 11339 [fc0426abc6f1] 11340 11341 * ldap.c: 11342 Add casts to unsigned char for isspace() to quiet a gcc warning. 11343 [e5358e3df439] 11344 11345 * defaults.h: 11346 Add prototype for update_defaults() 11347 [564dac3db74e] 11348 11349 * defaults.c: 11350 Don't warn about line numbers now that we operate on a set of data 11351 structures (or LDAP) and not a file. 11352 [bcd9ffb9b67c] 11353 11354 * config.h.in: 11355 No long use lsearch() 11356 [9d048c587319] 11357 11358 * Makefile.in: 11359 Update for new and changed file names. 11360 [6f424a7c4515] 11361 11362 * LICENSE: 11363 no more BSD lsearch.c 11364 [463a96d89026] 11365 11366 * match.c: 11367 foo_matches() routines now live in match.c Added user_matches(), 11368 runas_matches(), host_matches(), cmnd_matches() and alias_matches() 11369 that operate on the parsed sudoers file. 11370 [b14da8a0567e] 11371 11372 * parse.lex, toke.l: 11373 Move parse.lex -> toke.l Rename buffer_frob() -> switch_buffer() 11374 WORD no longer needs to exclude '@' kill yywrap() 11375 [a922294eb7b7] 11376 11377 * gram.c, gram.h, gram.y, parse.c, parse.h, parse.yacc, sudo.tab.c, 11378 sudo.tab.h: 11379 Rewritten parser that converts sudoers into a set of data 11380 structures. This eliminates ordering issues and makes it possible to 11381 apply sudoers Defaults entries before searching for the command. 11382 [30d2ec4d203c] 11383 11384 * configure.in, emul/search.h, lsearch.c: 11385 We won't be using lsearch() any longer. 11386 [29c4d54bfac0] 11387 11388 * ldap.c: 11389 sudo should not send mail if someone who runs 'sudo -l' has no 11390 entry. 11391 [6fc27a69fd9c] 11392 11393 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 11394 visudo.man.in: 11395 regen 11396 [8166347917f3] 11397 11398 * visudo.pod: 11399 Update warnings to match new visudo 11400 [004c0766798f] 11401 11402 * sudoers.pod: 11403 The new parser doesn't have the old ordering constraints. 11404 [ffd43bd08661] 11405 11406 * sudo.pod: 11407 Document that -l now takes an optional username argument 11408 [278f9557de8b] 11409 114102004-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 11411 11412 * RUNSON: 11413 AIX 5.2.0.0 works 11414 [523acd29d858] 11415 11416 * ldap.c: 11417 If LDAP_OPT_SUCCESS is not defined, use LDAP_SUCCESS instead. Fixes 11418 a compilation problem with Solaris 9's native LDAP. 11419 11420 Set FLAG_MONITOR when needed. 11421 [35824ade672d] 11422 114232004-10-23 Todd C. Miller <Todd.Miller@courtesan.com> 11424 11425 * mon_systrace.c: 11426 Call sudo_goodpath() *after* changing the cwd to match the traced 11427 process. Fixes relative paths. 11428 [12ee111d0ad7] 11429 114302004-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 11431 11432 * testsudoers.c: 11433 Kill set_perms() stub--it is no longer needed. 11434 [116ed702935d] 11435 114362004-10-13 Todd C. Miller <Todd.Miller@courtesan.com> 11437 11438 * sudoers.cat, sudoers.man.in, sudoers.pod: 11439 stay_setuid now requires set_reuid() or setresuid() 11440 [8511f67e25d5] 11441 11442 * INSTALL, PORTING, TROUBLESHOOTING, config.h.in, configure, 11443 configure.in, set_perms.c, sudo.c, sudo.h: 11444 Kill use of POSIX saved uids; they aren't worth bothering with. 11445 [b3b1f19f18c1] 11446 114472004-10-07 Todd C. Miller <Todd.Miller@courtesan.com> 11448 11449 * glob.c: 11450 remove call to issetugid() 11451 [63f2e492c08f] 11452 11453 * sudoers.cat, sudoers.man.in, sudoers.pod: 11454 Remove warning about wildcards. Now that we use glob() the bug is 11455 fixed. 11456 [b15729d32266] 11457 11458 * parse.c: 11459 Use glob(3) instead of fnmatch(3) for matching pathnames and stat 11460 each result that matches the basename of the user's command. This 11461 makes "cd /usr/bin ; sudo ./blah" work when sudoers allows 11462 /usr/bin/blah. Fixes bug #143. 11463 [e31eb6310340] 11464 11465 * config.h.in, configure, configure.in: 11466 Define HAVE_EXTENDED_GLOB for extended glob (GLOB_TILDE and 11467 GLOB_BRACE) 11468 [677ed6661e17] 11469 11470 * config.h.in, configure, configure.in: 11471 Check for a glob() that supports GLOB_BRACE and GLOB_TILDE 11472 [aaa2329dd266] 11473 11474 * LICENSE: 11475 reference glob 11476 [bedc9a923423] 11477 11478 * glob.c: 11479 4.4BSD glob(3) with fixes from OpenBSD and some unneeded extensions 11480 removed. 11481 [81799451473c] 11482 11483 * emul/glob.h: 11484 4.4BSD glob(3) with fixes from OpenBSD and some unneeded extensions 11485 removed. 11486 [0335cf31fb1e] 11487 114882004-10-05 Todd C. Miller <Todd.Miller@courtesan.com> 11489 11490 * mon_systrace.c: 11491 Just return if STRIOCINJECT or STRIOCREPLACE fail. It probably 11492 means we are out of space in the stack gap... 11493 [5b02b702021e] 11494 11495 * CHANGES: 11496 sync 11497 [be3826273e56] 11498 11499 * mon_systrace.c: 11500 Take a stab at ldap sudoers support here. 11501 [9d023695b0de] 11502 11503 * mon_systrace.c, mon_systrace.h: 11504 Detach from tracee on SIGHUP, SIGINT and SIGTERM. Now "sudo reboot" 11505 doesn't cause reboot to inadvertanly kill itself. 11506 [d4aab2365610] 11507 11508 * mon_systrace.c: 11509 put "monitor" in the proctitle, not "systrace" 11510 [9a9025767d86] 11511 11512 * mon_systrace.c: 11513 When modifying the environment, don't replace envp when we can get 11514 away with just rewriting pointers in the traced process. 11515 [c03622f7a2e2] 11516 11517 * mon_systrace.c, mon_systrace.h: 11518 Add environment updating via STRIOCINJECT (if available). 11519 [037291016870] 11520 11521 * sudoers.cat, sudoers.man.in: 11522 regen 11523 [869acc511046] 11524 115252004-10-04 Todd C. Miller <Todd.Miller@courtesan.com> 11526 11527 * lex.yy.c: 11528 regen 11529 [4e61a9bd3c97] 11530 11531 * parse.lex: 11532 Fix bug introduced in unput() removal; want yyless(0) not yyless(1) 11533 [b70d7bd6e147] 11534 11535 * mon_systrace.c: 11536 Include file is now mon_systrace.h 11537 [ead4e36d92ae] 11538 11539 * Makefile.in, configure, configure.in, def_data.c, def_data.h, 11540 def_data.in, lex.yy.c, parse.c, parse.h, parse.lex, parse.yacc, 11541 sudo.c, sudo.h, sudo.tab.c, sudo.tab.h, sudoers.pod: 11542 No longer call it tracing, it is now "monitoring" which should be 11543 more a obvious name to non-hackers. 11544 [aa811ded0789] 11545 115462004-10-01 Todd C. Miller <Todd.Miller@courtesan.com> 11547 11548 * mon_systrace.c, mon_systrace.h: 11549 Fix some XXX 11550 [a271072dacc6] 11551 11552 * mon_systrace.c, mon_systrace.h: 11553 No need to include syscall.h, use 1024 as the max # of entries (the 11554 max that systrace(4) allows). 11555 11556 Only need to use SYSTR_POLICY_ASSIGN once 11557 11558 Change check_syscall() -> find_handler() and have it return the 11559 handler instead of just running it. We need this since handler now 11560 have two parts: one part that generates and answer and another that 11561 gets called after the answer is accepted (to do logging). 11562 11563 Add some missing check_exec for emul execv 11564 [a89d243f0525] 11565 11566 * sample.pam, sample.sudoers, sample.syslog.conf, sudoers: 11567 Add $Sudo$ tags. 11568 [6f3fedb0daba] 11569 11570 * config.h.in: 11571 Add missing HAVE_LINUX_SYSTRACE_H 11572 [ff75ab7bfc53] 11573 11574 * Makefile.in: 11575 add trace_systrace.o dependency 11576 [88a408668ab2] 11577 115782004-09-30 Todd C. Miller <Todd.Miller@courtesan.com> 11579 11580 * configure, configure.in: 11581 Also look for systrace.h in /usr/include/linux 11582 [98b98b436cf3] 11583 11584 * mon_systrace.c, mon_systrace.h: 11585 Move all struct defs and prototypes into trace_systrace.h and mark 11586 all but systace_attach() static. 11587 [85511253b570] 11588 11589 * mon_systrace.c, mon_systrace.h: 11590 Add support for tracing emulations. At the moment, all emulations 11591 are compiled in. It might make sense to #ifdef them in the future, 11592 though this impeeds readability. 11593 [87bb50abf277] 11594 11595 * Makefile.in, configure, configure.in: 11596 rename systrace.c -> trace_systrace.c 11597 [31cfa4407d93] 11598 11599 * parse.yacc, sudo.tab.c: 11600 Allow this to build with a K&R compiler again 11601 [32876af5bb98] 11602 11603 * TODO: 11604 sync 11605 [46865bd70f7c] 11606 11607 * compat.h, sudo.c, visudo.c: 11608 Use __attribute__((__noreturn__)) 11609 [65bbad71fe89] 11610 11611 * visudo.c: 11612 Exit() takes a negative value to indicate it was not called via 11613 signal. 11614 [b93032ed7b60] 11615 11616 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 11617 visudo.man.in: 11618 regen 11619 [45bcf4661558] 11620 11621 * Makefile.in, visudo.c: 11622 Define Err() and Errx() that are like err() and errx() but call 11623 Exit() instead of exit(). Build private copy of alloc.o for visudo 11624 that calls Err() and Errx(). 11625 [c6d02bf42edd] 11626 116272004-09-29 Todd C. Miller <Todd.Miller@courtesan.com> 11628 11629 * lex.yy.c, sudo.tab.c: 11630 regen 11631 [39de7e7c59da] 11632 11633 * CHANGES: 11634 sync 11635 [ba481d9ed1aa] 11636 11637 * visudo.c: 11638 Overhaul visudo for editing multiple files: o visudo has been 11639 broken out into functions (more work needed here) o each file is 11640 now edited before sudoers is re-parsed o if a #include line is 11641 added that file will be edited too 11642 11643 TODO: o cleanup temp files when exiting via err() or errx() o 11644 continue breaking things out into separate functions 11645 [80c35cf534eb] 11646 11647 * parse.lex, sudo.c, sudo.h, testsudoers.c, visudo.c: 11648 Add keepopen arg to open_sudoers that open_sudoers can use to 11649 indicate to the caller that the fd should not be closed when it is 11650 done with it. To be used by visudo to keep locked fds from being 11651 closed prematurely (and thus losing the lock). 11652 [f330fe632470] 11653 11654 * parse.yacc, sudo.c: 11655 Add errorfile global that contains the name of the file that caused 11656 the error. 11657 [98079c7a37ed] 11658 11659 * parse.lex: 11660 return COMMENT to yacc grammar for a #include line 11661 [2024a8de4fa8] 11662 11663 * parse.lex: 11664 Remove us of unput() in favor of yyless() which is cheaper. 11665 [c61291902beb] 11666 11667 * parse.yacc: 11668 Allow an empty sudoers file. 11669 [62fb111db2e7] 11670 116712004-09-28 Todd C. Miller <Todd.Miller@courtesan.com> 11672 11673 * mon_systrace.c: 11674 Rewind sudoers_fp now that sudoers_lookup() doesn't do it for us. 11675 [9e15869ef597] 11676 11677 * lex.yy.c, sudo.tab.c: 11678 regen 11679 [c29bdd43bfad] 11680 11681 * visudo.c: 11682 Do signal setup before calling edit_sudoers(). Don't shadow the 11683 "quiet" global. 11684 [74252efd09ff] 11685 11686 * visudo.c: 11687 If a sudoers file includes other files, edit those too. Does not yes 11688 deal with creating the new includes files itself. 11689 [06af7b9c173f] 11690 11691 * testsudoers.c: 11692 init_parser now takes a path 11693 [b5ee186eb192] 11694 11695 * parse.c, parse.h, parse.lex, parse.yacc: 11696 More scaffolding for dealing with multiple sudoers files: o 11697 init_parser() now takes a path used to populate the sudoers global 11698 o the sudoers global is used to print the correct file in yyerror() 11699 o when switching to a new sudoers file, perserve old file name and 11700 line number 11701 [d9be4970b8bd] 11702 11703 * Makefile.in, pathnames.h.in: 11704 Kill _PATH_SUDOERS_TMP; it is not meaningful now that we can have 11705 multiple sudoers files. 11706 [6ccc4e921c43] 11707 11708 * parse.c, sudo.c: 11709 Rewind sudoers_fp in open_sudoers() instead of sudoers_lookup() so 11710 we start at the right file position when reading include files. 11711 [91fcb961e7a4] 11712 11713 * sudoers.pod: 11714 document #include 11715 [fbb92a25a726] 11716 11717 * lex.yy.c: 11718 regen 11719 [50cd7a4c9dff] 11720 11721 * parse.lex: 11722 Add max depth of 128 for the include stack to avoid loops. 11723 11724 Since yyerror() doesn't stop parsing, pass return values back to 11725 yylex and call yyterminate() on error. 11726 [e79dbffb729d] 11727 117282004-09-27 Todd C. Miller <Todd.Miller@courtesan.com> 11729 11730 * sudoers.pod: 11731 document tracing 11732 [165a467eadd8] 11733 11734 * sudo.pod: 11735 Mention PREVENTING SHELL ESCAPES section of sudoers man page 11736 [3217ccecd834] 11737 11738 * lex.yy.c, sudo.tab.c: 11739 regen 11740 [fbd58d1d3a76] 11741 11742 * parse.lex: 11743 Add support for #include in sudoers (visudo support TBD) 11744 [a78015ca81af] 11745 11746 * parse.yacc: 11747 make yyerror()'s argument const 11748 [7d8e168c019a] 11749 11750 * testsudoers.c, visudo.c: 11751 Add open_sudoers() stubs. 11752 [087466787198] 11753 11754 * sudo.c, sudo.h: 11755 Rename check_sudoers() open_sudoers() and make it return a FILE * 11756 [142fc511fc65] 11757 117582004-09-26 Todd C. Miller <Todd.Miller@courtesan.com> 11759 11760 * BUGS, INSTALL, INSTALL.binary, Makefile.in, README, configure.in, 11761 version.h: 11762 Crank version 11763 [1adc3f839480] 11764 11765 * Makefile.in, sudo.psf: 11766 Better HP-UX depot construction 11767 [2d952b000e63] 11768 117692004-09-25 Todd C. Miller <Todd.Miller@courtesan.com> 11770 11771 * mon_systrace.c: 11772 o Made children global so check_exec() can lookup a child. o 11773 Replaced uid in struct childinfo with struct passwd * (for runas) o 11774 new_child() now takes a parent pid so the runas info can be 11775 inherited o Added find_child() to lookup a child by its pid o 11776 update_child() now fills in a struct passwd o Converted the big 11777 if/else mess in set_policy to a switch o Syscalls that change uid 11778 are now "ask" so we get SYSTR_MSG_UGID events 11779 [29b9ea3f09a3] 11780 11781 * getspwuid.c: 11782 Add flag to sudo_pwdup that indicates whether or not to lookup the 11783 shadow password. Will be used to a struct passwd that has the 11784 shadow password already filled in. 11785 [e19d43dd7238] 11786 11787 * mon_systrace.c: 11788 add missing increment of addr in read_string() 11789 [f9eb0f060cb6] 11790 11791 * mon_systrace.c: 11792 Remove bogus call to update_child() and some cosmetic fixes 11793 [701ab0b97fef] 11794 11795 * mon_systrace.c: 11796 Don't leak /dev/systrace fd to tracee Make initialized global for 11797 simplicity If STRIOCATTACH returns EBUSY we are already being traced 11798 Check for user_args == NULL in setproctitle() call Add missing calls 11799 to STRIOCANSWER 11800 [1956edf9bc3a] 11801 11802 * sudo.c: 11803 g/c sudo_pwdup proto 11804 [b7c4d6249ecb] 11805 11806 * Makefile.in, sudo.psf: 11807 Add target for building a depot file 11808 [357019efd99b] 11809 11810 * mon_systrace.c: 11811 trim includes 11812 [501534428471] 11813 118142004-09-24 Todd C. Miller <Todd.Miller@courtesan.com> 11815 11816 * lex.yy.c, sudo.tab.c, sudo.tab.h: 11817 regen 11818 [52fd250c6986] 11819 11820 * INSTALL: 11821 document --with-systrace 11822 [79623927c94e] 11823 11824 * config.h.in, configure, configure.in: 11825 Add check for setproctitle 11826 [1730cf1c26ed] 11827 11828 * mon_systrace.c: 11829 pass struct str_msg_ask in to syscall checker so it can set the 11830 error code 11831 [1703fd2fdef6] 11832 11833 * mon_systrace.c: 11834 systrace(4) support for sudo. On systems with the systrace(4) 11835 kernel facility (OpenBSD, NetBSD, Linux w/ patches) sudo can 11836 intercept exec calls and check the exec args against the sudoers 11837 file. In other words, sudo can now control subcommands and shell 11838 escapes. 11839 [928c9217c386] 11840 11841 * sudo.c, sudo.h: 11842 Call systrace_attach() if FLAG_TRACE is set. 11843 [014ba9402fa5] 11844 11845 * parse.c, parse.h, parse.lex, parse.yacc, sudo.h: 11846 Add trace Defaults option and TRACE/NOTRACE tags and set FLAG_TRACE 11847 [a99904db5e56] 11848 11849 * parse.c, sudo.c: 11850 Don't close sudoers_fp, keep it open and set close on exec flag 11851 instead. 11852 [43a9fec60bee] 11853 11854 * def_data.c, def_data.h, def_data.in: 11855 Add trace option 11856 [5b643b86730a] 11857 11858 * Makefile.in: 11859 Add systrace 11860 [47a0519c427c] 11861 11862 * INSTALL: 11863 SunOS /bin/sh blows up with configure 11864 [005a23cc5615] 11865 11866 * configure, configure.in: 11867 Include sys/param.h before systrace.h 11868 [9345bc8efecf] 11869 11870 * configure: 11871 regen 11872 [a8f53fcbb254] 11873 11874 * pathnames.h.in: 11875 _PATH_DEV_SYSTRACE 11876 [d2ad1e492a00] 11877 11878 * configure.in: 11879 line up options in --help 11880 [fa51f2821d09] 11881 11882 * config.h.in, configure.in: 11883 Add --with-systrace 11884 [a264d54bc413] 11885 118862004-09-23 Todd C. Miller <Todd.Miller@courtesan.com> 11887 11888 * configure: 11889 regen 11890 [a4dad0bcc523] 11891 11892 * aclocal.m4, configure.in: 11893 make this work with autoconf-2.59 11894 [c4a92b6a684a] 11895 118962004-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 11897 11898 * sudo_edit.c: 11899 Simplify logic around open & stat of files and do sanity on edited 11900 file even if we lack fstat (still racable but worth doing). 11901 [adda65ade70c] 11902 119032004-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 11904 11905 * HISTORY: 11906 Add support url 11907 [bf6590fbde9f] 11908 11909 * Makefile.in: 11910 versino 1.6.8p1 11911 [b84ebfaf1552] [SUDO_1_6_8p1] 11912 11913 * CHANGES: 11914 more changes for 1.6.8p1 11915 [e23a9c0393b6] 11916 11917 * version.h: 11918 1.6.8p1 11919 [872f14504b5f] 11920 11921 * CHANGES, sudo_edit.c: 11922 Add sanity check so we don't try to edit something other than a 11923 regular file. 11924 [350134ec6d4e] 11925 119262004-09-15 Aaron Spangler <aaron777@gmail.com> 11927 11928 * CHANGES: 11929 sync 11930 [3091ca9eae00] 11931 11932 * INSTALL: 11933 document --with-ldap-conf-file 11934 [0e2cd6b896f1] 11935 119362004-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 11937 11938 * CHANGES, ins_csops.h: 11939 political correctness strikes again 11940 [428e8bc77f55] 11941 11942 * RUNSON: 11943 sync 11944 [27f44bd423dc] 11945 119462004-09-12 Todd C. Miller <Todd.Miller@courtesan.com> 11947 11948 * Makefile.binary.in, Makefile.in: 11949 Install sudoedit man link 11950 [19a55234fc1f] 11951 11952 * INSTALL: 11953 Update PAM note and mention where HP-UX users can download gcc 11954 binaries. 11955 [d37cdbbabfd4] 11956 11957 * Makefile.in: 11958 libtool wants to install stuff from .libs so fake one up for binary 11959 installations. 11960 [a681bc6fcfba] 11961 11962 * Makefile.binary.in: 11963 rm -f old sudoedit link instead of using ln -f set LIBTOOL correctly 11964 [3e0c4b3372cc] 11965 11966 * Makefile.in: 11967 Deal with "uname -m" having slashes in it rm -f old sudoedit link 11968 instead of using ln -f 11969 [cff33fb97e5b] 11970 11971 * Makefile.binary, Makefile.binary.in: 11972 Makefile.binary -> Makefile.binary.in for config.status substitution 11973 Add support for installing noexec bits 11974 [37d8bb3483c6] 11975 11976 * Makefile.in: 11977 Copy noexec bits into binary dists too No longer use my old arch 11978 script for making binary dists 11979 [e7058bab9e33] 11980 11981 * Makefile.binary: 11982 Install sudoedit link. 11983 [417d1e101711] 11984 119852004-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 11986 11987 * emul/utime.h: 11988 avoid __P so there is no need for compat.h to be included 11989 [6d8d1f1abf7d] 11990 11991 * utimes.c: 11992 Don't use HAVE_UTIME_H before including config.h. 11993 [013b7bb61181] 11994 119952004-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 11996 11997 * compat.h: 11998 Fix Solatis futimes macro 11999 [d4eda2ca0d29] 12000 120012004-09-09 Todd C. Miller <Todd.Miller@courtesan.com> 12002 12003 * sudo_edit.c: 12004 Rename ots -> omtim for improved readability. 12005 [127ca5bb297c] 12006 120072004-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 12008 12009 * sudo_edit.c: 12010 Redo changes in revision 1.7. Don't really need to keep the temp 12011 file open; re-opening it with the invoking user's euid is 12012 sufficient. 12013 [55a883165a95] 12014 12015 * CHANGES: 12016 sync 12017 [9015b291170d] 12018 12019 * sudo.cat, sudo.man.in: 12020 regen 12021 [c0313f6ed783] 12022 12023 * sudo.pod: 12024 back out revision 1.70; it is no long applicable 12025 [b641d503aff6] 12026 12027 * env.c: 12028 Let the loader initialize nep 12029 [bec192139b02] 12030 12031 * config.h.in, configure, configure.in: 12032 Removed unneed check for fchown Add check for gettimeofday Move 12033 autoheader template stuff into separate AH_TEMPLATE lines 12034 [bfc0edbd43f2] 12035 12036 * check.c, compat.h, fileops.c, sudo.h, sudo_edit.c, visudo.c: 12037 Use timespec throughout. 12038 [1a178a23b69b] 12039 12040 * Makefile.in: 12041 gettime.[co] 12042 [6aeb48a7ab7f] 12043 12044 * gettime.c: 12045 function to return the current time in a struct timespec 12046 [bf8eb12cb63f] 12047 12048 * utimes.c: 12049 Not a darpa-sponsored file. 12050 [121ce5e2036c] 12051 120522004-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 12053 12054 * compat.h, config.h.in, configure, configure.in: 12055 Add a check for struct timespec and provide it for those without. 12056 [42124055030d] 12057 12058 * config.h.in, configure, configure.in, sudo_edit.c: 12059 Add checks for st_mtim and st_mtimespec and add macros for pulling 12060 the mtime sec and nsec out of struct stat. These are used in 12061 sudo_edit() to better tell whether or not the file has changed. 12062 [23debfbb3fab] 12063 12064 * check.c, fileops.c, sudo.h, sudo_edit.c, visudo.c: 12065 Add an extra param to touch() for nsec 12066 [56f7a4ba8ddb] 12067 12068 * sudo_edit.c: 12069 Call mkstemp() as the in invoking user so we don't have to chown the 12070 file later. Only touch() the temp file if we can do it via the file 12071 descriptor. Don't check for modification of the temp file if we lack 12072 fstat(). Catch errors read()ing the temp file. 12073 [665f52c70836] 12074 12075 * fileops.c: 12076 If path is NULL and fd == -1 return -1. 12077 [757a518a824c] 12078 12079 * sudo_edit.c: 12080 closefrom() is overkill, the only extra fds are the ones we opened 12081 so just close those in the child. 12082 [f361c9d2a1f4] 12083 12084 * Makefile.in, aclocal.m4, check.c, compat.h, config.h.in, configure, 12085 configure.in, fileops.c, sudo.h, sudo_edit.c, utime.c, utimes.c, 12086 visudo.c: 12087 Use utimes() and futimes() instead of utime() in touch(), emulating 12088 as needed. Not all systems are able to support setting the times of 12089 an fd so touch() takes both an fd and a file name as arguments. 12090 [3d9276f29717] 12091 120922004-09-07 Aaron Spangler <aaron777@gmail.com> 12093 12094 * env.c: 12095 Rare SEGV 12096 [8995f828782d] 12097 120982004-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 12099 12100 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 12101 visudo.man.in: 12102 regen 12103 [b8e9406711c5] 12104 12105 * sudo.pod, sudoers.pod, visudo.pod: 12106 Add SUPPORT section and re-order some of the sections to match the 12107 order we use in OpenBSD. 12108 [fa37bd917e2c] 12109 121102004-09-06 Aaron Spangler <aaron777@gmail.com> 12111 12112 * env.c: 12113 Openldap ~/.ldaprc fix 12114 [1a37afe6850f] 12115 121162004-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 12117 12118 * sudo.pod: 12119 Talk about how the editor must write its changes to the original 12120 file and not just use rename(2). 12121 [c55ed91c5ee9] 12122 12123 * CHANGES: 12124 sync 12125 [62af26bd37a2] 12126 12127 * sudo_edit.c: 12128 Keep the temp file open instead of re-opening after the editor has 12129 exited. 12130 [de41eeb6dcf2] 12131 12132 * sample.pam: 12133 Update for current redhat/fedora core. 12134 [8cf083077333] 12135 121362004-09-03 Aaron Spangler <aaron777@gmail.com> 12137 12138 * README.LDAP: 12139 tls_ examples 12140 [ba783d88a034] 12141 121422004-09-02 Aaron Spangler <aaron777@gmail.com> 12143 12144 * ldap.c: 12145 config tls_* options 12146 [0b0e0797b3b9] 12147 121482004-08-29 Todd C. Miller <Todd.Miller@courtesan.com> 12149 12150 * configure, configure.in: 12151 No need for -lcrypt when using pam. 12152 [41fff3a53e68] 12153 121542004-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 12155 12156 * configure: 12157 regen 12158 [75820aecce2c] 12159 121602004-08-27 Aaron Spangler <aaron777@gmail.com> 12161 12162 * configure.in, ldap.c, pathnames.h.in: 12163 Allow --with-ldap-conf-file option to override LDAP_CONF 12164 [c9909bc484a5] 12165 12166 * ldap.c: 12167 cleanup debug message 12168 [1f6ca4824d8d] 12169 121702004-08-26 Aaron Spangler <aaron777@gmail.com> 12171 12172 * README.LDAP: 12173 more config info 12174 [f2e7147fd507] 12175 121762004-08-24 Todd C. Miller <Todd.Miller@courtesan.com> 12177 12178 * TODO, find_path.c, goodpath.c, parse.c, sudo.c, sudo.h, visudo.c: 12179 Add cmnd_base to struct sudo_user and set it in init_vars(). Add 12180 cmnd_stat to struct sudo_user and set it in sudo_goodpath(). No 12181 longer use gross statics in command_matches(). Also rename some 12182 variables for improved clarity. 12183 [7169a6c7bea4] 12184 121852004-08-21 Todd C. Miller <Todd.Miller@courtesan.com> 12186 12187 * INSTALL: 12188 document HP's crippled compiler deficiency. 12189 [c405ea5a8d4c] 12190 12191 * INSTALL: 12192 Fix some thinkos in --with-editor and --with-env-editor 12193 descriptions. Noticed by Norihiko Murase. 12194 [dd781de1c985] 12195 12196 * configure, configure.in: 12197 --with-noexec takes an optional PATH argument. 12198 [8f6ab77f22cc] 12199 12200 * INSTALL: 12201 document --with-noexec 12202 [50cb1fc627ce] 12203 122042004-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 12205 12206 * RUNSON, TODO: 12207 sync 12208 [f2503bd13373] [SUDO_1_6_8] 12209 12210 * sudo_edit.c: 12211 Better warning message when sudoedit is unable to write to the 12212 destination file. 12213 [f78c18f2ffa8] 12214 12215 * sudo.cat, sudo.man.in: 12216 regen 12217 [7e2bf63d6d9a] 12218 12219 * sudo.pod: 12220 Don't italicize the string "sudoedit" 12221 [c691643bd269] 12222 122232004-08-16 Todd C. Miller <Todd.Miller@courtesan.com> 12224 12225 * HISTORY: 12226 Mention GratiSoft. 12227 [dc53de581b2d] 12228 122292004-08-11 Todd C. Miller <Todd.Miller@courtesan.com> 12230 12231 * sudo.tab.c: 12232 regen 12233 [8ae0484dfc38] 12234 12235 * parse.yacc: 12236 Reset used_runas to FALSE when re-intializing the parser. 12237 [b7403f353a02] 12238 122392004-08-09 Todd C. Miller <Todd.Miller@courtesan.com> 12240 12241 * config.guess: 12242 Correct OpenBSD mips support 12243 [314fc7afc165] 12244 12245 * config.guess: 12246 Add OpenBSD/mips 12247 [ac87d0a773ef] 12248 122492004-08-07 Aaron Spangler <aaron777@gmail.com> 12250 12251 * README.LDAP: 12252 More behavior notes 12253 [13be1d212b47] 12254 12255 * README.LDAP: 12256 Updates on current behavior 12257 [d498a8866d6f] 12258 122592004-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 12260 12261 * sudoers.pod: 12262 =back does not take an indentlevel (makes no difference to formatted 12263 files). 12264 [9c8523bb382a] 12265 12266 * sudo.pod: 12267 =back does not take an indentlevel (makes no difference to formatted 12268 files). 12269 [e5f479e24fa8] 12270 12271 * CHANGES: 12272 new 12273 [2dbd9aba8b33] 12274 12275 * sudo.c: 12276 Consistency. Use same error for bad -u #uid when targetpw is set as 12277 we do when a bad -u username is specified. 12278 [922961c4a9d6] 12279 12280 * TODO: 12281 Add checksum idea from Steve Mancini 12282 [e6ece1b766ba] 12283 12284 * sudoers.cat, sudoers.man.in: 12285 regen 12286 [370d2317829f] 12287 12288 * sudo.cat, sudo.man.in: 12289 regen 12290 [f93d41fc38b1] 12291 12292 * sudo.pod, sudoers.pod: 12293 Document the restriction on uids specified via -u when targetpw is 12294 set. 12295 [878fedb455db] 12296 12297 * sudo.c: 12298 Error out when targetpw is enabled and sudo is run with -u #uid but 12299 #uid does not exist in the passwd database. We can't do target 12300 authentication when the target is not in passwd! 12301 [27c5888c86eb] 12302 12303 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in: 12304 regen 12305 [ceb65711050c] 12306 12307 * TODO: 12308 Some more todo for the next release. 12309 [7b7417be7601] 12310 12311 * INSTALL: 12312 Make it clear that PAM should be used for DCE support when possible. 12313 [7502029fd385] 12314 12315 * sudoers.pod: 12316 o Document problems with wildcards and relative paths. o Make the 12317 order requirements more prominent. o Change a "set" to "reset" for 12318 clarity. 12319 [bacdd181b33f] 12320 123212004-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 12322 12323 * sudo.pod: 12324 Mention --with-secure-path, not SECURE_PATH. 12325 [41283ddde5e1] 12326 123272004-08-03 Aaron Spangler <aaron777@gmail.com> 12328 12329 * ldap.c: 12330 reflect changes to parse.c 12331 [8880fe9b724d] 12332 123332004-08-02 Todd C. Miller <Todd.Miller@courtesan.com> 12334 12335 * sudo.tab.c: 12336 regen 12337 [a57658ca9177] 12338 12339 * parse.c, parse.h, testsudoers.c, visudo.c: 12340 Don't pass user_cmnd and user_args to command_matches(), just use 12341 the globals there. Since we keep state with statics anyway it is 12342 misleading to pretend that passing in different cmnd and cmnd_args 12343 will work. 12344 [0a2544991fd6] 12345 12346 * parse.yacc: 12347 Don't pass user_cmnd and user_args to command_matches(), just use 12348 the globals there. Since we keep state with statics anyway it is 12349 misleading to pretend that passing in different cmnd and cmnd_args 12350 will work. 12351 [a4910bf6032b] 12352 12353 * parse.c: 12354 Fix a bug introduced in rev. 1.149. When checking for pseudo- 12355 commands check for a '/' anywhere in cmnd, not just the first 12356 character. 12357 [ce98142f03ca] 12358 123592004-07-31 Aaron Spangler <aaron777@gmail.com> 12360 12361 * sudo.man.in, sudo.pod: 12362 Clarification thanks to Olivier Blin <oblin@mandrakesoft.com> 12363 [a91800e094b1] 12364 12365 * sudoers.man.in, sudoers.pod: 12366 Add ignore_local_sudoers 12367 [741ddcbf7083] 12368 12369 * README.LDAP: 12370 Sun One schema definition by Andreas.Bussjaeger@t-systems.com and 12371 janth@moldung.no 12372 [742c02e07cd9] 12373 123742004-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 12375 12376 * CHANGES: 12377 typo 12378 [e7cdefbd7a9a] 12379 123802004-07-23 Todd C. Miller <Todd.Miller@courtesan.com> 12381 12382 * CHANGES: 12383 sync 12384 [734dafc4a85e] 12385 12386 * parse.c: 12387 Parse sudoers file as PERM_RUNAS not PERM_ROOT and remove a useless 12388 PERM_SUDOERS. Restore to PERM_ROOT upon exit of the parse. 12389 [151b7f593568] 12390 123912004-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 12392 12393 * CHANGES: 12394 PAM change 12395 [d8fb6d6a22d0] 12396 123972004-07-08 Aaron Spangler <aaron777@gmail.com> 12398 12399 * ldap.c: 12400 Better debugging of ALL command 12401 [9db3e84029dc] 12402 124032004-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 12404 12405 * parse.c: 12406 When matching for "sudoedit" in sudoers check both the command the 12407 user typed *and* the command that is listed in the sudoers entry. 12408 [f36ca1f94095] 12409 124102004-07-04 Aaron Spangler <aaron777@gmail.com> 12411 12412 * ldap.c: 12413 Added !command feature 12414 [ed539574611b] 12415 124162004-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 12417 12418 * auth/pam.c: 12419 Use pam_acct_mgmt() to check for disabled accounts; Brian Farrell 12420 [2be8e0e8813a] 12421 124222004-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 12423 12424 * LICENSE: 12425 License is ISC-style, not BSD-style 12426 [ac0589e1dd5d] 12427 12428 * CHANGES: 12429 sync 12430 [16058a30f404] 12431 124322004-06-10 Todd C. Miller <Todd.Miller@courtesan.com> 12433 12434 * sudo.cat, sudo.man.in: 12435 regen 12436 [8820eb9c809b] 12437 12438 * sudo.pod: 12439 o Update some out of date bits to reality o Change the shell promt 12440 in examples to bourne-shell style o Clarify some details o Add a 12441 CAVEAT about "sudo cd /foo" 12442 [b0af373214b6] 12443 12444 * check.c: 12445 Don't ask for a password if invoking user == target user. 12446 [dd5c96141132] 12447 12448 * sudo.c: 12449 typo in comment 12450 [278d20f9b249] 12451 124522004-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 12453 12454 * sudoers.cat, sudoers.man.in: 12455 regen 12456 [9036c6f39eff] 12457 12458 * sudoers.pod: 12459 Expand on NOEXEC a little. 12460 [9a13756aebe4] 12461 12462 * TODO: 12463 sync 12464 [8d2c1af48de8] 12465 12466 * visudo.cat, visudo.man.in: 12467 regen 12468 [3921f01607c8] 12469 12470 * sudo.tab.c: 12471 regen 12472 [9338c3d68250] 12473 12474 * visudo.pod: 12475 Add a check in visudo for runas_default being set after it has 12476 already been used. 12477 [6700358d7ad8] 12478 12479 * CHANGES, parse.yacc, visudo.c: 12480 Add a check in visudo for runas_default being set after it has 12481 already been used. 12482 [803560986a8a] 12483 12484 * sudo.tab.c: 12485 regen 12486 [b60636e2cf63] 12487 12488 * parse.yacc: 12489 Add a MATCHED macro for testing whether foo_matches has been set to 12490 TRUE or FALSE. This is more readable than checking for >=0 or < 0. 12491 Doesn't change the actual code generated. 12492 [f376da8ccdc8] 12493 124942004-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 12495 12496 * sudoers.cat: 12497 regen 12498 [6cceb6d6c9bd] 12499 12500 * sudoers.man.in: 12501 regen 12502 [5acd12b730b3] 12503 12504 * sudoers.pod: 12505 Correct description of where Defaults specs should go. 12506 [6b11ff53d7ad] 12507 12508 * sudoers: 12509 Correct description of where Defaults specs should go. 12510 [868db857630d] 12511 12512 * testsudoers.c, visudo.c: 12513 update (c) year 12514 [272c8a53604c] 12515 12516 * logging.h: 12517 update (c) year 12518 [3cec76d400ce] 12519 12520 * ldap.c: 12521 update (c) year 12522 [f264632488a0] 12523 12524 * find_path.c: 12525 update (c) year 12526 [40c227af9227] 12527 12528 * auth/pam.c: 12529 update (c) year 12530 [87149e0eed50] 12531 12532 * auth/bsdauth.c, auth/kerb5.c: 12533 update (c) year 12534 [d72eb434c068] 12535 125362004-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 12537 12538 * sudo.tab.c: 12539 regen 12540 [83408d9e9d2e] 12541 12542 * auth/bsdauth.c, auth/kerb5.c, auth/pam.c, visudo.c: 12543 Remove trailing spaces, no actual code changes. 12544 [4c3bf2819293] 12545 12546 * tgetpass.c: 12547 Remove trailing spaces, no actual code changes. 12548 [96f6e0a24c26] 12549 12550 * ldap.c, logging.h, parse.c, parse.yacc, sudo.c, testsudoers.c: 12551 Remove trailing spaces, no actual code changes. 12552 [c7075d1cbed5] 12553 12554 * getcwd.c: 12555 Remove trailing spaces, no actual code changes. 12556 [776cc0374547] 12557 12558 * find_path.c: 12559 Remove trailing spaces, no actual code changes. 12560 [7ed7099f3c71] 12561 12562 * compat.h, defaults.c, env.c: 12563 Remove trailing spaces, no actual code changes. 12564 [893e83c33795] 12565 12566 * check.c: 12567 Remove trailing spaces, no actual code changes. 12568 [f77750f8803b] 12569 12570 * sudo.tab.c: 12571 regen 12572 [62e0ed883b31] 12573 12574 * parse.yacc: 12575 Fix a >=0 that should be <0 that was improperly converted when 12576 UNSPEC was added. 12577 [ad1531a55a49] 12578 12579 * parse.yacc: 12580 Add do {} while(0) around pop macro Set cmnd_matches to UNSPEC, not 12581 NOMATCH when resetting it. 12582 [ae017a12870a] 12583 12584 * parse.yacc: 12585 Fix pastos introduced in SETNMATCH addition. 12586 [6ea1c9d80681] 12587 125882004-06-05 Todd C. Miller <Todd.Miller@courtesan.com> 12589 12590 * README.LDAP: 12591 Update for configure changes 12592 [637a635da287] 12593 12594 * sudo.tab.c: 12595 regen 12596 [4753c2788713] 12597 12598 * sudo.h: 12599 Add NOMATCH and UNSPEC defines (-1 and -2 respectively) and use 12600 these in parse.yacc. Also in parse.yacc initialize the *_matches 12601 vars to UNSPEC and add two macros, SETMATCH and SETNMATCH for use 12602 when setting *_matches to a value that may be 12603 NOMATCH/UNSPEC/TRUE/FALSE. 12604 [2ba622e15a4d] 12605 12606 * parse.yacc: 12607 Add NOMATCH and UNSPEC defines (-1 and -2 respectively) and use 12608 these in parse.yacc. Also in parse.yacc initialize the *_matches 12609 vars to UNSPEC and add two macros, SETMATCH and SETNMATCH for use 12610 when setting *_matches to a value that may be 12611 NOMATCH/UNSPEC/TRUE/FALSE. 12612 [746b519e41a6] 12613 12614 * parse.yacc: 12615 Initialize runas to -2, not -1 since we need to be able to 12616 distinguish between the initialized value and the value of a non- 12617 match when passing along the runas value to multiple commands. 12618 12619 The result of this is that an unmatched runas is now set to -1, not 12620 0. This is required now that parse.c treats a FALSE value for runas 12621 as being explicitly denied. 12622 [7791ed3621f6] 12623 126242004-06-03 Todd C. Miller <Todd.Miller@courtesan.com> 12625 12626 * sudo.c, visudo.c: 12627 Error out if argc < 1. 12628 [ce6b2a9eda3c] 12629 12630 * getprogname.c: 12631 Error out if argc < 1. 12632 [c566cce8dc78] 12633 12634 * configure, configure.in: 12635 Add tests for what libs we need to link with for ldap and for 12636 whether or not lber.h needs to be explicitly included. 12637 [b2e9729cc4e7] 12638 126392004-06-03 Aaron Spangler <aaron777@gmail.com> 12640 12641 * ldap.c: 12642 Solaris native LDAP build fix 12643 [39929e40eb11] 12644 126452004-06-01 Todd C. Miller <Todd.Miller@courtesan.com> 12646 12647 * ldap.c: 12648 Set edn to NULL is ldap_get_dn() fails to avoid potential use of an 12649 unset variable. 12650 [6a4c20a66f98] 12651 12652 * sudo.h: 12653 Add prototype for sudo_ldap_list_matches 12654 [443b007a8dab] 12655 12656 * configure, configure.in: 12657 Better check for dirfd macro--we now set HAVE_DIRFD for the macro 12658 version too. Added check for dd_fd in `DIR' if no dirfd is found; 12659 this is now used to confitionally define the dirfd macro in 12660 compat.h. 12661 [567656978f7e] 12662 12663 * config.h.in: 12664 Better check for dirfd macro--we now set HAVE_DIRFD for the macro 12665 version too. Added check for dd_fd in `DIR' if no dirfd is found; 12666 this is now used to confitionally define the dirfd macro in 12667 compat.h. 12668 [34eace4faec8] 12669 12670 * compat.h: 12671 Better check for dirfd macro--we now set HAVE_DIRFD for the macro 12672 version too. Added check for dd_fd in `DIR' if no dirfd is found; 12673 this is now used to confitionally define the dirfd macro in 12674 compat.h. 12675 [8d50ff1bbf2a] 12676 12677 * closefrom.c: 12678 Only check /proc/$$/fd if we have the dirfd function/macro. 12679 [15e3ccce7553] 12680 12681 * compat.h, config.h.in, configure, configure.in: 12682 Add a check for a dirfd() function (like Linux) and add a dirfd 12683 macro in compat.h if there is no dirfd() function or macro. 12684 [1e95756edb50] 12685 12686 * closefrom.c, getcwd.c: 12687 dirfd() is now defined in compat.h as needed. 12688 [bb1d79271188] 12689 12690 * CHANGES: 12691 Clarify closefrom() note. 12692 [f4e4a5508dda] 12693 12694 * parse.c: 12695 When checking for a command in the directory, only copy the base dir 12696 once. 12697 [7a3276808b87] 12698 12699 * closefrom.c: 12700 If there is a /proc/$$/fd directory, behave like the Solaris 12701 closefrom() and only close the descriptors listed therein. 12702 [19de23779e84] 12703 12704 * alloc.c: 12705 compat.h guarantees INT_MAX is defined. 12706 [1bf0c79d4606] 12707 12708 * compat.h: 12709 Add definitions of OPEN_MAX and INT_MAX for those without it and 12710 remove definition of RLIM_INFINITY (now unused). 12711 [f827d1ebf96e] 12712 12713 * CHANGES, alloc.c, check.c, compat.h, find_path.c, getcwd.c, parse.c, 12714 sudo.c, sudo.h, visudo.c: 12715 Use PATH_MAX, not MAXPATHLEN since the former is standardized. 12716 [59788f211c24] 12717 127182004-05-31 Todd C. Miller <Todd.Miller@courtesan.com> 12719 12720 * CHANGES: 12721 sync 12722 [d32fa124f1ad] 12723 12724 * RUNSON: 12725 Add some entries that were mailed in a while ago 12726 [ff8d5bfec54e] 12727 12728 * closefrom.c: 12729 o sysconf returns a long, not an int. o check for negative return 12730 value from sysconf/getdtablesize and use OPEN_MAX in this case. o 12731 define OPEN_MAX to 256 for those without it (a fair guess...) 12732 [ccf81ae6deb2] 12733 127342004-05-30 Todd C. Miller <Todd.Miller@courtesan.com> 12735 12736 * UPGRADE: 12737 Mention change in parse order for RunAs entries. 12738 [dc73b0bca617] 12739 12740 * configure: 12741 regen 12742 [07cce8e0534e] 12743 127442004-05-29 Todd C. Miller <Todd.Miller@courtesan.com> 12745 12746 * INSTALL, README.LDAP, config.h.in, configure.in: 12747 o --with-ldap now takes an optional dir as a parameter o added 12748 check for ldap_initialize() and start_tls_s() 12749 [2b846c7974c6] 12750 12751 * README.LDAP: 12752 Fix some typos, word choice and formatting issues. 12753 [00dc8ca84b10] 12754 127552004-05-28 Todd C. Miller <Todd.Miller@courtesan.com> 12756 12757 * tgetpass.c: 12758 Use SA_INTERRUPT so SunOS works correctly, avoid stdio and just use 12759 read/write as it is simpler. 12760 [30f5446ee8b0] 12761 12762 * configure, configure.in: 12763 Remove hack overriding cross-compiler check. It should no longer be 12764 needed. 12765 [22a6cbd88608] 12766 12767 * compat.h: 12768 Remove select() compat bits since we no longer use select(). 12769 [d7bbf7cd36f5] 12770 12771 * CHANGES, tgetpass.c: 12772 Use alarm() instead of select() for the timeout for systems that 12773 don't fully/properly implement select(). 12774 [d7cc60f15800] 12775 127762004-05-27 Todd C. Miller <Todd.Miller@courtesan.com> 12777 12778 * CHANGES: 12779 synbc 12780 [132a39788e07] 12781 12782 * RUNSON: 12783 update 12784 [61ef508380c6] 12785 12786 * set_perms.c: 12787 Deal with systems that have no way of setting the effective uid such 12788 as nsr-tandem-nsk. 12789 [306e00e9b5a4] 12790 12791 * configure, configure.in: 12792 Define NO_SAVED_IDS if we don't find seteuid() 12793 [8588f18345cf] 12794 12795 * config.h.in, configure, configure.in: 12796 Add back check for setreuid() since NSK doesn't have it. 12797 [43127bd703d1] 12798 12799 * sudoers.cat, sudoers.man.in: 12800 regen 12801 [af4f4b20e422] 12802 12803 * CHANGES: 12804 sync 12805 [29ca3b699c24] 12806 12807 * BUGS: 12808 sync 12809 [3593f17f72ed] 12810 12811 * parse.c: 12812 In sudoers_lookup() return VALIDATE_NOT_OK if the runas user was 12813 explicitly denied and the command matched. This fixes a long- 12814 standing bug and makes: foo machine = (ALL) /usr/bin/blah 12815 foo machine = (!bar) /usr/bin/blah 12816 12817 equivalent to: foo machine = (ALL, !bar) /usr/bin/blah 12818 [2f5ee244985a] 12819 12820 * sudoers.pod: 12821 Clarify mail_noperm 12822 [3238b2d41989] 12823 128242004-05-20 Aaron Spangler <aaron777@gmail.com> 12825 12826 * Makefile.in: 12827 Missing DESTDIR in make install for sudo_noexec.la 12828 [91431e821525] 12829 128302004-05-17 Todd C. Miller <Todd.Miller@courtesan.com> 12831 12832 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 12833 visudo.man.in: 12834 regen 12835 [cdfde0dcb556] 12836 12837 * TODO: 12838 sync 12839 [4799b7d8b62c] 12840 12841 * sudoers.pod: 12842 Remove fastboot/fasthalt (who still remembers these?) and add a 12843 minimal sudoedit example. 12844 [19d299f233cd] 12845 12846 * sample.sudoers: 12847 Remove fastboot/fasthalt (who still remembers these?) and add a 12848 minimal sudoedit example. 12849 [b1bca73d6250] 12850 12851 * UPGRADE, sudo.c, visudo.c: 12852 filesystem -> file system 12853 [1e1afaf30469] 12854 12855 * TROUBLESHOOTING: 12856 filesystem -> file system 12857 [39fb594e9338] 12858 12859 * CHANGES, INSTALL: 12860 filesystem -> file system 12861 [85948b608ffe] 12862 12863 * sudo.pod, sudoers.pod: 12864 Fix some minor typos and formatting goofs 12865 [e94d243a0b90] 12866 12867 * lex.yy.c: 12868 regen 12869 [2eed0ab1f4c4] 12870 12871 * visudo.pod: 12872 remove my email addr 12873 [b63262c0389b] 12874 12875 * sudo.pod, sudoers.pod, visudo.pod: 12876 Use @mansectform@ and @mansectsu@ everywhere Make man page 12877 references links with L<> 12878 [f459f4b9ddb9] 12879 12880 * parse.lex: 12881 Accept quoted globbing characters and pass them verbatim for 12882 fnmatch() 12883 [8248b86e9380] 12884 12885 * UPGRADE: 12886 Document that /tmp/.odus is gone. 12887 [3667b66af5bb] 12888 12889 * pathnames.h.in: 12890 No longer use /tmp/.odus as a possible timestamp dir unless 12891 specifically configured to do so. Instead, if no /var/run exists, 12892 use /var/adm/sudo or /usr/adm/sudo. 12893 [48d94c9f9ad4] 12894 12895 * configure: 12896 No longer use /tmp/.odus as a possible timestamp dir unless 12897 specifically configured to do so. Instead, if no /var/run exists, 12898 use /var/adm/sudo or /usr/adm/sudo. 12899 [058d7b8cf07b] 12900 12901 * aclocal.m4: 12902 No longer use /tmp/.odus as a possible timestamp dir unless 12903 specifically configured to do so. Instead, if no /var/run exists, 12904 use /var/adm/sudo or /usr/adm/sudo. 12905 [cf52c4c2803f] 12906 12907 * CHANGES: 12908 No longer use /tmp/.odus as a possible timestamp dir unless 12909 specifically configured to do so. Instead, if no /var/run exists, 12910 use /var/adm/sudo or /usr/adm/sudo. 12911 [6058c4cefcec] 12912 12913 * set_perms.c, sudo.c, tgetpass.c, visudo.c: 12914 Preliminary changes to support nsr-tandem-nsk. Based on patches 12915 from Tom Bates. 12916 [2e5f81834383] 12917 12918 * logging.c: 12919 Preliminary changes to support nsr-tandem-nsk. Based on patches 12920 from Tom Bates. 12921 [934bbe6872b6] 12922 12923 * check.c, compat.h: 12924 Preliminary changes to support nsr-tandem-nsk. Based on patches 12925 from Tom Bates. 12926 [390b698b5924] 12927 129282004-05-16 Todd C. Miller <Todd.Miller@courtesan.com> 12929 12930 * CHANGES: 12931 There was no 1.6.7p6. 12932 [8013d2e6b062] 12933 12934 * BUGS, CHANGES: 12935 sync 12936 [c38b41f32857] 12937 12938 * Makefile.in: 12939 add missing files to DISTFILES 12940 [e6a80ad03039] 12941 12942 * sudo.cat, sudoers.cat, visudo.cat: 12943 regen 12944 [027bc9746dd5] 12945 12946 * sudoers.man.in: 12947 regen 12948 [f5e85ef686cf] 12949 12950 * Makefile.in: 12951 Fix some line wrap and update (c) year 12952 [bad1f46aa1ca] 12953 129542004-04-28 Aaron Spangler <aaron777@gmail.com> 12955 12956 * README.LDAP: 12957 Build Note 12958 [7a061248249b] 12959 129602004-04-07 Aaron Spangler <aaron777@gmail.com> 12961 12962 * Makefile.in: 12963 Fix install-dirs 12964 [be0726dd92e7] 12965 129662004-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 12967 12968 * sudo.tab.c: 12969 regen 12970 [3f4f0d1ab8b9] 12971 12972 * visudo.c: 12973 In Exit() when used as a signal handler, emsg is a pointer so 12974 sizeof() is wrong so make it a #define instead. Also avoid using a 12975 negative exit value. Found by Aaron Campbell 12976 [78716a3a3fdc] 12977 129782004-03-24 Todd C. Miller <Todd.Miller@courtesan.com> 12979 12980 * sudoers.pod: 12981 Remove bogus sentence about uids in a User_List. Document usernames 12982 vs. uid parsing in a Runas_List. 12983 [7ca510b5031c] 12984 12985 * parse.c, parse.h, parse.yacc, sudo.c, testsudoers.c, visudo.c: 12986 If the user specified a uid with the -u flag and the uid exists in 12987 the passwd file, set runas_user to the name, not the uid. 12988 12989 When comparing usernames in sudoers, if a name is really a uid 12990 (starts with '#') compare it numerically to pw_uid. 12991 [8d6935d04673] 12992 129932004-03-22 Todd C. Miller <Todd.Miller@courtesan.com> 12994 12995 * auth/kerb5.c: 12996 krb5_mcc_ops should be const; Johnny C. Lam 12997 [aa8c753e426e] 12998 129992004-02-28 Aaron Spangler <aaron777@gmail.com> 13000 13001 * CHANGES, config.h.in, ldap.c: 13002 Added start_tls support 13003 [7ef864c15b69] 13004 130052004-02-14 Todd C. Miller <Todd.Miller@courtesan.com> 13006 13007 * Makefile.in: 13008 Clean up libtool stuff for 'make distclean' and add def_data.c, 13009 def_data.h to PARSESRCS. 13010 [bf9bb6bb06ab] 13011 130122004-02-14 Aaron Spangler <aaron777@gmail.com> 13013 13014 * strlcat.c, strlcpy.c: 13015 Un-Fix last license munge 13016 [42654b77ac71] 13017 130182004-02-13 Todd C. Miller <Todd.Miller@courtesan.com> 13019 13020 * configure: 13021 regen 13022 [e4de6b23a4dc] 13023 13024 * CHANGES, RUNSON, TODO: 13025 checkpoint 13026 [94e1ace84d5c] 13027 13028 * lex.yy.c, sudo.tab.c: 13029 regen 13030 [8ce784505643] 13031 13032 * auth/passwd.c, auth/rfc1938.c, auth/secureware.c, auth/securid.c, 13033 auth/securid5.c, auth/sia.c, auth/sudo_auth.c, auth/sudo_auth.h, 13034 emul/search.h, emul/utime.h: 13035 More to a less restrictive, ISC-style license. 13036 [a31b20e48003] 13037 13038 * auth/kerb5.c, auth/pam.c: 13039 More to a less restrictive, ISC-style license. 13040 [e41f92b41216] 13041 13042 * auth/dce.c, auth/fwtk.c, auth/kerb4.c: 13043 More to a less restrictive, ISC-style license. 13044 [87534c164a52] 13045 13046 * auth/bsdauth.c: 13047 More to a less restrictive, ISC-style license. 13048 [e21be6594b58] 13049 13050 * auth/afs.c, auth/aix_auth.c, zero_bytes.c: 13051 More to a less restrictive, ISC-style license. 13052 [6d234be91c5e] 13053 13054 * sudoers.man.in, sudoers.pod, testsudoers.c, tgetpass.c, visudo.c, 13055 visudo.man.in, visudo.pod: 13056 More to a less restrictive, ISC-style license. 13057 [b02aea324fd6] 13058 13059 * sudo_noexec.c: 13060 More to a less restrictive, ISC-style license. 13061 [a6da7631e0b2] 13062 13063 * strlcat.c, strlcpy.c, sudo.c, sudo.h, sudo.man.in, sudo.pod, 13064 sudo_edit.c: 13065 More to a less restrictive, ISC-style license. 13066 [71cdcc241e94] 13067 13068 * sigaction.c, strerror.c: 13069 More to a less restrictive, ISC-style license. 13070 [4bccdedca58a] 13071 13072 * ldap.c, logging.c, logging.h, parse.c, parse.h, pathnames.h.in, 13073 set_perms.c: 13074 More to a less restrictive, ISC-style license. 13075 [64d772d70ab3] 13076 13077 * getspwuid.c, goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, 13078 ins_goons.h, insults.h, interfaces.c, interfaces.h: 13079 More to a less restrictive, ISC-style license. 13080 [520381c60a54] 13081 13082 * find_path.c, getprogname.c: 13083 More to a less restrictive, ISC-style license. 13084 [f605d5eab6f1] 13085 13086 * fileops.c: 13087 More to a less restrictive, ISC-style license. 13088 [4129a8b38a67] 13089 13090 * env.c: 13091 More to a less restrictive, ISC-style license. 13092 [d5bd859757de] 13093 13094 * defaults.h: 13095 More to a less restrictive, ISC-style license. 13096 [008f5d5743f5] 13097 13098 * LICENSE, Makefile.in, alloc.c, check.c, closefrom.c, compat.h, 13099 defaults.c: 13100 More to a less restrictive, ISC-style license. 13101 [d8d7bfc8a18b] 13102 13103 * utime.c, version.h: 13104 More to a less restrictive, ISC-style license. 13105 [e2e038ad8209] 13106 13107 * parse.lex, parse.yacc: 13108 More to a less restrictive, ISC-style license. 13109 [2f5942e847a1] 13110 13111 * Makefile.binary: 13112 More to a less restrictive, ISC-style license. 13113 [1ed561734535] 13114 131152004-02-13 Aaron Spangler <aaron777@gmail.com> 13116 13117 * sudoers2ldif: 13118 Merged in LDAP Support 13119 [3994c4d05947] 13120 13121 * ldap.c, sudo.c, sudo.h: 13122 Merged in LDAP Support 13123 [547eaa346fcc] 13124 13125 * def_data.c, def_data.h, def_data.in: 13126 Merged in LDAP Support 13127 [8fb255280e42] 13128 13129 * CHANGES, Makefile.in, README.LDAP, config.h.in, configure.in: 13130 Merged in LDAP Support 13131 [1038092a161e] 13132 131332004-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 13134 13135 * sudo.h, sudo_noexec.c: 13136 Only do "extern int errno" if errno is not a macro. 13137 [b2e02a08be8b] 13138 131392004-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 13140 13141 * set_perms.c: 13142 setreuid(0, 0) fails on QNX if the euid is not already 0 so set the 13143 euid first, then just call setuid(0) to set the real uid too. 13144 [f08546e2e0ee] 13145 13146 * set_perms.c: 13147 Use setresuid() and setreuid() for PERM_RUNAS when appropriate 13148 instead of seteuid() which may not exist. 13149 [ba508581befb] 13150 131512004-02-04 Todd C. Miller <Todd.Miller@courtesan.com> 13152 13153 * LICENSE: 13154 2004 13155 [37425513a342] 13156 13157 * INSTALL, config.h.in, configure, configure.in, ins_classic.h: 13158 Add --with-pc-insults configure option 13159 [7daa5294c17b] 13160 13161 * visudo.man.in: 13162 Prefer VISUAL over EDITOR like old vipw did. 13163 [996252a4ab65] 13164 131652004-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 13166 13167 * sudo.man.in, sudoers.man.in: 13168 regen 13169 [a247f1c52eb9] 13170 13171 * sudoers.pod: 13172 Add a note that noexec is not a cure-all. 13173 [9e7fc535367d] 13174 13175 * sudoers.pod: 13176 Mention that disabling "root_sudo" is pretty pointless. 13177 [f38a415afba0] 13178 13179 * configure, configure.in: 13180 Substitute for root_sudo in sudoers.pod 13181 [ce483cfc86be] 13182 13183 * sudo.pod: 13184 Add sudoedit to the NAME section 13185 [51bc453ec2f6] 13186 13187 * sudoers.pod: 13188 Document that fact that setting ignore_dot in sudoers has no effect 13189 due to the fact that find_path() is called *before* sudoers is read. 13190 [6808df7e417c] 13191 131922004-01-30 Todd C. Miller <Todd.Miller@courtesan.com> 13193 13194 * sudo_edit.c: 13195 Do not require _PATH_USRTMP to be set. 13196 [546f3270dd10] 13197 13198 * BUGS, CHANGES, TODO: 13199 sync 13200 [4205ddeab781] 13201 13202 * sudo.man.in: 13203 regen 13204 [e2143690a88a] 13205 13206 * sudo.pod: 13207 Clarify that when sudo is run by root with the SUDO_USER variable 13208 set, the sudoers lookup happens for root and not the SUDO_USER user. 13209 [47207bec1bdf] 13210 132112004-01-29 Todd C. Miller <Todd.Miller@courtesan.com> 13212 13213 * auth/pam.c, auth/sudo_auth.c, interfaces.c, logging.c, parse.c, 13214 set_perms.c, sigaction.c, sudo.c, tgetpass.c: 13215 Use the SET, CLR and ISSET macros. 13216 [a8b0d7f1e8fd] 13217 13218 * fnmatch.c: 13219 Use the SET, CLR and ISSET macros. 13220 [1afbcba22ba6] 13221 13222 * defaults.c, env.c: 13223 Use the SET, CLR and ISSET macros. 13224 [2f39431e0a49] 13225 13226 * interfaces.h: 13227 MAIN was replaced with _SUDO_MAIN some time ago. 13228 [ea1b38f2ac9d] 13229 13230 * sudo.c: 13231 Don't look at prev_user until after we've parsed sudoers and done 13232 the password check. That way, if sudo/sudoedit is run from a root 13233 process that was invoked by sudo, we check sudoers for root, not the 13234 previous user. This makes sudoedit much more useful and means that 13235 for the sudo case, we get correct logging on who actually ran the 13236 command. 13237 [431dfbf20552] 13238 132392004-01-23 Todd C. Miller <Todd.Miller@courtesan.com> 13240 13241 * sudo_edit.c: 13242 Add a comment describing why we need to be notified about our child 13243 stopping. 13244 [0bec3ce4b49d] 13245 132462004-01-22 Todd C. Miller <Todd.Miller@courtesan.com> 13247 13248 * def_data.c, def_data.in: 13249 Update the noexec variable descriptions 13250 [9cb7f1aa0e57] 13251 13252 * sudoers.man.in, sudoers.pod: 13253 noexec now replaces more than just execve() 13254 [23cbdc0ee95c] 13255 13256 * sudo_noexec.c: 13257 Alas, all the world does not go through execve(2). Many systems 13258 still have an execv(2) system call, Linux 2.6 provides fexecve(2) 13259 and it is not uncommon for libc to have underscore ('_') versions of 13260 the functions to be used internally by the library. Instead of 13261 stubbing all these out by hand, define a macro and let it do the 13262 work. Extra exec functions pointed out by Reznic Valery. 13263 [9fa0cd871b0c] 13264 13265 * sudo.c, sudo_edit.c: 13266 Fix suspending the editor in -e mode. Because we do a fork() first 13267 we need to be notified when the child has been stopped and then send 13268 that same signal to ourself so the shell can do its job control 13269 thing. 13270 [773165eb6057] 13271 13272 * visudo.c: 13273 Use WIFEXITED and WEXITSTATUS macros. If there are systems out 13274 there that want to run sudo that still don't support these we can 13275 try to deal with that later. 13276 [6af68e4aff60] 13277 13278 * lex.yy.c: 13279 regen 13280 [403435317d5d] 13281 13282 * sudo.man.in, sudo.pod, sudoers.man.in, sudoers.pod: 13283 Document sudo -e / sudoedit 13284 [a80f6ea910af] 13285 13286 * configure, configure.in: 13287 fix typo 13288 [5020fcdc27f4] 13289 13290 * config.h.in, configure.in: 13291 Add SET/CLR/ISSET 13292 [03ff57286e7e] 13293 132942004-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 13295 13296 * sudo.c: 13297 Allow non-exclusive flags when invoked as sudoedit. Pretty print the 13298 long usage() line to not wrap (assumes 80 char display) 13299 [3941fa4004bb] 13300 13301 * Makefile.in, sudo.c: 13302 If sudo is invoked as "sudoedit" the -e flag is implied and no other 13303 flags are permitted. 13304 [929670b01293] 13305 13306 * sudo.h: 13307 Add a new flag, -e, that makes it possible to give users the ability 13308 to edit files with the editor of their choice as the invoking user, 13309 not the runas user. Temporary files are used for the actual edit 13310 and the temp file is copied over the original after the editor is 13311 done. 13312 [c4051414c1f4] 13313 13314 * Makefile.in, parse.c, parse.lex, sudo.c, sudo_edit.c: 13315 Add a new flag, -e, that makes it possible to give users the ability 13316 to edit files with the editor of their choice as the invoking user, 13317 not the runas user. Temporary files are used for the actual edit 13318 and the temp file is copied over the original after the editor is 13319 done. 13320 [37ac05c8ac3c] 13321 13322 * env.c, sudo.c: 13323 If real uid == 0 and the SUDO_USER environment variables is set, use 13324 that to determine the invoking user's true identity. That way the 13325 proper info gets logged by someone who has done "sudo su" but still 13326 uses sudo to as root. We can't do this for non-root users since 13327 that would open up a security hole, though perhaps it would be 13328 acceptable to use getlogin(2) on OSes where this a system call (and 13329 doesn't just look in the utmp file). 13330 [c2f9198708a1] 13331 13332 * pathnames.h.in: 13333 Add _PATH_TMP, _PATH_VARTMP and _PATH_USRTMP 13334 [7d9e5768df93] 13335 13336 * config.h.in, configure, configure.in: 13337 Add check for fchown(2) 13338 [a85df18798ed] 13339 133402004-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 13341 13342 * sudo.c: 13343 Back out portions of the -i commit that set NewArgv[0] in 13344 set_runaspw. It is far to late to set NewArgv[0] there and will have 13345 no effect anyway as cmnd and safe_cmnd have already been set. 13346 [c2d343430c1c] 13347 13348 * visudo.c, visudo.pod: 13349 Prefer VISUAL over EDITOR like old vipw did. 13350 [ae32f477cea3] 13351 133522004-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 13353 13354 * env.c, sudo.c: 13355 In -i mode always set new environment based on the runas user's 13356 passwd entry. 13357 [fa653b7887a8] 13358 133592004-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 13360 13361 * sudo.man.in, sudo.pod: 13362 Document the new -i flag and sync SYNOPSIS section with usage() in 13363 sudo.c. Also sort the flags in the OPTIONS section. 13364 [6aabc0ffc47e] 13365 13366 * sudo.c, sudo.h: 13367 o Add -i that acts similar to "su -", based on patches from David J. 13368 MacKenzie o Sort the flags in the usage message 13369 [c0fe7d6beffd] 13370 13371 * sudoers.man.in, sudoers.pod: 13372 Add a missing @runas_default@ substitution. 13373 [60516fe2d090] 13374 133752004-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 13376 13377 * sudo.c: 13378 Change euid to runas user before calling find_path(). 13379 Unfortunately, though runas_user can be modified in sudoers we 13380 haven't parsed sudoers yet. 13381 [f469fdf2e313] 13382 13383 * sudoers.man.in, sudoers.pod: 13384 Add missing defintion of Parameter_List and use single pipes in the 13385 Defaults EBNF definition. 13386 [f7bed6e909bf] 13387 13388 * sudo.c: 13389 Fix a bug when set_runaspw() is used as a callback. We don't want 13390 to reset the contents of runas_pw if the user specified a user via 13391 the -u flag. 13392 13393 Avoid unnecessary passwd lookups in set_authpw(). In most cases we 13394 already have the info in runas_pw. 13395 [efc35623ba09] 13396 133972004-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 13398 13399 * check.c: 13400 Add Stan Lee / Uncle Ben quote to the lecture from RedHat 13401 [ebd5a76ccd7e] 13402 13403 * sudo.h: 13404 Update sudo_getepw() proto and add one for set_runaspw() 13405 [6ed65795c17f] 13406 13407 * parse.c: 13408 If we can't stat the command as root, try as the runas user instead. 13409 [ae713fca0e15] 13410 13411 * testsudoers.c, visudo.c: 13412 Add stub set_runaspw() function 13413 [42aa37050053] 13414 13415 * sudo.c: 13416 Add set_runaspw() function to fill in runas_pw. This will be used 13417 as a callback to update runas_pw when the runas user changes. 13418 [e570aa0088d0] 13419 13420 * env.c, sudo.c: 13421 PERM_RUNAS -> PERM_FULL_RUNAS 13422 [51eec6f9e89a] 13423 13424 * set_perms.c, sudo.h: 13425 Rename PERM_RUNAS -> PERM_FULL_RUNAS and add a PERM_RUNAS that just 13426 changes the euid. 13427 [877c6fe4d12c] 13428 13429 * getspwuid.c: 13430 Make sudo_pwdup() act like OpenBSD pw_dup() and allocate memory in 13431 one chunk for easy free()ing. Also change it from static to extern. 13432 [ab503260a7ec] 13433 13434 * defaults.c, defaults.h: 13435 Add callback support 13436 [a61c4ca983fb] 13437 13438 * mkdefaults: 13439 Add a callback field and use it for runas_default 13440 [96b69c27df5e] 13441 13442 * def_data.c, def_data.in: 13443 Add a callback field and use it for runas_default 13444 [d3e9f06872b8] 13445 134462004-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 13447 13448 * auth/fwtk.c: 13449 Add support for chalnecho and display server responses used by fwtk 13450 >= 2.0 13451 [b1870f7aaf0d] 13452 134532004-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 13454 13455 * sudoers.man.in, sudoers.pod: 13456 ld.so is ld.so.1 on solaris 13457 [2bf9a123fa4c] 13458 13459 * Makefile.in, config.h.in, configure, configure.in, sudo.c, sudo.h: 13460 Use closefrom() instead of doing the equivalent inline. 13461 [7e3ef6072884] 13462 13463 * closefrom.c: 13464 closefrom(3) for systems w/o it 13465 [35caf58bb636] 13466 134672004-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 13468 13469 * sudoers.man.in: 13470 Update from .pod file. 13471 [d4c94fc0e0c9] 13472 13473 * configure, configure.in: 13474 Substitute noexec_file for the sudoers man page 13475 [203d3376a551] 13476 13477 * sudo.man.in, sudo.pod: 13478 Mention noexec 13479 [014375ddbb06] 13480 13481 * sudoers.man.in, sudoers.pod: 13482 Document noexec 13483 [49a65d06201f] 13484 13485 * auth/pam.c, config.h.in, configure.in: 13486 Move PAM_CONST macro definition from config.h to pam.c where it 13487 belongs. We can't have this in config.h since that gets included too 13488 early. 13489 [e64748071637] 13490 13491 * auth/pam.c, config.h.in, configure, configure.in: 13492 Some PAM implementations put their headers in /usr/include/pam 13493 instead of /usr/include/security. 13494 [8cc749e9575c] 13495 13496 * configure.in: 13497 I missed changing the EXEC macro -> EXECV here when I changed this 13498 in config.h.in and sudo.c a while ago. 13499 [6f5afac7789f] 13500 13501 * acsite.m4: 13502 OpenBSD vax/m88k/hppa don't do shared libs 13503 [e4901d958bb7] 13504 13505 * configure, configure.in: 13506 o merge the hpux case entries into a single entry w/ its own sub- 13507 case statement. o HP-UX >= 11 support getspnam(), use it in 13508 preference to getprpwuid() 13509 [0caad428894e] 13510 13511 * configure, configure.in: 13512 eval $shrext so that it expands nicely on MacOS X 13513 [40419343eef8] 13514 13515 * Makefile.in: 13516 Don't lie about making a module, it does the wrong thing on mach 13517 [7629b28f5688] 13518 13519 * ltmain.sh: 13520 Remove requirement that libs must begin with "lib". They don't when 13521 we point directly at the lib using LD_PRELOAD or its equivalent. 13522 [d66f3de6ec85] 13523 13524 * acsite.m4: 13525 Disable support for c++, f77 and java. We don't need it, it takes a 13526 lot of time, and it hosed our check for shared lib support. 13527 [4f5749c52ce4] 13528 13529 * configure: 13530 regen 13531 [160865e9d15f] 13532 13533 * configure.in: 13534 Call AC_ENABLE_SHARED and check the status of enable_shared to know 13535 when shared libs are available. 13536 [42504c1668fc] 13537 13538 * acsite.m4: 13539 Duh, OpenBSD suports shared libs too 13540 [8e3cd9417475] 13541 13542 * config.h.in, configure.in: 13543 Only OpenPAM and Linux PAM use const qualifiers. 13544 [b2f76476e866] 13545 13546 * configure, configure.in: 13547 o No need to check for sed, libtool config does that for us o move 13548 check for --with-noexec until after libtool magic is run so we can 13549 use $can_build_shared and $shrext 13550 [668c656e89cc] 13551 13552 * ltmain.sh: 13553 Don't print a bunch of crap about library installs since we are not 13554 really installing a library. 13555 [83fbcad29fe4] 13556 13557 * env.c: 13558 Make format_env() varargs Add noexec support for Darwin, MacOS X, 13559 Irix, and Tru64 13560 [468885d75d10] 13561 13562 * acsite.m4, ltconfig, ltmain.sh: 13563 Update to libtool 1.5 with local changes: o no ldconfig in the 13564 finish step o assume no libprefix or version is needed 13565 [4961cffc3797] 13566 13567 * sudo_noexec.c: 13568 Fix compilation under K&R 13569 [8b309bf0b1b2] 13570 135712004-01-06 Todd C. Miller <Todd.Miller@courtesan.com> 13572 13573 * CHANGES: 13574 checkpoint 13575 [3c368badab32] 13576 13577 * sudo_noexec.c: 13578 stub execve() that just returns EACCES; used for noexec 13579 functionality 13580 [1297acae283a] 13581 13582 * sudo.tab.h: 13583 Regen w/ updated byacc from OpenBSD; fixes a gcc 3.2 issue with 13584 generated code. 13585 [dcab78c49273] 13586 13587 * sudo.tab.c: 13588 Regen w/ updated byacc from OpenBSD; fixes a gcc 3.2 issue with 13589 generated code. 13590 [0a61c735eabe] 13591 135922004-01-05 Todd C. Miller <Todd.Miller@courtesan.com> 13593 13594 * def_data.c, def_data.h, def_data.in: 13595 Move the environment defaults to the end and shorten a few of the 13596 descriptions. 13597 [66787b9c612c] 13598 13599 * configure, configure.in: 13600 no shared libs on ultris or convexos 13601 [2c5f3c456e32] 13602 13603 * Makefile.in, configure, configure.in: 13604 Build sudo_noexec shared object using libtool; could use some 13605 cleanup. 13606 [373f483555dd] 13607 13608 * acsite.m4, ltconfig, ltmain.sh: 13609 libtool scaffolding 13610 [c903a42e3d90] 13611 13612 * parse.yacc, sudo.tab.c: 13613 Merge the NOPASSWD/PASSWD and NOEXEC/EXEC rules so that order is not 13614 important. 13615 [c6e8a34639a4] 13616 13617 * defaults.c, env.c, lex.yy.c, parse.c, parse.h, parse.lex, 13618 parse.yacc, pathnames.h.in, sudo.c, sudo.h, sudo.tab.c: 13619 update copyright year 13620 [a16372ae1711] 13621 13622 * configure, configure.in, defaults.c, env.c, pathnames.h.in: 13623 Add _PATH_SUDO_NOEXEC and corresponding --with-noexec configure 13624 option. The default value of noexec_file is set to this. 13625 [7d88e1d3c494] 13626 13627 * def_data.c, def_data.h, def_data.in, env.c, lex.yy.c, parse.c, 13628 parse.h, parse.lex, parse.yacc, sudo.c, sudo.h, sudo.tab.c, 13629 sudo.tab.h: 13630 Add support for preloading a shared object containing a dummy 13631 execve() function that just sets error and returns -1. This adds a 13632 "noexec_file" option to load the filename as well as a "noexec" flag 13633 to enable it unconditionally. There is also a NOEXEC tag that can 13634 be attached to specific commands and an EXEC tag to disable it. 13635 [c8b6712feb91] 13636 13637 * mkdefaults: 13638 add missing newline to usage statement 13639 [e84746618362] 13640 13641 * config.h.in, sudo.c: 13642 Rename EXEC macro -> EXECV 13643 [ddaa0c027299] 13644 13645 * logging.c: 13646 Don't truncate usernames to 8 characters in the log message. 13647 [f62a20f27075] 13648 13649 * check.c, sudoers.man.in, sudoers.pod: 13650 Update copyright year 13651 [ca9964054085] 13652 13653 * check.c, def_data.c, def_data.h, def_data.in, sudoers.man.in, 13654 sudoers.pod: 13655 Add a new option, lecture_file, that can be used to point to a 13656 custom sudo lecture. 13657 [940133231216] 13658 136592003-12-31 Todd C. Miller <Todd.Miller@courtesan.com> 13660 13661 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c, 13662 auth/sudo_auth.c: 13663 Add a zero_bytes() function to do the equivalent of bzero in such a 13664 way that will heopfully not be optimized away by sneaky compilers. 13665 [161b6d74bfb4] 13666 13667 * zero_bytes.c: 13668 Add a zero_bytes() function to do the equivalent of bzero in such a 13669 way that will heopfully not be optimized away by sneaky compilers. 13670 [d035abf0af94] 13671 13672 * Makefile.in, sudo.h: 13673 Add a zero_bytes() function to do the equivalent of bzero in such a 13674 way that will heopfully not be optimized away by sneaky compilers. 13675 [ff136de3e255] 13676 13677 * err.c: 13678 Use #ifdef __STDC__, not #if __STDC__. 13679 [6889dd6bc51a] 13680 136812003-12-30 Todd C. Miller <Todd.Miller@courtesan.com> 13682 13683 * mkdefaults: 13684 Always put at least one space between the def_* macro name and its 13685 definition. 13686 [6b3ad0e6619a] 13687 13688 * configure, configure.in: 13689 Adjust code for --without-lecture to match new values. 13690 [062aa788a6b9] 13691 13692 * visudo.man.in: 13693 regen after pasto fix 13694 [3deec16906c0] 13695 13696 * sudoers.man.in, sudoers.pod: 13697 Document that "lecture" has changed from a flag to a tuple. 13698 [e2c03062b533] 13699 13700 * check.c, def_data.c, def_data.h, def_data.in, defaults.c, 13701 defaults.h, logging.c, mkdefaults, parse.c, sudo.c, sudo.h: 13702 Add support for tuples in def_data.in; these are implemented as an 13703 enum type. Currently there is only a single tuple enum but in the 13704 future we may have one tuple enum per T_TUPLE entry in def_data.in. 13705 Currently listpw, verifypw and lecture are tuples. This avoids the 13706 need to have two entries (one ival, one str) for pwflags and syslog 13707 values. 13708 13709 lecture is now a tuple with the following values: never, once, 13710 always 13711 13712 We no longer use both an int and string entry for syslog facilities 13713 and priorities. Instead, there are logfac2str() and logpri2str() 13714 functions that get used when we need to print the string values. 13715 [5293f946c836] 13716 13717 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c, 13718 auth/rfc1938.c, auth/securid5.c, auth/sia.c, auth/sudo_auth.c, 13719 check.c, def_data.h, defaults.c, defaults.h, env.c, find_path.c, 13720 logging.c, mkdefaults, parse.c, parse.yacc, set_perms.c, sudo.c, 13721 sudo.tab.c, visudo.c: 13722 Create def_* macros for each defaults value so we no longer need the 13723 def_{flag,ival,str,list,mode} macros (which have been removed). This 13724 is a step toward more flexible data types in def_data.in. 13725 [009c02934106] 13726 13727 * TODO: 13728 checkpoint 13729 [0a99a4bb5d15] 13730 137312003-12-23 Todd C. Miller <Todd.Miller@courtesan.com> 13732 13733 * sudo.c: 13734 If we are in -k/-K mode, just spew to stderr. It is not unusual for 13735 users to place "sudo -k" in a .logout file which can cause sudo to 13736 be run during reboot after the YP/NIS/NIS+/LDAP/etc daemon has died. 13737 Previously, this would result in useless mail and logging. 13738 [d282e7ed63af] 13739 137402003-12-16 Todd C. Miller <Todd.Miller@courtesan.com> 13741 13742 * visudo.pod: 13743 fix pasto in VISUAL description 13744 [1c6a6148b5f9] 13745 137462003-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 13747 13748 * configure: 13749 regen 13750 [f44312c63799] 13751 13752 * CHANGES: 13753 checkpoint 13754 [0c42e38f78d5] 13755 13756 * TROUBLESHOOTING: 13757 Some OSes (like Solaris) allow export w/ nosuid too 13758 [973ce85ffa12] 13759 137602003-08-12 Todd C. Miller <Todd.Miller@courtesan.com> 13761 13762 * compat.h: 13763 We don't use FD_ZERO anymore so just define FD_SET (if not already 13764 there). 13765 [d1c8c11905cd] 13766 137672003-06-29 Todd C. Miller <Todd.Miller@courtesan.com> 13768 13769 * auth/pam.c: 13770 Fix a core dump on Solaris by preserving the pam_handle_t we used 13771 during authentication for pam_prep_user(). If we didn't 13772 authenticate (ie: ticket still valid), we call pam_init() from 13773 pam_prep_user(). This is something of a hack; it may be better to 13774 change the auth API and add an auth_final() function that acts like 13775 pam_prep_user(). 13776 [f787de49b175] 13777 137782003-06-21 Todd C. Miller <Todd.Miller@courtesan.com> 13779 13780 * set_perms.c: 13781 Add explicit declaration of printerr variable in function header 13782 (was defaulting to int which is OK but oh so K&R :-). From Theo. 13783 [492c2358783f] 13784 137852003-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 13786 13787 * config.h.in, configure.in: 13788 s/HAVE_STOW/USE_STOW/ 13789 [4b99e1824ece] 13790 13791 * logging.c: 13792 Also exit waitpid() loop when pid == 0. Fixes a problem where the 13793 sudo process would spin eating up CPU until sendmail finished when 13794 it has to send mail. 13795 [ec3d5792b9b4] 13796 137972003-05-30 Todd C. Miller <Todd.Miller@courtesan.com> 13798 13799 * fnmatch.c: 13800 Remove advertising clause, UCB has disavowed it 13801 [43a26bbd6628] 13802 13803 * fnmatch.3: 13804 Remove advertising clause, UCB has disavowed it 13805 [3ff24291bcfa] 13806 138072003-05-22 Todd C. Miller <Todd.Miller@courtesan.com> 13808 13809 * parse.c: 13810 Don't assume that getgrnam() calls don't modify contents of struct 13811 passwd returned by getpwnam(). On FreeBSD w/ NIS this can happen. 13812 Based on a patch from Kirk Webb. 13813 [5574c68f60f3] 13814 138152003-05-06 Todd C. Miller <Todd.Miller@courtesan.com> 13816 13817 * configure.in: 13818 missing ;; 13819 [22378f2a9d31] 13820 13821 * configure.in: 13822 darwin has a broken setreuid() in at least some versions 13823 [d572aed930d2] 13824 13825 * env.c: 13826 Fix an off by one error when reallocating the environment; Kevin Pye 13827 [3d98e7cf097a] 13828 138292003-04-30 Todd C. Miller <Todd.Miller@courtesan.com> 13830 13831 * sudoers.pod: 13832 Fix User_Spec definition; SEKINE Tatsuo 13833 [49b0da65e090] 13834 138352003-04-28 Todd C. Miller <Todd.Miller@courtesan.com> 13836 13837 * HISTORY: 13838 More info on the early days from Coggs. 13839 [9381ca10b06b] 13840 138412003-04-21 Todd C. Miller <Todd.Miller@courtesan.com> 13842 13843 * auth/kerb5.c: 13844 remove errant semicolon that prevented compilation under heimdal 13845 [d2f2bb73a598] 13846 138472003-04-16 Todd C. Miller <Todd.Miller@courtesan.com> 13848 13849 * testsudoers.c, tgetpass.c, visudo.c, visudo.man.in, visudo.pod: 13850 add DARPA credit on affected files 13851 [7020785ee50d] 13852 13853 * sudoers.pod: 13854 add DARPA credit on affected files 13855 [83b46318750b] 13856 13857 * sigaction.c, strerror.c, sudo.c, sudo.h, sudo.man.in, sudo.pod, 13858 sudoers.man.in: 13859 add DARPA credit on affected files 13860 [d8adf1c2ba22] 13861 13862 * set_perms.c: 13863 add DARPA credit on affected files 13864 [3d79fdabb582] 13865 13866 * pathnames.h.in: 13867 add DARPA credit on affected files 13868 [e334cdda422f] 13869 13870 * logging.c, parse.c: 13871 add DARPA credit on affected files 13872 [8f75f822755b] 13873 13874 * auth/passwd.c, auth/rfc1938.c, auth/secureware.c, auth/securid.c, 13875 auth/securid5.c, auth/sia.c, auth/sudo_auth.c, fileops.c, 13876 find_path.c, getprogname.c, getspwuid.c, goodpath.c, interfaces.c, 13877 interfaces.h: 13878 add DARPA credit on affected files 13879 [da66e28fb3f5] 13880 13881 * auth/kerb5.c, auth/pam.c: 13882 add DARPA credit on affected files 13883 [15da3021b49c] 13884 13885 * auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, auth/dce.c, 13886 auth/fwtk.c, auth/kerb4.c, parse.lex, parse.yacc, utime.c, 13887 version.h: 13888 add DARPA credit on affected files 13889 [868d54cbddea] 13890 13891 * env.c: 13892 add DARPA credit on affected files 13893 [90239f51ef0a] 13894 13895 * defaults.c, defaults.h: 13896 add DARPA credit on affected files 13897 [6a64205fd1eb] 13898 13899 * compat.h: 13900 add DARPA credit on affected files 13901 [316a735783c4] 13902 13903 * Makefile.in, alloc.c, check.c: 13904 add DARPA credit on affected files 13905 [cd939e05c810] 13906 13907 * LICENSE: 13908 slightly different wording for the darpa credit 13909 [e468909c4a21] 13910 139112003-04-15 Todd C. Miller <Todd.Miller@courtesan.com> 13912 13913 * LICENSE: 13914 Add DARPA credit 13915 [8eb20e2cd63e] 13916 139172003-04-14 Todd C. Miller <Todd.Miller@courtesan.com> 13918 13919 * auth/kerb5.c: 13920 Use krb5_princ_component() instead of krb5_princ_realm() for MIT 13921 Kerberos like we did before I messed things up ;-) 13922 13923 Use krb5_principal_get_comp_string() to do the same thing w/ 13924 Heimdal. I'm not sure if the component should be 0 or 1 in this 13925 case. 13926 13927 #define ENCTYPE_DES_CBC_MD5 ETYPE_DES_CBC_MD5 for Heimdal since 13928 older versions lack ENCTYPE_DES_CBC_MD5. This is gross and there 13929 should be a configure check for this I guess. 13930 [74919a3933fe] 13931 139322003-04-13 Todd C. Miller <Todd.Miller@courtesan.com> 13933 13934 * sample.sudoers: 13935 builtin -> built-in; Jason McIntyre 13936 [027f2187923e] 13937 13938 * TROUBLESHOOTING, config.h.in, configure, configure.in: 13939 builtin -> built-in; Jason McIntyre 13940 [70b81ac48943] 13941 13942 * sudoers.pod: 13943 built in -> built-in; Jason McIntyre 13944 [da658ef5138d] 13945 139462003-04-09 Todd C. Miller <Todd.Miller@courtesan.com> 13947 13948 * CHANGES: 13949 checkpoint for 1.6.7p3 13950 [da85f989fadf] 13951 13952 * HISTORY: 13953 Update info on the early years @ SUNY-Buffalo from Cliff Spencer. 13954 Amazingly, sudo source from 1985 is available via groups.google.com 13955 [39e0fc85b89f] 13956 13957 * sudo.c: 13958 Don't change rl.rlim_max for RLIMIT_CORE. We need only set 13959 rl.rlim_cur to 0 to turn off core dumps. This may be needed for the 13960 RLIMIT_CORE restoration on some OSes. 13961 [7e2c1a7adfd8] 13962 139632003-04-04 Todd C. Miller <Todd.Miller@courtesan.com> 13964 13965 * auth/kerb5.c: 13966 Make this compile on Heimdal and MIT Kerberos 5 13967 [44c07d615868] 13968 13969 * config.h.in, configure, configure.in: 13970 Check for heimdal even if we found krb5-config and define 13971 HAVE_HEIMDAL. 13972 [aba0126f0059] 13973 13974 * auth/kerb5.c: 13975 Replace ETYPE_DES_CBC_MD5 with ENCTYPE_DES_CBC_MD5. The former is 13976 no longer defined by MIT kerb5 (though it used to be and indeed 13977 remains so in Heimdal). 13978 [e5a6c64d7cd5] 13979 139802003-04-03 Todd C. Miller <Todd.Miller@courtesan.com> 13981 13982 * mkinstalldirs: 13983 Remove newer stuff that passes multiple (possibly duplicate) 13984 directories to "mkdir -p" since that seems to break on Tru64 Unix at 13985 least. This basically brings back what shipped with sudo 1.6.6. 13986 [f2a1abd872b3] 13987 139882003-04-02 Todd C. Miller <Todd.Miller@courtesan.com> 13989 13990 * auth/kerb5.c: 13991 Correct number of args to krb5_principal_get_realm() and fix an 13992 unclosed comment that hid the bug. 13993 [0b37f8ce7824] 13994 13995 * configure: 13996 regen 13997 [1876cb840fe0] 13998 13999 * configure.in: 14000 ++version 14001 [480aff7c048e] 14002 14003 * README: 14004 ++version 14005 [488e0bbff613] 14006 14007 * Makefile.in: 14008 ++version 14009 [97ef63cedc38] 14010 14011 * INSTALL.binary: 14012 ++version 14013 [a506204e77d0] 14014 14015 * INSTALL: 14016 ++version 14017 [555aeba5c2bf] 14018 14019 * CHANGES, version.h: 14020 ++version 14021 [f66985a64063] 14022 14023 * BUGS: 14024 ++version 14025 [ea3573432412] 14026 14027 * configure.in: 14028 use krb5-config to determine Kerberos V details if it exists 14029 [7b46bbdaf774] 14030 14031 * alloc.c, auth/fwtk.c, auth/rfc1938.c, auth/securid.c, 14032 auth/securid5.c, auth/sia.c, check.c, compat.h, defaults.c, env.c, 14033 find_path.c, interfaces.c, logging.c, parse.c, sudo.c, sudo.h, 14034 testsudoers.c, visudo.c: 14035 Use warn/err and getprogname() throughout. The main exception is 14036 openlog(). Since the admin may be filtering logs based on the 14037 program name in the log files, hard code this to "sudo". 14038 [9f180d015cfa] 14039 14040 * Makefile.in: 14041 Add getprogname.c and err.c 14042 [d411c54a07dc] 14043 14044 * configure: 14045 regen 14046 [6d585d391acc] 14047 14048 * config.h.in, configure.in: 14049 Add checks for getprognam(), __progname and err.h 14050 [bcbccf61d34a] 14051 14052 * emul/err.h: 14053 For systems withour err/warn functions. 14054 [1b33118884d9] 14055 14056 * err.c: 14057 For systems withour err/warn functions. 14058 [26721f6b041f] 14059 14060 * getprogname.c: 14061 For systems neither getprogname() nor __progname; uses Argv[0]. 14062 [841cf42af1eb] 14063 140642003-04-01 Todd C. Miller <Todd.Miller@courtesan.com> 14065 14066 * CHANGES: 14067 checkpoint for 1.6.7p1 14068 [5bfdaf441dce] 14069 14070 * sudo.c, testsudoers.c: 14071 fix strlcpy() rval check (innocuous) 14072 [e05ac7e0d1f3] 14073 14074 * check.c: 14075 oflow detection in expand_prompt() was faulty (false positives). The 14076 count was based on strlcat() return value which includes the length 14077 of the entire string. 14078 [086c5a0acb25] 14079 140802003-03-31 Todd C. Miller <Todd.Miller@courtesan.com> 14081 14082 * RUNSON, TODO: 14083 checkpoint for the sudo 1.6.7 release 14084 [096bab4da29a] [SUDO_1_6_7] 14085 14086 * CHANGES: 14087 checkpoint for the sudo 1.6.7 release 14088 [87322187ed78] 14089 140902003-03-24 Todd C. Miller <Todd.Miller@courtesan.com> 14091 14092 * logging.c: 14093 g/c unused variable 14094 [c57cd4a17765] 14095 14096 * configure: 14097 regen 14098 [e7c1f581dfac] 14099 14100 * configure.in: 14101 use man sections 8 and 5 for csops 14102 [87de581bda88] 14103 141042003-03-21 Todd C. Miller <Todd.Miller@courtesan.com> 14105 14106 * configure: 14107 regen 14108 [cb1433a9c7a1] 14109 14110 * configure.in: 14111 Add -lskey or -lopie directly to SUDO_LIBS instead of having 14112 AC_CHECK_LIB() add them to LIBS. Fixes visudo linkage. 14113 [ac5667978939] 14114 14115 * configure: 14116 regen 14117 [638459118a2a] 14118 14119 * configure.in: 14120 Add --with-blibpath for AIX. An alternate libpath may be specified 14121 or 14122 -blibpath support can be disabled. Also change conifgure such that 14123 -blibpath is not specified if no -L libpaths were added to 14124 SUDO_LDFLAGS. 14125 [c7d17b480cad] 14126 14127 * aclocal.m4: 14128 Add --with-blibpath for AIX. An alternate libpath may be specified 14129 or 14130 -blibpath support can be disabled. Also change conifgure such that 14131 -blibpath is not specified if no -L libpaths were added to 14132 SUDO_LDFLAGS. 14133 [37022e991575] 14134 14135 * INSTALL: 14136 Add --with-blibpath for AIX. An alternate libpath may be specified 14137 or 14138 -blibpath support can be disabled. Also change conifgure such that 14139 -blibpath is not specified if no -L libpaths were added to 14140 SUDO_LDFLAGS. 14141 [4b4bbe5bbe1b] 14142 14143 * configure.in: 14144 add AIX blibpath support 14145 [16ba788bf086] 14146 14147 * INSTALL, configure.in: 14148 --with-skey and --with-opie now take an option directory argument 14149 This obsoletes a --with-csops hack (/tools/cs/skey) 14150 14151 Also remove the remaining direct uses of "echo" 14152 [5b4986a90c03] 14153 141542003-03-20 Todd C. Miller <Todd.Miller@courtesan.com> 14155 14156 * configure.in: 14157 Detect KTH Kerberos IV and deal with it. Also make -lroken optional 14158 for KTH Kerberos IV and V. 14159 [119f97b48e18] 14160 14161 * aclocal.m4: 14162 Add SUDO_APPEND_LIBPATH function that add -L/path/to/dir (and 14163 -R/path/to/dir if $with_rpath) to the specified variable. 14164 [e55e49d076ce] 14165 14166 * INSTALL, configure.in: 14167 Add -R/path/to/libs for Solaris and SVR4. There is a new configure 14168 option, --with-rpath to control this behavior. 14169 [d4730c5399ab] 14170 14171 * configure.in: 14172 for kerb4 put libdes after libkrb on the link line 14173 [5c566100eab6] 14174 14175 * auth/kerb4.c: 14176 typo 14177 [6541b72b64a3] 14178 14179 * configure.in: 14180 fix kerberos lib check when a path is specified 14181 [ae833a914c6f] 14182 14183 * logging.c: 14184 Fix boolean thinko in SIGCHLD reaper and call reapchild after 14185 sending mail instead of doing a conditional sudo_waitpid. 14186 [86fa9a35df5a] 14187 141882003-03-19 Todd C. Miller <Todd.Miller@courtesan.com> 14189 14190 * configure: 14191 regen 14192 [e6275cf528ba] 14193 14194 * configure.in: 14195 replace =DIR with [=DIR] where sensible 14196 [c39a59173b38] 14197 14198 * configure.in: 14199 o Use AC_MSG_* instead of "echo" o New Kerberos include/lib 14200 detection based on openssh's configure.in 14201 [5b7a340912df] 14202 14203 * INSTALL: 14204 --with-kerb4 and --with-kerb5 now take an optional argument. 14205 [71ed87fc9c64] 14206 142072003-03-16 Todd C. Miller <Todd.Miller@courtesan.com> 14208 14209 * auth/securid.c: 14210 Kill remaining strcpy(), the programmer's guide says username is 32 14211 bytes. 14212 [bdba70fcd08d] 14213 14214 * auth/kerb4.c: 14215 trat uid_t as unsigned long for printf and use snprintf, not sprintf 14216 [8072f5f8966d] 14217 14218 * auth/rfc1938.c: 14219 use snprintf 14220 [fc0c70c665fe] 14221 142222003-03-15 Todd C. Miller <Todd.Miller@courtesan.com> 14223 14224 * auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, auth/dce.c, 14225 auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/passwd.c, 14226 auth/rfc1938.c, auth/sudo_auth.c: 14227 update copyright year 14228 [b0a10ccb1d0e] 14229 14230 * sudo.man.in, sudoers.man.in, visudo.man.in: 14231 update copyright year 14232 [8fce0034eb51] 14233 14234 * LICENSE, Makefile.in, aclocal.m4, alloc.c, check.c, compat.h, 14235 configure.in, env.c, find_path.c, interfaces.c, logging.c, parse.c, 14236 parse.lex, parse.yacc, set_perms.c, sudo.c, sudo.h, sudo.pod, 14237 sudoers.pod, testsudoers.c, version.h, visudo.c, visudo.pod: 14238 update copyright year 14239 [d541e75fe520] 14240 14241 * check.c, env.c, sudo.c: 14242 Cast [ug]ids to unsigned long and printf with %lu 14243 [2ede64d3592b] 14244 14245 * configure: 14246 regen 14247 [c7c3245bdf3e] 14248 14249 * configure.in: 14250 correct error messages for --with-sudoers-{mode,uid,gid} 14251 [77fc15b1c9db] 14252 14253 * alloc.c: 14254 make the malloc(0) error specific to each function to aid tracking 14255 down bugs. 14256 [a58c34374b4b] 14257 14258 * alloc.c: 14259 deal with platforms where size_t is signed and there is no SIZE_MAX 14260 or SIZE_T_MAX 14261 [7192abb4ab4e] 14262 14263 * auth/kerb5.c: 14264 Make this compile w/ Heimdal and fix some gcc warnings. 14265 [f52f026f31c2] 14266 14267 * sudo.c: 14268 Use stat_sudoers macro so --with-stow can work 14269 [c3674735c139] 14270 14271 * INSTALL, config.h.in, configure, configure.in: 14272 Add support for --with-stow based on patches from Robert Uhl 14273 [b274cc1dd52c] 14274 14275 * env.c: 14276 fix indentation 14277 [110d9f1721b1] 14278 14279 * configure.in: 14280 back out rev 1.352 14281 [1eee91c83f11] 14282 14283 * lex.yy.c: 14284 regen 14285 [72fba1c9590b] 14286 14287 * parse.lex: 14288 use strlcpy, not strncpy 14289 [4faccbaeccef] 14290 14291 * set_perms.c: 14292 Fix typo; check pw_uid, not pw_gid after setusercontext() failure. 14293 [33bf0d18fdc1] 14294 14295 * logging.c: 14296 use pid_t 14297 [3e0536993d2c] 14298 142992003-03-14 Todd C. Miller <Todd.Miller@courtesan.com> 14300 14301 * strlcat.c, strlcpy.c: 14302 Make gcc shutup about unused rcsid 14303 [1669a0c74e9e] 14304 14305 * interfaces.c: 14306 Move the n == 0 check for the non-getifaddrs cas 14307 [2460be061b2a] 14308 14309 * auth/rfc1938.c: 14310 skeychallenge() on NetBSD take a size parameter 14311 [05acc2012801] 14312 14313 * configure: 14314 regen 14315 [24bccf4749e8] 14316 14317 * configure.in: 14318 put -ldl after -lpam, not before; fixes static linking on Linux 14319 [7f06b7b2b4d8] 14320 14321 * interfaces.c: 14322 Avoid malloc(0) and fix the loop invariant for the getifaddrs() 14323 case. 14324 [239a55068646] 14325 14326 * sudo.cat, sudoers.cat, visudo.cat: 14327 regen 14328 [4a2eed3981ca] 14329 14330 * sudo.man.in, sudoers.man.in, visudo.man.in: 14331 regen 14332 [2c96ea2cf930] 14333 14334 * Makefile.in: 14335 Preserve copyright notice from .pod file in .man.in file 14336 [519fbd09aebc] 14337 14338 * visudo.pod: 14339 Add sudoers(5) to SEE ALSO 14340 [77ecfe3aedf1] 14341 143422003-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 14343 14344 * lex.yy.c: 14345 regen 14346 [6f5751ce0b74] 14347 14348 * parse.lex: 14349 Don't assume libc can realloc() a NULL string. If malloc/realloc 14350 fails, make sure we just return; yyerror() is not terminal. 14351 [1b8618623708] 14352 14353 * lex.yy.c: 14354 regen 14355 [5d31b46191c6] 14356 14357 * parse.lex: 14358 simplify fill_args a little and use strlcpy for paranoia 14359 [0ea35a55542b] 14360 14361 * sudo.tab.c: 14362 regen 14363 [5a8d508d708b] 14364 14365 * check.c, env.c, find_path.c, parse.c, parse.yacc, sudo.c, 14366 testsudoers.c: 14367 Use strlc{at,py} for paranoia's sake and exit on overflow. In all 14368 cases the strings were either pre-allocated to the correct size of 14369 length checks were done before the copy but a little paranoia can go 14370 a long way. 14371 [e73d28f1d14e] 14372 14373 * sudo.h: 14374 Add strlc{at,py} protos 14375 [748ffc7fc7f4] 14376 14377 * env.c, interfaces.c: 14378 Use erealloc3() 14379 [47f2cb46aba8] 14380 14381 * configure: 14382 regen 14383 [e7e2fb79f935] 14384 14385 * alloc.c: 14386 Oflow test of nmemb > SIZE_MAX / size is fine (don't need >=). Use 14387 memcpy() instead of strcpy() in estrdup() so this is strcpy()-free. 14388 [7e0fa4d6fc1d] 14389 14390 * sudo.c: 14391 snprintf() a uid as %lu, not %ld to match the MAX_UID_T_LEN test in 14392 configure. 14393 [09ea4d3959e9] 14394 14395 * aclocal.m4: 14396 In MAX_UID_T_LEN test cast uid_t to unsigned long, just unsigned. 14397 [31b4fdfdb8bf] 14398 143992003-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 14400 14401 * sudo.c: 14402 Use snprintf() for paranoia 14403 [a2659ceb46de] 14404 14405 * parse.yacc: 14406 Use emalloc2 and erealloc3 14407 [90a069842401] 14408 14409 * Makefile.in: 14410 strlc{at,py} for those w/o it 14411 [bac82dc916ee] 14412 14413 * strlcat.c, strlcpy.c: 14414 stlc{at,py} for those w/o it. 14415 [ce7254f5db09] 14416 14417 * config.h.in, configure, configure.in: 14418 Add stlc{at,py} for those w/o it. 14419 [00f08219657a] 14420 14421 * alloc.c, sudo.h: 14422 Add erealloc3(), a realloc() version of emalloc2(). 14423 [c96eaf08bbed] 14424 14425 * interfaces.c, sudo.c: 14426 Use emalloc2() to allocate N things of a certain size. 14427 [1e0aba365555] 14428 14429 * alloc.c, sudo.h: 14430 Add emalloc2() -- like calloc() but w/o the bzero and with 14431 error/oflow checking. 14432 [292150bc4153] 14433 14434 * alloc.c: 14435 Error out on malloc(0); suggested by theo 14436 [995279e81326] 14437 144382003-03-10 Todd C. Miller <Todd.Miller@courtesan.com> 14439 14440 * configure, configure.in: 14441 fix a typo; David Krause 14442 [f161213a17ab] 14443 144442003-03-07 Todd C. Miller <Todd.Miller@courtesan.com> 14445 14446 * sudo.pod: 14447 fix typo 14448 [3ae5ad9a351a] 14449 144502003-03-04 Todd C. Miller <Todd.Miller@courtesan.com> 14451 14452 * env.c: 14453 Remove DYLD_ from the environment for MacOS X; from bbraun 14454 [38caad5a3935] 14455 144562003-03-01 Todd C. Miller <Todd.Miller@courtesan.com> 14457 14458 * config.h.in, configure.in: 14459 not not; Anil Madhavapeddy 14460 [d4f4f0bfc66b] 14461 144622003-01-23 Todd C. Miller <Todd.Miller@courtesan.com> 14463 14464 * sudo.pod, sudoers.pod, visudo.pod: 14465 typos; jmc@openbsd.org 14466 [868c0f09bf9e] 14467 144682003-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 14469 14470 * parse.yacc: 14471 Add some missing ';' rule terminators that bison warns about. 14472 [535b0b8dcce5] 14473 14474 * config.sub: 14475 fix typo I introduced in last merge 14476 [81db4e4f43fe] 14477 14478 * configure: 14479 regenerate with autoconf 2.57 14480 [ca0c1e9564f8] 14481 14482 * config.h.in: 14483 Add missing "$HOME" 14484 [209186197ad1] 14485 14486 * configure.in: 14487 Add some more square backets to make autoconf 2.57 happy 14488 [b5639c14faf7] 14489 14490 * config.sub, mkinstalldirs: 14491 Updates from autoconf-2.57 14492 [36be35eb331b] 14493 14494 * config.guess: 14495 Updates from autoconf-2.57 14496 [ea0f8ca622af] 14497 144982003-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 14499 14500 * sudo.tab.h: 14501 regen 14502 [13a65a421567] 14503 14504 * lex.yy.c, sudo.tab.c: 14505 regen 14506 [0b529db7cb6d] 14507 14508 * parse.lex, parse.yacc, sudoers.pod: 14509 Add support for Defaults>RunasUser 14510 [20d726373175] 14511 145122003-01-07 Todd C. Miller <Todd.Miller@courtesan.com> 14513 14514 * visudo.c: 14515 fclose() yyin after each yyparse() is done and use fopen() instead 14516 of using freopen(). 14517 [587f8a2df857] 14518 14519 * parse.lex: 14520 Better fix for sudoers files w/o a newline before EOF. It looks 14521 like the issue is that yyrestart() does not reset the start 14522 condition to INITIAL which is an issue since we parse sudoers 14523 multiple times. 14524 [920f8326968a] 14525 145262003-01-06 Todd C. Miller <Todd.Miller@courtesan.com> 14527 14528 * parse.lex: 14529 Work around what appears to be a flex bug when dealing with files 14530 that lack a final newline before EOF. This adds a rule to match EOF 14531 in the non-initial states which resets the state to INITIAL and 14532 throws an error. 14533 [b94943bb1f81] 14534 14535 * visudo.c: 14536 o The parser needs sudoers to end with a newline but some editors 14537 (emacs) may not add one. Check for a missing newline at EOF and 14538 add one if needed. o Set quiet flag during initial sudoers parse (to 14539 get options) o Move yyrestart() call and always use freopen() to 14540 open yyin after initial sudoers parse. 14541 [12d12f9b07aa] 14542 145432002-12-15 Todd C. Miller <Todd.Miller@courtesan.com> 14544 14545 * set_perms.c: 14546 Fix pasto/thinko in setresgid()/setregid() usage. Want to set 14547 effective gid, not real gid, when reading sudoers. 14548 [c7d18b810fcd] 14549 14550 * set_perms.c: 14551 don't compile set_perms_posix if we have setreuid or setresuid 14552 [b9cea7a81a29] 14553 145542002-12-14 Todd C. Miller <Todd.Miller@courtesan.com> 14555 14556 * sudo.pod, sudoers.pod: 14557 document new prompt escapes 14558 [2f088076b640] 14559 14560 * check.c: 14561 Add %U and %H escapes and redo prompt rewriting. "%%" now gets 14562 collapsed to "%" as was originally intended. This also gets rid of 14563 lastchar (does lookahead instead of lookback) which should simplify 14564 the logic slightly. 14565 [4b707b77b3c7] 14566 145672002-12-13 Todd C. Miller <Todd.Miller@courtesan.com> 14568 14569 * tgetpass.c: 14570 Write the prompt *after* turning off echo to avoid some password 14571 characters being echoed on heavily-loaded machines with fast 14572 typists. 14573 [d38c57775915] 14574 14575 * config.sub: 14576 Add support for mipseb; wiz@danbala.tuwien.ac.at 14577 [cfdac87ed5c8] 14578 14579 * configure.in: 14580 Fix IRIX fallout from name changes in man dir/sect Makefile 14581 variables. Patch from erici AT motown DOT cc DOT utexas DOT edu 14582 [9a7618755c23] 14583 14584 * auth/pam.c: 14585 Keep a local copy of tgetpass_flags so we don't add in TGP_ECHO to 14586 the global copy. Problem noted by Peter Pentchev. 14587 [d0a3e189cb06] 14588 145892002-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 14590 14591 * sudo.tab.c: 14592 regen 14593 [23b931359087] 14594 14595 * parse.yacc: 14596 Add missing yyerror() calls; YYERROR does not seem to call this for 14597 us. 14598 [0be7aeb3ac57] 14599 146002002-11-26 Todd C. Miller <Todd.Miller@courtesan.com> 14601 14602 * sudo.c: 14603 fix typo in comment; Pedro Bastos 14604 [d7406c460e99] 14605 146062002-11-22 Todd C. Miller <Todd.Miller@courtesan.com> 14607 14608 * INSTALL: 14609 document --disable-setresuid 14610 [fbd03d03a027] 14611 14612 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c, 14613 auth/sudo_auth.c: 14614 Sprinkle some volatile qualifiers to prevent over-enthusiastic 14615 optimizers from removing memset() calls. 14616 [5370ac0e6129] 14617 14618 * logging.c, parse.yacc: 14619 minor sign fixes pointed out by gcc -Wsign-compare 14620 [db872438337f] 14621 14622 * set_perms.c, sudo.c, sudo.h: 14623 Revamp set_perms. We now use a version based on setresuid() or 14624 setreuid() when possible since that allows us to support the 14625 stay_setuid option and we always know exactly what the semantics 14626 will be (various Linux kernels have broken POSIX saved uid support). 14627 [523bc212396c] 14628 14629 * config.h.in, configure: 14630 regen from configure.in 14631 [351877ea2624] 14632 14633 * configure.in: 14634 Add checks for setresuid() and a way to disable using it 14635 [a5b21653d169] 14636 14637 * compat.h: 14638 No long need to emulate set*[ug]id() via setres[ug]id() or 14639 setre[ug]id(). The new set_perms stuff only uses things it knows are 14640 there. 14641 [47884bd5d1d9] 14642 14643 * sudo.c: 14644 Before exec, restore state of signal handlers to be the same as when 14645 we were initialy invoked instead of just reseting to SIG_DFL. Fixes 14646 a problem when using sudo with nohup. Based on a patch from Paul 14647 Markham. 14648 [f8f5a1484faa] 14649 14650 * sudo.c: 14651 o timestamp_uid should be uid_t, not int o clarify error message 14652 when sudo is run by root and no_root_sudo is set 14653 [19dda0734264] 14654 146552002-09-19 Todd C. Miller <Todd.Miller@courtesan.com> 14656 14657 * README: 14658 update ftp link for bison 14659 [98bc191016e3] 14660 146612002-07-20 Todd C. Miller <Todd.Miller@courtesan.com> 14662 14663 * set_perms.c: 14664 Error out if setusercontext() fails and the runas user is not root. 14665 [089f9ade4686] 14666 146672002-05-20 Todd C. Miller <Todd.Miller@courtesan.com> 14668 14669 * auth/securid5.c: 14670 Fix rcsid 14671 [07e9e85dcc2f] 14672 14673 * configure.in: 14674 Fix SecurID API test 14675 [5ec201f454a5] 14676 146772002-05-17 Todd C. Miller <Todd.Miller@courtesan.com> 14678 14679 * env.c: 14680 typo in comment 14681 [9d385c9ac533] 14682 14683 * configure.in: 14684 securid5 stuff needs pthreads. Just adding -lpthread is suboptimal 14685 but I don't see a better way at the moment. 14686 [f89e55cbb313] 14687 14688 * Makefile.in, auth/securid5.c: 14689 SecurID API version 5 support from Michael Stroucken 14690 [68500ac7e531] 14691 14692 * configure.in: 14693 Add check for SecurID 5.0 API 14694 [1ee242e6de6b] 14695 146962002-05-08 Todd C. Miller <Todd.Miller@courtesan.com> 14697 14698 * strerror.c: 14699 We actually do still need config.h to get the 'const' definition for 14700 K&R C. 14701 [d9c982032d85] 14702 147032002-05-05 Todd C. Miller <Todd.Miller@courtesan.com> 14704 14705 * configure: 14706 regen with autoconf 2.5.3 14707 [c71fc086eef5] 14708 14709 * configure.in: 14710 Don't set sysconfdir to '/etc' if the user has specified a --prefix. 14711 [d90da1efafd9] 14712 14713 * configure.in: 14714 Some fixes for autoconf 2.53 from Robert Uhl o don't AC_SUBST 14715 LIBOBJS o force a 4th arg for AC_CHECK_HEADER() to workaround a bug 14716 [dd67afefa90d] 14717 14718 * env.c, sudo.c, sudo.h: 14719 No need for dump_badenv() now that dump_defaults() knows how to dump 14720 lists. 14721 [6bcda468501d] 14722 14723 * BUGS, INSTALL, INSTALL.binary, Makefile.in, README, configure.in, 14724 version.h: 14725 ++version 14726 [44e3b8f95f0b] 14727 14728 * sudoers.pod: 14729 document timestampowner 14730 [37ebd69e9dd1] 14731 14732 * check.c: 14733 Don't call set_perms() when doing timestamp stuff unless 14734 timestamp_uid != 0. 14735 [63a63d41d18c] 14736 14737 * auth/sudo_auth.c, check.c, logging.c, parse.c, set_perms.c, sudo.c, 14738 sudo.h, testsudoers.c: 14739 g/c second arg to set_perms--it is no longer used 14740 [7ac4ce50c612] 14741 147422002-05-03 Todd C. Miller <Todd.Miller@courtesan.com> 14743 14744 * check.c, set_perms.c, sudo.c, sudo.h: 14745 Add support for non-root timestamp dirs. This allows the timestamp 14746 dir to be shared via NFS (though this is not recommended). 14747 [faa83dd2b7fb] 14748 14749 * def_data.c, def_data.h, def_data.in: 14750 Add timestampowner, "Owner of the authentication timestamp dir" 14751 [d47640d4c86a] 14752 147532002-05-02 Todd C. Miller <Todd.Miller@courtesan.com> 14754 14755 * env.c: 14756 Don't try to pre-compute the size of the new envp, just allocate 14757 space up front and realloc as needed. Changes to the new env 14758 pointer must all be made through insert_env() which now keeps track 14759 of spaced used and allocates as needed. 14760 [39bc934a9f2c] 14761 147622002-04-26 Todd C. Miller <Todd.Miller@courtesan.com> 14763 14764 * configure: 14765 regen 14766 [0e12c09bb790] 14767 14768 * configure.in: 14769 Fix two typo/pastos; from jrj@purdue.edu 14770 [b718a4bf1181] 14771 147722002-04-25 Todd C. Miller <Todd.Miller@courtesan.com> 14773 14774 * INSTALL.binary, README: 14775 ++version 14776 [a1e33027278c] [SUDO_1_6_6] 14777 14778 * configure, sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, 14779 visudo.cat, visudo.man.in: 14780 regen 14781 [19eb2be283ef] 14782 14783 * CHANGES, RUNSON, TODO: 14784 Sync with 1.6.6 14785 [2ff9a9087f63] 14786 14787 * check.c: 14788 The the loop used to expand %h and %u, the lastchar variable was not 14789 being initialized. This means that if the last char in the prompt 14790 is '%' and the first char is 'h' or 'u' a extra copy of the host or 14791 user name would be copied, for which space had not been allocated. 14792 [b2e27197857d] 14793 147942002-04-18 Todd C. Miller <Todd.Miller@courtesan.com> 14795 14796 * BUGS, INSTALL, Makefile.in, configure.in, version.h: 14797 crank version to 1.6.6 14798 [cfd08689e597] 14799 14800 * auth/afs.c: 14801 #undef VOID to get rid of an AFS warning 14802 [b40760564dc1] 14803 14804 * env.c: 14805 Use easprintf instead of emalloc + sprintf for some things. 14806 [e7bfe2e69a03] 14807 148082002-03-16 Todd C. Miller <Todd.Miller@courtesan.com> 14809 14810 * lex.yy.c, sudo.tab.c: 14811 regen 14812 [35327104383d] 14813 14814 * parse.c, parse.lex, parse.yacc, testsudoers.c: 14815 Remove Chris Jepeway's email address so people don't bug him ;-) 14816 [c03410747a69] 14817 148182002-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 14819 14820 * sudo.c: 14821 Move endpwent() to be after set_perms(PERM_RUNAS, ...) and also call 14822 endgrent() at the same time. 14823 [28b6097d5d1a] 14824 148252002-02-22 Todd C. Miller <Todd.Miller@courtesan.com> 14826 14827 * INSTALL: 14828 Make it clear which configure options take arguments. 14829 [38529e7efad0] 14830 148312002-01-25 Todd C. Miller <Todd.Miller@courtesan.com> 14832 14833 * compat.h: 14834 HP-UX 9.x has RLIMIT_* but no RLIM_INFINITY. If there is no 14835 RLIM_INFINITY, just pretend it is -1. This works because we only 14836 check for RLIM_INFINITY and do not set anything to that value. 14837 [53173d34e6eb] 14838 148392002-01-22 Todd C. Miller <Todd.Miller@courtesan.com> 14840 14841 * auth/pam.c: 14842 Zero and free allocated memory when there is a conversation error. 14843 [e342133db579] 14844 14845 * auth/bsdauth.c: 14846 Use sigaction() not signal() 14847 [126c2790561f] 14848 14849 * INSTALL: 14850 Mention that some linux kernels have broken POSIX saved ID support 14851 [571ef1a893d3] 14852 14853 * CHANGES: 14854 checkpoint for 1.6.5p2 14855 [9e9e456f7f43] 14856 14857 * configure: 14858 regen 14859 [d53703a46708] 14860 14861 * configure.in: 14862 Add --disable-setreuid flag 14863 [3b9f2679cb55] 14864 14865 * INSTALL: 14866 Document new --disable-setreuid option and change description for 14867 --disable-saved-ids to match new error message. 14868 [14fd3e5f60a5] 14869 14870 * set_perms.c: 14871 fatal() now takes an argument that determines whether or not to call 14872 perror(). 14873 [d826b25e62ff] 14874 14875 * TROUBLESHOOTING: 14876 Update for new error messages from set_perms() 14877 [78007c3f76a9] 14878 14879 * PORTING: 14880 Update for new error messages from set_perms() 14881 [60c545a6bcff] 14882 148832002-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 14884 14885 * auth/pam.c: 14886 Make this compile w/o warnings 14887 [b90843a29af5] 14888 14889 * auth/pam.c: 14890 Mention that we can't use pam_acct_mgmt() 14891 [1dfc5a6e0479] 14892 14893 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c: 14894 The user's password was not zeroed after use when AIX 14895 authentication, BSD authentication, FWTK or PAM was in use. 14896 [b18fff30b1e7] 14897 148982002-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 14899 14900 * auth/pam.c: 14901 Avoid giving PAM a NULL password response, use the empty string 14902 instead. This avoids a log warning when the user hits ^C at the 14903 password prompt when PAM is in use. 14904 [c3315805e4e4] 14905 14906 * auth/pam.c: 14907 Don't check the return value of pam_setcred(). In Linux-PAM 0.75 14908 pam_setcred() returns the last saved return code, not the return 14909 code for the setcred module. Because we haven't called 14910 pam_authenticate(), this is not set and so pam_setcred() returns 14911 PAM_PERM_DENIED. 14912 [73db145fa179] 14913 14914 * Makefile.in: 14915 Don't need a '/' between $(DESTDIR) and a directory. 14916 [0901ca618176] 14917 14918 * Makefile.binary: 14919 Don't need a '/' between $(DESTDIR) and a directory. 14920 [cd7eb6098b87] 14921 149222002-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 14923 14924 * configure: 14925 regen 14926 [41b12c039282] 14927 14928 * configure.in: 14929 o BSDi also has a bogus setreuid() o Old FreeBSD has a bogus 14930 setreuid() o new NetBSD has a real setreuid() o add check for 14931 freeifaddrs() if getifaddrs() exists. 14932 [a82ee3b01733] 14933 14934 * config.h.in, interfaces.c: 14935 Older BSDi releases lack freeifaddrs() so add a test for that and if 14936 it is not present just use free(). 14937 [6270671ea9d5] 14938 149392002-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 14940 14941 * CHANGES, RUNSON: 14942 Checkpoint for 1.6.5p1 14943 [26134ecf9b36] 14944 14945 * auth/passwd.c: 14946 Return AUTH_FAILURE in passwd_init() if skeyaccess() denies access 14947 to normal passwords, not AUTH_FATAL (which just causes an exit). 14948 [785e0f4bc0e2] 14949 14950 * visudo.c: 14951 Don't use memory after it has been freed. 14952 [c60492739fdb] 14953 14954 * auth/passwd.c: 14955 skeyaccess() wants a struct passwd * not a char *; Patch from 14956 Phillip E. Lobbes 14957 [65a1d3806fcd] [SUDO_1_6_5] 14958 14959 * BUGS: 14960 ++version 14961 [b2e1825e692e] 14962 14963 * CHANGES, RUNSON, TODO: 14964 checkpoint for sudo 1.6.5 14965 [d730945622e7] 14966 149672002-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 14968 14969 * configure: 14970 regen 14971 [49744c403ac9] 14972 14973 * INSTALL, INSTALL.binary, Makefile.in, README, configure.in: 14974 version 1.6.5 14975 [ec30a5f7fc45] 14976 14977 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 14978 visudo.man.in: 14979 sudo version 1.6.5 14980 [458a3bed535d] 14981 14982 * logging.c: 14983 o when invoking the mailer as root use a hard-coded environment that 14984 doesn't include any info from the user's environment. Basically 14985 paranoia. 14986 14987 o Add support for the NO_ROOT_MAILER compile-time option and run the 14988 mailer as the user and not root if NO_ROOT_MAILER is defined. 14989 [4df351ec92ce] 14990 14991 * set_perms.c, sudo.h: 14992 Bring back PERM_FULL_USER 14993 [edb6039bb284] 14994 14995 * configure: 14996 regen 14997 [3eb2943afa03] 14998 14999 * version.h: 15000 version 1.6.5 15001 [044fc9a0c72b] 15002 15003 * INSTALL, config.h.in, configure.in: 15004 Add --disable-root-mailer option to run the mailer as the user and 15005 not root. 15006 [e9f805397963] 15007 15008 * CHANGES: 15009 checkpoint for 1.6.4p2 15010 [b58aae5aa98a] 15011 15012 * PORTING: 15013 Mention the "seteuid(0): Operation not permitted" problem here too 15014 just for good measure. 15015 [90135b37a691] 15016 150172002-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 15018 15019 * env.c, getspwuid.c, sudo.c: 15020 The SHELL environment variable was preserved from the user's 15021 environment instead of being reset based on the passwd database when 15022 the "env_reset" option was used. Now it is reset as it should be. 15023 [300066ef3c71] 15024 15025 * configure: 15026 regen 15027 [a47d779e6552] 15028 15029 * INSTALL, TROUBLESHOOTING, config.h.in, configure.in, set_perms.c, 15030 sudo.c: 15031 Add a configure option to turn off use of POSIX saved IDs 15032 [fb18cc8e94d0] 15033 15034 * configure: 15035 regen 15036 [d4f2f20025b6] 15037 15038 * configure.in: 15039 add --with-efence option 15040 [45c4f33a8e88] 15041 15042 * sudo.c: 15043 Only OR in MODE_RESET_HOME if MODE_RUN is set. Fixes a problem where 15044 "sudo -l" would not work if always_set_home was set. 15045 [c3a6de6c4800] 15046 15047 * lex.yy.c: 15048 regen 15049 [417424452998] 15050 15051 * parse.lex: 15052 Quoted commas were not being treated correctly in command line 15053 arguments. 15054 [753415541b37] 15055 15056 * sudo.c: 15057 o Move the call to rebuild_env() until after MODE_RESET_HOME is set. 15058 Otherwise, the set_home option has no effect. 15059 15060 o Fix use of freed memory when the "fqdn" flag is set. This was 15061 introduced by the fix for the "segv when gethostbynam() fails" bug. 15062 Also, we no longer call set_fqdn() if the "fqdn" flag is not set so 15063 there is no need to check the "fqdn" flag in set_fqdn() itself. 15064 [4b6a4245c04e] 15065 15066 * env.c: 15067 Add 'continue' statements to optimize the switch statement. From 15068 Solar. 15069 [a82c76975ae5] 15070 150712002-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 15072 15073 * sudoers.cat, sudoers.man.in: 15074 Regen from new sudoers.pod 15075 [6ecc07b3d0e1] [SUDO_1_6_4] 15076 15077 * sudoers.pod: 15078 Add caveat about stay_setuid flag 15079 [9d228a7bea1b] 15080 15081 * sudo.c: 15082 If set_perms == set_perms_posix and the stay_setuid flag is not set, 15083 set all uids to 0 and use set_perms_fallback(). 15084 [c4e54d1ec86f] 15085 15086 * set_perms.c, sudo.h: 15087 Remove PERM_FULL_USER (which is no longer used) and add 15088 PERM_FULL_ROOT (used when exec'ing the mailer). 15089 [15406c522ea2] 15090 15091 * logging.c: 15092 Use set_perms(PERM_FULL_ROOT, 0) before exec'ing the mailer since we 15093 never want to run the mailer setuid. 15094 [2294853e0666] 15095 150962002-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 15097 15098 * sudo.cat, sudo.man.in, sudo.pod, visudo.cat, visudo.man.in, 15099 visudo.pod: 15100 Use sudo.ws instead of courtesan.com in URLs 15101 [55204002a308] 15102 15103 * Makefile.binary, Makefile.in: 15104 Fix mansect substitution 15105 [b7b5cbc3aa91] 15106 15107 * Makefile.in: 15108 Substitute man sections in Makefile.binary 15109 [040deb785e56] 15110 15111 * Makefile.binary: 15112 Sync install targets with Makefile.in and substitute in man 15113 sections. 15114 [77882a275281] 15115 15116 * INSTALL, INSTALL.binary: 15117 version is 1.6.4 15118 [0f87aabbcb70] 15119 15120 * Makefile.in: 15121 Repair bindist target 15122 [8d43bfe7e2d1] 15123 15124 * CHANGES: 15125 sync for 1.6.4 15126 [13ca3d4a0a72] 15127 151282002-01-10 Todd C. Miller <Todd.Miller@courtesan.com> 15129 15130 * install-sh: 15131 Fix case where neither whoami nor id are found 15132 [424dd270bc47] 15133 151342002-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 15135 15136 * install-sh: 15137 If neither whoami nor id exists, just assume we are root. 15138 [2d2644e42c53] 15139 15140 * alloc.c: 15141 Add explicit cast to (VOID *) on malloc/realloc. Seems to be needed 15142 on AIX which for some reason isn't pulling in the malloc prototype. 15143 [231440d2ee3b] 15144 151452002-01-08 Todd C. Miller <Todd.Miller@courtesan.com> 15146 15147 * Makefile.in, aclocal.m4, compat.h, parse.c, sudo.c: 15148 (c) 2002 15149 [700e3b41a68e] 15150 15151 * CHANGES: 15152 checkpoint 15153 [33e604bd8d5b] 15154 15155 * sudo.c: 15156 Defer assigning new environment until right before the exec. 15157 [f13c49e75c1c] 15158 15159 * parse.c: 15160 kill extra blank line 15161 [12ef22e9dae3] 15162 151632002-01-07 Todd C. Miller <Todd.Miller@courtesan.com> 15164 15165 * configure: 15166 regen 15167 [a6cd2d788f74] 15168 15169 * configure.in: 15170 Use -O not -O2 for m88k-motorola-sysv* since motorola gcc-derived 15171 compiler doesn't recognise -O2. 15172 [5234aa543692] 15173 15174 * HISTORY: 15175 Clarify origins of Root Group sudo a bit based on info from 15176 billp@rootgroup.com 15177 [4deef01c4208] 15178 151792002-01-03 Todd C. Miller <Todd.Miller@courtesan.com> 15180 15181 * LICENSE: 15182 2002 15183 [6c8e089dbd1a] 15184 15185 * CHANGES: 15186 checkpoint for 1.6.4rc1 15187 [3349eb87a49f] 15188 151892002-01-02 Todd C. Miller <Todd.Miller@courtesan.com> 15190 15191 * config.h.in: 15192 now generated via autoheader 15193 [84657d303cb9] 15194 15195 * configure: 15196 regen 15197 [207bfa6a13f6] 15198 15199 * compat.h: 15200 Move in some stuff that was previously in config.h. 15201 [e576d8b6480f] 15202 15203 * aclocal.m4, configure.in: 15204 Add info for autoheader. 15205 [0549cd5da27c] 15206 152072002-01-01 Todd C. Miller <Todd.Miller@courtesan.com> 15208 15209 * Makefile.in: 15210 o Add DESTDIR support o Use -M, -O, and -G instead of -m, -o, and 15211 -g to facilitate non-root installs 15212 [619216038f56] 15213 15214 * install-sh: 15215 Add -M option (like -m but only for root) If we can't find "whoami", 15216 use "id" w/ some sed. 15217 [b39121c8b792] 15218 15219 * configure: 15220 regen 15221 [b39b93ff9804] 15222 15223 * configure.in: 15224 allow user to always override mansectsu and mansectform 15225 [0fca5e63bd90] 15226 152272001-12-31 Todd C. Miller <Todd.Miller@courtesan.com> 15228 15229 * mkinstalldirs: 15230 update from autoconf 2.52 15231 [07bd75a508c3] 15232 15233 * config.guess, config.sub: 15234 Update from autoconf 2.52 15235 [857b90fe31b7] 15236 15237 * configure: 15238 regen with autoconf 2.52 15239 [08e7d1ea2aeb] 15240 15241 * configure.in: 15242 o Call AC_PROG_CC_STDC to find out how to run the compiler in ANSI 15243 mode o Remove compiler-specific checks for HP-UX now that we use 15244 AC_PROG_CC_STDC 15245 [d433a70b6208] 15246 15247 * RUNSON: 15248 Checkpoint 15249 [babf6d2235d1] 15250 15251 * auth/pam.c: 15252 o Add pam_prep_user function to call pam_setcred() for the target 15253 user; on Linux this often sets resource limits. o When calling 15254 pam_end(), try to convert the auth->result to a PAM_FOO value. 15255 This is a hack--we really need to stash the last PAM_FOO value 15256 received and use that instead. 15257 [6ad6f340dd2a] 15258 15259 * set_perms.c, sudo.h: 15260 o Add pam_prep_user function to call pam_setcred() for the target 15261 user; on Linux this often sets resource limits. 15262 [67795421ac82] 15263 15264 * env.c: 15265 Fix off by one error in number of bytes allocated via malloc (does 15266 not affected any released version of sudo). 15267 [5f5915360111] 15268 152692001-12-30 Todd C. Miller <Todd.Miller@courtesan.com> 15270 15271 * lex.yy.c: 15272 regen 15273 [8208c0277775] 15274 15275 * parse.lex: 15276 Allow '@', '(', ')', ':' in arguments to a defaults variable w/o 15277 requiring that they be quoted. 15278 [ae59bc8f68dd] 15279 15280 * sudoers.cat, sudoers.man.in, sudoers.pod: 15281 Mention that no double quotes are needed when 15282 adding/deleting/assigning a single value to a list. 15283 [25efc940a1f0] 15284 15285 * Makefile.in: 15286 Don't rely on mkdefaults being executable, call perl explicitly. 15287 [6edc97ba5f1d] 15288 15289 * sudo.tab.c: 15290 regen 15291 [49130b2e7e4d] 15292 15293 * parse.yacc: 15294 Remove some XXX that are no longer relevant. 15295 [d460ac0d3767] 15296 15297 * defaults.c: 15298 o Roll our own loop instead of using strpbrk() for better 15299 grokability o When adding to a list we must malloc() and use 15300 memcpy(), not strdup() since we must only copy len bytes from str. 15301 [649bef08e1f0] 15302 153032001-12-21 Todd C. Miller <Todd.Miller@courtesan.com> 15304 15305 * sudo.tab.c: 15306 regen 15307 [f0bbf2c38c0e] 15308 15309 * parse.yacc: 15310 typo in comment 15311 [2563711ff593] 15312 153132001-12-19 Todd C. Miller <Todd.Miller@courtesan.com> 15314 15315 * CHANGES: 15316 checkpoint 15317 [a6d8a29fb30e] 15318 15319 * configure: 15320 regen 15321 [bdfcaaf3bd13] 15322 15323 * configure.in: 15324 avoid the -g flag unless --with-devel was specified 15325 [a976707bef30] 15326 15327 * Makefile.in: 15328 mkdefaults, def_data.in and sigaction.c were missing from the 15329 tarball 15330 [6917ffbaa412] 15331 15332 * Makefile.in: 15333 def_data.c was missing 15334 [87c78b11453d] 15335 153362001-12-18 Todd C. Miller <Todd.Miller@courtesan.com> 15337 15338 * env.c: 15339 Fix setting of $USER and $LOGNAME in the non-reset_env case. Also 15340 allow HOME, SHELL, LOGNAME, and USER to be specified in keep_env 15341 [fc8698e6a45e] 15342 15343 * TODO: 15344 Another TODO item 15345 [6f251d6cd466] 15346 15347 * sudoers: 15348 Add comment for Default section so folks know where it should go. 15349 [7edba626f392] 15350 153512001-12-17 Todd C. Miller <Todd.Miller@courtesan.com> 15352 15353 * tgetpass.c: 15354 Use TCSETAF, not TCSETA to set terminal in termio case 15355 [fbd172f6c5d3] 15356 15357 * sudoers.cat, sudoers.man.in: 15358 regen from sudoers.pod 15359 [64edd2de816e] 15360 15361 * sudoers.pod: 15362 o Typo, Runas_User_List should be Runas_List o a User_List can not 15363 contain a uid o mention that the Defaults section should come after 15364 Alias definitions but before the user specifications 15365 [54070ba2092b] 15366 153672001-12-15 Todd C. Miller <Todd.Miller@courtesan.com> 15368 15369 * sudoers.cat, sudoers.man.in: 15370 regen 15371 [e62d1d97693c] 15372 15373 * sudoers.pod: 15374 Fix listpw and verifypw sections, they were not being formatted 15375 properly. 15376 [123868c2f3e9] 15377 15378 * sudoers.cat, sudoers.man.in: 15379 regen 15380 [f94841f8b374] 15381 15382 * sudoers.pod: 15383 fix typos 15384 [f278f1c1184e] 15385 15386 * configure: 15387 regen 15388 [d2270049ba9f] 15389 15390 * config.h.in, configure.in: 15391 use AC_SYS_POSIX_TERMIOS instead of rolling our own 15392 [c1a13f1354b9] 15393 15394 * README: 15395 Reference sudo.ws not courtesan.com 15396 [ca13be67ebd7] 15397 15398 * PORTING: 15399 Add notes on shadow passwords 15400 [aa13863f2314] 15401 15402 * BUGS: 15403 In list mode (sudo -l), characters escaped with a backslash are 15404 shown verbatim with the backslash. 15405 [1a75a2858be2] 15406 15407 * sudoers: 15408 Add simple examples from OpenBSD (Marc Espie) 15409 [3ae9a9ae4125] 15410 15411 * tgetpass.c: 15412 Catch SIGTTIN and SIGTTOU too and treat them like SIGTSTP. 15413 [f8817699ee10] 15414 15415 * CHANGES: 15416 minor prettyification 15417 [f523587929b9] 15418 15419 * CHANGES: 15420 Updated change log 15421 [39d9010ee7a8] 15422 15423 * testsudoers.c: 15424 Fix CIDR handling here too. 15425 [c91db8344c32] 15426 15427 * auth/pam.c: 15428 Apparently a NULL response is OK 15429 [83bae61078d9] 15430 15431 * TODO: 15432 Checkpoint for upcoming beta release 15433 [efb95c09df2a] 15434 15435 * TROUBLESHOOTING: 15436 Many people believe that adding a runas spec should obviate the need 15437 for the -u flag. It does not. 15438 [c698bad85b0e] 15439 15440 * RUNSON: 15441 checkpoint update for upcoming 1.6.4 beta 15442 [009e465a0a45] 15443 15444 * config.h.in: 15445 o Add HAVE_STDLIB_H and HAVE_MEMORY_H o Define HAVE_STRINGS_H even 15446 if HAVE_STRING_H is defined -- this is safe now 15447 [d27c035f4e14] 15448 15449 * PORTING: 15450 Add signals section 15451 [2d24c13cb3c8] 15452 15453 * configure: 15454 regen 15455 [2b80a939e2ed] 15456 15457 * configure.in: 15458 Fix check for sigaction_t 15459 [6fa41c89ab20] 15460 15461 * sudo.c: 15462 XXX - should call find_path() as runas user, not root. Can't do 15463 that until the parser changes though. 15464 [f0b4f85651bd] 15465 15466 * sudo.c: 15467 If find_path() fails as root, try again as the invoking user (useful 15468 for NFS). Idea from Chip Capelik. 15469 [e03fa7872692] 15470 15471 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in: 15472 Regenerate after pod file changes 15473 [48e4bd75ec21] 15474 15475 * def_data.c, def_data.h, def_data.in, set_perms.c, sudo.c, sudo.h, 15476 sudo.pod, sudoers.pod: 15477 Add new sudoers option "preserve_groups". Previously sudo would not 15478 call initgroups() if the target user was root. Now it always calls 15479 initgroups() unless the -P command line option or the 15480 "preserve_groups" sudoers option is set. Idea from TJ Saunders. 15481 [4f730359f101] 15482 154832001-12-14 Todd C. Miller <Todd.Miller@courtesan.com> 15484 15485 * compat.h, config.h.in: 15486 Use new HAVE_SIGACTION_T define 15487 [dfb25f3cae5b] 15488 15489 * logging.c: 15490 Fix compilation on K&C 15491 [7355e3275e34] 15492 15493 * configure: 15494 regen 15495 [a710584f92f0] 15496 15497 * configure.in: 15498 Add check for sigaction_t -- IRIX already defines this so don't 15499 redefine it. 15500 [df9c5737f6da] 15501 15502 * snprintf.c: 15503 fix typo 15504 [3d782b8134c8] 15505 15506 * interfaces.c: 15507 need stdlib.h here too 15508 [c789d8973ab2] 15509 15510 * configure: 15511 regen 15512 [44822856bf46] 15513 15514 * configure.in: 15515 Remove redundant checks for string.h, strings.h and unistd.h 15516 [933c94f8bbf4] 15517 15518 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 15519 visudo.man.in: 15520 Regen from pod files 15521 [ad18c590f638] 15522 15523 * BUGS: 15524 Update for 1.6.4 15525 [26bc88b69d22] 15526 15527 * configure, lex.yy.c, sudo.tab.c: 15528 regen 15529 [bef89fd6fa2d] 15530 15531 * strerror.c: 15532 Return EINVAL if errnum > sys_nerr 15533 [0512374e6661] 15534 15535 * auth/sudo_auth.h: 15536 o Update copyright year 15537 [a877016db6e2] 15538 15539 * LICENSE, Makefile.binary, Makefile.in, aclocal.m4, compat.h, 15540 config.h.in, defaults.h, interfaces.h, pathnames.h.in, sudo.h, 15541 sudo.pod: 15542 o Update copyright year 15543 [e15a1b39039f] 15544 15545 * configure.in: 15546 o Don't define STDC_HEADERS unconditionally for IRIX o Update 15547 copyright year 15548 [82a8cb819e07] 15549 15550 * README: 15551 update version 15552 [d82e523a16b4] 15553 15554 * auth/afs.c, auth/aix_auth.c, auth/bsdauth.c, auth/dce.c, 15555 auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/passwd.c, 15556 auth/rfc1938.c, auth/secureware.c, auth/securid.c, auth/sia.c, 15557 auth/sudo_auth.c, logging.c, parse.c, parse.lex, parse.yacc, 15558 set_perms.c, snprintf.c, sudo.c, testsudoers.c, tgetpass.c, utime.c, 15559 visudo.c: 15560 o Reorder some headers and use STDC_HEADERS define properly o Update 15561 copyright year 15562 [fe39f76b3795] 15563 15564 * lsearch.c: 15565 o Reorder some headers and use STDC_HEADERS define properly o Update 15566 copyright year 15567 [764ba3d4fa13] 15568 15569 * getspwuid.c, goodpath.c, interfaces.c: 15570 o Reorder some headers and use STDC_HEADERS define properly o Update 15571 copyright year 15572 [fb46d46140d4] 15573 15574 * getcwd.c: 15575 o Reorder some headers and use STDC_HEADERS define properly o Update 15576 copyright year 15577 [b199d70ac7ab] 15578 15579 * alloc.c, check.c, defaults.c, env.c, fileops.c, find_path.c, 15580 fnmatch.c: 15581 o Reorder some headers and use STDC_HEADERS define properly o Update 15582 copyright year 15583 [dab8f192a3ed] 15584 15585 * configure: 15586 regen 15587 [156658f25cea] 15588 15589 * tgetpass.c: 15590 flags set in signal handlers should be volatile sig_atomic_t 15591 [c22931a5535e] 15592 15593 * config.h.in, configure.in: 15594 Add checks for volatile and sig_atomic_t 15595 [b03b3341381d] 15596 15597 * configure, lex.yy.c: 15598 regen 15599 [ed9daba88217] 15600 15601 * def_data.c, def_data.h, def_data.in, defaults.c, env.c, find_path.c, 15602 sudo.c, sudoers.pod: 15603 Remove "secure_path" Defaults option since it cannot work with the 15604 existing parser. 15605 [c9e54a0f5971] 15606 15607 * find_path.c, sudo.c: 15608 Unset "secure_path" if user_is_exempt() 15609 [fb7544565ae8] 15610 15611 * env.c, pathnames.h.in: 15612 o Remove assumption that PATH and TERM are not listed in env_keep o 15613 If no PATH is in the environment use a default value o If TERM is 15614 not set in the non-reset case also give it a default value. 15615 [c987eb7df268] 15616 15617 * aclocal.m4, configure.in, defaults.c, pathnames.h.in: 15618 _PATH_SENDMAIL -> _PATH_SUDO_SENDMAIL so --without-sendmail works on 15619 systems that define in paths.h 15620 [51865b0cdebf] 15621 15622 * auth/passwd.c, auth/sudo_auth.c, auth/sudo_auth.h: 15623 Add support for skeyaccess(3) if it is present in libskey. 15624 [8add77c7d3e7] 15625 156262001-12-13 Todd C. Miller <Todd.Miller@courtesan.com> 15627 15628 * sudo.c: 15629 Only need to do 'lc = login_getclass(NULL)' if lc == NULL 15630 [5a3d3cbf2c6d] 15631 15632 * parse.lex: 15633 '\\' is a perfectly legal character to have in a command line 15634 argument. 15635 [c15a466ef00e] 15636 15637 * sudo.c: 15638 o Defer call to set_fqdn() until it is safe to use log_error() o 15639 Don't print errno string value if gethostbyname fails, it is not 15640 relevant 15641 [c0c6bcf08bcb] 15642 15643 * parse.c: 15644 Fix CIDR -> in_addr_t conversion. 15645 [2f307ebeb63f] 15646 156472001-12-12 Todd C. Miller <Todd.Miller@courtesan.com> 15648 15649 * sudoers.pod: 15650 Remove an extra "User_List" in the User_Spec definition From 15651 ybertrand AT snoopymail.com 15652 [97bde59ea280] 15653 15654 * parse.c: 15655 Make 'listpw=never' work for users who are not explicitly mentioned 15656 in sudoers. 15657 [258f0f30a428] 15658 15659 * sudoers.pod: 15660 Remove gratuitous '=' in EBNF grammar; era AT iki.fi 15661 [4b0f03872ee1] 15662 15663 * sudoers.pod: 15664 Document new list Defaults type and convert env_keep and env_delete 15665 to lists. Document new env_check option. 15666 [a07f1f079fe3] 15667 15668 * lex.yy.c, sudo.tab.c, sudo.tab.h: 15669 regen parser 15670 [e39ac6c6581b] 15671 15672 * parse.lex: 15673 Don't let '#' appear in a {WORD} and restrict #foo in a Runas spec 15674 to #[0-9-]+. 15675 [69c5388908f3] 15676 15677 * configure: 15678 regen 15679 [0f1877b88cb3] 15680 15681 * aclocal.m4: 15682 Simpler SUDO_FUNC_ISBLANK that uses AC_TRY_LINK 15683 [6545503ae361] 15684 15685 * config.h.in, configure.in: 15686 Add check for skeyaccess(3) 15687 [6caf69fe6359] 15688 15689 * visudo.pod: 15690 Document new -c, -f, and -q options 15691 [13d0203c21d3] 15692 15693 * visudo.c: 15694 o Add -f option (alternate sudoers file) o Convert to use getopt(3) 15695 [4c2b664d617d] 15696 15697 * configure: 15698 regen 15699 [6d5bd932e7b5] 15700 15701 * aclocal.m4, config.h.in, configure.in: 15702 Add check for isblank and a replacement macro if it doesn't exist. 15703 [b524f5e4f953] 15704 157052001-12-11 Todd C. Miller <Todd.Miller@courtesan.com> 15706 15707 * visudo.c: 15708 In check-only mode, don't create sudoers if it does not already 15709 exist. 15710 [c748a2d5acad] 15711 15712 * parse.yacc: 15713 o Add a new token, DEFVAR, to indicate a Defaults variable name o 15714 Add support for "+=" and "-=" list operators o replace some 1 and 0 15715 with TRUE and FALSE for greater legibility. 15716 [554cb174b37e] 15717 15718 * parse.lex: 15719 o Use exclusive start conditions to remove some ambiguity in the 15720 lexer. Also reorder some things for clarity. o Add support for 15721 "+=" and "-=" list operators. o Use the new DEFVAR token to denote 15722 a Defaults variable name. 15723 [3a2cf8323e26] 15724 15725 * sudo.h: 15726 Prototype init_envtables() 15727 [b74916469dab] 15728 15729 * env.c: 15730 o Convert environment handling to use lists instead of strings. 15731 This greatly simplifies routines that need to do "foreach" type 15732 operations. o Add new init_envtables() function to set env_check 15733 and env_delete defaults based on initial_badenv_table and 15734 initial_checkenv_table (formerly sudo_badenv_table). 15735 [0a8b404658b6] 15736 15737 * defaults.c, defaults.h: 15738 o Add a new LIST type and functions to manipulate it. o This is for 15739 use with environment handling variables. o Call new 15740 init_envtables() routine inside init_defaults() to initialize the 15741 environment lists. 15742 [ae73e64f0902] 15743 15744 * def_data.c, def_data.h, def_data.in: 15745 Convert environment options to use the new LIST type and add a new 15746 one, env_check that only deletes if the sanity check fails. 15747 [3019503936de] 15748 15749 * testsudoers.c: 15750 Add dummy version of init_envtables() 15751 [9d9e3ee609d9] 15752 15753 * parse.yacc: 15754 honor quiet mode 15755 [8330fba6167c] 15756 15757 * visudo.c: 15758 Add check-only mode 15759 [dab411bc8c35] 15760 15761 * mkdefaults: 15762 Fix generation of entries with NULL descriptions. 15763 [ea75b9fed02e] 15764 157652001-12-09 Todd C. Miller <Todd.Miller@courtesan.com> 15766 15767 * tgetpass.c: 15768 Use sigaction_t and quiet a gcc warning. 15769 [6f67d719c452] 15770 15771 * sudo.c: 15772 Must reset signal handlers before we exec 15773 [300418120e1a] 15774 15775 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c, 15776 auth/sudo_auth.c: 15777 Be carefule now that tgetpass() can return NULL (user hit ^C). PAM 15778 version needs testing. Set SIGTSTP to SIG_DFL during password entry 15779 so user can suspend us. 15780 [00304aa58747] 15781 15782 * tgetpass.c: 15783 Add support for interrupting/suspending tgetpass via keyboard input. 15784 If you suspend sudo from the password prompt and resume it will re- 15785 prompt you. 15786 [4af2b5101d32] 15787 15788 * sudo.c: 15789 Don't block keyboard interrupt signals, just set them to SIG_IGN. 15790 [d46d7f67ef6b] 15791 157922001-12-08 Todd C. Miller <Todd.Miller@courtesan.com> 15793 15794 * config.h.in: 15795 add back HAVE_SIGACTION 15796 [c9c7702c603e] 15797 15798 * configure: 15799 regen 15800 [09fe669d337f] 15801 15802 * config.h.in, configure.in, logging.c, sudo.c, visudo.c: 15803 Kill POSIX_SIGNALS define and old signal support now that we emulate 15804 POSIX ones Also be sure to correctly initialize struct sigaction. 15805 [4bc2a6dbb2be] 15806 15807 * strerror.c: 15808 Don't need config.h or "#ifndef HAVE_STRERROR" wrapper. 15809 [1ad64a19f328] 15810 15811 * compat.h: 15812 Add scaffolding for POSIX signal emulation 15813 [945861d4c93b] 15814 15815 * sigaction.c: 15816 o Add missing ';' so this compiles o Can't use NULL since we don't 15817 include stdio.h 15818 [04d0cac7438f] 15819 15820 * sigaction.c: 15821 Emulate sigaction() using sigvec() 15822 [d0b54a989875] 15823 158242001-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 15825 15826 * sudoers.pod: 15827 Document new behavior of negative values of timestamp_timeout Fix a 15828 typo 15829 [4c0716570d01] 15830 15831 * sudo.pod: 15832 Add security note about command not being logged after 'sudo su' and 15833 friends. 15834 [43294851a33c] 15835 15836 * sudo.pod: 15837 Mention that -V prints default values when run as root, including 15838 the list of environment variables to clear. 15839 [d9e5e550a8c3] 15840 15841 * Makefile.in: 15842 Run pod2man with --quotes=none to avoid stupid quoting of C<> 15843 entries. 15844 [997b23c35dbe] 15845 158462001-11-12 Todd C. Miller <Todd.Miller@courtesan.com> 15847 15848 * auth/sudo_auth.c, def_data.c, def_data.h, def_data.in, sudoers.pod: 15849 Add mail_badpass option Also modify mail_always behavior to also 15850 send mail when the password is wrong 15851 [838d40ccafce] 15852 15853 * env.c, sudo.c, sudo.h: 15854 Dump default bad env table when 'sudo -V' is run by root. 15855 [f67f1b8048b0] 15856 15857 * sudoers.pod: 15858 document env_delete 15859 [d74f893663a2] 15860 15861 * env.c: 15862 Add support for '*' in env_keep when not resetting the environment 15863 (ie: the normal case). 15864 [fd4fb62ea8fd] 15865 15866 * env.c: 15867 Add env_delete variable that lets the user replace/add to the 15868 bad_env_table. Allow '*' wildcard in env_keep entries. 15869 [aa728bc35e29] 15870 158712001-11-06 Todd C. Miller <Todd.Miller@courtesan.com> 15872 15873 * mkinstalldirs: 15874 Force umask to 022 to guarantee sane directory permissions. 15875 [9ab3cfe70569] 15876 158772001-11-02 Todd C. Miller <Todd.Miller@courtesan.com> 15878 15879 * Makefile.in: 15880 add sudo.tab.h and sudo.tab.c to sudo.tab.o dependency 15881 [671010465e6f] 15882 15883 * mkdefaults: 15884 fix breakage in last commit 15885 [8318f8851e56] 15886 15887 * Makefile.in: 15888 acsite.m4 -> aclocal.m4 15889 [30c146873a01] 15890 15891 * check.c: 15892 fix I_TS_TIMEOUT vs. I_TIMESTAMP_TIMEOUT pasto in previous commit 15893 [4dc8b39954da] 15894 15895 * def_data.c: 15896 regenerated from def_data.in 15897 [915ea16ce1eb] 15898 15899 * check.c, defaults.c, defaults.h: 15900 Add new T_UINT type that most things use instead of T_INT If 15901 timestamp_timeout is < 0 then treat the ticket as never expiring (to 15902 be expired manually by the user). 15903 [3a3a636a2a5d] 15904 15905 * def_data.in: 15906 change most T_INT -> T_UINT 15907 [a2228d2457af] 15908 15909 * mkdefaults: 15910 fix warning when no args 15911 [ca70a5394af5] 15912 15913 * visudo.c: 15914 Change 2 Exit() -> exit() Avoid stdio in Exit() and call _exit() if 15915 we are a signal handler. We no longer print the signal number but 15916 the user can just check the exit value for that. 15917 [dc424f631fef] 15918 159192001-10-16 Todd C. Miller <Todd.Miller@courtesan.com> 15920 15921 * logging.c: 15922 when setting up pipes in child process check for case where stdin == 15923 pipe fd 0 15924 [518112d76184] 15925 159262001-10-11 Todd C. Miller <Todd.Miller@courtesan.com> 15927 15928 * visudo.c: 15929 Ignore editor exit value since XPG4 says vi's exit value is the 15930 count of editing errors made (failed searches, etc). 15931 [b9d952284865] 15932 159332001-10-05 Todd C. Miller <Todd.Miller@courtesan.com> 15934 15935 * configure: 15936 regen 15937 [cb3aa586f03b] 15938 15939 * configure.in: 15940 sco now is identified by config.guess as *-sco-* 15941 [46664bbdea61] 15942 15943 * configure.in: 15944 Check for getspnam() in -lgen if not in -lc for UnixWare. 15945 [0f152ad1ba93] 15946 159472001-09-18 Todd C. Miller <Todd.Miller@courtesan.com> 15948 15949 * sudoers.pod, visudo.pod: 15950 "upper case" -> "uppercase" 15951 [f9151f232326] 15952 15953 * sudoers.pod: 15954 fix typos and grammar; pjanzen@foatdi.harvard.edu 15955 [2855d73d0237] 15956 159572001-08-28 Todd C. Miller <Todd.Miller@courtesan.com> 15958 15959 * sudoers.pod: 15960 Missing word (specify); krapht@secureops.com 15961 [65523eb37a2c] 15962 159632001-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 15964 15965 * sudo.c: 15966 If we fail to lookup a login class, apply the default one. 15967 [d4869faa6816] 15968 15969 * logging.c: 15970 In log_error() free message, not logline unconditionally, then free 15971 logline if it is not the same as message. No function change but 15972 this mirrors how they are allocated. 15973 [565e5f6cc643] 15974 159752001-07-17 Todd C. Miller <Todd.Miller@courtesan.com> 15976 15977 * configure: 15978 regenerate 15979 [834a48f548a2] 15980 15981 * configure.in: 15982 remove some backslash quotes that are unneeded 15983 [50d401d6e2ca] 15984 15985 * configure.in: 15986 o Tweaks to make this work with autoconf-2.50 o Use AC_LIBOBJ 15987 instead of changing LIBOBJS directly o Use AC_REPLACE_FUNCS where we 15988 can o Use AC_CHECK_FUNCS instead of AC_CHECK_FUNC so we don't have 15989 to AC_DEFINE things manually. 15990 [f502c5f15f92] 15991 15992 * config.guess, config.sub: 15993 Updated from autoconf-2.50 15994 [6140205915ef] 15995 159962001-05-22 Todd C. Miller <Todd.Miller@courtesan.com> 15997 15998 * README: 15999 Update mailing list section. We use mailman now, not majordomo. 16000 [b9a8ca45e6dc] 16001 160022001-05-10 Todd C. Miller <Todd.Miller@courtesan.com> 16003 16004 * getspwuid.c, logging.c, sudo.c: 16005 Use setpwent()/endpwent() + all the shadow variants to make sure we 16006 don't inadvertantly leak an fd to the child. Apparently Linux's 16007 shadow routines leave the fd open even if you don't call setspent(). 16008 Reported by mike@gistnet.com; different patch used. 16009 [d33792ef6c01] 16010 160112001-04-13 Todd C. Miller <Todd.Miller@courtesan.com> 16012 16013 * sudoers.pod: 16014 s/eg./e.g./ 16015 [bd32a0acaf93] 16016 16017 * tgetpass.c: 16018 select() may return EAGAIN. If so, continue like we do for EINTR. 16019 [5f202c943818] 16020 16021 * logging.c: 16022 Fix a non-exploitable buffer overflow in the word splitting code. 16023 This should really be rewritten. 16024 [4c724363863a] 16025 16026 * Makefile.in: 16027 FAQ link goes away 16028 [1d26dd6c8972] 16029 16030 * INSTALL: 16031 Tell people to look in sample.syslog.conf for examples, not FAQ 16032 [affcae3f43ca] 16033 16034 * TROUBLESHOOTING: 16035 Update list of env vars that are cleared 16036 [234e56f1435a] 16037 16038 * sudo.c: 16039 remove struct env_table decl since that stuff has all moved to env.c 16040 [5dd923148777] 16041 160422001-04-04 Todd C. Miller <Todd.Miller@courtesan.com> 16043 16044 * fileops.c: 16045 Fix a pasto in flock-style unlocking and include <sys/file.h> for 16046 flock on older systems; twetzel@gwdg.de 16047 [d5420d9d2861] 16048 16049 * configure: 16050 regen to get NeXT lockf/flock fix 16051 [d3ba6ed70e15] 16052 16053 * configure.in: 16054 force NeXT to use flock since lockf is broken 16055 [bd5391dca1bb] 16056 160572001-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 16058 16059 * check.c: 16060 Use stashed user_gid when checking against exempt gid since sudo 16061 sets its gid to a a value that makes sudoers readable. Previously 16062 if you used gid 0 as the exempt group everyone would be exempt. From 16063 Paul Kranenburg <pk@cs.few.eur.nl> 16064 [0b140cc3a817] 16065 160662001-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 16067 16068 * configure: 16069 regen 16070 [cc455408f32b] 16071 16072 * aclocal.m4: 16073 #include stdio.h in SUDO_CHECK_TYPE since IRIX 6 aparently defines 16074 some types (such as ssize_t) therein. 16075 [b6aee85ca331] 16076 160772001-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 16078 16079 * defaults.c: 16080 Fix negation of paths in a boolean context. Problem found by 16081 apt@UH.EDU 16082 [8aee217a7cdf] 16083 160842001-02-23 Todd C. Miller <Todd.Miller@courtesan.com> 16085 16086 * visudo.c: 16087 pasto 16088 [ad32b277bf68] 16089 160902001-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 16091 16092 * visudo.c: 16093 SA_RESETHAND means the opposite of what I was thinking--oops To 16094 block all signals in old-style signals use ~0, not 0xffffffff 16095 [6ecdd793590a] 16096 160972001-02-04 Todd C. Miller <Todd.Miller@courtesan.com> 16098 16099 * defaults.c: 16100 coerce difference of pointers to int when used in a string length 16101 printf format; deraadt@openbsd.org 16102 [a9d10f07180d] 16103 161042001-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 16105 16106 * visudo.c: 16107 Block all signals in Exit() to avoid a signal race. There is still 16108 a tiny window but I'm not going to worry about it. 16109 [6661805c0458] 16110 161112001-01-07 Todd C. Miller <Todd.Miller@courtesan.com> 16112 16113 * env.c: 16114 glibc uses the LANGUAGE env var so clear that too; Solar Designer 16115 [d4ba95628afb] 16116 16117 * lex.yy.c: 16118 Regenerate with a fix to flex.skl that preserves errno from 16119 clobbering by isatty(). 16120 [607eec736e19] 16121 161222000-12-31 Todd C. Miller <Todd.Miller@courtesan.com> 16123 16124 * auth/aix_auth.c, auth/bsdauth.c, auth/fwtk.c, auth/pam.c, 16125 auth/sia.c, auth/sudo_auth.c: 16126 Some defaults I_ defines got renamed. 16127 [ec19b23caaf3] 16128 16129 * Makefile.in, check.c, def_data.c, def_data.h, def_data.in, 16130 defaults.c, defaults.h, env.c, logging.c, mkdefaults, parse.yacc, 16131 set_perms.c, sudo.c, sudo.tab.c: 16132 Move defaults info into its own files from which we generate .h and 16133 .c files. This makes adding or rearranging variables much simpler. 16134 [e91b880b5043] 16135 161362000-12-30 Todd C. Miller <Todd.Miller@courtesan.com> 16137 16138 * configure, configure.in: 16139 fix typo in last commit 16140 [10a6ee2bae71] 16141 16142 * compat.h, config.h.in, configure, configure.in: 16143 Add check + emulation for setegid (like seteuid). 16144 [29492092bd2f] 16145 16146 * env.c: 16147 Make env_keep override badenv_table as documented Fix traversal of 16148 badenv_table (broken in last commit) 16149 [37c9f0d22673] 16150 16151 * set_perms.c, sudo.c, sudo.h: 16152 Don't try and build saved uid version of set_perms on systems w/o 16153 them. Rename set_perms_saved_uid() -> set_perms_posix() Make 16154 set_perms_setreuid simply be set_perms_fallback() and simply include 16155 the appropriate function at compile time (setreuid() vs. setuid()). 16156 [3107333c062c] 16157 16158 * sudoers.cat, sudoers.man.in, sudoers.pod: 16159 PATH is also preserved when env_reset is in effect 16160 [90e45c5711ff] 16161 16162 * CHANGES, Makefile.in, check.c, compat.h, config.h.in, configure, 16163 configure.in, defaults.c, defaults.h, env.c, find_path.c, 16164 getspwuid.c, set_perms.c, sudo.c, sudo.cat, sudo.h, sudo.man.in, 16165 sudo.pod, sudoers.cat, sudoers.man.in, sudoers.pod, testsudoers.c, 16166 visudo.c, visudo.cat, visudo.man.in: 16167 New Defaults options: o stay_setuid - sudo will remain setuid if 16168 system has saved uids or setreuid(2) o env_reset - reset the 16169 environment to a sane default o env_keep - preserve environment 16170 variables that would otherwise be cleared 16171 16172 No longer use getenv/putenv/setenv functions--do environment munging 16173 by hand. Potentially dangerous environment variables can be cleared 16174 only if they contain '/' pr '%' characters to protect buggy 16175 programs. Moved environment routines into env.c (new file) 16176 [c2f97651db4c] 16177 16178 * INSTALL: 16179 Clear up --without-passwd description 16180 [2f336dab6733] 16181 16182 * putenv.c, sudo_setenv.c: 16183 We now build up a new environment from scratch and assign it to 16184 "environ". 16185 [6ae6152f2238] 16186 161872000-12-19 Todd C. Miller <Todd.Miller@courtesan.com> 16188 16189 * sudo.pod, visudo.pod: 16190 Grammatical fixes from Paul Janzen 16191 [e03ead2e56f8] 16192 161932000-12-15 Todd C. Miller <Todd.Miller@courtesan.com> 16194 16195 * visudo.c: 16196 If there was a syntax error and the user just wants to quit, unlink 16197 sudoers if it is zero length. 16198 [74ba7921f520] 16199 16200 * visudo.c: 16201 'Q' means ignore parse error, not 'q' 16202 [e8d0e4491fe6] 16203 16204 * visudo.c: 16205 Open sudoers for writing with mode SUDOERS_MODE From Dimitry Andric 16206 <dim@xs4all.nl> 16207 [b24990a72491] 16208 162092000-12-13 Todd C. Miller <Todd.Miller@courtesan.com> 16210 16211 * set_perms.c: 16212 Add missing #ifdef HAVE_LOGIN_CAP_H; ayamura@ayamura.org 16213 [41a8db10e076] 16214 162152000-12-09 Todd C. Miller <Todd.Miller@courtesan.com> 16216 16217 * config.guess, config.sub: 16218 Darwin / Mac OS X support from Wilfredo Sanchez <wsanchez@apple.com> 16219 [6052da895d2e] 16220 162212000-11-03 Todd C. Miller <Todd.Miller@courtesan.com> 16222 16223 * sudo.c, visudo.c: 16224 Use exit(127), not exit(-1) 16225 [9ff0c3eada34] 16226 16227 * Makefile.in, defaults.c, defaults.h, set_perms.c, sudo.c: 16228 Move set_perms() to its own file and use POSIX saved uid or 16229 setreuid() if available. 16230 16231 Added stay_setuid option for systems that have libraries that 16232 perform extra paranoia checks in system libraries for setuid 16233 programs (ie: anything with issetugid(2)). 16234 [28960f842698] 16235 16236 * sudo.c: 16237 strip more bits from the environment and add a facility for 16238 stripping things only if they contain '/' or '%' to address printf 16239 format string vulnerabilities in other programs. 16240 [b98d6375f299] 16241 162422000-11-02 Todd C. Miller <Todd.Miller@courtesan.com> 16243 16244 * configure: 16245 regen 16246 [7e74e5c91049] 16247 16248 * configure.in: 16249 For NCR, add -lc89 to LIBS, not SUDO_LIBS and cache the existence of 16250 strcasecmp(). 16251 [a418e9e70442] 16252 16253 * configure: 16254 regen 16255 [bbff244a52bc] 16256 16257 * configure.in: 16258 Check for strcasecmp(3) in -lc89 for NCR Unix 16259 [361c99576681] 16260 162612000-11-01 Todd C. Miller <Todd.Miller@courtesan.com> 16262 16263 * config.h.in: 16264 Define HAVE_INNETGR #ifdef HAVE__INNETGR 16265 [473cdb92b6db] 16266 16267 * configure: 16268 regen 16269 [4e6364a195e0] 16270 16271 * compat.h, config.h.in, configure.in: 16272 Add check for _innetgr(3) since NCR systems have that instead of 16273 innetgr(3). 16274 [25e6852e7494] 16275 162762000-10-31 Todd C. Miller <Todd.Miller@courtesan.com> 16277 16278 * auth/securid.c: 16279 check return value of creadcfg() call sd_close() after sd_auth() 16280 store username in sd->username so we don't rely on the USER env 16281 variable 16282 [d106b4f42722] 16283 162842000-10-30 Todd C. Miller <Todd.Miller@courtesan.com> 16285 16286 * INSTALL: 16287 document --with-bsdauth 16288 [f1518ecc2ee9] 16289 16290 * configure: 16291 regen 16292 [dceb35071ea8] 16293 16294 * configure.in: 16295 --with-bsdauth assumes --with-logincap 16296 [4200778083fd] 16297 16298 * auth/bsdauth.c, auth/fwtk.c: 16299 When prompting for a response to a challenge, if the user just hits 16300 return then reprompt with echo turned on. 16301 [a539b6474a97] 16302 163032000-10-29 Todd C. Miller <Todd.Miller@courtesan.com> 16304 16305 * sudo.c: 16306 Remove debugging code that should not have been committed, oops. 16307 [9862607b77a7] 16308 16309 * auth/bsdauth.c: 16310 Use lower-level routines and get the password ourselves. Checks for 16311 a challenge and if there is one echo is not turned off. 16312 [2d8fcd166baa] 16313 16314 * auth/pam.c, auth/sudo_auth.h: 16315 minor housekeeping, no real code changes 16316 [d0074a277fb4] 16317 163182000-10-27 Todd C. Miller <Todd.Miller@courtesan.com> 16319 16320 * sudo.c: 16321 Fix a coredump in the logging functions if gethostname(2) fails by 16322 deferring the call to log_error() until things are better setup. 16323 16324 Fix return value of set_loginclass() in non-BSD-auth case. 16325 16326 Hard-code 'sudo' in the usage message so we can fit more options on 16327 a line 16328 [d9d1b7579818] 16329 16330 * logging.c: 16331 Fix errant ';' (typo) that broken MSG_ONLY 16332 [849b2276a470] 16333 163342000-10-26 Todd C. Miller <Todd.Miller@courtesan.com> 16335 16336 * sudo.cat, sudo.man.in: 16337 regen 16338 [bb3c8c6704d1] 16339 16340 * sudo.pod: 16341 Document -a flag 16342 [e18316cebaac] 16343 16344 * Makefile.in, auth/bsdauth.c, auth/sudo_auth.h, config.h.in, 16345 configure, configure.in, getspwuid.c, sudo.c: 16346 Add support for BSD authentication. 16347 [f374cfd9ca0d] 16348 163492000-10-19 Todd C. Miller <Todd.Miller@courtesan.com> 16350 16351 * sudoers.pod: 16352 Fix typo; from sato@complex.eng.hokudai.ac.jp 16353 [3085fee9766e] 16354 163552000-10-12 Todd C. Miller <Todd.Miller@courtesan.com> 16356 16357 * sudoers.pod: 16358 Mention negating umask 16359 [c9e410294dae] 16360 16361 * defaults.c: 16362 Allow user to specify umask of 0777 (same as !umask) 16363 [bb771daa96fe] 16364 163652000-10-09 Todd C. Miller <Todd.Miller@courtesan.com> 16366 16367 * sudo.pod, visudo.pod: 16368 Fix a typo and give a URL for the sudo history. 16369 [77f73199aedb] 16370 163712000-10-08 Todd C. Miller <Todd.Miller@courtesan.com> 16372 16373 * defaults.c, sudo.pod: 16374 fix typos; pepper@reppep.com 16375 [5532c7421340] 16376 163772000-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 16378 16379 * sudo.c, sudo.h, sudo_setenv.c: 16380 sudo_setenv() now exits on memory alloc failure instead of returning 16381 -1. 16382 [71f1cf18f47b] 16383 163842000-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 16385 16386 * sudo.c: 16387 Strip out NLSPATH and PATH_LOCALE from the environment for FreeBSD 16388 and possibly others. 16389 [b69d985b0d22] 16390 16391 * logging.c: 16392 Don't use vsyslog(3) since HP-UX (and others?) lack it. This means 16393 that "%m" won't be expanded but we don't use that anyway since the 16394 logging routines may splat to stderr as well. 16395 [8d37a544d0c0] 16396 16397 * defaults.c, defaults.h, sudo.c, sudoers.cat, sudoers.man.in, 16398 sudoers.pod: 16399 Add always_set_home variable 16400 [dbcaff646e07] 16401 16402 * configure, configure.in: 16403 Have to hard code default values in help since the defaults are set 16404 _after_ the help stuff. 16405 [7b5d6d72f55c] 16406 164072000-08-31 Todd C. Miller <Todd.Miller@courtesan.com> 16408 16409 * lex.yy.c, parse.lex: 16410 Allow special characters (including '#') to be embedded in pathnames 16411 if quoted by a '\\'. The quoted chars will be dealt with by 16412 fnmatch(). Unfortunately, 'sudo -l' still prints the '\\'. 16413 [3ed33cf09977] 16414 164152000-08-13 Todd C. Miller <Todd.Miller@courtesan.com> 16416 16417 * install-sh: 16418 Better path searching for programs we need. 16419 [60517cb1f0d6] 16420 16421 * TROUBLESHOOTING: 16422 Add section on "C compiler cannot create executables" errors. 16423 [e4ada6eaee59] 16424 16425 * Makefile.binary, Makefile.in, version.h: 16426 Crank version 16427 [93d1bd5b7f5e] 16428 16429 * aclocal.m4, configure, configure.in, sudo.cat, sudo.man.in, 16430 sudo.pod, sudoers.cat, sudoers.man.in, sudoers.pod, visudo.cat, 16431 visudo.man.in, visudo.pod: 16432 Substitute values from configure into man pages. 16433 [619854c356c1] 16434 164352000-08-12 Todd C. Miller <Todd.Miller@courtesan.com> 16436 16437 * parse.c, sudo.c: 16438 The listpw and verifypw sudoers options would not take effect 16439 because the value of the default was checked *before* sudoers was 16440 parsed. Instead of passing in the value of PWCHECK_* to 16441 sudoers_lookup(), pass in the arg for def_ival() so the check can be 16442 deferred until after sudoers is parsed. 16443 [4f596e358f72] 16444 164452000-08-11 Todd C. Miller <Todd.Miller@courtesan.com> 16446 16447 * tgetpass.c: 16448 When writing prompt, no need to write the NUL as well; 16449 hag@linnaean.org 16450 [fbcdd7b431ee] 16451 164522000-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 16453 16454 * install-sh: 16455 When looking for chown, check in /sbin too 16456 [657ba6653f8c] 16457 164582000-06-05 Todd C. Miller <Todd.Miller@courtesan.com> 16459 16460 * visudo.c: 16461 Remove extraneous call to init_defaults() and set runas_user to NULL 16462 betweem parses so init_defaults will reset it each time, thus 16463 avoiding a reference to free()d data. 16464 [7421fcd692af] 16465 164662000-06-04 Todd C. Miller <Todd.Miller@courtesan.com> 16467 16468 * config.h.in, interfaces.c, interfaces.h, sudo.c: 16469 Add support for using getifaddrs() to get the list of ip addr / 16470 netmask pairs. Currently IPv4-only. 16471 [a35bc4f7306d] 16472 16473 * visudo.c: 16474 Add a missing check for UserEditor == NULL Add missing '+' before 16475 line number when invoking editor to fix a syntax error 16476 [f0d4635f6082] 16477 164782000-05-12 Todd C. Miller <Todd.Miller@courtesan.com> 16479 16480 * sudo.c: 16481 Call clean_env very early in main() for paranoia's sake. Idea from 16482 Marc Esipovich. 16483 [f8d72ebd0115] 16484 164852000-05-10 Todd C. Miller <Todd.Miller@courtesan.com> 16486 16487 * sudo.h: 16488 Update proto for evasprintf and easprintf 16489 [d147d6e58419] 16490 16491 * alloc.c: 16492 Make easprintf() and evasprintf() return an int. 16493 [b2ca5d089667] 16494 16495 * check.c: 16496 If the targetpw flag is set, use target username as part of the 16497 timestamp path. If tty tickets are in effect cat the tty and the 16498 target username with a ':' as the separator. 16499 [de11abc693c2] 16500 165012000-05-09 Todd C. Miller <Todd.Miller@courtesan.com> 16502 16503 * auth/pam.c: 16504 Backout part of last change; setting PAM_USER to the invoking user 16505 breaks things like targetpw. 16506 [427218a7387f] 16507 16508 * auth/pam.c: 16509 set tty and username via pam_set_item 16510 [85d1922dbcc9] 16511 16512 * auth/sudo_auth.c, check.c, getspwuid.c, sudo.c, sudo.h: 16513 Fix root, runas, and target authentication for non-passwd file auth 16514 methods. 16515 [a14535e7b30c] 16516 165172000-04-22 Todd C. Miller <Todd.Miller@courtesan.com> 16518 16519 * sudo.cat, sudo.man.in, sudo.pod, sudoers.cat, sudoers.man.in, 16520 sudoers.pod, visudo.cat, visudo.man.in, visudo.pod: 16521 Use B<-Z> not C<-Z> for command line flags in all places. This is 16522 more consistent and works around a bug in Pod::Man. 16523 [64b5a05f30c5] 16524 16525 * sudoers.cat, sudoers.man.in, sudoers.pod: 16526 Fix an occurence of 'semicolon' that should be 'colon' 16527 [4ea5aacae3fb] 16528 165292000-04-19 Todd C. Miller <Todd.Miller@courtesan.com> 16530 16531 * configure, configure.in: 16532 Fix --with-badpri help line 16533 [3cc40977c043] 16534 165352000-04-17 Todd C. Miller <Todd.Miller@courtesan.com> 16536 16537 * defaults.c, logging.c, sudo.c: 16538 Bracket calls to syslog with an openlog() and closelog() since some 16539 authentication methods (like PAM) may do their own logging via 16540 syslog. Since we don't use syslog much (usually just once per 16541 session) this doesn't really incur a performance penalty. It also 16542 Fixes a SEGV with pam_kafs. 16543 [fe1cc28529f6] 16544 165452000-04-15 Todd C. Miller <Todd.Miller@courtesan.com> 16546 16547 * sudo.c: 16548 Fix -H flag. runas_homedir is only valid after 16549 set_perms(PERM_RUNAS, mode) 16550 [ce9b1c6f68a6] 16551 165522000-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 16553 16554 * INSTALL: 16555 Clarify the fact that insults are not enabled just by including them 16556 in the binary. 16557 [d5a31d48320c] 16558 165592000-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 16560 16561 * sudo.cat, sudo.man.in, sudoers.cat, sudoers.man.in, visudo.cat, 16562 visudo.man.in: 16563 Regenerated with perl 5.6.0 pod2man 16564 [21751433768b] 16565 16566 * Makefile.in: 16567 Give date string to pod2man since its default is ugly and it ain't 16568 got no alibi. 16569 [0080b2f6298f] 16570 16571 * Makefile.in: 16572 Do section substitution on the output of pod2man and remove hack 16573 needed for old pod2man. 16574 [1ef843d5c78b] 16575 16576 * sudo.pod, sudoers.pod, visudo.pod: 16577 Put back real man sections, we will do the substitution later. 16578 [f728c1abad7e] 16579 165802000-04-02 Todd C. Miller <Todd.Miller@courtesan.com> 16581 16582 * configure, configure.in: 16583 Don't bother checking for the path to vi if user specified --with- 16584 editor 16585 [bf698487e0d5] 16586 165872000-04-01 Todd C. Miller <Todd.Miller@courtesan.com> 16588 16589 * CHANGES, visudo.c: 16590 Visudo now does its own fork/exec instead of calling system(3). 16591 [99bbcd88863b] 16592 16593 * CHANGES, INSTALL, Makefile.in, sudoers.cat, sudoers.man.in, 16594 sudoers.pod, visudo.c: 16595 Visudo now checks for the existence of an editor and gives a 16596 sensible error if it does not exist. 16597 16598 The path to the editor for visudo is now a colon-separated list of 16599 allowable editors. If the user has $EDITOR set and it matches one 16600 of the allowed editors that editor will be used. If not, the first 16601 editor in the list that actually exists is used. 16602 [cc86eb9f5440] 16603 16604 * sudo.cat, sudo.man.in, sudo.pod: 16605 Clear up confusion wrt sudo's return value. 16606 [9385b12d8e79] 16607 166082000-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 16609 16610 * Makefile.in: 16611 Strip sudo and visudo for bindist target 16612 [a995ddd79177] 16613 16614 * sudo.cat, sudo.man.in, sudo.pod, sudoers.cat, sudoers.man.in, 16615 sudoers.pod, visudo.cat, visudo.man.in, visudo.pod: 16616 Use @mansectsu@ and @mansectform@ in the man page bodies as well. 16617 [5eb9e60a726f] [SUDO_1_6_3] 16618 16619 * visudo.cat, visudo.man.in, visudo.pod: 16620 Typo: @sysconf@ -> @sysconfdir@ 16621 [f07f52fcd099] 16622 16623 * Makefile.in: 16624 'make dist' should not cause any files to be modified so remove its 16625 dependencies. 16626 [7f44a2666a9c] 16627 16628 * CHANGES: 16629 Whoops, forgot to add release marker 16630 [16c0f16b35b8] 16631 166322000-03-26 Todd C. Miller <Todd.Miller@courtesan.com> 16633 16634 * CHANGES: 16635 Final change for 1.6.3 (or so I hope) 16636 [473c89da6123] 16637 16638 * sudo.cat, sudoers.cat, visudo.cat: 16639 Use SYSV man sections since BSD systems will have nroff... 16640 [0a6bd154324e] 16641 166422000-03-24 Todd C. Miller <Todd.Miller@courtesan.com> 16643 16644 * parse.yacc, sudo.tab.c: 16645 When checking to see if the host/user matches in a defaults spec, 16646 check against TRUE, not just non-zero since it might be -1. 16647 [41f2b7ad3fdd] 16648 16649 * configure, configure.in: 16650 OSF/1 puts file formats in section 4, not 5. 16651 [d77c1301afa9] 16652 16653 * CHANGES, INSTALL, sudo.c: 16654 Make login class support work on BSD/OS 16655 [e9bbe3c08ade] 16656 16657 * RUNSON: 16658 Update for 1.6.3 16659 [c40ce1d76c4d] 16660 16661 * configure, configure.in: 16662 If there is no inet_addr but there *is* an __inet_addr that's ok 16663 since inet_addr is probably just a macro then. The better thing to 16664 do would be to look for the macro, but this is fine for now. 16665 [1b8865ae4d68] 16666 16667 * configure, configure.in: 16668 Don't use shlicc for BSD/OS 4.x 16669 [83fbf6dedd2c] 16670 16671 * Makefile.in, configure, configure.in: 16672 *.man lives in cwd, *.cat lives in $(srcdir), add a @mansrcdir@ 16673 configure variable so we can deal with this. Also, only remove *.man 16674 for 'distclean' not 'clean'. 16675 [30d56e6de214] 16676 16677 * sudo.c: 16678 set_loginclass() should be static like the proto says 16679 [d570a2d55fb8] 16680 166812000-03-23 Todd C. Miller <Todd.Miller@courtesan.com> 16682 16683 * fnmatch.c: 16684 Add #ifdef __STDC__ around the rangematch function header to avoid 16685 promotion of test to int, thus violating the prototype. Gcc handles 16686 this gracefully but more std ANSI compilers will complain. 16687 [7d98c3e332b2] 16688 16689 * emul/fnmatch.h: 16690 Pull in newer fnmatch(3) that supports FNM_CASEFOLD 16691 [4e1320852f8b] 16692 16693 * aclocal.m4, configure, fnmatch.3, fnmatch.c: 16694 Pull in newer fnmatch(3) that supports FNM_CASEFOLD Check for 16695 FNM_CASEFOLD in configure 16696 [9ef952bf1896] 16697 16698 * CHANGES, TODO: 16699 update for 1.6.3 16700 [e4ba6368a0c5] 16701 16702 * sudo.tab.c, sudo.tab.h, testsudoers.c, visudo.c: 16703 Fully qualified hosts w/ wildcards were not matching the FQHOST 16704 token type. There's really no need for a separate token for fully- 16705 qualified vs. unqualified anymore so FQHOST is now history and 16706 hostname_matches now decides which hostname (short or long) to check 16707 based on whether or not the pattern contains a '.'. 16708 [fbd2887d9811] 16709 16710 * parse.h: 16711 Fully qualified hosts w/ wildcards were not matching the FQHOST 16712 token type. There's really no need for a separate token for fully- 16713 qualified vs. unqualified anymore so FQHOST is now history and 16714 hostname_matches now decides which hostname (short or long) to check 16715 based on whether or not the pattern contains a '.'. 16716 [dd7bbe223461] 16717 16718 * lex.yy.c, parse.c, parse.lex, parse.yacc: 16719 Fully qualified hosts w/ wildcards were not matching the FQHOST 16720 token type. There's really no need for a separate token for fully- 16721 qualified vs. unqualified anymore so FQHOST is now history and 16722 hostname_matches now decides which hostname (short or long) to check 16723 based on whether or not the pattern contains a '.'. 16724 [630d9d205397] 16725 16726 * parse.c, parse.h, parse.yacc, sudo.tab.c, sudoers.cat, 16727 sudoers.man.in, sudoers.pod, testsudoers.c, visudo.c: 16728 Add support for wildcards in the hostname. 16729 [d8d821ed4238] 16730 16731 * Makefile.in: 16732 Add targets for *.man.in, using config.status to generate *.man from 16733 *.man.in 16734 [640e50ede485] 16735 16736 * sudoers.cat, sudoers.man.in, sudoers.pod: 16737 Document set_logname option and enbolden refs to sudo and visudo. 16738 [9622b3a48707] 16739 16740 * INSTALL, Makefile.in, aclocal.m4, configure, configure.in, sudo.cat, 16741 sudo.man.in, sudo.pod, sudoers.cat, sudoers.man.in, sudoers.pod, 16742 visudo.cat, visudo.man.in, visudo.pod: 16743 Add FreeBSD login.conf support (untested on BSD/OS) based on a patch 16744 from Michael D. Marchionna. configure now does substitution on the 16745 man pages, allowing us to fix up the paths and set the section 16746 correctly. Based on an idea from Michael D. Marchionna. 16747 [463e928a0a2f] 16748 16749 * auth/passwd.c: 16750 Better fix for handling HP-UX aging info. 16751 [3950f42d8549] 16752 16753 * sudo.c: 16754 Add support for set_logname run-time default 16755 [c6a7cc76b8b4] 16756 16757 * sudo.man.in, sudoers.man.in, visudo.man.in: 16758 configure does substitution on these to produce *.man 16759 [b83fc3c1bfc9] 16760 16761 * sudo.man, sudoers.man, visudo.man: 16762 These files now get generated from *.man.in at configure time. 16763 [c499061f79e0] 16764 167652000-03-22 Todd C. Miller <Todd.Miller@courtesan.com> 16766 16767 * defaults.c, defaults.h: 16768 Add set_logname option so users can turn off setting of LOGNAME/USER 16769 environment variables. 16770 [6316869180b8] 16771 16772 * lsearch.c, parse.c, testsudoers.c: 16773 kill register 16774 [6e104e653748] 16775 167762000-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 16777 16778 * auth/passwd.c: 16779 HP-UX adds extra info at the end for password aging so when 16780 comparing the result of crypt to pw_passwd we only compare the first 16781 len(epass) bytes *unless* the user entered an empty string for a 16782 password. 16783 [3d24d4e4e889] 16784 16785 * logging.c: 16786 Get rid of grandchild hack, it was causing problems and there is 16787 really no need for it. This fixes a bug where we spin eating up CPU 16788 when the user runs a long-running process like a shell. 16789 [5743b10b1e81] 16790 167912000-03-07 Todd C. Miller <Todd.Miller@courtesan.com> 16792 16793 * sudo.c: 16794 User can always specify a login class if he/she is already root. 16795 [710d160cef9f] 16796 16797 * config.h.in, configure, configure.in, defaults.c, defaults.h, 16798 sudo.c, sudo.h: 16799 FreeBSD login class (login.conf) support. 16800 [026b981d6328] 16801 168022000-03-06 Todd C. Miller <Todd.Miller@courtesan.com> 16803 16804 * auth/sudo_auth.c: 16805 HAVE_SECUREWARE -> HAVE_GETPRPWNAM; fixes secureware support 16806 [9cd4929f1a78] 16807 168082000-03-03 Todd C. Miller <Todd.Miller@courtesan.com> 16809 16810 * auth/passwd.c: 16811 Truncate unencrypted password to 8 chars if encrypted password is 16812 exactly 13 characters (indicateing standard a DES password). Many 16813 versions of crypt() do this for you, but not all (like HP-UX's). 16814 [a9d0259cb193] 16815 168162000-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 16817 16818 * INSTALL, RUNSON: 16819 Mention that gcc on dynix may have problems 16820 [77b97fa5bf1b] 16821 168222000-02-29 Todd C. Miller <Todd.Miller@courtesan.com> 16823 16824 * Makefile.in: 16825 Link visudo with NET_LIBS since we now call syslog via defaults.c 16826 [9e3830b277cc] 16827 16828 * defaults.c: 16829 Use Argv[0] as the first arg to openlog() since visudo uses this 16830 too. 16831 [e61078f328ec] 16832 168332000-02-28 Todd C. Miller <Todd.Miller@courtesan.com> 16834 16835 * sudo.c: 16836 Stash coredumpsize resource limit and retsore it before the exec() 16837 Otherwise the child ends up with a coredumpsize of 0. 16838 [f6a4783835a3] 16839 168402000-02-27 Todd C. Miller <Todd.Miller@courtesan.com> 16841 16842 * sudo.cat, sudo.man, sudo.pod: 16843 document -S flag 16844 [3ebd805b7142] 16845 16846 * sudo.c: 16847 fix usage string 16848 [66b2dfa47fe8] 16849 16850 * CHANGES, RUNSON, TODO, auth/aix_auth.c, auth/fwtk.c, auth/pam.c, 16851 auth/sudo_auth.c, sudo.c, sudo.h, tgetpass.c: 16852 Added -S flag (read passwd from stdin) and tgetpass_flags global 16853 that holds flags to be passed in to tgetpass(). Change echo_off 16854 param to tgetpass() into a flags field. There are currently 2 16855 possible flags for tgetpass(): TGP_ECHO and TGP_STDIN. In 16856 tgetpass(), abstract the echo set/clear via macros and if (flags & 16857 TGP_ECHO) but echo is not set on the terminal, but sure to set it. 16858 [a4fcbb712cd0] 16859 16860 * tgetpass.c: 16861 Fixed a bug that caused an infinite loop when the password timeout 16862 was disabled. 16863 [2be1ffc5a39f] 16864 168652000-02-18 Todd C. Miller <Todd.Miller@courtesan.com> 16866 16867 * CHANGES, defaults.c, defaults.h, getspwuid.c, sudo.c, sudo.h, 16868 sudoers.cat, sudoers.man, sudoers.pod, visudo.c: 16869 Add rootpw, runaspw, and targetpw options. 16870 [2d4563e46df7] 16871 16872 * CHANGES, defaults.c, sudoers.cat, sudoers.man, sudoers.pod, 16873 visudo.c: 16874 enveditor -> env_editor 16875 [ddc5f856e583] 16876 168772000-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 16878 16879 * BUGS, INSTALL, Makefile.in, README, configure, configure.in, 16880 sudo.cat, sudo.man, sudoers.cat, sudoers.man, version.h, visudo.cat, 16881 visudo.man: 16882 crank versino to 1.6.3 16883 [a5f7d3e74360] 16884 16885 * INSTALL, TODO, defaults.c, defaults.h, sudoers.cat, sudoers.man, 16886 sudoers.pod, visudo.c: 16887 Add 'editor' and 'enveditor' sudoers defaults and make visudo honor 16888 them. This means that visudo will now parse the sudoers file 16889 *before* it is edited so a bogus sudoers file will cause a warning 16890 to go to stderr. Also, visudo checks the variables once--it does not 16891 check them after each editor run since that could be confusing. 16892 [9f5af18e9212] 16893 168942000-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 16895 16896 * RUNSON: 16897 1.6.2 -> 1.6.2p1 16898 [e25b74f1d1af] 16899 16900 * check.c, sudo.c, sudo.h: 16901 Move user_is_exempt prototype into sudo.h 16902 [daf26a6ded8a] 16903 169042000-02-13 Todd C. Miller <Todd.Miller@courtesan.com> 16905 16906 * configure, configure.in: 16907 Fix thinko, some && should have been || in the last commit 16908 [4b9b2d487ded] 16909 16910 * configure, configure.in: 16911 Don't initialized Makefile variables to be NULL since the user may 16912 want to import variables from their environment. 16913 [7be019f4422c] 16914 169152000-02-04 Todd C. Miller <Todd.Miller@courtesan.com> 16916 16917 * configure, configure.in: 16918 typo 16919 [38f4d8971f0a] 16920 169212000-01-28 Todd C. Miller <Todd.Miller@courtesan.com> 16922 16923 * sudo.tab.c: 16924 fix a yacc (skeleton.c) warning 16925 [a2da228a937b] 16926 169272000-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 16928 16929 * INSTALL, RUNSON, configure, configure.in: 16930 Make pam work on HP-UX 11.0;jaearick@colby.edu 16931 [b94de0ff6f42] 16932 16933 * CHANGES: 16934 recent changes; prepare for 1.6.2p1 16935 [b291635ea141] 16936 16937 * find_path.c: 16938 Don't apply SECURE_PATH if user is example; jmknoble@pobox.com 16939 [4306285c4f6e] 16940 169412000-01-26 Todd C. Miller <Todd.Miller@courtesan.com> 16942 16943 * sudo.tab.c: 16944 Regen with yacc that has a memory leak plugged. 16945 [e26383a04eb7] 16946 16947 * sudoers.cat, sudoers.man, sudoers.pod: 16948 Expanded docs on sudoers 'defaults' options based on INSTALL file 16949 info. 16950 [54c3d62d6c74] 16951 16952 * INSTALL: 16953 Fix some while lies 16954 [d15311782150] 16955 169562000-01-24 Todd C. Miller <Todd.Miller@courtesan.com> 16957 16958 * Makefile.in: 16959 When making a bindist, link FAQ to TROUBLESHOOTING instead of 16960 copying. 16961 [2d88a6ac88cf] 16962 16963 * sudoers.cat, sudoers.man, sudoers.pod: 16964 Add netgroup caveat 16965 [28d119f466e3] [SUDO_1_6_2] 16966 16967 * RUNSON: 16968 Last minute updates 16969 [89fb4ed22d52] 16970 16971 * TROUBLESHOOTING: 16972 PAM entry 16973 [a9fd59f39457] 16974 16975 * auth/pam.c: 16976 correct a comment 16977 [a29627225ba9] 16978 16979 * CHANGES, RUNSON: 16980 update for 1.6.2 16981 [b7f1c40ea732] 16982 16983 * auth/pam.c: 16984 Better detection of PAM errors and fix custom prompts with PAM. 16985 Based on patches from "Cloyce D. Spradling" <cloyce@headgear.org> 16986 [ff69234b94a5] 16987 169882000-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 16989 16990 * snprintf.c: 16991 Cast ULONG_MAX to unsigned long long when comparing to an unsigned 16992 long long value. 16993 [9d918c3a2ecd] 16994 169952000-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 16996 16997 * CHANGES, config.h.in, configure, configure.in, visudo.c: 16998 Fix sudoers locking in visudo. We now lock the sudoers file itself, 16999 not the temp file (since locking the temp file can foul up editors). 17000 The previous locking scheme didn't work because the fd was closed 17001 too early. 17002 [de2011bb11ed] 17003 17004 * config.h.in, configure, configure.in: 17005 Don't need test for ftruncate() any more. 17006 [e5f71c848104] 17007 17008 * configure, configure.in: 17009 Add a test for the -Aa flag w/ HP-UX's cc. Fixes compilation with 17010 the unbundled HP-UX cc. 17011 [2c373612c644] 17012 170132000-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 17014 17015 * sudoers.cat, sudoers.man, sudoers.pod: 17016 "a a" -> "a"; Aaron Campbell <aaron@cs.dal.ca> 17017 [05360d2c314e] 17018 170192000-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 17020 17021 * LICENSE, Makefile.in, defaults.c, defaults.h, parse.c, parse.h, 17022 parse.yacc, sudo.c, sudo.h, sudoers.pod, testsudoers.c, tgetpass.c, 17023 version.h, visudo.c: 17024 update copyright year on changed files 17025 [5792a2a28a4c] 17026 17027 * RUNSON: 17028 updates 17029 [edf8f19aa403] 17030 17031 * CHANGES: 17032 aix fix 17033 [4d4a243b31e2] 17034 17035 * INSTALL: 17036 Crank version to 1.6.2 17037 [bcb5cb411624] 17038 17039 * configure: 17040 Crank version to 1.6.2 17041 [32a19f33427f] 17042 17043 * sudo.c: 17044 When using rlimit check for RLIM_INFINITY When computing the value 17045 of maxfd, use min(getdtablesize(), RLIMIT_NOFILE) 17046 [8c16166802e5] 17047 17048 * CHANGES: 17049 recent changes 17050 [09fc7112e44d] 17051 17052 * BUGS, Makefile.in, README, configure.in, sudo.cat, sudo.man, 17053 sudoers.cat, sudoers.man, version.h, visudo.cat, visudo.man: 17054 Crank version to 1.6.2 17055 [055fa61a7c61] 17056 17057 * INSTALL, defaults.c, defaults.h, sudo.c, sudo.h, sudoers.pod: 17058 Add 'shell_noargs' runtime option back in. We have to defer 17059 checking until after the sudoers file has been parsed but since 17060 there are now other options that operate that way this one can too. 17061 Based on a patch from bguillory@email.com. 17062 [231db7a007a6] 17063 17064 * defaults.c, defaults.h, parse.c, sudo.c, sudo.h: 17065 Add "listpw" and "verifypw" options. 17066 [190683bac878] 17067 17068 * sudoers.cat, sudoers.man, sudoers.pod: 17069 o Fix some typos/omissions o Add section on verifypw and listpw o 17070 Define how NOPASSWD interacts with the -v and -l flags 17071 [6feb7350eb79] 17072 170732000-01-14 Todd C. Miller <Todd.Miller@courtesan.com> 17074 17075 * configure, configure.in: 17076 For HP-UX cc, add -Aa to CPPFLAGS. For HP-UX always add 17077 -D_HPUX_SOURCE to CPPFLAGS. 17078 [06cc35d89dc8] 17079 17080 * defaults.c, defaults.h: 17081 In struct sudo_defs_types, move the union to the end and don't 17082 initialize the union member since that only works with an ANSI 17083 compiler. We set the value of the union by hand in init_defaults() 17084 anyway. This allows sudo to compile on a K&R compiler again. 17085 [623487e1fcfa] 17086 170872000-01-11 Todd C. Miller <Todd.Miller@courtesan.com> 17088 17089 * parse.c, parse.h, parse.yacc, sudo.tab.c, testsudoers.c, visudo.c: 17090 netgr_matches needs to check shost as well as host since they may be 17091 different. 17092 [3f43ace23d3e] 17093 17094 * tgetpass.c: 17095 End on \r as well as \n 17096 [cb7c6e6f4202] 17097 170982000-01-03 Todd C. Miller <Todd.Miller@courtesan.com> 17099 17100 * sudo.c: 17101 Update statbuf.st_mode based on SUDOERS_MODE when we are chaning 17102 from 0400 to whatever SUDOERS_MODE is (converting from the old 17103 sudoers mode). Assumes that SUDOERS_MODE is less restrictive than 17104 0400 which should always be the case. 17105 [34cd83d49d20] 17106 17107 * parse.c, parse.yacc, sudo.c, sudo.h, sudo.tab.c: 17108 Make treatment of -l and -v sane wrt NOPASSWD flags. Now allow -l 17109 w/o a passwd if there is *any* entry for the user on the host with a 17110 NOPASSWD flag. For -v, only allow w/o a passwd if *all* entries for 17111 the user on the host w/ the specified runas user have the NOPASSWD 17112 flag set. 17113 [4b3b85697653] 17114 17115 * Makefile.in: 17116 add check target 17117 [3d24d34a76fd] 17118 171191999-12-16 Todd C. Miller <Todd.Miller@courtesan.com> 17120 17121 * visudo.c: 17122 Treat EOF at whatnow prompt like 'x' instead of looping. 17123 [5deffc27114c] 17124 171251999-12-10 Todd C. Miller <Todd.Miller@courtesan.com> 17126 17127 * CHANGES: 17128 recent changes 17129 [5836a9452568] [SUDO_1_6_1] 17130 171311999-12-09 Todd C. Miller <Todd.Miller@courtesan.com> 17132 17133 * config.h.in, configure, configure.in, sudo.c: 17134 Add check for initgroups() since old SYSV lacks this. 17135 [657a6005a569] 17136 17137 * CHANGES, RUNSON, aclocal.m4, config.h.in, configure, configure.in, 17138 parse.c, testsudoers.c: 17139 o Kill HAVE_FNMATCH_H o Only define HAVE_FNMATCH if <fnmatch.h> 17140 exists. 17141 [17d081e917d6] 17142 171431999-12-06 Todd C. Miller <Todd.Miller@courtesan.com> 17144 17145 * auth/sudo_auth.c: 17146 Don't allow insults to be enabled if the insults[] array is empty. 17147 Otherwise there would be division by zero. 17148 [b20c14db6029] 17149 17150 * insults.h: 17151 Don't allow insults to be enabled if the insults[] array is empty. 17152 Otherwise there would be division by zero. 17153 [028f130204b0] 17154 17155 * CHANGES, RUNSON: 17156 Don't allow insults to be enabled if the insults[] array is empty. 17157 Otherwise there would be division by zero. 17158 [974f4780254b] 17159 17160 * insults.h: 17161 Don't care about USE_INSULTS #define since the insult stuff may be 17162 overridden at runtime. 17163 [b873df8b299c] 17164 17165 * auth/sudo_auth.c: 17166 Honor insults flag. 17167 [756111640fdc] 17168 17169 * CHANGES, parse.c: 17170 Don't ask the user for a password if the user is not allowed to run 17171 the command and the authenticate flag (in sudoers) is false. 17172 [cea9fdc09c76] 17173 17174 * CHANGES, RUNSON, lex.yy.c, parse.lex: 17175 o Whenever we get a bare newline we change to the INITIAL state. o 17176 Enter GOTRUNAS when we see Runas_Alias 17177 17178 This allows #uid to work in a RunasAlias. 17179 [a475513e7c7a] 17180 171811999-12-05 Todd C. Miller <Todd.Miller@courtesan.com> 17182 17183 * CHANGES, parse.yacc, sudo.tab.c: 17184 fix parsing of runas lists: o oprunasuser and runaslist now return a 17185 value o in a runasspec, if a runaslist does not return TRUE, set 17186 runas_matches to FALSE. Normally, a runaslist only returns FALSE 17187 for explicitly denied users. o since runaslist does not modify the 17188 stack there is no need for a push/pop in runasalias. 17189 [82b305b34a8c] 17190 17191 * check.c, sudo.c: 17192 Don't kill the user's tickets until after sudoers has been parsed 17193 since tty_tickets and ticket_dir could be set in sudoers. 17194 [f43e25367f3a] 17195 17196 * BUGS, CHANGES, Makefile.binary, Makefile.in, README, RUNSON, 17197 configure, configure.in, sudo.cat, sudo.man, sudoers.cat, 17198 sudoers.man, tgetpass.c, version.h, visudo.cat, visudo.man: 17199 crank version to 1.6 17200 [95f8bdcf9bb2] 17201 17202 * testsudoers.c: 17203 add set_fqdn() stub 17204 [bbc81af5b41a] 17205 172061999-12-02 Todd C. Miller <Todd.Miller@courtesan.com> 17207 17208 * INSTALL, defaults.c, defaults.h, sudo.c, sudo.h, sudoers.cat, 17209 sudoers.man, sudoers.pod, visudo.c: 17210 o Kill shell_noargs option, it cannot work since the command needs 17211 to be set before sudoers is parsed. o Fix the "set_home" sudoers 17212 option (only worked at compile time). o Fix "fqdn" sudoers option. 17213 We now set host/shost via set_fqdn which gets called when the 17214 "fqdn" option is set in sudoers. o Move the openlog() to 17215 store_syslogfac() so this gets overridden correctly from the 17216 sudoers file. 17217 [3dca861f0f5d] 17218 17219 * auth/securid.c: 17220 SecurID support should compile now. 17221 [a544e5c6ea34] 17222 172231999-11-29 Todd C. Miller <Todd.Miller@courtesan.com> 17224 17225 * sudo.cat, sudo.man, sudo.pod, sudoers.cat, sudoers.man, visudo.cat, 17226 visudo.man, visudo.pod: 17227 fix some syntactic goofs 17228 [b3451f0d5239] 17229 172301999-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 17231 17232 * Makefile.in, sudo.html, sudoers.html, visudo.html: 17233 No longer need the .html files as they are generated automatically 17234 on the web site. 17235 [1b4aa4204584] 17236 17237 * CHANGES, LICENSE: 17238 kill characters that made wml unhappy 17239 [b988fbc6da56] 17240 17241 * HISTORY: 17242 typo 17243 [a418963f7fce] 17244 172451999-11-25 Todd C. Miller <Todd.Miller@courtesan.com> 17246 17247 * README: 17248 majordomo@cs.colorado.edu -> majordomo@courtesan.com 17249 [5d151e8ffd3b] 17250 17251 * Makefile.in, configure: 17252 Wrap script execution w/ /bin/sh for the benefit of ctm 17253 [3a9c4766b2c3] 17254 172551999-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 17256 17257 * sudo.c: 17258 Make the -s flag be exclusive too. Also reorder the flags in the 17259 exclusive usage message so they are alphabetical. 17260 [4c7af200db34] 17261 172621999-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 17263 17264 * auth/pam.c: 17265 make pam errors other than PAM_PERM_DENIED fatal 17266 [64bcb3fd2baf] 17267 17268 * auth/API: 17269 fix typo 17270 [f3134c88b12e] 17271 17272 * INSTALL: 17273 make it clear that /etc/pam.d/sudo is required on linux 17274 [213cc3eaad82] 17275 17276 * auth/pam.c: 17277 fix a warning on redhat and spew an error if pam_authenticate() 17278 returns an error other than AUTH_SUCCESS or PAM_PERM_DENIED 17279 [7e46dd19da89] 17280 17281 * sudo.cat, sudo.html, sudo.man, sudo.pod: 17282 Be very clear that the password required is the user's not root's 17283 [a6da127347e5] 17284 172851999-11-20 Todd C. Miller <Todd.Miller@courtesan.com> 17286 17287 * Makefile.in: 17288 add sample.syslog.conf to DISTFILES and BINFILES 17289 [8661c27c007e] 17290 172911999-11-19 Todd C. Miller <Todd.Miller@courtesan.com> 17292 17293 * RUNSON: 17294 updates from Brian Jackson + some formatting 17295 [6d31c6fa63f8] 17296 172971999-11-18 Todd C. Miller <Todd.Miller@courtesan.com> 17298 17299 * INSTALL.binary, Makefile.binary, README, RUNSON: 17300 o One RUNSon update o Changes for automating real binary releases 17301 [dd9585f4406c] 17302 17303 * Makefile.in: 17304 Add bindist target 17305 [546ed3fa94bb] 17306 173071999-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 17308 17309 * TROUBLESHOOTING: 17310 talk about run-time options in addition to compile-time options 17311 [1eb813ff0a9a] [SUDO_1_6_0] 17312 17313 * CHANGES: 17314 fix typos 17315 [65e92bb70a7b] 17316 17317 * sudo.c: 17318 need sys/time.h if HAVE_SETRLIMIT 17319 [ce31655a8a60] 17320 17321 * PORTING, README, RUNSON, sudo.c, sudo.cat, sudo.html, sudo.man, 17322 sudo.pod, visudo.cat, visudo.html, visudo.man, visudo.pod: 17323 get rid of references to sudo-bugs. Now mention the web site or the 17324 sudo@ alias 17325 [a9db861fd8c6] 17326 17327 * sudoers.html: 17328 repair pod2html damage 17329 [62ece4277f1f] 17330 17331 * RUNSON, TODO: 17332 Update for 1.6 release 17333 [98569c57ba2a] 17334 17335 * sudoers.cat, sudoers.html, sudoers.man, sudoers.pod: 17336 Add warning about using ALL in a command context. 17337 [6c77685ab280] 17338 173391999-11-09 Todd C. Miller <Todd.Miller@courtesan.com> 17340 17341 * visudo.c: 17342 Call yyrestart() on a parse error to reset the lexer state. 17343 [1370a27acdb2] 17344 17345 * lex.yy.c, parse.lex: 17346 Don't need YY_FLUSH_BUFFER after all Move yyrestart() into visudo.c 17347 since it might not get called in yywrap if we get a parse error 17348 (and we only reread the file on error anyway). 17349 [37f4b449e28e] 17350 17351 * lex.yy.c, parse.lex: 17352 Call YY_FLUSH_BUFFER macro in yywrap() to clean up any buffers that 17353 might still exist. Call yyrestart() instead of using the deprecated 17354 YY_NEW_FILE macro. 17355 [7d0d873046c6] 17356 17357 * lex.yy.c, parse.lex: 17358 flex doesn't need %N table size declarations 17359 [268b020fd60a] 17360 17361 * sudoers.cat, sudoers.html, sudoers.man, sudoers.pod: 17362 Mention what characters need to be escaped in names. 17363 [72ccbb6b0f31] 17364 173651999-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 17366 17367 * configure: 17368 regen 17369 [65827abb5c7b] 17370 17371 * INSTALL: 17372 clarify Mac OS X entry 17373 [8da1549a71f5] 17374 17375 * RUNSON: 17376 update 17377 [0cff8df7459f] 17378 17379 * configure.in: 17380 o Use AC_MSG_ERROR throughout o Check syslog configure options for 17381 danity 17382 [4cb81e642e5c] 17383 173841999-11-05 Todd C. Miller <Todd.Miller@courtesan.com> 17385 17386 * defaults.c: 17387 Fix printing of type T_MODE in dump_defaults() 17388 [a868bb6f5515] 17389 17390 * strcasecmp.c: 17391 missing sys/types.h 17392 [ca694ca325b6] 17393 17394 * INSTALL: 17395 Break out options that may be overridden at run time into their own 17396 section. Add a not about Max OS X and correct some lies. 17397 [d8bcfd120593] 17398 173991999-11-04 Todd C. Miller <Todd.Miller@courtesan.com> 17400 17401 * CHANGES, config.h.in, configure, configure.in, sudo.c: 17402 o Now use getrlimit to find the highest fd when closing all non-std 17403 fd's o Turn off core dumps via setrlimit for the sake of paranoia 17404 [dd9f651b6def] 17405 17406 * RUNSON: 17407 updates 17408 [f581841fe615] 17409 174101999-11-01 Todd C. Miller <Todd.Miller@courtesan.com> 17411 17412 * CHANGES: 17413 updates 17414 [553baa1d44c7] 17415 17416 * tgetpass.c: 17417 When read()'ing, do a single character at a time to be sure we don't 17418 go oast the newline. 17419 [907d33f55bb4] 17420 17421 * sudo.c: 17422 For the sudo_root option, check against user_uid, not getuid() since 17423 at this point, ruid == euid == 0. 17424 [92d5c51939b4] 17425 17426 * RUNSON: 17427 some updates 17428 [e3ed0c1f312b] 17429 17430 * logging.h: 17431 Fix compilation problem when --with-logging=file was specified. 17432 This means that syslog is now required to build sudo but that should 17433 not be a problem. If it is it can be fixed trivially with a 17434 configure check for syslog() or syslog.h. 17435 [839a4b069190] 17436 17437 * tgetpass.c: 17438 Make this work again for things like "sudo echo hi | more" where the 17439 tty gets put into character at a time mode. We read until we read 17440 end of line or we run out of space (similar to fgets(3)). 17441 [c8f746df2e63] 17442 174431999-10-20 Todd C. Miller <Todd.Miller@courtesan.com> 17444 17445 * sudoers.cat, sudoers.html, sudoers.man, sudoers.pod: 17446 change ital to bold 17447 [f860978e530a] 17448 17449 * RUNSON: 17450 update 17451 [9bcfbb405568] 17452 174531999-10-16 Todd C. Miller <Todd.Miller@courtesan.com> 17454 17455 * defaults.c: 17456 Error out if syslog parameters are given without a value. For 17457 Ultrix or 4.2BSD "syslog" is allowed without a value since there are 17458 no facilities in the 4.2BSD syslog. 17459 [69e7a686f5f0] 17460 174611999-10-15 Todd C. Miller <Todd.Miller@courtesan.com> 17462 17463 * defaults.c: 17464 Ignore the syslog facility for systems w/ old syslog like Ultrix. 17465 [5c250adbbb84] 17466 17467 * TROUBLESHOOTING: 17468 people with "." early in their path can have problems running sudo 17469 from the build dir ;-) 17470 [20a1744a24a4] 17471 174721999-10-13 Todd C. Miller <Todd.Miller@courtesan.com> 17473 17474 * sudo.cat, sudo.html, sudo.man, sudo.pod: 17475 Remove -r realm option 17476 [127caa537f95] 17477 17478 * auth/kerb5.c, auth/sudo_auth.c, auth/sudo_auth.h, configure, 17479 configure.in, sudo.c: 17480 New krb5 code from Frank Cusack <fcusack@iconnet.net>. 17481 [7177a3893a62] 17482 17483 * CHANGES: 17484 update to reality 17485 [766cfbb512d6] 17486 174871999-10-12 Todd C. Miller <Todd.Miller@courtesan.com> 17488 17489 * auth/fwtk.c: 17490 include <auth.h> to get function prototypes. 17491 [d6c7c12d09fe] 17492 17493 * sudo.cat, sudo.html, sudo.man, sudo.pod: 17494 document -L flag 17495 [dc803e1ce0d7] 17496 174971999-10-11 Todd C. Miller <Todd.Miller@courtesan.com> 17498 17499 * sudo.c: 17500 in set_perms(), always call setuid(0) before changing the ruid/euid 17501 so we always know it will succeed. 17502 [8cced1b862bf] 17503 17504 * defaults.h: 17505 #undef T_FOO to avoid conflicts with system defines (like on 17506 ULTRIX). 17507 [d9f0aac092b0] 17508 17509 * TODO, sample.sudoers, sudoers.cat, sudoers.html, sudoers.man, 17510 sudoers.pod: 17511 Docuement "Defaults" lines in /etc/sudoers. Still needs some 17512 fleshing out but this is a start. 17513 [521a1e629bbc] 17514 175151999-10-10 Todd C. Miller <Todd.Miller@courtesan.com> 17516 17517 * use strtol, not strtoul since not everyone has not strtoul 17518 [988462f093cc] 17519 17520 * defaults.c: 17521 use strtol, not strtoul since not everyone has not strtoul 17522 [fce835ce62e3] 17523 17524 * lex.yy.c, parse.lex: 17525 last {WORD} rule should only apply in the INITIAL state 17526 [9b57570bfa83] 17527 17528 * lex.yy.c, parse.lex: 17529 o Add support for escaped characters in the WORD macro o Modify 17530 fill() to squash escape chars 17531 [87572d59e4e0] 17532 17533 * defaults.c, defaults.h: 17534 o Add T_PATH flag to allow simple sanity checks for default values 17535 that are supposed to be pathnames. o Fix a duplicate free when 17536 visudo finds an error. 17537 [bdc6855a6c6d] 17538 175391999-10-09 Todd C. Miller <Todd.Miller@courtesan.com> 17540 17541 * defaults.c, defaults.h, logging.c: 17542 mail_if_foo -> mail_foo 17543 [cbee9415875d] 17544 175451999-10-08 Todd C. Miller <Todd.Miller@courtesan.com> 17546 17547 * compat.h, defaults.c, defaults.h, sudo.c, tgetpass.c: 17548 o Add requiretty option o Move O_NOCTTY to compat.h 17549 [65b8bf0e1795] 17550 17551 * logging.c: 17552 The exit() in log_error() was mistakenly removed in a previous 17553 version. Put it back... 17554 [9473449130a4] 17555 175561999-10-07 Todd C. Miller <Todd.Miller@courtesan.com> 17557 17558 * INSTALL, TODO, auth/aix_auth.c, auth/fwtk.c, auth/pam.c, 17559 auth/rfc1938.c, auth/sia.c, auth/sudo_auth.c, check.c, config.h.in, 17560 configure, configure.in, defaults.c, defaults.h, find_path.c, 17561 getspwuid.c, logging.c, parse.yacc, sudo.c, sudo.tab.c: 17562 o Change defaults stuff to put the value right in the struct. o 17563 Implement mailer_flags o Store syslog stuff both in int and string 17564 form. Setting the string form magically updates the int version. 17565 o Add boolean attribute to strings where it makes sense to say !foo 17566 [4698953f9a36] 17567 17568 * tgetpass.c: 17569 add O_NOCTTY when opening /dev/tty just in case 17570 [4c6d1d1bb300] 17571 175721999-10-06 Todd C. Miller <Todd.Miller@courtesan.com> 17573 17574 * auth/API: 17575 cleanup function no longer takes a status arg 17576 [0819edbfe7f8] 17577 17578 * INSTALL: 17579 the the 17580 [19aadb65ea28] 17581 175821999-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 17583 17584 * TODO, config.h.in, configure, configure.in, logging.c: 17585 Use strftime() instead of ctime() if it is available. 17586 [fb60ea63b514] 17587 175881999-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 17589 17590 * defaults.c: 17591 fix copyright date 17592 [4a53b54aa72f] 17593 17594 * RUNSON: 17595 update ReliantUNIX entry 17596 [de618a4f67d9] 17597 17598 * defaults.c, defaults.h, logging.c: 17599 add log_year option 17600 [251a9e20568a] 17601 17602 * configure, configure.in: 17603 add --without-sendmail to help output 17604 [93162f199902] 17605 17606 * configure, configure.in: 17607 enforce an otctal arg for --with-suoders-mode 17608 [45e1b04ccad3] 17609 176101999-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 17611 17612 * BUGS, INSTALL, Makefile.in, TODO, aclocal.m4, auth/aix_auth.c, 17613 auth/fwtk.c, auth/kerb5.c, auth/pam.c, auth/rfc1938.c, auth/sia.c, 17614 auth/sudo_auth.c, check.c, config.h.in, configure, configure.in, 17615 defaults.c, defaults.h, find_path.c, lex.yy.c, logging.c, parse.h, 17616 parse.lex, parse.yacc, sudo.c, sudo.h, sudo.tab.c, sudo.tab.h, 17617 testsudoers.c, version.c, visudo.c: 17618 Add support for "Defaults" line in sudoers to make configuration 17619 variables changable at runtime (and on a global, per-host and per- 17620 user basis). Both the names and the internal representation are 17621 still subject to change. It was necessary to make sudo_user.runas 17622 but a char ** instead of a char * since this value can be changed by 17623 a Defaults line. There is a similar (but more complicated) issue 17624 with sudo_user.prompt but it is handled differently at the moment. 17625 17626 Add a "-L" flag to list the name of options with their descriptions. 17627 This may only be temporary. 17628 17629 Move some prototypes to parse.h 17630 17631 Be much less restrictive on what is allowed for a username. 17632 [f71abf7ba80c] 17633 17634 * sample.syslog.conf: 17635 Add more info 17636 [e952e6f42d4d] 17637 176381999-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 17639 17640 * LICENSE, fnmatch.3, fnmatch.c, getcwd.c, lsearch.c, snprintf.c, 17641 strcasecmp.c: 17642 UCB has dropped the advertising clause from their license. 17643 [a5602b36a341] 17644 176451999-08-31 Todd C. Miller <Todd.Miller@courtesan.com> 17646 17647 * auth/sudo_auth.h: 17648 move dce_verofy proto to correct section 17649 [972c815af558] 17650 17651 * auth/dce.c: 17652 remove XXX 17653 [820631855be0] 17654 176551999-08-28 Todd C. Miller <Todd.Miller@courtesan.com> 17656 17657 * emul/fnmatch.h: 17658 Add fnmatch() prototype 17659 [79e84576d92a] 17660 17661 * fnmatch.c, parse.c, testsudoers.c: 17662 Move inclusion of emul/fnmatch.h to be after sudo.h for __P 17663 [1182c89fa811] 17664 17665 * sudo.h: 17666 add strcasecmp proto 17667 [512d1d8a6a0c] 17668 17669 * auth/sudo_auth.c: 17670 add check for case where there are no auth methods 17671 [e4af2b91b43e] 17672 17673 * configure, configure.in: 17674 Define _XOPEN_EXTENDED_SOURCE on AIX and __USE_FIXED_PROTOTYPES__ on 17675 SunOS4 w/ gcc 17676 [746ce8bcec23] 17677 17678 * getspwuid.c, lex.yy.c, parse.lex, parse.yacc, sudo.tab.c: 17679 include strings.h everywhere we include string.h 17680 [6f7d5d437e7b] 17681 17682 * version.c: 17683 nicer output when showing auth methods 17684 [0eac4b977f9d] 17685 17686 * version.c: 17687 Add support for SEND_MAIL_WHEN_NO_HOST 17688 [9f20a3a3fae6] 17689 17690 * config.h.in, configure, configure.in: 17691 Add _GNU_SOURCE for Linux 17692 [c7bd8c511847] 17693 17694 * lex.yy.c, parse.lex: 17695 fix definition of OCTECT 17696 [4af30e63244d] 17697 17698 * configure, configure.in: 17699 aix_auth.o not authenticate.o 17700 [fe95dfb08df4] 17701 177021999-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 17703 17704 * sudo.c: 17705 Only block SIGINT, SIGQUIT, SIGTSTP (which can be generated from the 17706 keyboard). Since we run with ruid/euid == 0 the user can't really 17707 signal us in nasty ways. 17708 [a7f6487c0f48] 17709 17710 * visudo.c: 17711 Don't need to worry about catching too many signals since we do 17712 locking on the tmp file. If a lockfile is really stale, it will be 17713 detected and overwritten. 17714 [28983db3e749] 17715 17716 * INSTALL, Makefile.in: 17717 include auth/API in tarball 17718 [014991600252] 17719 17720 * auth/sudo_auth.c: 17721 move memset() of plaintext pw outside of verify loop and only do the 17722 memset if we are *not* in standalone mode. 17723 [66f8e87567e2] 17724 17725 * auth/sudo_auth.c, auth/sudo_auth.h: 17726 DCE is not a standalone method 17727 [34963e2d8a1b] 17728 17729 * sudo.c: 17730 fix --enable-noargs-shell 17731 [4234062abbb0] 17732 17733 * snprintf.c: 17734 "#ifdef __STDC__" not "#if __STDC__" (I missed one) 17735 [c430b80454c6] 17736 17737 * auth/fwtk.c, auth/sia.c: 17738 _cleanup() function returns an int. 17739 [d1a1cc071ec1] 17740 17741 * auth/dce.c: 17742 there were still some return(0)'s hanging around, make them 17743 AUTH_FAILURE 17744 [1002aa1962c3] 17745 17746 * parse.c: 17747 typo in comment 17748 [5abc410dbfd2] 17749 17750 * version.c: 17751 add missing semicolon 17752 [a262283b52a5] 17753 17754 * auth/sudo_auth.h: 17755 missing backslash 17756 [bf89f6bd2900] 17757 177581999-08-26 Todd C. Miller <Todd.Miller@courtesan.com> 17759 17760 * CHANGES, config.h.in, configure, configure.in: 17761 Kill _XOPEN_EXTENDED_SOURCE -- causes problems on some OSes 17762 [f1a9bca0cf67] 17763 17764 * Makefile.in: 17765 add parse.h to HDRS 17766 [a3d054987766] 17767 17768 * Makefile.in, configure, configure.in: 17769 Kill VISUDO_LIBS and VISUDO_LDFLAGS. Add LIBS, NET_LIBS, and 17770 LDFLAGS. Common libs go in LIBS, commong ld flags go in LDFLAGS and 17771 network libs like -lsocket, -lnsl go in NET_LIBS. This allows 17772 testsudoers to build on Solaris and is a bit cleaner in general. 17773 [4e6239e97002] 17774 17775 * UPGRADE: 17776 mention ptmp -> sudoers.tmp 17777 [ec3baa0fe8a1] 17778 17779 * config.h.in, configure, configure.in: 17780 Define _XOPEN_SOURCE_EXTENDED not _XOPEN_SOURCE 17781 [6f93dc7f39f5] 17782 17783 * RUNSON: 17784 add 2 reports 17785 [ce0fcc00ee4e] 17786 17787 * auth/kerb5.c: 17788 Minor changes, mostly cosmetic. verify_krb_v5_tgt() changed to 17789 return a value more like a system function 17790 [0dd56aa21424] 17791 17792 * auth/dce.c: 17793 Add an XXX 17794 [58fc8562c212] 17795 17796 * TODO: 17797 more things todo! 17798 [5a459d0cf339] 17799 17800 * sample.sudoers: 17801 update based on what is in the man page 17802 [1a0477db96fa] 17803 17804 * parse.yacc, sudo.tab.c: 17805 minor change to first line printed in -l mode 17806 [69eb57d96952] 17807 17808 * sudo.cat, sudo.html, sudo.man, sudo.pod: 17809 rename "ENVIRONMENT VARIABLES" section to "ENVIRONMENT" to be more 17810 standard and add "EXAMPLES" section 17811 [7e543335ebe1] 17812 17813 * visudo.cat, visudo.html, visudo.man, visudo.pod: 17814 rename "ENVIRONMENT VARIABLES" section to "ENVIRONMENT" to be more 17815 standard 17816 [f82d87ed65c2] 17817 17818 * logging.c, parse.c, sudo.h: 17819 add FLAG_NO_CHECK 17820 [c7d69176a2d7] 17821 17822 * lex.yy.c, parse.lex: 17823 make an OCTET really be limited to 0-255 17824 [6ee568dd6a02] 17825 17826 * UPGRADE: 17827 mention timestamp changes 17828 [e44d5302bf60] 17829 17830 * PORTING: 17831 cosmetic cleanup 17832 [36fa3a2664dd] 17833 17834 * sudoers.cat, sudoers.html, sudoers.man, sudoers.pod: 17835 new sudoers(8) man page 17836 [e674d06283d0] 17837 178381999-08-24 Todd C. Miller <Todd.Miller@courtesan.com> 17839 17840 * version.c: 17841 Update comments about syslog name tables 17842 [63830a782dcb] 17843 17844 * CHANGES, LICENSE, Makefile.in, configure, configure.in, parse.yacc, 17845 strcasecmp.c, sudo.tab.c: 17846 include strcasecmp() for those without it 17847 [a0d8e2488bbc] 17848 17849 * sample.sudoers: 17850 Use the : operator some more and fix a typo 17851 [18804c70da86] 17852 17853 * HISTORY: 17854 update the history of sudo 17855 [9d9b3d5279b3] 17856 17857 * parse.c, parse.lex, testsudoers.c: 17858 CIDR-style netmask support 17859 [768644467353] 17860 17861 * CHANGES: 17862 recent changes 17863 [a4319e9d07cb] 17864 17865 * sudo.tab.c, sudo.tab.h: 17866 these should be generated with byacc, not bison 17867 [f57b9489b752] 17868 17869 * lex.yy.c: 17870 regen 17871 [522461f95dfa] 17872 17873 * parse.h, parse.yacc, sudo.tab.c, sudo.tab.h: 17874 In "sudo -l" mode, the type of the stored (expanded) alias was not 17875 stored with the contents. This could lead to incorrect output if 17876 the sudoers file had different alias types with the same name. 17877 Normal parsing (ie: not in '-l' mode) is unaffected. 17878 [823fe2bc4b79] 17879 178801999-08-23 Todd C. Miller <Todd.Miller@courtesan.com> 17881 17882 * configure, configure.in: 17883 define _XOPEN_SOURCE to get at crypt() proto on some systems 17884 [1b3769b86fb9] 17885 178861999-08-22 Todd C. Miller <Todd.Miller@courtesan.com> 17887 17888 * snprintf.c: 17889 fix comment 17890 [fc1264df00f7] 17891 17892 * tgetpass.c: 17893 don't need limits.h 17894 [f1631829af45] 17895 17896 * snprintf.c: 17897 kill bogus reference to vfprintf 17898 [a0b99b25d389] 17899 17900 * sample.sudoers, sudoers: 17901 better examples 17902 [b4d87ea64cc8] 17903 17904 * snprintf.c: 17905 Add some const in the K&R defs. This is safe since we define const 17906 away if the compiler doesn't grok it. 17907 [614d6e83d45e] 17908 17909 * aclocal.m4, configure: 17910 Better test for working long long support. Ultrix compiler supports 17911 basic long long but not all operations on them. 17912 [5da1508710ed] 17913 17914 * aclocal.m4, auth/secureware.c, config.h.in, configure, getspwuid.c, 17915 snprintf.c, sudo.c: 17916 Add check for LONG_IS_QUAD #undef MAXINT before including 17917 hpsecurity.h to silence an HP-UX warning Check for U?LONG_LONG_MAX 17918 in snprintf.c and use LONG_IS_QUAD 17919 [a1f7993367fc] 17920 179211999-08-21 Todd C. Miller <Todd.Miller@courtesan.com> 17922 17923 * LICENSE, aclocal.m4, config.h.in, configure, configure.in, 17924 snprintf.c: 17925 UCB-derived snprintf + asprintf support. Supports quads if the 17926 compiler does. No floating point yet, perhaps later... 17927 [0caf05aba945] 17928 179291999-08-20 Todd C. Miller <Todd.Miller@courtesan.com> 17930 17931 * auth/API, auth/sudo_auth.c, auth/sudo_auth.h, check.c, find_path.c, 17932 goodpath.c, logging.c, parse.c, sudo.c: 17933 Run most of the code as root, not the invoking user. It doesn't 17934 really gain us anything to run as the user since an attacker can 17935 just have an setuid(0) in their egg. Running as root solves 17936 potential problems wrt signalling. 17937 [408e530dda01] 17938 17939 * sudo.tab.c: 17940 regen 17941 [f8cfb37e37de] 17942 179431999-08-19 Todd C. Miller <Todd.Miller@courtesan.com> 17944 17945 * logging.c, sudo.c: 17946 Don't wait for child to finish in log_error(), let the signal 17947 handler get it if we are still running, else let init reap it for 17948 us. The extra time it takes to wait lets the user know that mail is 17949 being sent. 17950 17951 Install SIGCHLD handler in main() and for POSIX signals, block 17952 everything 17953 *except* SIGCHLD. 17954 [d2b6ab0ef3be] 17955 17956 * INSTALL, config.h.in, configure, configure.in, logging.c, parse.c, 17957 parse.yacc, sudo.c, sudo.h: 17958 sudoers_lookup() now returns a bitmap instead of an int. This makes 17959 it possible to express things like "failed to validate because user 17960 not listed for this host". Some thigns that were previously 17961 VALIDATE_FOO are now FLAG_FOO. This may change later on. 17962 17963 Reorganized code in log_auth() and sudo.c to deal with above 17964 changes. 17965 17966 Safer versions of push/pushcp with in the do { ... } while (0) style 17967 17968 parse.yacc now saves info on the stack to allow parse.c to determine 17969 if a user was listed, but not for the host he/she tried to run on. 17970 17971 Added --with-mail-if-no-host option 17972 [63326cb01efc] 17973 179741999-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 17975 17976 * parse.yacc, sudo.h, sudo.tab.c, visudo.c, visudo.cat, visudo.html, 17977 visudo.man, visudo.pod: 17978 o NewArgv and NewArgc don't need to be externally visible. o If 17979 pedantic > 1, it is a parse error. o Add -s (strict) option to 17980 visudo which sets pedantic to 2. 17981 [5d7d81b55cd5] 17982 17983 * HISTORY, INSTALL: 17984 Just have sudo-bugs contact info in one place 17985 [e7f6588ea683] 17986 17987 * sudo.cat, sudo.html, sudo.man, sudo.pod: 17988 Add BUGS section 17989 [6607d96ea510] 17990 17991 * Makefile.in, configure, configure.in: 17992 Add testsudoers to default build target if --with-devel Don't clean 17993 generated parser files unless "distclean". 17994 [5827b769dc57] 17995 17996 * parse.yacc, sudo.tab.c: 17997 In pedantic mode we need to save *all* the aliases, not just those 17998 that match, or we get spurious warnings. 17999 [24f5b1f0e1de] 18000 18001 * TROUBLESHOOTING: 18002 reference samples.sylog.conf 18003 [11841668380a] 18004 180051999-08-14 Todd C. Miller <Todd.Miller@courtesan.com> 18006 18007 * sample.syslog.conf: 18008 Sample entries for syslog.conf 18009 [0f7697d878a1] 18010 18011 * CHANGES: 18012 recent changes 18013 [8bca8810c6bd] 18014 18015 * auth/API, auth/afs.c, auth/aix_auth.c, auth/dce.c, auth/fwtk.c, 18016 auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/passwd.c, 18017 auth/rfc1938.c, auth/secureware.c, auth/securid.c, auth/sia.c, 18018 auth/sudo_auth.c, auth/sudo_auth.h: 18019 In struct sudo_auth, turn need_root and configured into flags and 18020 add a flag to specify an auth method is running alone (the only 18021 one). Pass auth methods their sudo_auth pointer, not the data 18022 pointer. This allows us to get at the flags and tell if we are the 18023 only auth method. That, in turn, allows the method to be able to 18024 decide what should/should not be a fatal error. Currently only 18025 rfc1938 uses it this way, which allows us to kill the OTP_ONLY 18026 define and te hackery that went with it. With access to the 18027 sudo_auth struct, methods can also get at a string holding their 18028 cannonical name (useful in error messages). 18029 [b7e320fc6511] 18030 18031 * INSTALL, Makefile.in, README, config.h.in, configure, configure.in, 18032 getspwuid.c, lex.yy.c, parse.lex, parse.yacc, sudo.tab.c, 18033 sudo.tab.h: 18034 o --with-otp deprecated, use --without-passwd instead o real 18035 dependencies in the Makefile o --with-devel option to enable yacc, 18036 lex, and -Wall o style -- "foo -> bar" becomes "foo->bar" o ALL goes 18037 back to being a token, not a string but don't leak memory o rename 18038 hsotspec -> host in parse.yacc 18039 [912c45226cb2] 18040 180411999-08-12 Todd C. Miller <Todd.Miller@courtesan.com> 18042 18043 * BUGS, CHANGES: 18044 recent changes 18045 [801fa6e55687] 18046 18047 * auth/sudo_auth.c, configure, configure.in, interfaces.c, snprintf.c, 18048 sudo.c, sudo.h: 18049 o Digital UNIX needs to check for *snprintf() before -ldb is added 18050 to LIBS since -ldb includes a bogus snprintf(). o Add forward refs 18051 for struct mbuf and struct rtentry for Digital UNIX. o Reorder some 18052 functions in snprintf.c to fix -Wall o Add missing includes to fix 18053 more -Wall 18054 [8d207203e126] 18055 18056 * INSTALL, auth/sudo_auth.c, check.c, config.h.in, configure, 18057 configure.in, parse.yacc, sudo.tab.c, testsudoers.c, version.c, 18058 visudo.c: 18059 o Add a "pedentic" flag to the parser. This makes sudo warn in 18060 cases where an alias may be used before it is defined. Only turned 18061 on for visudo and testsudoers. o Add --disable-authentication option 18062 that makes sudo not require authentication by default. The PASSWD 18063 tag can be used to require authentication for an entry. We no 18064 longer overload --without-passwd. 18065 [f307e09adf98] 18066 18067 * lex.yy.c, parse.lex: 18068 Break 'WORD' regexp def into HOSTNAME and USERNAME. These days a 18069 username can contain just about anything so be very permissive. Also 18070 drop the unused \. punctuation. 18071 [06a50614ff89] 18072 180731999-08-09 Todd C. Miller <Todd.Miller@courtesan.com> 18074 18075 * parse.yacc, sudo.tab.c: 18076 o add a 'val' element to aliasinfo struct and move -> parse.h o 18077 find_alias() now returns an aliasinfo * instead of boolean o 18078 add_alias() now takes a value parameter to store in the 18079 aliasinfo.val o The cmnd, hostspec, runasuser, and user rules now 18080 return: 1) positive match 0) negative match (due to '!') 18081 -1) no match This means setting $$ explicitly in all cases, which I 18082 should have done in the first place. It also means that we always 18083 store a value that is != -1 and when we see a '!' we can set 18084 *_matches to !rv if rv != -1. The upshot of all of this is that '!' 18085 now works the way it should in lists and some of the rules are more 18086 uniform and sensible. 18087 [ad8e73b5d581] 18088 18089 * Makefile.in: 18090 add parse.h dependency 18091 [4ccccd464d30] 18092 18093 * parse.h: 18094 kill unused *_matched macros 18095 [02cba6dcb732] 18096 18097 * parse.yacc: 18098 Allow a list of users as the first thing in a user spec, not just a 18099 single entry. This makes things more uniform, though it does allow 18100 you to write user specs that are hard to read. 18101 [3c4c91c508ca] 18102 18103 * sudo.tab.c: 18104 parse.yacc 18105 [feca81881bb6] 18106 18107 * configure: 18108 regen 18109 [6f247010bb3b] 18110 18111 * configure.in: 18112 fix check for crypt() in libufc 18113 [82770736f4b0] 18114 181151999-08-07 Todd C. Miller <Todd.Miller@courtesan.com> 18116 18117 * README: 18118 sudo-users list now exists 18119 [4716d2bb0bbf] 18120 18121 * INSTALL, PORTING, README, TODO, TROUBLESHOOTING: 18122 Update to reality. 18123 [1eda2d57e42a] 18124 18125 * CHANGES, Makefile.in, TODO, TROUBLESHOOTING, check.c, compat.h, 18126 config.h.in, configure, configure.in, fileops.c, logging.c, sudo.h, 18127 version.c, visudo.c: 18128 o Move lock_file() and touch() into fileops.c so visudo can use them 18129 o Visudo now locks the sudoers temp file instead of bailing when the 18130 temp file already exists. This fixes the problem of stale temp 18131 files but it does *require* that you not try to put the temp file in 18132 a world-writable directory. This shoud not be an issue as the temp 18133 file should live in the same dir as sudoers. o Visudo now only 18134 installs the temp file as sudoers if it changed. 18135 [2517cd06c070] 18136 181371999-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 18138 18139 * logging.c: 18140 add fcntl locking 18141 [c304adeaf515] 18142 18143 * config.h.in, configure, configure.in, logging.c: 18144 Lock the log file. 18145 [d8652704fbdf] 18146 18147 * Makefile.in, TROUBLESHOOTING, parse.c, pathnames.h.in, sudo.c, 18148 visudo.c, visudo.cat, visudo.html, visudo.man, visudo.pod: 18149 o /etc/stmp -> /etc/sudoers.tmp since solaris uses stmp as shadow 18150 temp file o _PATH_SUDO_SUDOERS -> _PATH_SUDOERS and _PATH_SUDO_STMP 18151 -> _PATH_SUDOERS_TMP 18152 [68cad8975807] 18153 181541999-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 18155 18156 * INSTALL, check.c, config.h.in, configure, configure.in, version.c: 18157 o Kill *_MESSAGE and replace with NO_LECTURE o Add more things to 18158 root sudo -V config reporting 18159 [cdd2613a9dcf] 18160 18161 * configure, configure.in: 18162 aix_auth.o not authenticate.o 18163 [d972e35f6730] 18164 18165 * config.h.in: 18166 Add --with-goodpri and --with-badpri configure options to specify 18167 the syslog priority to use. 18168 [2595ae50ab86] 18169 18170 * INSTALL, configure, configure.in, logging.h: 18171 Add --with-goodpri and --with-badpri configure options to specify 18172 the syslog priority to use. 18173 [8276ee9b2b49] 18174 18175 * compat.h: 18176 kill crufty AIX stuff 18177 [a4f35ef9854e] 18178 18179 * Makefile.in: 18180 Sigh, some versions of make (like Solaris's) don't deal with $< like 18181 I would expect. Both GNU and BSD makes get this right but... So, we 18182 just expand $< inline at the cost of some ugliness. 18183 [b1b456f8801f] 18184 18185 * version.c: 18186 If the invoking user is root, sudo will now print configure info in 18187 -V mode. Currently just prints logging info, to be expanded later. 18188 [392f7ed99267] 18189 18190 * logging.c, logging.h, sudo.c, sudo.h: 18191 o new defines for syslog facility and priority o use new 18192 print_version() functino for -V mode 18193 [78abc5142985] 18194 18195 * check.c: 18196 Don't need version.c 18197 [db9a830ad893] 18198 18199 * aclocal.m4, config.h.in, configure, configure.in: 18200 Add check for syslog facilities and priorities tables in syslog.h 18201 [b86213e5fc5c] 18202 18203 * Makefile.in: 18204 o authenticate -> aix_auth o add version.c 18205 [44b6b9a8d0f5] 18206 18207 * auth/sudo_auth.c: 18208 Missed a prompt -> user_prompt conversion 18209 [e4c60b1f210c] 18210 182111999-08-04 Todd C. Miller <Todd.Miller@courtesan.com> 18212 18213 * TODO: 18214 sudo should lock its logfile 18215 [6d2830b28b07] 18216 18217 * parse.yacc, sudo.tab.c: 18218 o Add '!' correctly when expanding Aliases. o Add shortcut macros 18219 for append() to make things more readable. o The separator in 18220 append() is now a string instead of a char. o In append(), only 18221 prepend the separator if the last char is not a '!'. This is a 18222 hack but it greatly simplifies '!' handling. o In -l mode, Runas 18223 lists and NOPASSWD/PASSWD tags are now inherited across entries in 18224 a list (matches current behavior). o Fix formatting in -l mode such 18225 that items in a list are separated by a space. Greatlt improves 18226 readability. o Space for name field in struct aliasinfo is now 18227 allocated dyanically instead of using a (big) buffer. o In 18228 add_alias(), only search the list once (lsearch instead of lfind + 18229 lsearch) 18230 [51f7e07addb9] 18231 18232 * lex.yy.c, sudo.tab.c, sudo.tab.h: 18233 regen 18234 [5c19bb05dc21] 18235 18236 * configure, configure.in: 18237 Solais pam doesn't require anye xtra setup 18238 [a25ba03d91d1] 18239 18240 * parse.yacc: 18241 o Simpler '!' support now that the lexer deals with multiple !'s for 18242 us. o In the case of opFOO, have FOO give a boolean return value and 18243 set foo_matches in opFOO, not FOO. o Treat 'ALL' as a string since 18244 it gets fill()'d in parse.lex--fixes a small memory leak. In the 18245 long run it may be better to just fix parse.lex and make ALL back 18246 into a token. However, having it be a string is useful since it 18247 can be easily passed back to the parent rule if we so desire. 18248 [b3c64b443018] 18249 18250 * parse.lex: 18251 o Remove some unnecessary backslashes o collapse multiple !'s by 18252 using !+ and checking if yyleng is even or odd. this allows us to 18253 simplify ! handling in parse.yacc 18254 [76330e8da8e3] 18255 18256 * sudo.c: 18257 -u flag was being ignored 18258 [e30283207585] 18259 182601999-08-01 Todd C. Miller <Todd.Miller@courtesan.com> 18261 18262 * Makefile.in: 18263 correct fix 18264 [a0e2377dec8f] 18265 18266 * Makefile.in: 18267 work around pod2man stupididy 18268 [7c755640b67f] 18269 18270 * Makefile.in: 18271 correct dependencies for .cat 18272 [5ed7b0653b68] 18273 18274 * sudo.cat, sudo.man, visudo.cat, visudo.man: 18275 regen 18276 [b74510dd6a0a] 18277 18278 * sudo.pod, visudo.pod: 18279 Add copyright Update to reality 18280 [188e9b046c15] 18281 18282 * parse.c, sudo.c, sudo.h: 18283 rename validate() to the more descriptive sudoers_lookup() 18284 [7a1cb652f379] 18285 18286 * auth/aix_auth.c: 18287 use tgetpass 18288 [b8ba5daec40a] 18289 182901999-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 18291 18292 * CHANGES: 18293 updates 18294 [e61460cdf4a0] 18295 18296 * HISTORY, INSTALL, Makefile.in, README, RUNSON, TROUBLESHOOTING, 18297 configure, configure.in, sudo.c: 18298 Sudo, not CU Sudo 18299 [9061b3573c0c] 18300 18301 * LICENSE: 18302 add 4th term to license similar to term 5 in the apache license 18303 [92712e895afb] 18304 18305 * emul/search.h, emul/utime.h: 18306 add 4th term to license similar to term 5 in the apache license 18307 [4f93a8b9396e] 18308 18309 * auth/afs.c, auth/aix_auth.c, auth/dce.c, auth/fwtk.c, auth/kerb4.c, 18310 auth/kerb5.c, auth/pam.c, auth/passwd.c, auth/rfc1938.c, 18311 auth/secureware.c, auth/securid.c, auth/sia.c, auth/sudo_auth.c, 18312 auth/sudo_auth.h, insults.h, interfaces.c, interfaces.h, lex.yy.c, 18313 logging.c, logging.h, parse.c, parse.h, parse.lex, parse.yacc, 18314 pathnames.h.in, putenv.c, strerror.c, sudo.c, sudo.h, sudo.tab.c, 18315 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, version.h, 18316 visudo.c: 18317 add 4th term to license similar to term 5 in the apache license 18318 [afae9f2bf9ec] 18319 18320 * ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h: 18321 add 4th term to license similar to term 5 in the apache license 18322 [c389d3fdafac] 18323 18324 * Makefile.in, alloc.c, check.c, compat.h, config.h.in, find_path.c, 18325 getspwuid.c, goodpath.c: 18326 add 4th term to license similar to term 5 in the apache license 18327 [969e63dbd38e] 18328 18329 * LICENSE, aclocal.m4, auth/rfc1938.c, check.c, configure.in, 18330 insults.h, logging.c, sudo.c, sudo.h: 18331 there was a 1995 release too 18332 [5963fd89457a] 18333 183341999-07-28 Todd C. Miller <Todd.Miller@courtesan.com> 18335 18336 * CHANGES: 18337 updates 18338 [254b794f16ab] 18339 18340 * check.c: 18341 Use dirs instead of files for timestamp. This allows tty and non- 18342 tty schemes to coexist reasonably. Note, however, that when you 18343 update a tty ticket, the mtime on the user dir gets updated as well. 18344 [44bfac32f799] 18345 18346 * configure, configure.in: 18347 Fix getprpwnam() checking on SCO. Need to link with "-lprot -lx" 18348 when linking test program, not just -lprot. Also add check for 18349 getspnam(). The SCO docs indicate that /etc/shadow can be used but 18350 this may be a lie. 18351 [2ba21d36cc1e] 18352 183531999-07-24 Todd C. Miller <Todd.Miller@courtesan.com> 18354 18355 * auth/API: 18356 first cut at auth API description 18357 [3d10df021eb8] 18358 183591999-07-22 Todd C. Miller <Todd.Miller@courtesan.com> 18360 18361 * auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/pam.c, auth/rfc1938.c, 18362 auth/secureware.c, auth/securid.c, auth/sudo_auth.c, 18363 auth/sudo_auth.h: 18364 auth API change. There is now an init method that gets run before 18365 the main loop. This allows auth routines to differentiate between 18366 initialization that happens once vs. setup that needs to run each 18367 time through the loop. 18368 [76df1c0d3478] 18369 18370 * auth/kerb5.c, logging.c: 18371 use easprintf() and evasprintf() 18372 [fd97d96dc12f] 18373 18374 * alloc.c, sudo.h: 18375 add easprintf() and evasprintf(), error checking versions of 18376 asprintf() and vasprintf() 18377 [f54385de20b7] 18378 18379 * TODO: 18380 remove 2 items. One done, one won't do. 18381 [64513b47bc7a] 18382 18383 * lex.yy.c, sudo.tab.c: 18384 regen 18385 [4aa299de2752] 18386 18387 * configure, sudo.cat, sudo.html, sudo.man, sudoers.html, visudo.cat, 18388 visudo.html, visudo.man: 18389 regen 18390 [553c0d1209be] 18391 18392 * CHANGES: 18393 new changes 18394 [d7be00b7e36b] 18395 18396 * sudo.pod: 18397 o Document -K flag and update meaning of -k flag. o BSD-style 18398 copyright o Document clearing of BIND resolver environment variables 18399 o Clarify bit about shared libs o suggest rc files create /tmp/.odus 18400 if your OS gives away files 18401 [4a4092be1455] 18402 18403 * visudo.pod: 18404 BSD license 18405 [ad0bfd0a4630] 18406 18407 * version.h: 18408 BSD-style copyright 18409 [ecc6479325be] 18410 18411 * tgetpass.c: 18412 o BSD copyright o no need to block signals, we now do that in main() 18413 o cosmetic changes 18414 [61958beda7ab] 18415 18416 * testsudoers.c, visudo.c: 18417 o BSD-style copyright o Use "struct sudo_user" instead of old 18418 globals. o some cometic cleanup 18419 [88c0c6924082] 18420 18421 * sudo_setenv.c: 18422 BSD-style copyright 18423 [df20290129a0] 18424 18425 * sudo.h: 18426 o BSD copyright o logging and parser bits moved to their own .h 18427 files o new "struct sudo_user" to encapsulate many of the old 18428 globals. 18429 [50fc86bf25cb] 18430 18431 * sudo.c: 18432 o no longer contains sudo 1.1/1.2 code o BSD copyright o use new 18433 logging routines o simplified flow of control o BIND resolver 18434 additions to badenv_table 18435 [8c53f15bfcb0] 18436 18437 * strerror.c: 18438 BSD-style copyright 18439 [7c906c3a82ac] 18440 18441 * snprintf.c: 18442 Now compiles on more K&R compilers 18443 [07ab1d3231c7] 18444 18445 * putenv.c: 18446 BSD-style copyright, cosmetic changes 18447 [c42371295881] 18448 18449 * pathnames.h.in: 18450 BSD-style copyright 18451 [e5c34ebd4cf1] 18452 18453 * parse.c, parse.h, parse.lex, parse.yacc: 18454 BSD-style copyright. Move parser-specific defines and structs into 18455 parse.h + other cosmetic changes 18456 [d3088efb6228] 18457 18458 * logging.h: 18459 defines for logging routines 18460 [13147941c02d] 18461 18462 * find_path.c, getspwuid.c, goodpath.c, interfaces.c: 18463 BSD-style copyright, cosmetic changes 18464 [e8205e91a4fa] 18465 18466 * ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 18467 interfaces.h: 18468 BSD-style copyright 18469 [b9499da7cdce] 18470 18471 * configure.in: 18472 o tgetpass.c is no longer optional o kill DCE_OBJS, add AUTH_OBJS o 18473 kill --disable-tgetpass o add --without-passwd o changes to fill in 18474 AUTH_OBJS for new auth api o check for strerror(), v?snprintf() and 18475 v?asprintf() o replace --with-AuthSRV with --with-fwtk 18476 [9a3f39b9c128] 18477 18478 * config.h.in: 18479 BSD-style copyright. Remove USE_GETPASS and HAVE_UTIME_NULL. Add 18480 HAVE_FWTK, HAVE_STRERROR, HAVE_SNPRINTF, HAVE_VSNPRINTF, 18481 HAVE_ASPRINTF, HAVE_VASPRINTF, WITHOUT_PASSWD and NO_PASSWD 18482 [9a09054db53a] 18483 18484 * compat.h: 18485 BSD-style copyright; Add S_IFLNK and MIN/MAX id they are missing. 18486 [25509c566975] 18487 18488 * alloc.c: 18489 BSD-style copyright 18490 [4967be892363] 18491 18492 * TROUBLESHOOTING: 18493 no more --with-getpass 18494 [afd5b670c196] 18495 18496 * TODO: 18497 Take out things I've done... 18498 [375420c8270e] 18499 18500 * README: 18501 Refer to LICENSE 18502 [c486c8db30f6] 18503 18504 * PORTING: 18505 --with-getpass no longer exists 18506 [db48202df1bb] 18507 18508 * Makefile.in: 18509 BSD-style copyright. Update to reflect reality wrt new files and 18510 new auth modules. 18511 [61a2ca7940fb] 18512 18513 * INSTALL: 18514 Remove --with-AuthSRV and --disable-tgetpass. Add --with-fwtk and 18515 --without-passwd. 18516 [64e8f9e1c05e] 18517 18518 * HISTORY: 18519 Update history a bit 18520 [df60c0a871b8] 18521 18522 * COPYING, LICENSE: 18523 Now distributed under a BSD-style license 18524 [d1a184ccabe1] 18525 18526 * auth/sudo_auth.c: 18527 o BSD-style copyright o Add support for NO_PASSWD/WITHOUT_PASSWD 18528 options. o skey/opie replaced by rfc1938 code o new struct sudo_user 18529 global 18530 [891b57060868] 18531 18532 * auth/pam.c, auth/sia.c: 18533 BSD-style copyright and use new log functions 18534 [65c44445ea84] 18535 18536 * auth/kerb5.c: 18537 o BSD-style copyright o Use new log functiongs o Use asprintf() and 18538 snprintf() where sensible. 18539 [1ff0feaacf95] 18540 18541 * check.c: 18542 Rewrote all the old sudo 1.1/1.2 code. Timestamp handling is now 18543 done more reasonably--better sanity checks and tty-based stamps are 18544 now done as files in a directory with the same name as the invoking 18545 user, eg. /var/run/sudo/millert/ttyp1. It is not currently possible 18546 to mix tty and non-tty based ticket schemes but this may change in 18547 the future (it requires sudo to use a directory instead of a file in 18548 the non-tty case). Also, ``sudo -k'' now sets the ticket back to 18549 the epoch and ``sudo -K'' really deletes the file. That way you 18550 don't get the lecture again just because you killed your ticket in 18551 .logout. BSD-style copyright now. 18552 [ec3460f85be8] 18553 18554 * logging.c: 18555 o rewritten logging routines. log_error() now takes printf-style 18556 varargs and log_auth() for the return value of validate(). o BSD- 18557 style copyright 18558 [438292025c4e] 18559 18560 * auth.c, check_sia.c, dce_pwent.c, secureware.c: 18561 superceded by new auth API 18562 [412060590da7] 18563 18564 * auth/kerb4.c: 18565 BSD-style copyright 18566 [cc4e800833c7] 18567 18568 * auth/fwtk.c: 18569 Use snprintf() where it makes sense and add a BSD-style copyright 18570 [1b7502388a74] 18571 18572 * auth/afs.c, auth/aix_auth.c, auth/dce.c, auth/passwd.c, 18573 auth/rfc1938.c, auth/secureware.c, auth/securid.c, auth/sudo_auth.h: 18574 BSD-style copyright 18575 [42583bedae5c] 18576 18577 * emul/utime.h, utime.c: 18578 BSD-style copyright 18579 [3985c90aba47] 18580 18581 * emul/search.h: 18582 this has been rewritten so use my BSD-style copyright 18583 [176df1b0de6f] 18584 185851999-07-15 Todd C. Miller <Todd.Miller@courtesan.com> 18586 18587 * snprintf.c: 18588 include malloc.h if no stdlib.h 18589 [7b123f1d1d03] 18590 18591 * snprintf.c: 18592 KTH snprintf()/asprintf() for systems w/o them 18593 [3ca9aefb9d01] 18594 18595 * strerror.c: 18596 strerror() for systems w/o it 18597 [7f0bd8a1c1b4] 18598 185991999-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 18600 18601 * visudo.c: 18602 stylistic changes 18603 [6f99aceb7170] 18604 18605 * parse.c, parse.lex, parse.yacc: 18606 Add contribution info in the main comment 18607 [e50cec10acd6] 18608 186091999-07-11 Todd C. Miller <Todd.Miller@courtesan.com> 18610 18611 * auth/pam.c: 18612 remove missed ref to PAM_nullpw 18613 [a43e59692cdb] 18614 18615 * auth/sudo_auth.h: 18616 pasto 18617 [891ff138ab89] 18618 18619 * auth/kerb5.c: 18620 more or less complete now--still untested 18621 [21036732faa0] 18622 18623 * auth/afs.c, auth/pam.c: 18624 don't use user_name macro, it will go away 18625 [def7cf727349] 18626 18627 * auth/opie.c, auth/rfc1938.c, auth/skey.c, auth/sudo_auth.h: 18628 combine skey/opie code into rfc1938.c 18629 [44d88ca93d3e] 18630 18631 * auth/dce.c, auth/sudo_auth.h: 18632 DCE authentication method; basically unchanged from dce_pwent.c 18633 [4d468473dd6f] 18634 18635 * auth/aix_auth.c, auth/sudo_auth.h: 18636 AIX authenticate() support. Could probably be much better 18637 [000013321a33] 18638 18639 * auth/sia.c: 18640 Fix an uninitialized variable and some cleanup. Now works (tested) 18641 [fd6ad88ff055] 18642 18643 * auth/sia.c, auth/sudo_auth.h: 18644 SIA support for digital unix 18645 [5335f3e70eab] 18646 18647 * auth/pam.c: 18648 don't use prompt global, it will go away 18649 [fadd22dd6ce4] 18650 18651 * auth/secureware.c: 18652 correct copyright years 18653 [6aa07c49f51b] 18654 18655 * auth/afs.c, auth/fwtk.c, auth/kerb4.c, auth/kerb5.c, auth/opie.c, 18656 auth/pam.c, auth/passwd.c, auth/secureware.c, auth/securid.c, 18657 auth/skey.c, auth/sudo_auth.c, auth/sudo_auth.h: 18658 New authentication API and methods 18659 [9debe9b59c79] 18660 186611999-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 18662 18663 * sudo.tab.c: 18664 regen 18665 [84578e82c1a6] 18666 18667 * parse.yacc: 18668 only save an entry if user_matches && host_matches, even if the 18669 stack is empty (fix for previous commit) 18670 [00984b078d8a] 18671 18672 * sudo.tab.c: 18673 regen 18674 [66acf160b4b7] 18675 18676 * parse.yacc: 18677 1) Always save an entry on the stack if it is empty. This fixes the 18678 -l and -v flags that were broken by earlier parser changes. 18679 18680 2) In a Runas list, don't negate FALSE -> TRUE since that would make 18681 !foo match any time the user specified a runas user (via -u) other 18682 than foo. 18683 [f322eb54b015] 18684 18685 * testsudoers.c: 18686 interfaces and num_interfaces are now auto, not extern 18687 [113add5c6518] 18688 186891999-07-07 Todd C. Miller <Todd.Miller@courtesan.com> 18690 18691 * auth.c: 18692 use a static global to keep stae about empty passwords 18693 [bc02e30807d8] 18694 18695 * check_sia.c: 18696 make PASSWORD_NOT_CORRECT logging consistent with other modules 18697 [21962549d5fd] 18698 186991999-07-05 Todd C. Miller <Todd.Miller@courtesan.com> 18700 18701 * auth.c: 18702 PAM prompt code was wrong, looks like we have to kludge it after 18703 all. 18704 [91f246155ead] 18705 18706 * auth.c: 18707 In the PAM code, when a user hits return at the first password 18708 prompt, exit without a warning just like the normal auth code 18709 [918f59bacdb7] 18710 18711 * configure, configure.in: 18712 kludge around cross-compiler false positives 18713 [5e5fc8356400] 18714 18715 * auth.c, check.c, check_sia.c, logging.c, sudo.h, tgetpass.c: 18716 New (correct) PAM code Tgetpass now takes an echo flag for use with 18717 PAM_PROMPT_ECHO_ON Block SIGINT and SIGTSTP during auth remove a 18718 useless umask setting Change error from BAD_ALLOCATION -> 18719 BAD_AUTH_INIT (for use with sia/PAM) Some cosmetic changes to auth.c 18720 for consistency 18721 [e71397f09dd8] 18722 18723 * sudo.c: 18724 Some -Wall and kill some trailing spaces 18725 [8229b43d5c4e] 18726 18727 * configure.in: 18728 define -D__EXTENSIONS__ for solaris so we get crypt() proto 18729 [7533e4436cab] 18730 187311999-06-22 Todd C. Miller <Todd.Miller@courtesan.com> 18732 18733 * RUNSON: 18734 add Dynix 4.4.4 18735 [b69f773efbce] 18736 18737 * INSTALL, config.h.in, configure, configure.in: 18738 for kerberos V < version, fall back on old kerb4 auth code 18739 [d685ed3a1d8e] 18740 18741 * INSTALL: 18742 clarify some things 18743 [2f5ba2e8e53a] 18744 18745 * UPGRADE, sudoers.cat, sudoers.man, sudoers.pod: 18746 typos 18747 [8925a109c093] 18748 187491999-06-14 Todd C. Miller <Todd.Miller@courtesan.com> 18750 18751 * sudo.c: 18752 mention why DONT_LEAK_PATH_INFO is not the default 18753 [0346260cb4ec] 18754 187551999-06-03 Todd C. Miller <Todd.Miller@courtesan.com> 18756 18757 * tgetpass.c: 18758 Fix open(2) return value checking, was NULL for fopen, should be -1 18759 for open 18760 [355878bf6d8a] 18761 18762 * configure: 18763 regen 18764 [68bf82871862] 18765 18766 * configure.in: 18767 better wording for solaris pam notice 18768 [04e88c7a6c42] 18769 18770 * CHANGES: 18771 document recent changes 18772 [7c922c5622ef] 18773 18774 * TROUBLESHOOTING: 18775 Update shadow password section 18776 [e8448bae7d66] 18777 18778 * auth.c: 18779 move authentication code from check.c to auth.c 18780 [e9f6ecae2399] 18781 18782 * Makefile.in, check.c, sudo.h: 18783 move authentication code to auth.c 18784 [124cded85f46] 18785 187861999-05-17 Todd C. Miller <Todd.Miller@courtesan.com> 18787 18788 * Makefile.in, check.c, check_sia.c, compat.h, find_path.c, 18789 getspwuid.c, goodpath.c, interfaces.c, interfaces.h, lex.yy.c, 18790 logging.c, parse.c, parse.lex, parse.yacc, secureware.c, sudo.c, 18791 sudo.h, sudo.tab.c, sudo_setenv.c, testsudoers.c, tgetpass.c, 18792 visudo.c: 18793 Move interface-related defines to interfaces.h so we don't have to 18794 include <netinet/in.h> everywhere. 18795 [e7599d8ea0bf] 18796 187971999-05-14 Todd C. Miller <Todd.Miller@courtesan.com> 18798 18799 * CHANGES, INSTALL, TODO, check.c, compat.h, getspwuid.c, logging.c, 18800 parse.yacc, sudo.c, sudo.tab.c, tgetpass.c: 18801 o Replace _PASSWD_LEN braindeath with our own SUDO_MAX_PASS. It 18802 turns out the old DES crypt does the right thing with passwords 18803 longert than 8 characters. o Fix common typo (necesary -> 18804 necessary) o Update TODO list 18805 [ad75007a6f13] 18806 188071999-05-03 Todd C. Miller <Todd.Miller@courtesan.com> 18808 18809 * sudo.c: 18810 set $LOGNAME when we set $USER 18811 [391596210fd7] 18812 188131999-04-27 Todd C. Miller <Todd.Miller@courtesan.com> 18814 18815 * INSTALL: 18816 add comment about digital unix and interfaces.c warning with gcc 18817 [e20f815901cc] 18818 188191999-04-15 Todd C. Miller <Todd.Miller@courtesan.com> 18820 18821 * sample.sudoers: 18822 use modern paths and give examples for some of the new parser 18823 features 18824 [e7b2e507c695] 18825 188261999-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 18827 18828 * parse.c: 18829 fix comment 18830 [5eb0d005a65f] 18831 18832 * alloc.c, check.c, check_sia.c, dce_pwent.c, find_path.c, 18833 getspwuid.c, goodpath.c, interfaces.c, lex.yy.c, logging.c, parse.c, 18834 parse.lex, parse.yacc, putenv.c, secureware.c, sudo.c, sudo.tab.c, 18835 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, visudo.c: 18836 Function names should be flush with the start of the line so they 18837 can be found trivially in an editor and with grep 18838 [3c400abde574] 18839 18840 * find_path.c, interfaces.c, lex.yy.c, parse.c, parse.lex, parse.yacc, 18841 sudo.c, sudo.tab.c, testsudoers.c, tgetpass.c, visudo.c: 18842 free(3) is already void, no need to cast it 18843 [6981e1ebda0f] 18844 18845 * logging.c, sudo.c, sudo.h: 18846 catch case where cmnd_safe is not set (this should not be possible) 18847 [3e1e3038546c] 18848 18849 * CHANGES, logging.c, parse.c, parse.yacc, sudo.c, sudo.h, sudo.tab.c, 18850 testsudoers.c, visudo.c: 18851 Stash the "safe" path (ie: the one listed in sudoers) to the command 18852 instead of stashing the struct stat. Should be safer. 18853 [aa2883fcf57e] 18854 188551999-04-08 Todd C. Miller <Todd.Miller@courtesan.com> 18856 18857 * INSTALL, Makefile.in, UPGRADE: 18858 notes on updating from an earlier release 18859 [df9fffa4ab2c] 18860 18861 * CHANGES: 18862 updated 18863 [574f5065d15a] 18864 188651999-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 18866 18867 * parse.yacc, sudo.tab.c, sudo.tab.h, sudoers.cat, sudoers.html, 18868 sudoers.man, sudoers.pod: 18869 You can now specifiy a host list instead of just a host or alias. 18870 Ie: user = host1,host2,ALIAS,!host3 my_command now works. 18871 [e3942bb78021] 18872 18873 * testsudoers.c: 18874 Quiet -Wall 18875 [a3edc8b08c3a] 18876 18877 * parse.yacc, sudo.tab.c: 18878 Move the push from the beginning of cmndspec to the end. This means 18879 we no longer have to do a push at the end of privilege, just reset 18880 some values. 18881 [8ea66e5860c6] 18882 18883 * sudoers.cat, sudoers.html, sudoers.man, sudoers.pod: 18884 runas-lists and NOPASSWD/PASSWD modifiers are now sticky and you can 18885 use "!" most everywhere 18886 [aadae4d1c9d5] 18887 188881999-04-06 Todd C. Miller <Todd.Miller@courtesan.com> 18889 18890 * sudoers.pod: 18891 modernize paths and update su example based on sample.sudoers one 18892 [3f6a37e16c83] 18893 18894 * sample.sudoers: 18895 New runas semantics 18896 [756ee92865b7] 18897 18898 * CHANGES, Makefile.in, alloc.c, config.h.in, configure, configure.in, 18899 strdup.c, sudo.h: 18900 In estrdup(), do the malloc ourselves so we don't need to rely on 18901 the system strdup(3) which may or may not exist. There is now no 18902 need to provide strdup() for those w/o it. Also, the prototype for 18903 estrdup() was wrong, it returns char * and its param is const. 18904 [5f1f984da8e3] 18905 18906 * getcwd.c: 18907 $Sudo tag 18908 [e4188a35e68c] 18909 18910 * check.c: 18911 buf should be prompt; Michael Robokoff <mrobo@networkcs.com> 18912 [2aec87c86cde] 18913 18914 * CHANGES, TODO, parse.yacc, sudo.tab.c: 18915 It is now possible to use the '!' operator in a runas list as well 18916 as in a Cmnd_Alias, Host_Alias and User_Alias. 18917 [a4fdaabda990] 18918 18919 * logging.c, sudo.h: 18920 Kill GLOBAL_NO_SPW_ENT (not used) and crank GLOBAL_PROBLEM 18921 [73d0376785ae] 18922 18923 * sudo.h: 18924 Definitions of *_matched were wrong--user top, not top-2 as 18925 subscript. 18926 [5f8350a57362] 18927 18928 * logging.c, parse.c, parse.yacc, sudo.c, sudo.h, sudo.tab.c: 18929 Add VALIDATE_NOT_OK_NOPASS for when user is not allowed to run a 18930 command but the NOPASSWD flag was set. Make runasspec, runaslist, 18931 runasuser, and nopasswd typeless in parse.yacc Add support for '!' 18932 in the runas list Fix double printing of '%' and '+' for groups and 18933 netgroups respectively Add *_matched macros (no need for local stack 18934 variable). Should only be used directly after a pop (since top must 18935 be >= 2). 18936 [392b1400c4e6] 18937 18938 * aclocal.m4, configure.in: 18939 Add copyright, somewhat silly 18940 [55c2cdd82dca] 18941 189421999-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 18943 18944 * BUGS, INSTALL, Makefile.in, README, alloc.c, check.c, check_sia.c, 18945 compat.h, config.h.in, configure, configure.in, dce_pwent.c, 18946 emul/utime.h, find_path.c, getspwuid.c, goodpath.c, ins_2001.h, 18947 ins_classic.h, ins_csops.h, ins_goons.h, insults.h, interfaces.c, 18948 lex.yy.c, logging.c, parse.c, parse.lex, parse.yacc, pathnames.h.in, 18949 putenv.c, secureware.c, strdup.c, sudo.c, sudo.cat, sudo.h, 18950 sudo.man, sudo.tab.c, sudo_setenv.c, sudoers.cat, sudoers.man, 18951 testsudoers.c, tgetpass.c, utime.c, version.h, visudo.c, visudo.cat, 18952 visudo.man: 18953 Crank version to 1.6 and combine copyright statements 18954 [0e1c791658ae] 18955 18956 * sample.sudoers: 18957 Use ! not ^ to do negation 18958 [1480a0761730] 18959 18960 * lex.yy.c, sudo.tab.c: 18961 regen 18962 [89ca5a46684b] 18963 18964 * parse.lex, parse.yacc: 18965 Make runas and NOPASSWD tags persistent across entris in a command 18966 list. Add a PASSWD tag to reverse NOPASSWD. When you override a 18967 runas or *PASSWD tag the value given becomes the new default for the 18968 rest of the command list. 18969 [f1bbb4066542] 18970 189711999-04-02 Todd C. Miller <Todd.Miller@courtesan.com> 18972 18973 * CHANGES, RUNSON: 18974 update for 1.5.9 18975 [a1ae9d4a7d54] [SUDO_1_5_9] 18976 18977 * visudo.c: 18978 Shift return value of system(3) by 8 to get real exit value and if 18979 it is not 1 or 0 print the retval along with the error message. 18980 [c1ff50d743fb] 18981 189821999-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 18983 18984 * Makefile.in: 18985 testsudoers needs LIBOBJS too 18986 [972571b4e4bf] 18987 18988 * parse.c, parse.yacc, sudo.tab.c: 18989 Fix another parser bug. For a sudoers entry like this: millert 18990 ALL=/bin/ls,(daemon) !/bin/ls sudo would not allow millert to run ls 18991 as root. 18992 [51968e1eb33d] 18993 18994 * CHANGES: 18995 new change 18996 [271c6110bb62] 18997 18998 * parse.yacc, sudo.tab.c: 18999 Save entries that match a ! command on the matching stack too 19000 [5afb5107116c] 19001 19002 * sudo.c: 19003 Make sudo's usage info better when mutually exclusive args are given 19004 and don't rely on argument order to detect this; nick@zeta.org.au 19005 [2422753c88fd] 19006 190071999-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 19008 19009 * CHANGES, Makefile.in, RUNSON: 19010 updates from CU 19011 [b37381e3dafb] 19012 19013 * Makefile.in: 19014 use gzip 19015 [94a64e52a166] 19016 19017 * parse.yacc, sudo.tab.c: 19018 Fix off by one error introduced in *alloc changes 19019 [95ede581153a] 19020 19021 * BUGS, CHANGES, INSTALL, Makefile.in, README, alloc.c, check.c, 19022 check_sia.c, compat.h, config.h.in, configure, configure.in, 19023 dce_pwent.c, emul/utime.h, find_path.c, getspwuid.c, goodpath.c, 19024 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 19025 interfaces.c, lex.yy.c, logging.c, parse.c, parse.lex, parse.yacc, 19026 pathnames.h.in, putenv.c, secureware.c, strdup.c, sudo.c, sudo.cat, 19027 sudo.h, sudo.man, sudo.tab.c, sudo_setenv.c, sudoers.cat, 19028 sudoers.man, testsudoers.c, tgetpass.c, utime.c, version.h, 19029 visudo.c, visudo.cat, visudo.html, visudo.man, visudo.pod: 19030 ++version 19031 [c6d88f024e37] 19032 19033 * Makefile.in, check.c, find_path.c, getspwuid.c, goodpath.c, 19034 interfaces.c, lex.yy.c, logging.c, parse.c, parse.lex, parse.yacc, 19035 putenv.c, secureware.c, strdup.c, sudo.c, sudo.h, sudo.tab.c, 19036 sudo_setenv.c, testsudoers.c, utime.c, visudo.c: 19037 Use emalloc/erealloc/estrdup 19038 [44221d97361a] 19039 19040 * alloc.c: 19041 error checking memory allocation routines 19042 [5f8c1e7bbc71] 19043 19044 * parse.yacc, sudo.tab.c: 19045 Still not right, this fixes it for real 19046 [ad553b6f5339] 19047 19048 * parse.yacc, sudo.tab.c: 19049 Fix for previous commit 19050 [4d6f989f9bf2] 19051 19052 * CHANGES, INSTALL, parse.yacc: 19053 Fix a parser bug that was exposed when mixing different runas specs 19054 and ! commands. For example: millert ALL=(daemon) 19055 /usr/bin/whoami,!/bin/ls would allow millert to run whoami as root 19056 as well as daemon when it should just allow daemon. The problem was 19057 that comma-separated commands in a list shared the same entry on the 19058 matching stack. Now they get their own entry iff there is a full 19059 match. It may be better to just make the runas spec persistent 19060 across all commands in a list like the user and host entries of the 19061 matching stack. However, since that is a fairly major change it 19062 should gets its own minor rev increase. 19063 [c4b939cdcc8e] 19064 190651999-03-28 Todd C. Miller <Todd.Miller@courtesan.com> 19066 19067 * check.c, config.h.in: 19068 Simplify PAM code and fix a PAM-related warning on Linux 19069 [2468399523b6] 19070 190711999-03-26 Todd C. Miller <Todd.Miller@courtesan.com> 19072 19073 * CHANGES: 19074 updates 19075 [29d4a997769c] 19076 19077 * sample.sudoers: 19078 better su entry 19079 [76d8285a72ba] 19080 19081 * configure: 19082 regen 19083 [b7450cc6975d] 19084 19085 * check.c, configure.in: 19086 new pam code that works on solaris, should work on linux too; 19087 aelberg@home.com 19088 [84c16c0ff259] 19089 190901999-03-19 Todd C. Miller <Todd.Miller@courtesan.com> 19091 19092 * RUNSON: 19093 more entries 19094 [b6bef8660759] 19095 19096 * config.h.in: 19097 only include strings.h if there is no string.h 19098 [b66054a32b00] 19099 191001999-03-17 Todd C. Miller <Todd.Miller@courtesan.com> 19101 19102 * config.guess: 19103 Sinix is now being called ReliantUNIX; bjjackso@us.oracle.com 19104 [c086d2fe63af] 19105 191061999-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 19107 19108 * sudo.c: 19109 shost must be set before log functions are called #ifdef HOST_IN_LOG 19110 [d49a7944358f] 19111 191121999-03-07 Todd C. Miller <Todd.Miller@courtesan.com> 19113 19114 * CHANGES, lex.yy.c, parse.lex: 19115 Fix a bug wrt quoting characters in command args. Stop processing 19116 an arg when you hit a backslash so the quoted-character detection 19117 can catch it. 19118 [2281438d7f41] 19119 191201999-02-26 Todd C. Miller <Todd.Miller@courtesan.com> 19121 19122 * interfaces.c: 19123 include sys/time.h; aparently AIX needs it. ppz@cdu.elektra.ru 19124 [31118a9e9916] 19125 191261999-02-24 Todd C. Miller <Todd.Miller@courtesan.com> 19127 19128 * configure, configure.in: 19129 add missing case statement so --without-sendmail works 19130 [ca25614f7dd9] 19131 191321999-02-23 Todd C. Miller <Todd.Miller@courtesan.com> 19133 19134 * CHANGES: 19135 more 19136 [4d70e44f7f93] 19137 191381999-02-22 Todd C. Miller <Todd.Miller@courtesan.com> 19139 19140 * configure, configure.in: 19141 only search for -lsun in irix <= 4.x 19142 [e604238317b1] 19143 19144 * configure, configure.in: 19145 back out last configure.in change now that I've hacked autoconf to 19146 fix the real problem and add a missing newline 19147 [2dabf59a79b5] 19148 19149 * CHANGES: 19150 updated 19151 [bb35d526552f] 19152 19153 * getcwd.c: 19154 add def of dirfd() for those without it 19155 [95f0173d8441] 19156 19157 * configure, configure.in: 19158 When falling back to checking for socket() when linking with 19159 "-lsocket -lnsl" check for main() instead since autoconf has already 19160 cached the results of checking for socket() in -lsocket. This is 19161 really an autoconf bug as it should use the extra libs as part of 19162 the cache variable name. 19163 [a845f8b710ad] 19164 19165 * configure.in: 19166 typo 19167 [a7d62f62a478] 19168 191691999-02-21 Todd C. Miller <Todd.Miller@courtesan.com> 19170 19171 * configure.in: 19172 fix occurrence of $with_timeout that should be 19173 $with_password_timeout; Michael.Neef@neuroinformatik.ruhr-uni- 19174 bochum.de 19175 [8c4da2cf73d1] 19176 191771999-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 19178 19179 * sudo.cat, sudo.html, sudo.man, sudo.pod: 19180 fix grammar; espie@openbsd.org 19181 [7031d9dfbc3e] [SUDO_1_5_8] 19182 191831999-02-11 Todd C. Miller <Todd.Miller@courtesan.com> 19184 19185 * parse.yacc, sudo.c, testsudoers.c: 19186 add cast for strdup in places it does not have it 19187 [7ce4478d3b0f] 19188 191891999-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 19190 19191 * configure, configure.in: 19192 define for_BSD_TYPES irix 19193 [858337ff4af8] 19194 191951999-02-07 Todd C. Miller <Todd.Miller@courtesan.com> 19196 19197 * Makefile.in, sudo.cat, sudo.html, sudo.man, sudo.pod: 19198 Make it clear that it is the user's password, not root's, that we 19199 want. 19200 [ae0f51b35ee4] 19201 19202 * check.c, sudo.h: 19203 If the user enters an empty password and really has no password, 19204 accept the empty password they entered. Perviously, they could 19205 enter anything 19206 *but* an empty password. Also, add GETPASS macro that calls either 19207 tgetpass() or getpass() depending on how sudo was configured. 19208 Problem noted by jdg@maths.qmw.ac.uk 19209 [2fde21ce94c1] 19210 192111999-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 19212 19213 * Makefile.in, check.c, check_sia.c, compat.h, config.h.in, 19214 dce_pwent.c, emul/utime.h, find_path.c, getspwuid.c, goodpath.c, 19215 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 19216 interfaces.c, logging.c, parse.c, parse.lex, parse.yacc, 19217 pathnames.h.in, putenv.c, secureware.c, strdup.c, sudo.c, sudo.h, 19218 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, version.h, 19219 visudo.c: 19220 add explicate copyright 19221 [d3b4449834a5] 19222 19223 * CHANGES: 19224 mention -lsocket, -lnsl configure changes 19225 [9140af4ad8ae] 19226 192271999-02-02 Todd C. Miller <Todd.Miller@courtesan.com> 19228 19229 * sudo.c: 19230 Don't clobber errno after calling check_sudoers(). 19231 [59bd581b2654] 19232 192331999-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 19234 19235 * configure, configure.in: 19236 When linking with both -lsocket and -lnsl be sure to do so in that 19237 order. Also, when we can't find socket() or inet_addr() and have to 19238 try linking with both libs, issue a warning. 19239 [0ee547163067] 19240 19241 * sudo.cat, sudo.man, sudo.pod: 19242 clarify bad timestamp and fmt 19243 [70e42cf56c75] 19244 192451999-01-23 Todd C. Miller <Todd.Miller@courtesan.com> 19246 19247 * INSTALL, RUNSON: 19248 be clear that pam is linux-only and add a RUNSON entry 19249 [7fdeab875e0d] 19250 192511999-01-22 Todd C. Miller <Todd.Miller@courtesan.com> 19252 19253 * CHANGES, INSTALL, configure, configure.in: 19254 fix and correctly document --with-umask; problem noted by 19255 adap@adap.org 19256 [11cd0481d63a] 19257 192581999-01-20 Todd C. Miller <Todd.Miller@courtesan.com> 19259 19260 * configure, configure.in: 19261 only use /usr/{man,catman}/local to store man pages if suer didn't 19262 override prefix or mandir 19263 [781ad2cbe9be] 19264 19265 * INSTALL, configure, configure.in: 19266 fix typo, make --with-SecurID take an arg 19267 [026a9b4014fc] 19268 192691999-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 19270 19271 * RUNSON: 19272 updates from users 19273 [2286982b31e6] 19274 19275 * CHANGES, INSTALL, check.c, configure, configure.in: 19276 FWTK 'authsrv' support from Kevin Kadow <kadow@MSG.NET> 19277 [23aa4e5c6b02] 19278 19279 * configure, configure.in: 19280 better fix for the problem of unresolved symbols in -lnsl or 19281 -lsocket 19282 [82fe70fc287f] 19283 19284 * configure, configure.in: 19285 when checking for functions in -lnsl and -lsocket link with both of 19286 them to avoid unresolved symbols on some weirdo systems 19287 [1734a591808e] 19288 192891999-01-18 Todd C. Miller <Todd.Miller@courtesan.com> 19290 19291 * BUGS, CHANGES, RUNSON, TODO: 19292 old changes that didn't make it into RCS before the RCS->CVS switch 19293 [846eb2b8f9aa] 19294 192951999-01-17 Todd C. Miller <Todd.Miller@courtesan.com> 19296 19297 * Makefile.in, check.c, check_sia.c, compat.h, config.h.in, 19298 configure.in, dce_pwent.c, emul/search.h, emul/utime.h, find_path.c, 19299 getspwuid.c, goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, 19300 ins_goons.h, insults.h, interfaces.c, lex.yy.c, logging.c, 19301 lsearch.c, parse.c, parse.lex, parse.yacc, pathnames.h.in, putenv.c, 19302 secureware.c, strdup.c, sudo.c, sudo.pod, sudo_setenv.c, 19303 sudoers.pod, testsudoers.c, tgetpass.c, utime.c, visudo.c, 19304 visudo.pod: 19305 add sudo tags 19306 [962f81eaa5ab] 19307 19308 * sudo.h: 19309 testing Sudo tag 19310 [e84cbc521129] 19311 19312 * version.h: 19313 testing Sudo tag 19314 [a8c3a3998b88] 19315 19316 * BUGS, INSTALL, Makefile.in, README, check.c, check_sia.c, compat.h, 19317 config.h.in, configure, configure.in, dce_pwent.c, emul/utime.h, 19318 find_path.c, getspwuid.c, goodpath.c, ins_2001.h, ins_classic.h, 19319 ins_csops.h, ins_goons.h, insults.h, interfaces.c, lex.yy.c, 19320 logging.c, parse.c, parse.lex, parse.yacc, pathnames.h.in, putenv.c, 19321 secureware.c, strdup.c, sudo.c, sudo.cat, sudo.h, sudo.man, 19322 sudo_setenv.c, sudoers.cat, sudoers.man, testsudoers.c, tgetpass.c, 19323 utime.c, version.h, visudo.c, visudo.cat, visudo.man: 19324 crank version and regen files 19325 [23eacf00a1a4] 19326 19327 * Makefile.in: 19328 kill rcs goop in update_version and fix now that version is a const 19329 [e6e50bd8d1e1] 19330 19331 * INSTALL, check.c, config.h.in, configure, configure.in, logging.c, 19332 sudo.c, sudo.h, sudo.pod: 19333 kerb5 support from fcusack@iconnet.net 19334 [8134027986e2] 19335 19336 * realpath.c, sudo_realpath.c: 19337 we no longer use realpath 19338 [0f5f64abc646] 19339 19340 * qualify.c: 19341 replaced by find_path.c 19342 [9e32a87e09c4] 19343 19344 * options.h: 19345 all options are now configure flags 19346 [ee6bd9610102] 19347 19348 * lex.yy.c: 19349 regen 19350 [bdbf8a18161f] 19351 19352 * getwd.c: 19353 superceded by getcwd.c 19354 [1e54ee0990b4] 19355 19356 * getpass.c: 19357 superceded by tgetpass.c 19358 [4e0d1edc30e3] 19359 19360 * SUPPORTED: 19361 superceded by RUNSON 19362 [854c5a21cb53] 19363 19364 * OPTIONS: 19365 No longer used now that we have configure options for everything. 19366 [9b1ae1c89259] 19367 19368 * configure: 19369 regen based on configure.in 19370 [3a4d73936973] 19371 19372 * sudo.cat, sudo.html, sudo.man, sudoers.cat, sudoers.html, 19373 sudoers.man, visudo.cat, visudo.html, visudo.man: 19374 regen based on sudo.pod, sudoers.pod, and visudo.pod 19375 [c267beb90778] 19376 193771998-12-11 Todd C. Miller <Todd.Miller@courtesan.com> 19378 19379 * check.c: 19380 fix tty tickets in remove_timestamp (didn't use ':') 19381 [fd964a74a32b] 19382 193831998-12-07 Todd C. Miller <Todd.Miller@courtesan.com> 19384 19385 * interfaces.c: 19386 close sock when we are done with it 19387 [95de0380f8a4] 19388 193891998-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 19390 19391 * parse.yacc: 19392 never say "error on line -1" 19393 [361db1491121] 19394 193951998-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 19396 19397 * configure.in: 19398 check for -lnsl before -lsocket 19399 [8e966d6bbcb5] 19400 19401 * configure.in: 19402 quote '[', ']' used in ranges correctly 19403 [fa4f9c6ff651] 19404 194051998-11-21 Todd C. Miller <Todd.Miller@courtesan.com> 19406 19407 * config.h.in: 19408 add missing NO_ROOT_SUDO noted by drno@tsd.edu 19409 [c969f25d1667] 19410 194111998-11-20 Todd C. Miller <Todd.Miller@courtesan.com> 19412 19413 * version.h: 19414 1.5.7 19415 [7a22de0bc148] 19416 19417 * INSTALL: 19418 more info for 1.5.7 19419 [30ad9e784799] 19420 19421 * README: 19422 update for 1.5.7 19423 [cd03a0a27cd2] 19424 19425 * parse.yacc: 19426 make increases of cm_list_size and ga_list_size be similar to 19427 increases of stacksize (ie: >= not > in initial compare). 19428 [6bd450a896c7] 19429 19430 * parse.yacc: 19431 when we get a syntax error, report it for the previous line since 19432 that's generally where the error occurred. 19433 [c4ac84058f0b] 19434 194351998-11-18 Todd C. Miller <Todd.Miller@courtesan.com> 19436 19437 * config.h.in, configure.in, interfaces.c: 19438 add back check for sys/sockio.h but only use it if SIOCGIFCONF is 19439 not defined 19440 [d197f31fd1e4] [SUDO_1_5_7] 19441 19442 * config.h.in: 19443 define BSD_COMP for svr4 19444 [87ac1147ff79] 19445 19446 * check.c, check_sia.c, find_path.c, getcwd.c, getspwuid.c, 19447 goodpath.c, interfaces.c, logging.c, lsearch.c, parse.c, parse.lex, 19448 parse.yacc, putenv.c, secureware.c, strdup.c, sudo.c, sudo_setenv.c, 19449 testsudoers.c, tgetpass.c, utime.c, visudo.c: 19450 more -Wall 19451 [d98e2d32db2a] 19452 19453 * configure.in: 19454 kill check for sockio,h 19455 [4399779014c1] 19456 19457 * config.h.in: 19458 no more HAVE_SYS_SOCKIO_H 19459 [67484528e347] 19460 19461 * check.c, check_sia.c, find_path.c, getcwd.c, getspwuid.c, 19462 goodpath.c, interfaces.c, logging.c, lsearch.c, parse.c, parse.lex, 19463 parse.yacc, putenv.c, secureware.c, strdup.c, sudo.c, sudo_setenv.c, 19464 testsudoers.c, tgetpass.c, utime.c, visudo.c: 19465 -Wall 19466 [2b7e83976788] 19467 194681998-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 19469 19470 * sudo.c: 19471 add missing inform_user() 19472 [8689528c6d55] 19473 194741998-11-14 Todd C. Miller <Todd.Miller@courtesan.com> 19475 19476 * find_path.c: 19477 return NOT_FOUND if given fully qualified path and it does not exist 19478 previously it would perror(ENOENT) which bypasses the option to not 19479 leak path info 19480 [ccbc3d0130ae] 19481 19482 * configure.in: 19483 for kerb5, check for -lkerb4, fall back on -lkrb for kerb, check for 19484 -ldes 19485 [c77d3b484ece] 19486 194871998-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 19488 19489 * INSTALL: 19490 tty tickets are user:tty now 19491 [a53a303a614d] 19492 19493 * check.c: 19494 when using tty tickets make it user:tty not user.tty as a username 19495 could have a '.' in it 19496 [3160b3f5c890] 19497 194981998-11-10 Todd C. Miller <Todd.Miller@courtesan.com> 19499 19500 * sudo.c: 19501 add "ignoring foo found in ." for auth successful case 19502 [24257169e0bd] 19503 195041998-11-09 Todd C. Miller <Todd.Miller@courtesan.com> 19505 19506 * sudo.c: 19507 add missing printf param 19508 [8c905124f777] 19509 195101998-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 19511 19512 * INSTALL, config.h.in, configure.in, find_path.c, sudo.c, sudo.h: 19513 go back to printing "command not found" unless --disable-path-info 19514 specified. Also, tell user when we ignore '.' in their path and it 19515 would have been used but for --with-ignore-dot. 19516 [066e118c11e4] 19517 19518 * check.c, sudo.c: 19519 Only one space after a colon, not two, in printf's 19520 [38452f4c8007] 19521 195221998-11-05 Todd C. Miller <Todd.Miller@courtesan.com> 19523 19524 * sudo.pod: 19525 document setting $USER 19526 [80557fe6aede] 19527 19528 * check.c: 19529 fix bugs with prompt expansion 19530 [44c4fca5f009] 19531 19532 * sudo.c: 19533 set $USER for root too 19534 [4b525e1c6269] 19535 195361998-11-04 Todd C. Miller <Todd.Miller@courtesan.com> 19537 19538 * getspwuid.c: 19539 typo 19540 [5107446f43e0] 19541 19542 * configure.in: 19543 HP-UX's iscomsec is in -lsec, not libc 19544 [03c9f700b795] 19545 19546 * configure.in: 19547 remove some entries in the OS case statement that did nothing 19548 [ea96e7e0f624] 19549 19550 * TROUBLESHOOTING: 19551 add "cd" section and flush out syslog section 19552 [5107f7363b78] 19553 19554 * Makefile.in: 19555 no more sudo-lex.yy.c 19556 [ed50826efbbc] 19557 19558 * check_sia.c: 19559 add custom prompt support 19560 [6a285cea10b7] 19561 19562 * testsudoers.c: 19563 kill perror("malloc") since we already have a good error messages 19564 pw_ent -> pw for brevity 19565 [eee31052921e] 19566 19567 * sudo.c: 19568 kill perror("malloc") since we already have a good error messages 19569 pw_ent -> pw for brevity set $USER if -u specified 19570 [9f3753461f8a] 19571 19572 * parse.yacc: 19573 kill perror("malloc") since we already have a good error messages 19574 [849459088ac3] 19575 19576 * parse.c: 19577 kill perror("malloc") since we already have a good error messages 19578 pw_ent -> pw for brevity when checking if %group matches, look up 19579 user in password file so that %groups works in a RunAs spec. 19580 [0489b4ecc59a] 19581 19582 * logging.c: 19583 kill perror("malloc") since we already have a good error messages 19584 [3191a18b3526] 19585 19586 * check.c, getspwuid.c, interfaces.c: 19587 kill perror("malloc") since we already have a good error messages 19588 pw_ent -> pw for brevity 19589 [7193fdb38cf9] 19590 195911998-11-03 Todd C. Miller <Todd.Miller@courtesan.com> 19592 19593 * tgetpass.c: 19594 the prompt is expanded before tgetpass is called 19595 [0f408f508041] 19596 19597 * sudo.h: 19598 tgetpass now has the same args as getpass again 19599 [b6778cd9d79f] 19600 19601 * getspwuid.c: 19602 add iscomsec, issecure support 19603 [007be7ec7ae7] 19604 19605 * check.c: 19606 we now expand any %h or %u in the prompt before passing to tgetpass 19607 [f3db8c9ee387] 19608 19609 * configure.in: 19610 add check for syslog(3) in -lsocket, -lnsl, -linet 19611 [5a96f902ce00] 19612 19613 * config.h.in: 19614 add HAVE_ISCOMSEC and HAVE_ISSECURE 19615 [f640b0d4cf05] 19616 19617 * configure.in: 19618 add check for iscomsec in HP-UX 19619 [b28b249040f0] 19620 19621 * configure.in: 19622 check for issecure if we have getpwanam on SunOS some options are 19623 incompatible with DUNIX SIA check for dispcrypt on DUNIX 19624 [a49d05d9c913] 19625 196261998-10-25 Todd C. Miller <Todd.Miller@courtesan.com> 19627 19628 * config.h.in: 19629 add HAVE_DISPCRYPT 19630 [7376d543d8d6] 19631 19632 * secureware.c: 19633 add back support for non-dispcrypt based checking for older DUNIX 19634 [977b98e936be] 19635 19636 * INSTALL: 19637 sia changes 19638 [c5387c06e30f] 19639 19640 * configure.in: 19641 SIA becomes the default on Digital UNIX now havbe --disable-sia to 19642 turn it off... 19643 [3b647558ea13] 19644 19645 * check.c: 19646 move local includes after system ones 19647 [b2abad4c4aef] 19648 196491998-10-24 Todd C. Miller <Todd.Miller@courtesan.com> 19650 19651 * check.c, check_sia.c, sudo.h: 19652 add pass_warn() which prints out INCORRECT_PASSWORD or an insult to 19653 stderr 19654 [547cbf299661] 19655 19656 * check_sia.c: 19657 fix while loop in sia_attempt_auth() that checks the password. Only 19658 the first iteration was working. 19659 [1886fd1ac831] 19660 196611998-10-22 Todd C. Miller <Todd.Miller@courtesan.com> 19662 19663 * aclocal.m4: 19664 don't trust UID_MAX or MAXUID 19665 [2aeddb1654d8] 19666 19667 * configure.in: 19668 fix two pastos 19669 [c18f0a10b75d] 19670 19671 * configure.in: 19672 fix typo 19673 [1eb3190ef12d] 19674 19675 * getspwuid.c, secureware.c: 19676 init crypt_type to INT_MAX since it is legal to be negative in DUNX 19677 5.0 19678 [cefbde04822d] 19679 19680 * configure.in: 19681 for secureware on dunix, use -lsecurity -ldb -laud -lm but check for 19682 -ldb since DUNX < 4.0 lacks it 19683 [e6b11d971068] 19684 196851998-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 19686 19687 * check.c, compat.h, config.h.in, configure.in, getspwuid.c, 19688 secureware.c, sudo.c, tgetpass.c: 19689 getprpwuid is broken in HP-UX 10.20 at least (it sleeps for 2 19690 minutes if the shadow files don't exist). 19691 [2f297d095004] 19692 196931998-10-20 Todd C. Miller <Todd.Miller@courtesan.com> 19694 19695 * INSTALL: 19696 updated --with-editor blurb 19697 [77d8a3ea7328] 19698 19699 * TROUBLESHOOTING: 19700 tell how to put sudoers in a different dir 19701 [456cd20eb1d0] 19702 19703 * configure.in: 19704 add missing quotes around $with_editor 19705 [22881748ab1b] 19706 19707 * configure.in: 19708 typo in --with-editor bits 19709 [ab6964580681] 19710 19711 * INSTALL: 19712 I don't expect it to work on Solaris 19713 [1c2fceaaf56e] 19714 19715 * check.c: 19716 add back security/pam_misc.h 19717 [6ffd30033c1e] 19718 197191998-10-19 Todd C. Miller <Todd.Miller@courtesan.com> 19720 19721 * INSTALL: 19722 remove dunix note since configure checks for this now 19723 [e9904512b8e8] 19724 19725 * configure.in: 19726 add check for broken dunix prot.h (4.0 < 4.0D is bad) 19727 [8a4c1e6aef3b] 19728 19729 * getspwuid.c, secureware.c, tgetpass.c: 19730 new dunix shadow code, use dispcrypt(3) 19731 [1b936bc7268c] 19732 19733 * config.h.in: 19734 add HAVE_INITPRIVS 19735 [4369f4c4f914] 19736 19737 * sudo.c: 19738 call initprivs() if we have it for getprpwuid later on 19739 [11cf5915d826] 19740 19741 * Makefile.in: 19742 clean pathnames.h too 19743 [5f1df3262613] 19744 19745 * configure.in: 19746 quote "Sorry, try again." with [] since it has a comma in it set 19747 LIBS when we add stuff to SUDO_LIBS set SECUREWARE when we find 19748 getprpwuid() so we can check for bigcrypt, set_auth_parameters, and 19749 initprivs later. 19750 [e226b0a3f250] 19751 19752 * INSTALL: 19753 update Digital UNIX note about acl.h 19754 [80132b71d73a] 19755 19756 * INSTALL: 19757 add --with-sia 19758 --without-root-sudo -> --disable-root-sudo some reordering 19759 [198386358818] 19760 19761 * secureware.c: 19762 add whitespace 19763 [4aadaf1a54b0] 19764 19765 * Makefile.in, check.c, config.h.in, configure.in, logging.c, sudo.h: 19766 add SIA support 19767 [fa3ddbb9cc51] 19768 19769 * check_sia.c: 19770 Initial revision 19771 [2968551d40e4] 19772 197731998-10-18 Todd C. Miller <Todd.Miller@courtesan.com> 19774 19775 * configure.in: 19776 when checking for -lsocket, -lnsl, and -linet, check for the 19777 specific functions we need from them. 19778 [8d33e64362a3] 19779 19780 * config.h.in, sudo.h: 19781 move Syslog_* defs into sudo.h 19782 [03d1774f25c7] 19783 19784 * Makefile.in, sudo.h: 19785 added check_secureware 19786 [e46e3cbb9a97] 19787 19788 * configure.in: 19789 finished adding AC_MSG_CHECKING and AC_MSG_RESULT bits 19790 [dbefe1856503] 19791 19792 * insults.h: 19793 don't define CLASSIC_INSULTS and CSOPS_INSULTS if no other sets 19794 defined. configure now does that for us 19795 [e4520ea0581f] 19796 19797 * configure.in: 19798 move some --with options around change a bunch of echo's to 19799 AC_MSG_CHECKING, AC_MSG_RESULT pairs 19800 [ffdf6869fdd7] 19801 19802 * configure.in: 19803 change $with_foo-bar -> $with_foo_bar kill extra " that caused a 19804 syntax error add some echo verbage 19805 [3278c49bf74b] 19806 198071998-10-17 Todd C. Miller <Todd.Miller@courtesan.com> 19808 19809 * check.c: 19810 moved SecureWare stuff into secureware.c 19811 [42d3d3ac35dc] 19812 19813 * secureware.c: 19814 Initial revision 19815 [aa7f72a249cf] 19816 19817 * INSTALL: 19818 update url to solaris gcc bins 19819 [36a3eb668777] 19820 19821 * INSTALL: 19822 change option formatter and flesh out someentries 19823 [6fbd1db4a8ad] 19824 19825 * TROUBLESHOOTING, sudo.pod, visudo.pod: 19826 environmental variable -> environment variable 19827 [6f14d708e32d] 19828 19829 * BUGS: 19830 everything is now done via configure 19831 [c217858f58ab] 19832 19833 * README: 19834 prev rev was 1.5.6 19835 [7b4177103c35] 19836 19837 * Makefile.in: 19838 passing SUDOERS_MODE, SUDOERS_UID, SUDOERS_GID correctly 19839 [31c6b0a5e0e2] 19840 19841 * config.h.in: 19842 SUDOERS_MODE, SUDOERS_UID, SUDOERS_GID now come from the Makefile 19843 [d406a1ef6d25] 19844 19845 * Makefile.in: 19846 merge OSDEFS and OPTIONS into DEFS get sudoers_uid, sudoers_gid, 19847 sudoers_mode from configure 19848 [1c509500655a] 19849 19850 * configure.in: 19851 SUDOERS_MODE, SUDOERS_UID, and SUDOERS_GID now get substituted into 19852 the Makefile, not config.h 19853 [d4482f1492fe] 19854 19855 * INSTALL: 19856 document all --with/--enable options 19857 [22d81b312d7f] 19858 198591998-10-15 Todd C. Miller <Todd.Miller@courtesan.com> 19860 19861 * insults.h: 19862 options.h is no more 19863 [560946a33f7f] 19864 19865 * config.h.in: 19866 assimilated options.h 19867 [dd8ce74613c1] 19868 19869 * configure.in: 19870 moved options from options.h to configure 19871 [d39662f71b4e] 19872 19873 * check.c, find_path.c, getspwuid.c, goodpath.c, interfaces.c, 19874 logging.c, parse.c, parse.lex, parse.yacc, sudo.c, sudo.pod, 19875 sudo_setenv.c, visudo.c: 19876 no more options.h 19877 [43924bf0858d] 19878 19879 * INSTALL, Makefile.in, PORTING, TROUBLESHOOTING: 19880 remove references to options.h 19881 [ef3474295395] 19882 19883 * dce_pwent.c, interfaces.c, sudo.c: 19884 kill sys/time.h 19885 [4d833f0034e4] 19886 19887 * tgetpass.c: 19888 if select return < -1 still prompt for pw 19889 [e0009e5c93a2] 19890 19891 * options.h: 19892 convert LOGGING, LOGFAC, MAXLOGFILELEN, IGNORE_DOT_PATH into 19893 configure options 19894 [e60a1e546516] 19895 19896 * parse.c: 19897 FAST_MATCH is no longer an optino 19898 [c448dbb3464b] 19899 19900 * check.c: 19901 remove_timestamp() if timestamp is preposterous 19902 [70d9a86c6ecd] 19903 19904 * options.h: 19905 convert more options to --with/--enable 19906 [34646d9b09dc] 19907 19908 * INSTALL, aclocal.m4: 19909 logfile -> logpath 19910 [42de502bc637] 19911 19912 * configure.in: 19913 convert more options into --with and --enable 19914 [92d0898c9844] 19915 19916 * tgetpass.c: 19917 catch EINTR in select and restart 19918 [f045d2f234d7] 19919 19920 * logging.c: 19921 sys/errno -> errno 19922 [7f0c5beab6f2] 19923 199241998-09-24 Todd C. Miller <Todd.Miller@courtesan.com> 19925 19926 * sudo.c: 19927 UMASK -> SUDO_UMASK. 19928 [48f308661514] 19929 19930 * check.c, logging.c: 19931 time.h, not sys/time.h 19932 [91de049c79e4] 19933 199341998-09-21 Todd C. Miller <Todd.Miller@courtesan.com> 19935 19936 * logging.c: 19937 MAILER -> _PATH_SENDMAIL 19938 [df65d6896639] 19939 19940 * INSTALL, configure.in: 19941 no more --with-C2, now it is --disable-shadow 19942 [18bfcab3b9ab] 19943 19944 * aclocal.m4, check.c, compat.h, config.h.in, configure.in, 19945 getspwuid.c, sudo.c, tgetpass.c: 19946 new shadow password scheme. Always include shadow support if the 19947 platform supports it and the user did not disable it via configure 19948 [2135d93bb4a9] 19949 199501998-09-20 Todd C. Miller <Todd.Miller@courtesan.com> 19951 19952 * configure.in: 19953 --with-getpass -> --{enable,disable}-tgetpass 19954 [451b33fdd4c7] 19955 19956 * Makefile.in: 19957 pathnames.h -> pathnames.h.in 19958 [b109022eca69] 19959 19960 * check.c: 19961 fix version string 19962 [761b25c314ea] 19963 19964 * check.c: 19965 move pam_conv to be static to auth function remove pam_misc.h 19966 (solaris doesn't have one) 19967 [a682e4da987a] 19968 19969 * aclocal.m4: 19970 _CONFIG_PATH_* -> _PATH_* or _PATH_SUDO_* kill SUDO_PROG_PWD 19971 [e6005d0599b5] 19972 19973 * configure.in: 19974 munge pathnames.h.in -> pathnames.h kill SUDO_PROG_PWD 19975 [24c0ac2155ef] 19976 19977 * pathnames.h.in: 19978 convert to pathnames.h.in 19979 [013bddf7f684] 19980 199811998-09-19 Todd C. Miller <Todd.Miller@courtesan.com> 19982 19983 * configure.in: 19984 fix typo in sysv4 matching case /. 19985 [2994c4f88cf5] 19986 199871998-09-18 Todd C. Miller <Todd.Miller@courtesan.com> 19988 19989 * check.c: 19990 pam stuff needs to run as root, not user, for shadow passwords 19991 [d94ff75de503] 19992 199931998-09-17 Todd C. Miller <Todd.Miller@courtesan.com> 19994 19995 * BUGS, INSTALL, README, configure.in: 19996 updated version 19997 [775adc7de7ac] 19998 19999 * Makefile.in, check.c, compat.h, config.h.in, dce_pwent.c, 20000 emul/utime.h, find_path.c, getspwuid.c, goodpath.c, ins_2001.h, 20001 ins_classic.h, ins_csops.h, ins_goons.h, insults.h, interfaces.c, 20002 logging.c, options.h, parse.c, parse.lex, parse.yacc, 20003 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20004 testsudoers.c, tgetpass.c, utime.c, visudo.c: 20005 updated version 20006 [5ca599fb6b93] 20007 20008 * check.c: 20009 user version.h for long message 20010 [47a52ac7e542] 20011 20012 * check.c: 20013 this is version 1.5.6 20014 [8451ac79eee2] 20015 200161998-09-16 Todd C. Miller <Todd.Miller@courtesan.com> 20017 20018 * Makefile.in: 20019 remove errant backslash 20020 [0222a8a650ff] 20021 200221998-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 20023 20024 * options.h, parse.yacc, pathnames.h.in: 20025 fix version string 20026 [fdee73255d64] [SUDO_1_5_6] 20027 20028 * BUGS, CHANGES, TODO: 20029 updtaed for 1.5.6 20030 [752443bf7f26] 20031 20032 * RUNSON: 20033 updated for 1.5.6 20034 [0f878123fe6a] 20035 200361998-09-14 Todd C. Miller <Todd.Miller@courtesan.com> 20037 20038 * interfaces.c: 20039 kill unused localhost_mask var copy if name to ifr_tmp after we zero 20040 it 20041 [8e89c364cef2] 20042 200431998-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 20044 20045 * INSTALL: 20046 Better description of new vs. old sudoers modes fix some typos 20047 better description of /usr/ucb/cc gotchas on slowaris 20048 [c00b2a6fc1e8] 20049 20050 * Makefile.in: 20051 add sample.pam 20052 [ec7f6cc19b00] 20053 20054 * sudo.c: 20055 set NewArgv[0] to user_shell, not basename(user_shell) 20056 [1e907cbc9f7b] 20057 200581998-09-12 Todd C. Miller <Todd.Miller@courtesan.com> 20059 20060 * README: 20061 mention TROUBLESHOOTING more fix some typos 20062 [2c2e6907d4a4] 20063 20064 * configure.in: 20065 move --enable/--disable to be after --with 20066 [9b30097f76c1] 20067 20068 * INSTALL: 20069 document --enable/--disable 20070 [c522362e38a8] 20071 20072 * INSTALL: 20073 document --with-pam 20074 [7e38932c78ac] 20075 200761998-09-11 Todd C. Miller <Todd.Miller@courtesan.com> 20077 20078 * configure.in: 20079 Add message for pam users 20080 [d224f277e3cd] 20081 20082 * sample.pam: 20083 Initial revision 20084 [3a84d7045f54] 20085 20086 * config.h.in: 20087 fix HAVE_PAM 20088 [2f0f303ebd88] 20089 20090 * check.c, config.h.in, configure.in: 20091 pam support, from Gary Calvin <GCalvin@kenwoodusa.com> 20092 [ea3e0a72d707] 20093 200941998-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 20095 20096 * config.h.in: 20097 add HOST_IN_LOG and WRAP_LOG 20098 [822c36eeb6a8] 20099 20100 * logging.c: 20101 add WRAP_LOG and HOST_IN_LOG 20102 [3cf6052bd27e] 20103 20104 * configure.in: 20105 add --enable-log-host and --enable-log-wrap 20106 [c968cc12b353] 20107 20108 * aclocal.m4: 20109 use AC_DEFINE_UNQUOTED for --with-logfile and --with-timedir 20110 [915fef7e11a1] 20111 201121998-09-09 Todd C. Miller <Todd.Miller@courtesan.com> 20113 20114 * compat.h: 20115 add howmany macro 20116 [9107a057a7c8] 20117 20118 * tgetpass.c: 20119 include sys/param.h to get howmany macro 20120 [7e908b5e1f32] 20121 201221998-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 20123 20124 * OPTIONS, options.h, parse.yacc, sudo.c, testsudoers.c, visudo.c: 20125 add RUNAS_DEFAULT 20126 [1e76398ea3fd] 20127 201281998-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 20129 20130 * fnmatch.c: 20131 bring in stdio.h for NULL 20132 [69c016610cbb] 20133 20134 * aclocal.m4: 20135 allow /bin/{ksh,bach} and /usr/bin/{ksh,bash} as sh 20136 [15ab2972f8d0] 20137 20138 * sudo.c: 20139 use HAVE_SET_AUTH_PARAMETERS 20140 [8abfdc8c80f7] 20141 20142 * config.h.in: 20143 add HAVE_SET_AUTH_PARAMETERS 20144 [673a5ebd5539] 20145 20146 * configure.in: 20147 add *-*-hiuxmpp* add test for set_auth_parameters() if secureware 20148 [a401f5a7469a] 20149 20150 * config.sub: 20151 add support for HI-UX/MPP SR220001 02-03 0 SR2201 20152 [cb657b7acaae] 20153 20154 * interfaces.c: 20155 initialize previfname 20156 [26a1902f56dc] 20157 20158 * interfaces.c: 20159 Don't use SIOCGIFADDR, we don't need it Use SIOCGIFFLAGS if we have 20160 it check ifr_flags against IFF_UP and IFF_LOOPBACK instead of 20161 kludging it 20162 [fa5c890c313b] 20163 20164 * configure.in: 20165 typo 20166 [bff579fbe95c] 20167 20168 * Makefile.in: 20169 don't need special build line for sudo.tab.o 20170 [10c0a0a912e4] 20171 20172 * Makefile.in: 20173 don't clean sudo.tab.[ch] 20174 [c40d5968efbb] 20175 20176 * sudo.c: 20177 Sudo should prompt for a password before telling the user that a 20178 command could not be found. 20179 [d718c85a0047] 20180 20181 * BUGS: 20182 for 1.5.6 20183 [0cc1fe5b9129] 20184 20185 * INSTALL, README: 20186 no longer require yacc 20187 [d9096fc5b8b6] 20188 20189 * Makefile.in: 20190 typo 20191 [70feb1aefbd5] 20192 20193 * Makefile.in: 20194 y.tab -> sudo.tab include pre-yacc'd parse.yacc 20195 [cc802025fd44] 20196 20197 * parse.lex: 20198 include sudo.tab.h, not y.tab.h don't break out of command args if 20199 you get a '=' 20200 [728ad26dbda5] 20201 20202 * insults.h: 20203 fix version , 20204 [242bbce1b2d4] 20205 20206 * ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h: 20207 fix version 20208 [2bb9086fea1e] 20209 20210 * compat.h: 20211 fix version 20212 [7e634d498ce6] 20213 20214 * getcwd.c: 20215 getcwd(3) from OpenBSD for those without it. 20216 [6c68d0df8f6c] 20217 20218 * sudo.h: 20219 HAVE_GETWD -> HAVE_GETCWD 20220 [2ad1e64d60c0] 20221 20222 * configure.in: 20223 pretend sunos doesn't have getcwd(3) since it opens a pipe to 20224 getpwd! 20225 [677992ba5a6a] 20226 20227 * parse.c: 20228 use NAMLEN() macro 20229 [8f5685aa3165] 20230 20231 * fnmatch.c: 20232 remove duplicate include of string.h 20233 [6024f3051ac3] 20234 20235 * configure.in: 20236 call SUDO_TYPE_DEV_T and SUDO_TYPE_INO_T 20237 [3d82a9c22cc2] 20238 20239 * aclocal.m4: 20240 add SUDO_TYPE_DEV_T and SUDO_TYPE_INO_T 20241 [53fbc47282f9] 20242 20243 * config.h.in: 20244 add dev_t and ino_t 20245 [5929bb0c7e1a] 20246 202471998-07-28 Todd C. Miller <Todd.Miller@courtesan.com> 20248 20249 * check.c: 20250 fix OTP_ONLY for opie 20251 [7edcfa78f2ec] 20252 202531998-06-24 Todd C. Miller <Todd.Miller@courtesan.com> 20254 20255 * testsudoers.c, tgetpass.c: 20256 include stdlib.h for malloc proto 20257 [c9f4b99a2fe9] 20258 202591998-05-19 Todd C. Miller <Todd.Miller@courtesan.com> 20260 20261 * Makefile.in: 20262 make update_version saner 20263 [d522f93ee04a] 20264 20265 * config.h.in: 20266 add HAVE_WAITPID, HAVE_WAIT3, and sudo_waitpid() 20267 [c9a2d21dc608] 20268 20269 * configure.in: 20270 check for waitpid and wait3 or no waitpid 20271 [1f18c3224184] 20272 20273 * logging.c: 20274 used waitpid or wait3 if we have 'em 20275 [391c3279ee65] 20276 202771998-05-02 Todd C. Miller <Todd.Miller@courtesan.com> 20278 20279 * visudo.c: 20280 fix some fprintf args, ariel@oz.engr.sgi.com (Ariel Faigon) 20281 [fbf53b18178f] 20282 202831998-04-28 Todd C. Miller <Todd.Miller@courtesan.com> 20284 20285 * configure.in: 20286 don't need to explicately mention -lsocket -lnsl for sequent 20287 [1898dc055352] 20288 202891998-04-25 Todd C. Miller <Todd.Miller@courtesan.com> 20290 20291 * configure.in: 20292 dynix should not link with -linet 20293 [278a4b9cfe2a] 20294 202951998-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 20296 20297 * INSTALL: 20298 mention that HP-UX doesn't ship with yacc 20299 [bde5147198c0] 20300 203011998-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 20302 20303 * check.c: 20304 ignore kerberos if we can't get the local realm 20305 [1e311a091a27] 20306 203071998-04-06 Todd C. Miller <Todd.Miller@courtesan.com> 20308 20309 * BUGS, INSTALL, README, configure.in: 20310 ++version 20311 [499ffc746018] 20312 20313 * version.h: 20314 ++ 20315 [35ba1ee01bd3] 20316 20317 * Makefile.in, check.c, config.h.in, dce_pwent.c, emul/utime.h, 20318 find_path.c, getcwd.c, getspwuid.c, goodpath.c, interfaces.c, 20319 logging.c, parse.c, parse.lex, putenv.c, strdup.c, sudo.c, sudo.h, 20320 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, visudo.c: 20321 updated version 20322 [b4990a513f31] 20323 20324 * check.c, sudo.h: 20325 fix version 20326 [5710795834e8] 20327 20328 * getcwd.c: 20329 don't use popen/pclose. Do it inline. 20330 [29e57b0646a4] 20331 20332 * lsearch.c: 20333 add rcsid 20334 [b2b55c39858d] 20335 20336 * sudo.c: 20337 typo 20338 [d381ac39ed0f] 20339 20340 * check.c, compat.h, ins_2001.h, ins_classic.h, ins_csops.h, 20341 ins_goons.h, insults.h, options.h, parse.yacc, pathnames.h.in, 20342 sudo.h: 20343 updated version 20344 [462d6e1a2d75] 20345 20346 * check.c, find_path.c, parse.c, sudo.c, testsudoers.c: 20347 MAX* + 1 -> MAX* 20348 [2c2eeb78d34f] 20349 20350 * Makefile.in: 20351 getwd.c -> getcwd.c 20352 [7d718c32fc02] 20353 20354 * config.h.in: 20355 kill HAVE_GETWD 20356 [6ad3d702343f] 20357 20358 * configure.in: 20359 getcwd, not getwd 20360 [33e5b9841f58] 20361 20362 * getcwd.c: 20363 use MAX* not MAX* + 1 always run pwd as using getwd() defeats the 20364 purpose 20365 [24e58d340161] 20366 203671998-03-31 Todd C. Miller <Todd.Miller@courtesan.com> 20368 20369 * OPTIONS, options.h: 20370 add STUB_LOAD_INTERFACES 20371 [d747cb23ca83] 20372 20373 * Makefile.in, check.c, compat.h, config.h.in, dce_pwent.c, 20374 emul/utime.h, find_path.c, getspwuid.c, getwd.c, goodpath.c, 20375 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 20376 interfaces.c, logging.c, options.h, parse.c, parse.lex, parse.yacc, 20377 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20378 testsudoers.c, tgetpass.c, utime.c, visudo.c: 20379 updated version 20380 [0798229312cc] 20381 20382 * configure.in: 20383 support *-ccur-sysv4 and fix two typos 20384 [24a823ad7cc9] 20385 203861998-03-28 Todd C. Miller <Todd.Miller@courtesan.com> 20387 20388 * configure.in: 20389 don't echo about with_logfile and with_timedir 20390 [31e4a1e2d9ad] 20391 20392 * INSTALL: 20393 document --with-logfile and --with-timedir 20394 [674f811a40e0] 20395 20396 * aclocal.m4: 20397 support --with-logfile and --with-timedir 20398 [2fc36b35db12] 20399 20400 * configure.in: 20401 Add --with-logfile and --with-timedir 20402 [09045bf07e29] 20403 20404 * sudo.c: 20405 change size computation of NewArgv for UNICOS 20406 [b50df07da3a1] 20407 204081998-02-19 Todd C. Miller <Todd.Miller@courtesan.com> 20409 20410 * configure.in: 20411 treate -*-sysv4* like *-*-svr4 20412 [471b7ef4dbf2] 20413 204141998-02-18 Todd C. Miller <Todd.Miller@courtesan.com> 20415 20416 * configure.in: 20417 fix spacing for --with-authenticate help 20418 [8321cb37c410] 20419 20420 * Makefile.in, check.c, compat.h, config.h.in, dce_pwent.c, 20421 emul/utime.h, find_path.c, getspwuid.c, getwd.c, goodpath.c, 20422 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 20423 interfaces.c, logging.c, options.h, parse.c, parse.lex, parse.yacc, 20424 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20425 testsudoers.c, tgetpass.c, utime.c, visudo.c: 20426 updated version 20427 [dc1ab97312eb] 20428 20429 * parse.yacc: 20430 fix off by one error in push macro 20431 [bece59c8c3a9] 20432 204331998-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 20434 20435 * configure.in: 20436 removed bogus alloca hack 20437 [a68dd720462d] 20438 20439 * check.c: 20440 added AIX 4.x authenticate() support 20441 [12985eb448a0] 20442 20443 * parse.yacc: 20444 include alloca.h if using bison and not gcc and it exists. fixes an 20445 alloca problem on hpux 10.x 20446 [e3b5c4f26072] 20447 20448 * INSTALL: 20449 mention --with-authenticate 20450 [78a1c96820e7] 20451 20452 * configure.in: 20453 added AIX authenticate() support 20454 [c983193ec252] 20455 20456 * config.h.in: 20457 add HAVE_AUTHENTICATE 20458 [7b0e5f5db5d9] 20459 20460 * interfaces.c: 20461 dynamically size ifconf buffer 20462 [10afb0e9b2f9] 20463 20464 * configure.in: 20465 quote '[' and ']' 20466 [8fc38a4defad] 20467 20468 * Makefile.in, check.c, compat.h, config.h.in, dce_pwent.c, 20469 emul/utime.h, find_path.c, getspwuid.c, getwd.c, goodpath.c, 20470 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 20471 logging.c, options.h, parse.c, parse.lex, parse.yacc, 20472 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20473 testsudoers.c, tgetpass.c, utime.c, visudo.c: 20474 updated version 20475 [5f66de71ec61] 20476 20477 * visudo.pod: 20478 add ERRORS section 20479 [3df3edb73cf6] 20480 204811998-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 20482 20483 * TROUBLESHOOTING: 20484 add busy stmp file explanation 20485 [6c555d469b6f] 20486 204871998-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 20488 20489 * configure.in: 20490 the name of the cached var that signals whether or not you are cross 20491 compiling changed. It is now ac_cv_prog_cc_cross 20492 [123911c0658c] 20493 204941998-02-11 Todd C. Miller <Todd.Miller@courtesan.com> 20495 20496 * INSTALL: 20497 mention glibc 2.07 is fixed wrt lsearch()\. 20498 [ded758524582] 20499 205001998-02-07 Todd C. Miller <Todd.Miller@courtesan.com> 20501 20502 * sample.sudoers, sudoers.pod: 20503 better example of su but not root su 20504 [b3199610be21] 20505 205061998-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 20507 20508 * Makefile.in, check.c, compat.h, config.h.in, dce_pwent.c, 20509 emul/utime.h, find_path.c, getspwuid.c, getwd.c, goodpath.c, 20510 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 20511 interfaces.c, logging.c, options.h, parse.c, parse.lex, parse.yacc, 20512 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20513 testsudoers.c, tgetpass.c, utime.c, visudo.c: 20514 updated version 20515 [46922b84e86b] 20516 20517 * Makefile.in: 20518 correct regexp for updating version 20519 [8032728b2a8a] 20520 20521 * tgetpass.c: 20522 remove bogus flush of stderr spew prompt before turning off echo. 20523 Seems to fix a weird problem where if sudo complained about a bogus 20524 stamp file the user would sometimes not have a chance to enter a 20525 password 20526 [7aa1493cc141] 20527 20528 * check.c: 20529 fix bogus flush of stderr 20530 [6d047871c5e8] 20531 20532 * sudo.c: 20533 close fd's <=2 not <=3 and move that chunk of code up 20534 [553e4faac195] 20535 20536 * configure.in: 20537 support hpux1[0-9] not just hpux10 20538 [5a34a000ff8a] 20539 205401998-01-30 Todd C. Miller <Todd.Miller@courtesan.com> 20541 20542 * parse.c: 20543 set sudoers_fp to nil after closing 20544 [221a8b4bbf34] 20545 205461998-01-24 Todd C. Miller <Todd.Miller@courtesan.com> 20547 20548 * config.guess, config.sub: 20549 updated from autoconf 2.12 20550 [6fc86a0fc61b] 20551 20552 * configure.in: 20553 add *-*-svr4 rule 20554 [38f0427f7c9d] 20555 205561998-01-23 Todd C. Miller <Todd.Miller@courtesan.com> 20557 20558 * tgetpass.c: 20559 fix select usage for high fd's (dynamically allocate readfds) 20560 [c2d1f76e0321] 20561 20562 * check.c: 20563 kill extra whitespace 20564 [d784b6c9c514] 20565 20566 * sudo.c: 20567 do an initgroups() before running a command, unless the target user 20568 is root. 20569 [4ca561287480] 20570 205711998-01-22 Todd C. Miller <Todd.Miller@courtesan.com> 20572 20573 * TROUBLESHOOTING: 20574 tell people to use tabs, not spaces, in syslog.conf 20575 [8ae90a205134] 20576 205771998-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 20578 20579 * Makefile.in, config.h.in, dce_pwent.c, emul/utime.h, getwd.c, 20580 parse.lex, putenv.c, strdup.c, testsudoers.c, utime.c: 20581 updated version 20582 [4d855ff5de26] 20583 20584 * check.c, find_path.c, getspwuid.c, goodpath.c, interfaces.c, 20585 logging.c, parse.c, sudo.c, sudo_setenv.c, tgetpass.c, visudo.c: 20586 updated version 20587 [8e007e178b33] 20588 20589 * compat.h, ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, 20590 insults.h, options.h, parse.yacc, pathnames.h.in, sudo.h: 20591 updated version 20592 [9ddea5c8814d] 20593 20594 * Makefile.in: 20595 more tweaks to update_version 20596 [047698752855] 20597 20598 * Makefile.in: 20599 fixed up update_version rule 20600 [47b6fa34b77f] 20601 20602 * configure.in: 20603 ++version 20604 [c1ca664e30b7] 20605 20606 * Makefile.in: 20607 removed supe of check.c 20608 [8f340a05296a] 20609 20610 * INSTALL: 20611 ++version I missed 20612 [a298e6c17491] 20613 20614 * RUNSON: 20615 updated 20616 [a14f6057bc15] 20617 20618 * BUGS, INSTALL, Makefile.in, README, check.c, compat.h, config.h.in, 20619 dce_pwent.c, emul/utime.h, find_path.c, getspwuid.c, getwd.c, 20620 goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, 20621 insults.h, interfaces.c, logging.c, options.h, parse.c, parse.lex, 20622 parse.yacc, pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, 20623 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, version.h, 20624 visudo.c: 20625 updated version 20626 [02231b1a3ab3] 20627 20628 * CHANGES: 20629 updated for 1.5.5 20630 [634e5fcaf40b] 20631 20632 * Makefile.in: 20633 add rules to update version stuff in files so I don't need to do it 20634 by hand 20635 [3620ad60485a] 20636 20637 * sudo.h: 20638 sudoers_fp is now extern 20639 [88c6e9b9ea84] 20640 20641 * sudo.c: 20642 in check_sudoers, cache the sudoers file handle in sudoers_fp so we 20643 don't have to open it again in the parse. This may help with weird 20644 solaris problems where EAGAIN sometime occurrs. 20645 [d3c26451ed1d] 20646 20647 * parse.c: 20648 sudoers file open is now done only in check_sudoers() so we just do 20649 a rewind() instead of an open. May help people on solaris who were 20650 getting EAGAIN. 20651 [c8b8c7722fa5] 20652 206531998-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 20654 20655 * INSTALL: 20656 mention that newer glibc is fixed 20657 [20f06f5d3ef3] 20658 206591998-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 20660 20661 * sudo.c: 20662 newer irix uses _RLDN32_* envariables for 32-bit binaries so ignore 20663 _RLD* instead of _RLD_* 20664 [1e22c588d602] 20665 20666 * parse.c: 20667 typo 20668 [d0b7cb85f08a] 20669 20670 * parse.c: 20671 fix that bug for real 20672 [5a6eeca6d04b] 20673 20674 * INSTALL: 20675 document Linux's libc6 brokenness. 20676 [0246c1aa64ee] 20677 20678 * parse.yacc: 20679 -Wall 20680 [d0e452fb1e2d] 20681 20682 * RUNSON: 20683 updated 20684 [4949a1bbd0a9] [SUDO_1_5_4] 20685 20686 * TROUBLESHOOTING: 20687 remind people to HUP syslogd 20688 [590962faa4f0] 20689 20690 * Makefile.in: 20691 add -O flag to tar 20692 [622d02de339d] 20693 20694 * RUNSON: 20695 updated 20696 [a72930d6e615] 20697 20698 * TODO: 20699 updated 20700 [4a51bd458390] 20701 20702 * sudo.pod: 20703 remove author's email addr. people should mail sudo-bugs 20704 [9b6bbdb3a6d9] 20705 20706 * INSTALL: 20707 fix version 20708 [246274c6c8af] 20709 20710 * README, check.c, compat.h, config.h.in, configure.in, dce_pwent.c, 20711 find_path.c, getspwuid.c, getwd.c, goodpath.c, ins_2001.h, 20712 ins_classic.h, ins_csops.h, ins_goons.h, insults.h, interfaces.c, 20713 logging.c, options.h, parse.c, parse.lex, parse.yacc, 20714 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 20715 testsudoers.c, tgetpass.c, utime.c, version.h, visudo.c: 20716 ++version 20717 [f532ff4ee766] 20718 20719 * RUNSON: 20720 updated 20721 [62d5c71358b5] 20722 20723 * INSTALL, Makefile.in: 20724 ++version 20725 [1a7c7628edfc] 20726 20727 * CHANGES: 20728 updated fort 1.5.4 20729 [7e4873508c99] 20730 20731 * check.c: 20732 exit(1) if user enters no passwd 20733 [f382c0e35e4e] 20734 20735 * BUGS: 20736 ++version 20737 [fab6a867ab67] 20738 20739 * parse.c: 20740 commands can start with ./* not just /* -- fixes a serious security 20741 hole. 20742 [244d2fe35ee3] 20743 207441997-12-21 Todd C. Miller <Todd.Miller@courtesan.com> 20745 20746 * sudo.c: 20747 Don't set the tty variable to NULL when we lack a tty, leave it as 20748 "unknown". 20749 [193b26daba03] 20750 207511997-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 20752 20753 * sample.sudoers: 20754 fix usage of (username) in conjunction with , and ! 20755 [7ae68607f68f] 20756 20757 * visudo.c: 20758 catch the case where the user is not in the passwd file 20759 [31650258deb0] 20760 20761 * tgetpass.c: 20762 use fileno(input) + 1 instead of getdtablesize() as the nfds arg to 20763 select(2) 20764 [60ab2d9a9ee8] 20765 20766 * sudo.c: 20767 define tty global to an initial value to avoid dumping core in 20768 logging functions when passwd file is unavailable. 20769 [77056c7bc908] 20770 20771 * sudo.c: 20772 do the set_perms(PERM_USER, sudo_mode) after we have gotten the 20773 passwd entry 20774 [1fdb8e579a5a] 20775 20776 * sudo.pod: 20777 talk about problem of ALL 20778 [1cd1905c9f6f] 20779 207801997-10-10 Todd C. Miller <Todd.Miller@courtesan.com> 20781 20782 * README: 20783 new web location 20784 [d24dc26f6da5] 20785 20786 * INSTALL: 20787 fdesc bug is fixed in Open/Net BSD 20788 [7d4d81b08ac3] 20789 20790 * HISTORY: 20791 updates from Nieusma 20792 [3a43769a1b78] 20793 207941997-10-09 Todd C. Miller <Todd.Miller@courtesan.com> 20795 20796 * dce_pwent.c: 20797 move compat.h after the system includes 20798 [5ea43a5968ac] 20799 208001997-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 20801 20802 * logging.c: 20803 save errno from being clobbered by wait(). From Theo 20804 [f2d1c48cd592] 20805 208061997-05-21 Todd C. Miller <Todd.Miller@courtesan.com> 20807 20808 * compat.h: 20809 fix an occurence of setresuid -> setreuid (typo) 20810 [394de35c9b1c] 20811 208121997-03-19 Todd C. Miller <Todd.Miller@courtesan.com> 20813 20814 * install-sh: 20815 check for path to strip 20816 [2b7ef824bd55] 20817 208181997-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 20819 20820 * logging.c: 20821 deal with maxfilelen < 0 case 20822 [f0af095178d7] 20823 20824 * OPTIONS: 20825 fixed descriptin 20826 [629f60bd4b5f] 20827 208281996-12-12 Todd C. Miller <Todd.Miller@courtesan.com> 20829 20830 * sudo.c: 20831 correct error message if mode/owner wrong and not statable by owner 20832 but is statable by root. 20833 [cb631ce2e85e] 20834 208351996-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 20836 20837 * config.guess, config.sub: 20838 autoconf 2.11 20839 [f3cbe59e0756] 20840 208411996-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 20842 20843 * CHANGES, RUNSON, TODO: 20844 sudo 1.5.3. 20845 [2be3229b8626] 20846 208471996-11-14 Todd C. Miller <Todd.Miller@courtesan.com> 20848 20849 * parse.yacc, sudo.h: 20850 command_alias -> generic_alias 20851 [c404ca8c510d] [SUDO_1_5_3] 20852 20853 * sample.sudoers: 20854 added Runas_Alias example and fixed syntax errors 20855 [c304053f4a8a] 20856 20857 * OPTIONS, options.h: 20858 updated MAILSUBJECT 20859 [18d1573fcd2a] 20860 20861 * logging.c: 20862 added %h expansion 20863 [a4bff9b284fd] 20864 20865 * INSTALL, Makefile.in, README, check.c, compat.h, config.h.in, 20866 configure.in, dce_pwent.c, find_path.c, getspwuid.c, getwd.c, 20867 goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, 20868 insults.h, interfaces.c, logging.c, options.h, parse.c, parse.lex, 20869 parse.yacc, pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, 20870 sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, version.h, 20871 visudo.c: 20872 ++version 20873 [211ff20f956f] 20874 20875 * BUGS, emul/utime.h: 20876 ++version 20877 [cde5376579e3] 20878 20879 * sudoers.pod: 20880 document Runas_Alias 20881 [b1a58f28fb2c] 20882 20883 * visudo.pod: 20884 q (uid) -> Q 20885 [d256649a0e6b] 20886 20887 * visudo.c: 20888 buffer oflow checking q (uit) -> Q if yyparse() fails drop into 20889 whatnow 20890 [1cb183d15626] 20891 20892 * parse.yacc: 20893 add size params to sprintf 20894 [9228f698921f] 20895 20896 * parse.lex: 20897 allow trailing space after '\\' but before '\n' 20898 [f51dbbf69fdf] 20899 20900 * find_path.c: 20901 off by one error in path size check 20902 [a6d75ccd7632] 20903 20904 * check.c: 20905 sprintf paranoia 20906 [3ffb12d198dd] 20907 209081996-11-12 Todd C. Miller <Todd.Miller@courtesan.com> 20909 20910 * parse.yacc: 20911 fixed more_aliases 20912 [aab12f2a50af] 20913 20914 * visudo.c: 20915 now warns if killed by signal ./ 20916 [310c186a0fd7] 20917 209181996-11-11 Todd C. Miller <Todd.Miller@courtesan.com> 20919 20920 * parse.yacc: 20921 fix Runas_Alias stuff Alias's in runas list now get expanded (but it 20922 is gross) 20923 [45590b83120f] 20924 20925 * sudo.c: 20926 Can now deal with SUDOERS_UID == 0 and SUDOERS_MODE == 0400 20927 [d53e01c14c58] 20928 20929 * parse.yacc: 20930 add Runas_Alias support change FOO to FOO_ALIAS (ie: USER_ALIAS) 20931 [7a4a040aae2d] 20932 20933 * parse.lex: 20934 Add Runas_Alias and simplify a rule. 20935 [6f794a769a37] 20936 20937 * parse.yacc: 20938 always store User_Alias's since they can be used inside of a runas 20939 list. Sigh. Really need a Runas_Alias instead. 20940 [3bab058a873e] 20941 209421996-10-30 Todd C. Miller <Todd.Miller@courtesan.com> 20943 20944 * visudo.c: 20945 deal with case where there is no sudoers file 20946 [fa38b3bb244d] 20947 209481996-10-12 Todd C. Miller <Todd.Miller@courtesan.com> 20949 20950 * TROUBLESHOOTING: 20951 added one 20952 [e61346d06725] 20953 209541996-10-11 Todd C. Miller <Todd.Miller@courtesan.com> 20955 20956 * HISTORY, testsudoers.c: 20957 developement -> development 20958 [4df55e293941] 20959 20960 * INSTALL: 20961 added a note 20962 [3845fb83dbc0] 20963 20964 * RUNSON: 20965 for 1.5.2 20966 [5489b7298942] 20967 20968 * CHANGES: 20969 updated 20970 [0741834929e6] 20971 209721996-10-10 Todd C. Miller <Todd.Miller@courtesan.com> 20973 20974 * PORTING: 20975 removed seteuid() notes 20976 [1010a60f281d] [SUDO_1_5_2] 20977 209781996-10-09 Todd C. Miller <Todd.Miller@courtesan.com> 20979 20980 * compat.h: 20981 better seteuid() emulatino 20982 [e807623b662c] 20983 20984 * configure.in: 20985 added check for seteuid 20986 [8cf9fabc6f4f] 20987 20988 * config.h.in: 20989 added HAVE_SETEUID 20990 [596db46aa828] 20991 209921996-10-08 Todd C. Miller <Todd.Miller@courtesan.com> 20993 20994 * configure.in: 20995 first stab at sequent support 20996 [b85a7bfcac76] 20997 20998 * config.h.in: 20999 added HAVE_SYS_SELECT_H 21000 [93ecdd042463] 21001 21002 * compat.h: 21003 sequent -> _SEQUENT_ 21004 [63a38b6da98c] 21005 21006 * compat.h: 21007 added seteuid() macro for DYNIX 21008 [695bd63c5ea6] 21009 21010 * tgetpass.c: 21011 _AIX -> HAVE_SYS_SELECT_H 21012 [b31221211bc2] 21013 210141996-10-07 Todd C. Miller <Todd.Miller@courtesan.com> 21015 21016 * BUGS, INSTALL, Makefile.in, OPTIONS, README, config.h.in, logging.c, 21017 parse.c, parse.lex, parse.yacc, putenv.c, strdup.c, sudo_setenv.c, 21018 testsudoers.c, tgetpass.c, utime.c, visudo.c: 21019 ++version 21020 [8052992fd453] 21021 21022 * check.c, compat.h, dce_pwent.c, emul/utime.h, find_path.c, 21023 getspwuid.c, getwd.c, goodpath.c, ins_2001.h, ins_classic.h, 21024 ins_csops.h, ins_goons.h, insults.h, interfaces.c, options.h, 21025 pathnames.h.in, version.h: 21026 ++version 21027 [f7ad15e1598a] 21028 21029 * sudo.pod: 21030 added -H and SUDO_PS1 21031 [bb965241e30c] 21032 21033 * configure.in: 21034 use SUDO_FUNC_FNMATCH 21035 [6a8350d85fb2] 21036 21037 * aclocal.m4: 21038 added SUDO_FUNC_FNMATCH 21039 [45b32c91c4ba] 21040 21041 * sudo.c: 21042 added -H flag 21043 [11ebc6872fd6] 21044 21045 * sudo.h: 21046 added MODE_RESET_HOME / 21047 [67a7f8bcbbd6] 21048 210491996-10-05 Todd C. Miller <Todd.Miller@courtesan.com> 21050 21051 * INSTALL: 21052 mention OPIE 21053 [5723515d5bbd] 21054 21055 * options.h: 21056 SKEY -> OTP 21057 [c1d268130bc4] 21058 21059 * configure.in: 21060 added opie support 21061 [123872b41b20] 21062 21063 * compat.h, config.h.in: 21064 added HAVE_OPIE 21065 [528c71afc1e5] 21066 21067 * check.c: 21068 added HAVE_OPIE and changed to *_OTP_* 21069 [4c62f5db872a] 21070 21071 * OPTIONS: 21072 SKEY -> OTP 21073 [bd858e5e9652] 21074 210751996-10-04 Todd C. Miller <Todd.Miller@courtesan.com> 21076 21077 * check.c: 21078 moved fclose() in skey stuff. 21079 [11f7dc8431a6] 21080 210811996-10-03 Todd C. Miller <Todd.Miller@courtesan.com> 21082 21083 * putenv.c: 21084 index -> strchr remove unnecesary stuff 21085 [af2d05238062] 21086 21087 * check.c: 21088 now call skeychallenge() to get challenge instead of making one up 21089 ourselves. this way, we get extra goodies in the prompt. 21090 [49b770d98d3a] 21091 210921996-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 21093 21094 * CHANGES: 21095 added one 21096 [3f5149357e2a] [SUDO_1_5_1] 21097 21098 * parse.lex: 21099 allow logins to start with a number (YUCK!) 21100 [7ed7ef324741] 21101 211021996-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 21103 21104 * TROUBLESHOOTING: 21105 added soalris 2.5 vs 2.4 note 21106 [16160a251aae] 21107 21108 * configure.in: 21109 DUNIX doesn't need -lnsl 21110 [be924cc322c3] 21111 21112 * CHANGES: 21113 *** empty log message *** 21114 [1b2937521981] 21115 21116 * check.c, compat.h, config.h.in, dce_pwent.c, find_path.c, 21117 getspwuid.c, getwd.c, goodpath.c, ins_2001.h, ins_classic.h, 21118 ins_csops.h, ins_goons.h, insults.h, interfaces.c, logging.c, 21119 options.h, parse.c, parse.lex, parse.yacc, pathnames.h.in, putenv.c, 21120 strdup.c, sudo.c, sudo.h, sudo_setenv.c, testsudoers.c, tgetpass.c, 21121 utime.c, version.h, visudo.c: 21122 courtesan 21123 [5f203589bbfe] 21124 21125 * PORTING, README, RUNSON: 21126 courtesan 21127 [d72517f4937e] 21128 21129 * INSTALL, Makefile.in, TROUBLESHOOTING: 21130 courtesan 21131 [5c007e3c7a71] 21132 21133 * visudo.pod: 21134 *** empty log message *** 21135 [37ebe85bd4e1] 21136 21137 * sudo.pod, visudo.pod: 21138 courtesan 21139 [37f02e2130ea] 21140 211411996-09-07 Todd C. Miller <Todd.Miller@courtesan.com> 21142 21143 * HISTORY: 21144 added courtesan ./ 21145 [b01435226276] 21146 211471996-09-06 Todd C. Miller <Todd.Miller@courtesan.com> 21148 21149 * sudo.c: 21150 added $SUDO_PROMPT support 21151 [cb1fa72c093d] 21152 211531996-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 21154 21155 * check.c: 21156 print long skey challemged to stderr, not stdout 21157 [750fc775b3b2] 21158 211591996-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 21160 21161 * CHANGES: 21162 updated for 1.5.1 21163 [9b615f393057] 21164 21165 * emul/utime.h: 21166 ++version 21167 [a94de18deafb] 21168 211691996-08-31 Todd C. Miller <Todd.Miller@courtesan.com> 21170 21171 * RUNSON: 21172 updated for 1.5.1 21173 [4092f20ab634] 21174 211751996-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 21176 21177 * check.c: 21178 use shost, not host for tgetpass 21179 [6061c49ff9be] 21180 21181 * sudo.pod: 21182 documented %u and %h 21183 [6d2922d29897] 21184 21185 * OPTIONS: 21186 documented %u and %h 21187 [1a71da13a864] 21188 21189 * configure.in: 21190 fixed typo 21191 [1230dec2b062] 21192 21193 * INSTALL, Makefile.in, README, check.c, compat.h, config.h.in, 21194 dce_pwent.c, find_path.c, getspwuid.c, getwd.c, goodpath.c, 21195 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 21196 interfaces.c, logging.c, options.h, parse.c, parse.lex, parse.yacc, 21197 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 21198 testsudoers.c, tgetpass.c, utime.c, version.h, visudo.c: 21199 ++version 21200 [65ce8eabf77a] 21201 21202 * BUGS: 21203 ++version 21204 [afecab53aab7] 21205 212061996-08-29 Todd C. Miller <Todd.Miller@courtesan.com> 21207 21208 * Makefile.in, configure.in, version.h: 21209 ++version 21210 [fb3ff940d672] 21211 21212 * sudo.h: 21213 new tgetpass() params 21214 [9eccc5b0f8ae] 21215 21216 * check.c: 21217 pass use and host to tgetpass 21218 [c56d9d13c401] 21219 21220 * tgetpass.c: 21221 added %u and %h escapes 21222 [04ae775d3e5d] 21223 21224 * OPTIONS, check.c, options.h: 21225 added NO_MESSAGE 21226 [3927dad19057] 21227 21228 * configure.in: 21229 added cray (unicos) support 21230 [1122210c5fb1] 21231 212321996-08-27 Todd C. Miller <Todd.Miller@courtesan.com> 21233 21234 * OPTIONS, options.h, sudo.c: 21235 added SHELL_SETS_HOME 21236 [0b26909b0929] 21237 212381996-08-25 Todd C. Miller <Todd.Miller@courtesan.com> 21239 21240 * INSTALL: 21241 added note about "make install" 21242 [7e56ea76d4b4] 21243 21244 * parse.yacc: 21245 changed length/size params from int to size_t 21246 [5654e5ceb1b3] 21247 21248 * OPTIONS: 21249 now get CSOPS insults as well by default 21250 [297323d0179a] 21251 21252 * insults.h: 21253 use csops insults too by default 21254 [07fafc136169] 21255 21256 * INSTALL, Makefile.in, README, config.h.in, configure.in, version.h: 21257 version = 1.5 21258 [4b8772b11e3b] 21259 21260 * sudo.c: 21261 added runas_homedir 21262 [b0e0d4417a15] 21263 21264 * TODO: 21265 updated for 1.5 21266 [66259df825d5] 21267 21268 * RUNSON: 21269 updated for 1.5 21270 [e08bc9ebfe95] 21271 21272 * CHANGES: 21273 1.5 release 21274 [8c16942fea41] 21275 21276 * INSTALL: 21277 added "upgrading" notes 21278 [210d968964ff] 21279 212801996-08-22 Todd C. Miller <Todd.Miller@courtesan.com> 21281 21282 * visudo.c: 21283 now do chmod and chown after edit of temp file and before rename 21284 [de174e34faa7] [SUDO_1_5_0] 21285 212861996-08-18 Todd C. Miller <Todd.Miller@courtesan.com> 21287 21288 * Makefile.in: 21289 ++version added INSTALL.configure 21290 [c9e9214f52ae] 21291 21292 * configure.in, version.h: 21293 ++version 21294 [5985abed3eb2] 21295 21296 * TROUBLESHOOTING: 21297 *** empty log message *** 21298 [d65c540ec52e] 21299 21300 * parse.yacc: 21301 added missing cast 21302 [e7247319a7d5] 21303 21304 * sudo.c: 21305 sets $HOME to pw_dir of runas user 21306 [d3f7f4d05752] 21307 21308 * sudo.pod: 21309 document $HOME change 21310 [854454d458c4] 21311 213121996-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 21313 21314 * sudo.pod: 21315 fixed up some wording 21316 [b0c8582f2c97] 21317 21318 * check.c, dce_pwent.c, find_path.c, getspwuid.c, getwd.c, goodpath.c, 21319 interfaces.c, logging.c, parse.c, parse.lex, parse.yacc, putenv.c, 21320 strdup.c, sudo.c, sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, 21321 visudo.c: 21322 ++version 21323 [748be723fd8b] 21324 21325 * compat.h, ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, 21326 insults.h, options.h, pathnames.h.in, sudo.h: 21327 ++version 21328 [acdf8b1b2a1b] 21329 21330 * emul/utime.h: 21331 ++version 21332 [b3f35298ab8d] 21333 21334 * sudo.h: 21335 name nad type changes 21336 [db24ab3da141] 21337 21338 * testsudoers.c: 21339 now works with new sudo 21340 [379346c42cc2] 21341 21342 * parse.yacc: 21343 fixed some XXX 21344 [f5fe4c990052] 21345 21346 * parse.yacc: 21347 some variable name changes + comment headers for functions. 21348 [3dc3bd9aa73d] 21349 21350 * tgetpass.c: 21351 added extra paren's to make compilers happy 21352 [9e4968a34d56] 21353 21354 * sudo.c: 21355 *** empty log message *** 21356 [70c924c1ed69] 21357 21358 * parse.c: 21359 now uses init_parser() if not in sudoers and tries "list" or 21360 "validate" scold but don't be nasty. 21361 [c0d8fb3f8c9e] 21362 21363 * TROUBLESHOOTING: 21364 now can use upper case login names 21365 [c772fffcefe5] 21366 21367 * visudo.c: 21368 now uses init_parser() 21369 [b9efae7243fd] 21370 21371 * INSTALL, README: 21372 updated 21373 [27dc8283fdc8] 21374 21375 * PORTING: 21376 added info about PASSWORD_TIMEOUT 21377 [980e15d892f8] 21378 21379 * INSTALL.configure: 21380 Initial revision 21381 [8292e89a08d3] 21382 21383 * BUGS: 21384 fixed a bug , 21385 [c6e46f5624f9] 21386 21387 * parse.yacc: 21388 now dynamically allocates memory for the stacks -- no more 21389 overflows! 21390 [8615c35b6ad3] 21391 21392 * sudo.pod: 21393 -l now explands command aliases 21394 [39f45605935d] 21395 21396 * parse.yacc: 21397 hacks to expand command aliases for `sudo -l' 21398 [e4eb752608f9] 21399 21400 * sudo.c: 21401 remove $ENV and $BASH_ENV (dangerous in ksh, posix sh, and bash) 21402 [01327ca5084b] 21403 21404 * sudo.h: 21405 added struct command_alias 21406 [dd2f32764082] 21407 21408 * sudo.pod: 21409 fixed a bug 21410 [e708ff08d2eb] 21411 21412 * lsearch.c: 21413 in compar() key should be first arg 21414 [fc14c3fa62ee] 21415 214161996-08-15 Todd C. Miller <Todd.Miller@courtesan.com> 21417 21418 * BUGS: 21419 fixed some bugs 21420 [639dfe425bd5] 21421 21422 * parse.yacc: 21423 can now deal with upcase HOST and USER names 21424 [c6aa7bcfb00d] 21425 21426 * sudo.c: 21427 don't yell too loudly at non-sudoers if they do "sudo -l" 21428 [4ef146128d89] 21429 21430 * sudo.pod: 21431 fixed thinko 21432 [830f2f0f22e7] 21433 21434 * parse.c: 21435 fix comment 21436 [d20ce9e17ddc] 21437 214381996-08-09 Todd C. Miller <Todd.Miller@courtesan.com> 21439 21440 * parse.c, parse.yacc: 21441 added support for new `sudo -l' stuff 21442 [7dceaef3c733] 21443 21444 * sudo.c: 21445 now uses list_matches() 21446 [293364821b61] 21447 21448 * sudo.h: 21449 added struct sudo_match 21450 [b2684179d179] 21451 21452 * configure.in: 21453 now more -lgnumalloc 21454 [4f8ae42617d8] 21455 214561996-08-01 Todd C. Miller <Todd.Miller@courtesan.com> 21457 21458 * install-sh: 21459 added more paths for chown and whoami 21460 [6e685a19426c] 21461 214621996-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 21463 21464 * check.c: 21465 typo 21466 [3adfa01c04bc] 21467 214681996-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 21469 21470 * aclocal.m4: 21471 fixed DUNIX check for shadow pw 21472 [c25324bcd27b] 21473 21474 * tgetpass.c: 21475 now only turn off echo if it is already on. this fixes a race when 21476 you use sudo in a pipelin 21477 [28388c2de21c] 21478 21479 * INSTALL: 21480 updated 21481 [b45ac9366b7e] 21482 21483 * configure.in: 21484 changed "test -z $foo && do_this" to if; then construct 21485 [2183c4426bca] 21486 214871996-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 21488 21489 * configure.in: 21490 added missing defines of SHADOW_TYPE 21491 [be89ea68a7f3] 21492 214931996-07-26 Todd C. Miller <Todd.Miller@courtesan.com> 21494 21495 * check.c: 21496 protect AUTH_CRYPT_OLDCRYPT and AUTH_CRYPT_C1CRYPT since they are 21497 only in dunix 4.x 21498 [1e7c1c677263] 21499 21500 * getspwuid.c: 21501 added AUTH_CRYPT_C1CRYPT support 21502 [88d6b0058b20] 21503 21504 * parse.c: 21505 no longer return VALIDATE_NOT_OK if there was a runas that didn't 21506 match. Now we can have runas stuff on more than one line. 21507 [52b68920d7b7] 21508 21509 * getspwuid.c, sudo.c, tgetpass.c: 21510 use SHADOW_TYPE instead of HAVE_C2_SECURITY 21511 [cf401dfcbc06] 21512 21513 * configure.in: 21514 got rid of HAVE_C2_SECURITY SHADOW_TYPE is always defined to 21515 something 21516 [c7a233c4dd93] 21517 21518 * config.h.in: 21519 removed HAVE_C2_SECURITY added SPW_BSD 21520 [8314405e9754] 21521 21522 * compat.h: 21523 use SHADOW_TYPE instead of HAVE_C2_SECURITY 21524 [6f94870df17f] 21525 21526 * check.c: 21527 SHADOW_TYPE is always defined so just against its value 21528 [72c69a55d02f] 21529 21530 * aclocal.m4: 21531 added SUDO_CHECK_SHADOW_DUNIX 21532 [ef025ae9d496] 21533 215341996-07-25 Todd C. Miller <Todd.Miller@courtesan.com> 21535 21536 * sudoers.pod: 21537 * -> ?* in one example added another instance of (runas) and one of 21538 NOPASSWD: 21539 [d74fe1dcbe7d] 21540 215411996-07-24 Todd C. Miller <Todd.Miller@courtesan.com> 21542 21543 * configure.in: 21544 added back check for config.cache from other host type 21545 [0ba87871f585] 21546 21547 * parse.lex: 21548 removed an instance of \" 21549 [1e008d3709f6] 21550 21551 * sample.sudoers: 21552 added an example 21553 [dbfcf68ee330] 21554 21555 * sudoers.pod: 21556 updated wrt new wildcard matching 21557 [193fa44a475b] 21558 21559 * configure.in: 21560 new check for shadow passwords if we don't know anything 21561 [67465df7dc9a] 21562 21563 * aclocal.m4: 21564 new SUDO_CHECK_SHADOW_GENERIC 21565 [3563b16a41b8] 21566 21567 * configure.in: 21568 added back check for -lsocket (oops) 21569 [a80882ee1cb6] 21570 21571 * configure.in: 21572 better (working) check for shadow passwd type if we know to use C2. 21573 [3cdd2a59a641] 21574 21575 * configure.in: 21576 now uses AC_CANONICAL_HOST to figure out os type 21577 [80db7fe6e704] 21578 21579 * Makefile.in: 21580 added config.{guess,sub} 21581 [c6be7e3ca384] 21582 21583 * aclocal.m4: 21584 removed unused stuff to figure out os type 21585 [c9a0f3b57123] 21586 21587 * config.sub: 21588 added openbsd 21589 [bfc6bfec3668] 21590 21591 * config.sub: 21592 Initial revision 21593 [e6e06ce0d17d] 21594 21595 * config.guess: 21596 Initial revision 21597 [99dd06f79199] 21598 21599 * testsudoers.c: 21600 don't call fnmatch() with FNM_PATHNAME flag unless it can only be a 21601 pathname. need to check against sudoers_args even if user_args is 21602 nil 21603 [66e6cf77f5d6] 21604 21605 * parse.c: 21606 don't call fnmatch() with FNM_PATHNAME flag unless it can only be a 21607 pathname need to check against sudoers_args even if user_args is nil 21608 [74374df17311] 21609 216101996-07-23 Todd C. Miller <Todd.Miller@courtesan.com> 21611 21612 * check.c: 21613 added support for AUTH_CRYPT_OLDCRYPT w/ DUNIX C2 21614 [cbb00261c415] 21615 21616 * testsudoers.c: 21617 now takes command line args and uses cmnd_args 21618 [f0c2fd35a527] 21619 21620 * parse.lex: 21621 fill_args was adding an extra leading space 21622 [692fc999b2e8] 21623 216241996-07-22 Todd C. Miller <Todd.Miller@courtesan.com> 21625 21626 * visudo.c: 21627 fixed dummy command_matches() 21628 [93d9543db6e2] 21629 21630 * parse.yacc: 21631 fixed prototype 21632 [7b0addfbd429] 21633 21634 * sudo.h: 21635 added cmnd_args 21636 [8f47c4ae65ef] 21637 21638 * parse.yacc: 21639 now uses flat args string 21640 [016e65877da3] 21641 21642 * parse.c, parse.lex: 21643 now uses flat arg string 21644 [5b5f2e3f4c09] 21645 21646 * visudo.c: 21647 added cmnd_args def 21648 [876867134775] 21649 21650 * sudo.c: 21651 now sets cmnd_args global 21652 [e6fee70cb59b] 21653 21654 * logging.c: 21655 cmnd_args is now exported from sudo.[ch] 21656 [7a9cd36e356f] 21657 216581996-07-21 Todd C. Miller <Todd.Miller@courtesan.com> 21659 21660 * parse.yacc: 21661 can't rely on cmnd_matches as much as I thought -- added some $$ 21662 stuff back in to prevent namespace pollution problems. 21663 [3c45fedb5af3] 21664 21665 * parse.yacc: 21666 Simplified parse rules wrt runas and NOPASSWD (more consistent). 21667 [e6d838c8a4c7] 21668 216691996-07-20 Todd C. Miller <Todd.Miller@courtesan.com> 21670 21671 * parse.lex: 21672 NOPASSWD may now have blanks before the ':' '(' only starts a 21673 'runas' if in the initial state to avoid collision with command args 21674 [c5c01172f499] 21675 21676 * configure.in: 21677 added checks for specific shadow passwd schemes 21678 [b7e3d1f7b84f] 21679 21680 * aclocal.m4: 21681 added routines to check for specific shadow passwd types 21682 [e5e1d19960a6] 21683 216841996-07-18 Todd C. Miller <Todd.Miller@courtesan.com> 21685 21686 * configure.in: 21687 added support for ncr boxen 21688 [bea9dc5aae7f] 21689 21690 * aclocal.m4: 21691 added support for detecting ncr boxen 21692 [8653a158a924] 21693 216941996-07-16 Todd C. Miller <Todd.Miller@courtesan.com> 21695 21696 * configure.in: 21697 added sinix support 21698 [5de2b2173ee1] 21699 217001996-07-14 Todd C. Miller <Todd.Miller@courtesan.com> 21701 21702 * TROUBLESHOOTING: 21703 added info about "config.cache from other other" error. 21704 [845b10198e0b] 21705 21706 * aclocal.m4: 21707 now makes sure you don't have a config.cache file from another OS 21708 [4fe32571c021] 21709 21710 * configure.in: 21711 now sets $LIBS when needed to configure links with libs when doing 21712 tests hpux10 now uses SPW_SECUREWARE for C2 added check for 21713 bigcrypt(3) if SPW_SECUREWARE 21714 [2df6b8ca538f] 21715 21716 * getspwuid.c: 21717 fixed typo 21718 [fe1cb1d792d6] 21719 21720 * tgetpass.c: 21721 now include stuff for SPW_SECUREWARE to get AUTH_MAX_PASSWD_LENGTH 21722 [f71138372c07] 21723 21724 * getspwuid.c: 21725 no more SPW_HPUX10 21726 [cfdeb18bc16b] 21727 21728 * config.h.in: 21729 no more SPW_HPUX10 added HAVE_BIGCRYPT 21730 [00d296479a61] 21731 21732 * compat.h: 21733 now uses AUTH_MAX_PASSWD_LENGTH if SPW_SECUREWARE 21734 [6c6d9e680417] 21735 21736 * check.c: 21737 SPW_SECUREWARE now uses bigcrypt 21738 [be71fc66690f] 21739 217401996-07-13 Todd C. Miller <Todd.Miller@courtesan.com> 21741 21742 * sample.sudoers: 21743 fixed 2 syntax errors 21744 [45eee19ef4ac] 21745 21746 * sudoers: 21747 root may now run ALL as ALL 21748 [1b54c6b9b212] 21749 217501996-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 21751 21752 * interfaces.c: 21753 fixed a typo/thinko that broke BSD's with sa_len 21754 [603438360126] 21755 217561996-07-08 Todd C. Miller <Todd.Miller@courtesan.com> 21757 21758 * check.c, configure.in: 21759 updated AFS support 21760 [e572eb8d177a] 21761 21762 * TROUBLESHOOTING: 21763 added entry about /usr/ucb/cc 21764 [025b353aa9d3] 21765 21766 * INSTALL: 21767 prep no longer holds gcc binaries 21768 [8b0942958049] 21769 21770 * INSTALL: 21771 updated AFS note 21772 [7af6efd5abe4] 21773 21774 * Makefile.in: 21775 added @AFS_LIBS@ 21776 [97b6fe6ad7d6] 21777 21778 * compat.h: 21779 AFS allows long passwords 21780 [5fb17122c302] 21781 21782 * testsudoers.c: 21783 fixed -u user support 21784 [b1a0c1648639] 21785 21786 * parse.c: 21787 sudo -v now groks VALIDATE_OK_NOPASS 21788 [74fc03fffe7e] 21789 21790 * parse.yacc: 21791 fixed no_passwd vs. runas_matched 21792 [549a9b791a6a] 21793 21794 * TROUBLESHOOTING: 21795 took out stuff about NFS-mounting since it is no longer an issue 21796 [d95ab7fbbc61] 21797 21798 * INSTALL: 21799 added --with-libraries > --with-libpath --with-incpath 21800 [d5d15a7a0f4c] 21801 21802 * parse.yacc: 21803 was setting runas_matches to -1 in wrong place 21804 [db2b1deb8d33] 21805 21806 * check.c: 21807 removed usersec.h which is not present in new AFS versions 21808 [618b016dd17f] 21809 21810 * tgetpass.c: 21811 now deals with timeout <= 0 21812 [ba53a1257255] 21813 21814 * OPTIONS: 21815 updated 21816 [75093bd8fdca] 21817 21818 * configure.in: 21819 BSD/OS >= 2.0 now uses shlicc instead of just gcc 21820 [ff6dbf7825c2] 21821 21822 * sudo.c: 21823 fixed backwards compatibility with sudo 1.4 sudoers mode for root 21824 readable/writable filesystems 21825 [2694ed627221] 21826 21827 * Makefile.in: 21828 now gives INSTALL -c flag 21829 [63db055a2fd1] 21830 21831 * parse.yacc: 21832 slightly simpler initialization of no_passwd and runas_matches 21833 [463a1b5fa323] 21834 21835 * testsudoers.c: 21836 added -u username support 21837 [38b072fcd6b3] 21838 21839 * configure.in: 21840 improved --with-libraries support 21841 [047dbc5f0af2] 21842 218431996-07-07 Todd C. Miller <Todd.Miller@courtesan.com> 21844 21845 * configure.in: 21846 added --with-incpath, --with-libpath, --with-libraries 21847 [20f20d6c718c] 21848 21849 * parse.yacc: 21850 now initializes some fields that weren't getting set to -1 pretty 21851 gross -- need a rewrite. 21852 [021c160390c6] 21853 218541996-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 21855 21856 * alloca.c: 21857 removed emacs'isms 21858 [9d4ec2efe057] 21859 21860 * configure.in: 21861 no longer add -lPW to *_LIBS since we include alloca.c 21862 [a626d1bbea80] 21863 21864 * config.h.in: 21865 added HAVE_ALLOCA_H 21866 [15491e2a6cff] 21867 21868 * Makefile.in: 21869 added alloca.c 21870 [0400f25e1fe4] 21871 21872 * alloca.c: 21873 Initial revision 21874 [06d033aa4882] 21875 21876 * configure.in: 21877 ++version 21878 [f52c0fb98f90] 21879 218801996-06-25 Todd C. Miller <Todd.Miller@courtesan.com> 21881 21882 * sudo.c: 21883 now set uid to 1 instead of nobody for PERM_SUDOERS since nobody is 21884 not always set to a valid uid. 21885 [c2669f77704d] 21886 21887 * OPTIONS: 21888 fixed entry for SUDO_MODE 21889 [d7272f6035b8] 21890 21891 * sudo.c: 21892 Fixed NFS-mounted sudoers file under solaris both uid *and* gid were 21893 being set to -2. Now beat NFS to the punch and set uid to "nobody" 21894 ourselves, preserving group 0 to read sudoers. 21895 [b1fbc5dd1e34] 21896 21897 * parse.c: 21898 moved set_perms(PERM_ROOT) to be before yyparse() 21899 [7619d8080735] 21900 21901 * logging.c: 21902 fixed a typo 21903 [318acc48cde0] 21904 21905 * configure.in: 21906 no longer need AC_PROG_INSTALL 21907 [de01b1336dc8] 21908 21909 * Makefile.in: 21910 always use install-sh to avoid install(1)'s that use get{pw,gr}nam 21911 [ea2351986406] 21912 21913 * INSTALL: 21914 make clean -> make distclean 21915 [704a98e8ba10] 21916 219171996-06-20 Todd C. Miller <Todd.Miller@courtesan.com> 21918 21919 * parse.yacc: 21920 removed some unnecsary if's 21921 [f00db6508132] 21922 21923 * Makefile.in, version.h: 21924 ++version 21925 [bdb6740b24c8] 21926 21927 * parse.c, testsudoers.c: 21928 now includes netgroup.h 21929 [93f5a06352bc] 21930 21931 * interfaces.c: 21932 removed cats of ioctl to int since they didn't shut up -Wall 21933 [83e9f912cd7a] 21934 21935 * interfaces.c: 21936 explicately cast ioctl() to int since it it not always declared 21937 [2ff9294e469e] 21938 21939 * sudo.h: 21940 added declarations for yyparse() and yylex() 21941 [6071321ab771] 21942 21943 * parse.yacc: 21944 fixed an occurence of '==' -> '=' 21945 [2c46d2e11d57] 21946 21947 * config.h.in, configure.in: 21948 added check for netgroup.h 21949 [73403050f4e3] 21950 21951 * sudo.c: 21952 fixed 2 compiler warnings 21953 [680929b0bd97] 21954 21955 * sudo.c: 21956 SHELL_IF_NO_ARGS caused core dump since NewArg[cv] weren't being 21957 initialized 21958 [18707ecd07c2] 21959 219601996-06-19 Todd C. Miller <Todd.Miller@courtesan.com> 21961 21962 * sudo.pod: 21963 fixed a typo 21964 [e4b5c12aa130] 21965 219661996-06-17 Todd C. Miller <Todd.Miller@courtesan.com> 21967 21968 * parse.yacc: 21969 fixed a formatting thingie 21970 [c79327b6f19b] 21971 21972 * parse.c, parse.yacc: 21973 fixed -u support with multiple user lists on a line 21974 [e4d1066adca2] 21975 21976 * configure.in: 21977 unixware needs -lgen 21978 [b5bf9bca63cc] 21979 21980 * README: 21981 updated ftp location 21982 [b25a033f7921] 21983 21984 * sudoers.pod: 21985 add net_addr/netmask support 21986 [674e83516d1e] 21987 21988 * sample.sudoers: 21989 added net_addr/mask example 21990 [774878e89b28] 21991 21992 * parse.c, parse.lex: 21993 added support for net_addr/netmask 21994 [e33de27325d8] 21995 219961996-06-16 Todd C. Miller <Todd.Miller@courtesan.com> 21997 21998 * sudoers.pod: 21999 ^ -> ! 22000 [1a084950d6ef] 22001 220021996-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 22003 22004 * RUNSON: 22005 updated for 1.4.3 22006 [c82019025d09] 22007 22008 * CHANGES: 22009 udpated for 1.4.3 22010 [ceaa81adb8f0] 22011 22012 * BUGS, TODO, TROUBLESHOOTING: 22013 updated 22014 [ff94fae4b853] 22015 22016 * sample.sudoers: 22017 updated with examples of new stuff 22018 [99d0b4cb4c9c] 22019 22020 * INSTALL, README: 22021 ++version 22022 [b763b80fe836] 22023 22024 * sudoers.pod: 22025 updated wrt -u and NOPASSWD 22026 [0b5b722ea0f4] 22027 22028 * sudo.pod: 22029 updated wrt -u and CAVEATS 22030 [71d5d53b5d18] 22031 220321996-06-09 Todd C. Miller <Todd.Miller@courtesan.com> 22033 22034 * sudo.c: 22035 fixed usage() 22036 [114c7d09b550] 22037 22038 * parse.lex: 22039 now use :foo: character classes (makes no diff for generated lexer) 22040 [7b0aeb737a02] 22041 220421996-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 22043 22044 * check.c: 22045 fixed LONG_SKEY_PROMPT stuff 22046 [0efe78b4bdda] 22047 220481996-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 22049 22050 * visudo.c: 22051 fixed a comment 22052 [3d289017104b] 22053 22054 * lsearch.c: 22055 make more like NetBSD one -- now compiles w/o warnings 22056 [932206296a54] 22057 22058 * emul/search.h: 22059 fixed decls of lsearch() 22060 [c58cf4584c45] 22061 22062 * config.h.in, configure.in, getspwuid.c: 22063 added SPW_HPUX10 22064 [d74e5eaa5f17] 22065 22066 * check.c: 22067 hpux 10 uses bigcrypt() if C2 22068 [359eb63f4021] 22069 220701996-06-04 Todd C. Miller <Todd.Miller@courtesan.com> 22071 22072 * parse.c: 22073 now always uses fnmatch to match args 22074 [a9d91f35256a] 22075 22076 * tgetpass.c: 22077 back to using stdio instead of raw i/o since that caused some 22078 problems 22079 [e7ce2bc92974] 22080 220811996-05-29 Todd C. Miller <Todd.Miller@courtesan.com> 22082 22083 * sudo.c: 22084 now give usage warning if use -l,-v,-k with args 22085 [6b48180c4fea] 22086 220871996-05-28 Todd C. Miller <Todd.Miller@courtesan.com> 22088 22089 * sudo.c: 22090 NewArgc is now set to 1 for -l, -v, -k 22091 [7497cb1416a8] 22092 22093 * sudo.c: 22094 now sets sudoers to correct group if mode is 0400 22095 [484c43d99718] 22096 22097 * install-sh: 22098 updated to version used by inn and bind 22099 [28683ad8725a] 22100 22101 * configure.in: 22102 now uses -lgnumalloc if it exists 22103 [3651ca4415a2] 22104 22105 * Makefile.in: 22106 "make install" now sets uid/gid and mode on sudoers if it exists 22107 [1f5216191ae9] 22108 22109 * sudo.c: 22110 rmeoved debugging statements 22111 [aeda278e2c26] 22112 22113 * parse.yacc: 22114 added a missing free() 22115 [592c9482a159] 22116 22117 * sudo.c: 22118 now uses user_gid instead of getegid (which was wrong anyway) to set 22119 SUDO_GID Now sets command line args in SUDO_COMMAND envariabled 22120 (logging.c depends on args being in the environment) 22121 [9f5328a3b942] 22122 22123 * logging.c: 22124 now uses SUDO_COMMAND envariable to get command args rather than 22125 building it up again. 22126 [7f8edc5bccb7] 22127 22128 * parse.c: 22129 now uses user_gid 22130 [4b9303ae45fe] 22131 22132 * sudo.c: 22133 fixed off by one error in allocation NewArgv 22134 [921ea1a4e7c6] 22135 22136 * parse.c: 22137 in sudoers, 'command ""' now means command with no args 22138 [a5273648ace2] 22139 22140 * configure.in: 22141 added check for fnmatch(3) and fnmatch.h 22142 [258916a7866f] 22143 22144 * config.h.in: 22145 added HAVE_FNMATCH 22146 [b9860d361e93] 22147 22148 * Makefile.in: 22149 replaced wildcat.* with fnmatch.* 22150 [03ad9ee21a1c] 22151 22152 * testsudoers.c: 22153 now uses fnmatch() 22154 [5a7f7de987a9] 22155 221561996-05-27 Todd C. Miller <Todd.Miller@courtesan.com> 22157 22158 * parse.c: 22159 now uses fnmatch() instead of wildmat a trailing star (*) by itself 22160 now matches multiple args added support for wildcards in the 22161 pathname in sudoers 22162 [1f7fb950b868] 22163 221641996-05-25 Todd C. Miller <Todd.Miller@courtesan.com> 22165 22166 * fnmatch.c: 22167 now includes compat.h and config.h 22168 [090206b95cf8] 22169 22170 * config.h.in: 22171 added HAVE_FNMATCH_H 22172 [90eb42150173] 22173 22174 * configure.in: 22175 now checks for alloca() (if needed by bison or dce) and links with 22176 -lPW if it contains alloca() and libv and compiler do not. 22177 [cfa2b3cef49a] 22178 22179 * emul/fnmatch.h, fnmatch.3, fnmatch.c: 22180 Initial revision 22181 [20b1f762a32a] 22182 221831996-04-29 Todd C. Miller <Todd.Miller@courtesan.com> 22184 22185 * sudo.c: 22186 now fixes mode on sudoers if set to 0400 to aid in upgrade 22187 [d4bdfd521820] 22188 221891996-04-28 Todd C. Miller <Todd.Miller@courtesan.com> 22190 22191 * Makefile.in: 22192 fixed pod2man usage 22193 [5adf2ec77b27] 22194 22195 * Makefile.in, configure.in, version.h: 22196 ++version 22197 [b4029de876d0] 22198 22199 * testsudoers.c, visudo.c: 22200 runas_user is now initialized to "root" 22201 [8537d97bff39] 22202 22203 * sudo.h: 22204 removed PERM_FULL_ROOT 22205 [241f8bbf647f] 22206 22207 * sudo.c: 22208 runas_user defaults to "root" so no more need to PERM_RUNAS 22209 [fc0c0dfc72ba] 22210 22211 * parse.c: 22212 will now only running commands as root if there was no runas list 22213 (or if root is in the runas list) 22214 [40c587666c81] 22215 22216 * logging.c: 22217 now logs "USER=%s" 22218 [b733504c87fd] 22219 22220 * parse.yacc: 22221 runas_matches is now set to false if we get a negative match 22222 [5495b150b300] 22223 22224 * parse.lex: 22225 make #uid work + some minor cleanup 22226 [07851bbce03a] 22227 22228 * sample.sudoers: 22229 added support for NOPASSWD and "runas" from garp@opustel.com / 22230 [7a9c67b51fa5] 22231 22232 * visudo.c: 22233 added support for "runas" from garp@opustel.com replaced 22234 SUDOERS_OWNER with SUDOERS_UID, SUDOERS_GID added support for 22235 SUDOERS_MODE 22236 [e714209b9885] 22237 22238 * testsudoers.c: 22239 added support for "runas" from garp@opustel.com 22240 [b837f856da10] 22241 22242 * sudo.h: 22243 added support for NO_PASSWD and runas from garp@opustel.com replaced 22244 SUDOERS_OWNER with SUDOERS_UID and SUDOERS_GID and added support 22245 fro SUDOERS_MODE 22246 [cea6f26679b7] 22247 22248 * sudo.c: 22249 added support for NO_PASSWD and runas from garp@opustel.com replaced 22250 SUDOERS_OWNER with SUDOERS_UID and SUDOERS_GID and added support fro 22251 SUDOERS_MODE 22252 [61b5434237c5] 22253 22254 * parse.yacc: 22255 added support for NO_PASSWD and runas from garp@opustel.com 22256 [72ebd3056f22] 22257 22258 * parse.c, parse.lex: 22259 added support for NO_PASSWD and runas from garp@opustel.com 22260 [fef6dbdd114d] 22261 22262 * logging.c: 22263 added support for SUDOERS_WRONG_MODE and "runas" 22264 [e794efc2b443] 22265 22266 * configure.in: 22267 added --with-CC only link with -lshadow on linux (with shadow pw) if 22268 libc lacks getspnam() 22269 [3ecf4ae21002] 22270 22271 * OPTIONS, options.h: 22272 removed NO_PASSWD since it is not possible to do this in the sudoers 22273 file itself. Replaced SUDOERS_OWNER with SUDOERS_UID and 22274 SUDOERS_GID. Added SUDOERS_MODE. 22275 [2eaa4891ef48] 22276 22277 * Makefile.in: 22278 now uses SUDOERS_UID and SUDOERS_GID 22279 [8d615f0fdb2a] 22280 222811996-04-27 Todd C. Miller <Todd.Miller@courtesan.com> 22282 22283 * INSTALL: 22284 added --with-CC 22285 [a1b8286a81b8] 22286 222871996-04-06 Todd C. Miller <Todd.Miller@courtesan.com> 22288 22289 * parse.lex: 22290 added double quote support 22291 [a5e4fc7e3a2b] 22292 22293 * sudoers.pod: 22294 documented double quoting 22295 [c6ea47969a44] 22296 222971996-04-05 Todd C. Miller <Todd.Miller@courtesan.com> 22298 22299 * mkinstalldirs: 22300 Initial revision 22301 [dcb86d65ad8f] 22302 22303 * check.c: 22304 fixed some indentation 22305 [4d1c5ab8072b] 22306 22307 * Makefile.in: 22308 fixed a typo 22309 [0d27eebc7227] 22310 22311 * Makefile.in: 22312 added install-dirs . 22313 [f499b99b8be7] 22314 223151996-04-04 Todd C. Miller <Todd.Miller@courtesan.com> 22316 22317 * dce_pwent.c: 22318 new version from "Jeff A. Earickson" <jaearick@colby.edu> 22319 [422481be5fbd] 22320 223211996-04-03 Todd C. Miller <Todd.Miller@courtesan.com> 22322 22323 * configure.in: 22324 $CSOPS -> $with_csops (whoops, missed one) 22325 [b04c6948130e] 22326 22327 * BUGS: 22328 updated 22329 [c4d5713e227d] 22330 22331 * parse.lex: 22332 FQHOST now has same constraints as non-FQHOST 22333 [e1c3bf2381d1] 22334 22335 * INSTALL: 22336 added note about OS's w/ shadow passwords turned on by default 22337 [166257f43be4] 22338 223391996-04-02 Todd C. Miller <Todd.Miller@courtesan.com> 22340 22341 * configure.in: 22342 fixed a typo 22343 [e5c3e2e9a359] 22344 22345 * configure.in: 22346 added support for --without-THING sanitized shadow pw situtation by 22347 adding support for 22348 --without-C2 22349 [65dc6bf64cce] 22350 22351 * tgetpass.c: 22352 fixed a typo wrt placement of an end paren 22353 [a8780f818231] 22354 22355 * check.c: 22356 was closing an fd that may not have been opened 22357 [760271c7bdc9] 22358 223591996-03-22 Todd C. Miller <Todd.Miller@courtesan.com> 22360 22361 * OPTIONS, options.h, sudo.c: 22362 added NO_PASSWD 22363 [28ff1dc93d7a] 22364 223651996-03-20 Todd C. Miller <Todd.Miller@courtesan.com> 22366 22367 * configure.in: 22368 now always use shadow pw on some arches 22369 [069161ccffda] 22370 223711996-03-19 Todd C. Miller <Todd.Miller@courtesan.com> 22372 22373 * configure.in: 22374 added pyramid support 22375 [a0eb57a3a531] 22376 22377 * configure.in: 22378 no longer check for C2 if alternate passwd method is used no longer 22379 check for some libs twice 22380 [2d0c3c902b40] 22381 22382 * parse.yacc: 22383 moved fqdn stuff into parse.lex (FQHOST) 22384 [d9c9abd481d8] 22385 22386 * parse.lex: 22387 added FQHOST rules 22388 [4a1695acff6d] 22389 22390 * tgetpass.c: 22391 now define TCSASOFT in necesary 22392 [3fac2e21c9ab] 22393 22394 * tgetpass.c: 22395 now uses read/write instead of stdio string goop to avoid problems 22396 with select(2) 22397 [67fd174e518c] 22398 22399 * OPTIONS, find_path.c, options.h: 22400 -DNO_DOT_PATH -> -DIGNORE_DOT_PATH 22401 [d05ba5100d28] 22402 224031996-03-17 Todd C. Miller <Todd.Miller@courtesan.com> 22404 22405 * INSTALL: 22406 added note about no shadow auto-detect if using alternate auth 22407 schemes 22408 [b425592232a3] 22409 22410 * configure.in: 22411 don't check for C2 if AFS or DCE (unless they said --with-C2) 22412 [61342962171a] 22413 22414 * testsudoers.c: 22415 now groks shost 22416 [85dda17303f6] 22417 22418 * OPTIONS, find_path.c, options.h: 22419 added NO_DOT_PATH 22420 [c261ca1fb196] 22421 224221996-03-16 Todd C. Miller <Todd.Miller@courtesan.com> 22423 22424 * find_path.c: 22425 checkdot now works correctly 22426 [3bc4835bb3e9] 22427 224281996-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 22429 22430 * configure.in: 22431 can't have DCE and C2 passwords both... 22432 [fb9a8ab7ca66] 22433 224341996-03-11 Todd C. Miller <Todd.Miller@courtesan.com> 22435 22436 * parse.yacc, sudo.c, sudo.h, visudo.c: 22437 now uses shost even if not FQDN 22438 [87f7498b3a1f] 22439 22440 * configure.in: 22441 now looks for skey in /usr/lib and doesn't require libskey to be in 22442 /usr/local/lib just because skey.h is (for my netbsd box :-) 22443 [ceb1763e37d2] 22444 22445 * aclocal.m4, config.h.in, pathnames.h.in: 22446 _SUDO_PATH_ -> _CONFIG_PATH_ 22447 [84d97ad13d75] 22448 22449 * aclocal.m4, sudo.pod: 22450 /var/run/.odus -> /var/run/sudo 22451 [922da220b8f5] 22452 22453 * pathnames.h.in: 22454 now uses _SUDO_PATH_TIMEDIR 22455 [5ecab0155fdf] 22456 22457 * OPTIONS: 22458 udpated FQDN 22459 [361b6f7440c0] 22460 22461 * aclocal.m4, configure.in: 22462 added SUDO_TIMEDIR 22463 [368c95c8c950] 22464 22465 * config.h.in: 22466 added _SUDO_PATH_TIMEDIR 22467 [3879864d808c] 22468 22469 * sudo.pod: 22470 updated wrt /var/run/sudo 22471 [9e14f2a429d3] 22472 22473 * sudo.c, sudo.h: 22474 added support for shost if FQDN 22475 [51a3f51a09a1] 22476 22477 * parse.yacc, visudo.c: 22478 now uses shost if FQDN 22479 [d19da2e92b42] 22480 22481 * check.c: 22482 Now use skeylookup() instead off skeychallenge() 22483 [4c7438bb2ae0] 22484 224851996-02-28 Todd C. Miller <Todd.Miller@courtesan.com> 22486 22487 * logging.c: 22488 mail_argv should not contain ALERTMAIL as it includes "-t" 22489 [67ffaaa8f843] 22490 224911996-02-22 Todd C. Miller <Todd.Miller@courtesan.com> 22492 22493 * INSTALL, Makefile.in, README, configure.in, version.h: 22494 ++version 22495 [e08fd4a809fc] 22496 22497 * compat.h: 22498 added more _PASSWD_LEN stuff -- now uses PASS_MAX too 22499 [2f20c3153689] 22500 22501 * tgetpass.c: 22502 now includes limits.h moved _PASSWD_LEN -> compat.h 22503 [b1ca3cafdacc] 22504 225051996-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 22506 22507 * INSTALL, README: 22508 ++version 22509 [3eacf32803f5] 22510 22511 * Makefile.in: 22512 ++versoin 22513 [3b91c317630a] 22514 22515 * Makefile.in: 22516 fixed a typo 22517 [3661ac4a7803] 22518 22519 * configure.in: 22520 ++version 22521 [60e842973745] 22522 225231996-02-05 Todd C. Miller <Todd.Miller@courtesan.com> 22524 22525 * RUNSON: 22526 updated 22527 [def2c3c24195] 22528 22529 * CHANGES: 22530 done for 1.4.1 (I hope) 22531 [2ab543769a40] 22532 22533 * sudoers.pod: 22534 added info on wildcards 22535 [ce3bd41bc063] 22536 22537 * sample.sudoers: 22538 added wildcard example 22539 [762feb0577bd] 22540 22541 * Makefile.in: 22542 now uses *.pod to build *.man and *.cat & *.html 22543 [3ec14962028b] 22544 22545 * configure.in: 22546 addedSUDO_PROG_BSHELL !ll 22547 [3c80b320bf16] 22548 22549 * visudo.pod: 22550 fixed up some formatting 22551 [12166c434526] 22552 22553 * sudoers.pod: 22554 redid section describing sample sudoers stuff 22555 [b8065cceec71] 22556 22557 * sudo.pod: 22558 fixed some formatting 22559 [aa9a681add0f] 22560 22561 * getspwuid.c: 22562 now treats "" as bourne shell 22563 [30194a72ad56] 22564 22565 * Makefile.in: 22566 TESTOBJS nwo includes wildmat.o 22567 [86cc6500f84d] 22568 22569 * testsudoers.c: 22570 now works with NewArg[cv] 22571 [2f72674ce942] 22572 22573 * sudo.c: 22574 removed an XXX (fixed it in getspwuid.c) 22575 [e791ee0d1a68] 22576 22577 * aclocal.m4: 22578 added check for bourne shell 22579 [a2fd51676b8a] 22580 22581 * pathnames.h.in: 22582 added _PATH_BSHELL 22583 [e7c10011d47b] 22584 22585 * config.h.in: 22586 added _SUDO_PATH_BSHELL 22587 [6a1182898de9] 22588 225891996-02-04 Todd C. Miller <Todd.Miller@courtesan.com> 22590 22591 * visudo.c: 22592 unixware vi returns 256 instead of 0 22593 [234ffc7c6786] 22594 22595 * INSTALL: 22596 added Linux note 22597 [5f85efcd2b58] 22598 22599 * logging.c: 22600 fixed up some XXX's. file log format now looks a little more like 22601 real syslog(3) format. 22602 [6df55707bfc3] 22603 22604 * README, TROUBLESHOOTING: 22605 updated wrt lex/flex 22606 [eb787d69156b] 22607 22608 * Makefile.in: 22609 commented out rule to build lex.yy.c from parse.lex since we ship 22610 with a pre-flex'd parser 22611 [7507e2ce4a95] 22612 22613 * parse.c, parse.yacc, visudo.c: 22614 path_matches -> command_matches 22615 [0bd469424f86] 22616 22617 * logging.c: 22618 eliminated some strcat()'s 22619 [9878a79bc374] 22620 22621 * configure.in: 22622 no longer checks for lex/flex (now assumes flex) 22623 [a086ccc73798] 22624 22625 * configure.in: 22626 now checks for $kerb_dir_candidate/krb.h instead of just 22627 kerb_dir_candidate 22628 [9133bc3c5208] 22629 226301996-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 22631 22632 * parse.yacc: 22633 now use a 'hook' expression instead of an iffy one :-) 22634 [9560df01b8c0] 22635 226361996-02-02 Todd C. Miller <Todd.Miller@courtesan.com> 22637 22638 * visudo.c: 22639 now works with new sudo arg stuff 22640 [310a0d43ddad] 22641 22642 * parse.yacc: 22643 fixed dereferencing deadbeef 22644 [474ef8a8006b] 22645 22646 * sudo.c: 22647 changed an occurrence of Argv to NewArgv 22648 [205b012b7691] 22649 22650 * parse.lex: 22651 took out support for quoted commands since there is no need... 22652 [5c5036d353b1] 22653 22654 * parse.c: 22655 fixed a typo in a for() loop 22656 [7e8d5283c43b] 22657 22658 * logging.c: 22659 protected against dereferencing rogue pointers 22660 [56debd517717] 22661 22662 * sudo.c: 22663 now uses NewArgv amd NewArgc so cmnd_aegs is no longer needed this 22664 also allows us to eliminate some kludges in parse_args() and 22665 eliminate superfluous code. 22666 [5122f66ad150] 22667 22668 * logging.c: 22669 no longer uses cmnd_args, now uses NewArgv instead. 22670 [abddd23cf068] 22671 22672 * sudo.h: 22673 added struct sudo_command, NewArgc, and NewArgv removed cmnd_args 22674 (no longer used) 22675 [78410984fb05] 22676 22677 * Makefile.in: 22678 added wildmat.c to SRCS & SUDOBJS 22679 [3800efb41794] 22680 22681 * parse.yacc: 22682 COMMAND is now a struct containing the path and args 22683 [5c32822c5b94] 22684 22685 * parse.lex: 22686 replaced append() with fill_cmnd() and fill_args. command args from 22687 a sudoers entry are now stored in an arrary for easy matching. 22688 [a981d7f4eb0d] 22689 22690 * parse.c: 22691 command line args from sudoers file are now in an array like ones 22692 passed in from the command line 22693 [1d9e37e84519] 22694 226951996-02-01 Todd C. Miller <Todd.Miller@courtesan.com> 22696 22697 * parse.c: 22698 wildwat stuff now works 22699 [49d16488531f] 22700 227011996-01-29 Todd C. Miller <Todd.Miller@courtesan.com> 22702 22703 * version.h: 22704 ++version 22705 [53e55463ef89] 22706 22707 * Makefile.in: 22708 ++version added wildmat.* 22709 [0508297a4711] 22710 227111996-01-28 Todd C. Miller <Todd.Miller@courtesan.com> 22712 22713 * parse.lex: 22714 added support for quoted commands (w/ or w/o args) 22715 [b9a637155673] 22716 227171996-01-22 Todd C. Miller <Todd.Miller@courtesan.com> 22718 22719 * sudo.pod, visudo.pod: 22720 cleaned up formatting 22721 [4591d4195437] 22722 22723 * sudo.pod, visudo.pod: 22724 Initial revision 22725 [7564a8242750] 22726 227271996-01-21 Todd C. Miller <Todd.Miller@courtesan.com> 22728 22729 * sudoers.pod: 22730 looks reasonable, could be mroe readable 22731 [a5be2d19d9e0] 22732 22733 * sudoers.pod: 22734 Initial revision 22735 [957888be31a6] 22736 227371996-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 22738 22739 * RUNSON: 22740 updated 22741 [633743aa924b] 22742 22743 * OPTIONS: 22744 updated NO_ROOT_SUDO entry 22745 [f1c15b1dec9e] 22746 227471996-01-15 Todd C. Miller <Todd.Miller@courtesan.com> 22748 22749 * RUNSON: 22750 *** empty log message *** 22751 [5b63de579ff7] [SUDO_1_4_0] 22752 22753 * sudo.c: 22754 fixed SECURE_PATH 22755 [6002889f606d] 22756 22757 * RUNSON: 22758 udpa`ted for 1.4 22759 [6014a8592815] 22760 22761 * configure.in: 22762 AIX aixcrypt.exp now uses $(srcdir) 22763 [b0d57674fef4] 22764 22765 * TROUBLESHOOTING: 22766 added entry for anal ansi compilers 22767 [4193cec1c6b1] 22768 227691996-01-14 Todd C. Miller <Todd.Miller@courtesan.com> 22770 22771 * INSTALL: 22772 added info on libcrypt_i for SCO 22773 [575497d56698] 22774 22775 * TODO: 22776 *** empty log message *** 22777 [d0aaf67b9913] 22778 22779 * sample.sudoers: 22780 added comments 22781 [a7773f7eda8d] 22782 22783 * TODO: 22784 1.4 release 22785 [1dade29e9fd9] 22786 22787 * CHANGES: 22788 ++version 22789 [67241be40780] 22790 22791 * INSTALL, OPTIONS, README, config.h.in, configure.in: 22792 ++version 22793 [2e0a37897f68] 22794 22795 * BUGS: 22796 ++version and fixed ISC 22797 [78963f01a0e3] 22798 22799 * check.c, compat.h, dce_pwent.c, find_path.c, getspwuid.c, getwd.c, 22800 goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, 22801 insults.h, logging.c, options.h, pathnames.h.in, putenv.c, strdup.c, 22802 sudo.c, sudo.h, sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, 22803 visudo.c: 22804 ++version 22805 [b6227f29b3d9] 22806 22807 * interfaces.c: 22808 added STUB_LOAD_INTERFACES ++version 22809 [d8150a3fd577] 22810 22811 * Makefile.in, emul/utime.h, parse.c, parse.lex, parse.yacc, 22812 version.h: 22813 ++version 22814 [da9e90e69bdc] 22815 22816 * PORTING: 22817 added info about fd_set in tgetpass added info on interfaces.c 22818 [a39902febd17] 22819 228201996-01-11 Todd C. Miller <Todd.Miller@courtesan.com> 22821 22822 * dce_pwent.c: 22823 added sudo header 22824 [fc0f2c48682e] 22825 22826 * tgetpass.c: 22827 fixed a typo 22828 [43d40b72ee8f] 22829 22830 * Makefile.in: 22831 tgetpass.o is now only linked in with sudo (not visudo) 22832 [7407c5ff11f8] 22833 228341996-01-09 Todd C. Miller <Todd.Miller@courtesan.com> 22835 22836 * BUGS, INSTALL, Makefile.in, OPTIONS, README, config.h.in, 22837 configure.in: 22838 ++version 22839 [9b82ad805d6b] 22840 22841 * emul/utime.h: 22842 added copyright notice 22843 [4380f16cd075] 22844 22845 * check.c, compat.h, find_path.c, getspwuid.c, getwd.c, goodpath.c, 22846 ins_2001.h, ins_classic.h, ins_csops.h, ins_goons.h, insults.h, 22847 interfaces.c, logging.c, options.h, parse.c, parse.lex, parse.yacc, 22848 pathnames.h.in, putenv.c, strdup.c, sudo.c, sudo.h, sudo_setenv.c, 22849 testsudoers.c, tgetpass.c, utime.c, version.h, visudo.c: 22850 ++version 22851 [32717fdb5d05] 22852 22853 * tgetpass.c: 22854 minor cleanup and now includes sys/bsdtypes for svr4'ish boxen 22855 [326864428da2] 22856 22857 * configure.in: 22858 ISC now gets -lcrypt now check for sys/bsdtypes.h 22859 [e064799c054b] 22860 22861 * config.h.in: 22862 added check for sys/bsdtypes.h 22863 [9adb9533c363] 22864 228651996-01-07 Todd C. Miller <Todd.Miller@courtesan.com> 22866 22867 * parse.yacc: 22868 removed debugging stuff (setting freed ptr to NULL) 22869 [02fe8eec63a0] 22870 22871 * TROUBLESHOOTING: 22872 added 2 entries 22873 [02884e2733e2] 22874 22875 * Makefile.in: 22876 added FAQ 22877 [074d8dfcf28d] 22878 22879 * TROUBLESHOOTING: 22880 added section on syslog 22881 [e6bc02a22b86] 22882 22883 * configure.in: 22884 added AC_ISC_POSIX for better ISC support 22885 [8436b3e12af2] 22886 22887 * config.h.in: 22888 fixed typo 22889 [f1b3922babf4] 22890 22891 * config.h.in: 22892 added define for _POSIX_SOURCE 22893 [ded6d92b34f9] 22894 228951996-01-04 Todd C. Miller <Todd.Miller@courtesan.com> 22896 22897 * configure.in: 22898 fixed check for lsearch() 22899 [75baa5bc28a3] 22900 229011995-12-22 Todd C. Miller <Todd.Miller@courtesan.com> 22902 22903 * interfaces.c: 22904 fixed for AIX now deal if num_interfaces == 0 (should not happen) 22905 [ae450e859227] 22906 229071995-12-20 Todd C. Miller <Todd.Miller@courtesan.com> 22908 22909 * configure.in: 22910 now only define HAVE_LSEARCH if there is a corresponding search.h 22911 [8ce645c5d17f] 22912 22913 * interfaces.c: 22914 works on ISC again 22915 [ccac920d424c] 22916 229171995-12-18 Todd C. Miller <Todd.Miller@courtesan.com> 22918 22919 * configure.in: 22920 now define HAVE_LSEARCH if we find lsearch() in libcompat 22921 [7343e4313a87] 22922 22923 * lsearch.c: 22924 char * -> const char * 22925 [1c0b11c2300a] 22926 22927 * configure.in: 22928 now looks in -lcompat for lsearch() 22929 [a1cc1d6fcd09] 22930 22931 * Makefile.in: 22932 remove sudo.core visudo.core for clan target 22933 [b523456a85df] 22934 22935 * aclocal.m4: 22936 added UID_MAX support in check for MAX_UID_T_LEN 22937 [7ab262b1173f] 22938 22939 * Makefile.in: 22940 fixed another occurence of sudo_getpwuid.* 22941 [fb5809c07da2] 22942 22943 * Makefile.in, getspwuid.c: 22944 sudo_getpwuid.c -> getspwuid.c 22945 [875f2ef808b4] 22946 22947 * configure.in: 22948 moved the "echo" 22949 [ad7b8f966076] 22950 22951 * BUGS, CHANGES, INSTALL, Makefile.in, OPTIONS, README, check.c, 22952 compat.h, config.h.in, configure.in, find_path.c, getspwuid.c, 22953 getwd.c, goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, 22954 ins_goons.h, insults.h, interfaces.c, logging.c, options.h, parse.c, 22955 parse.lex, parse.yacc, pathnames.h.in, putenv.c, strdup.c, sudo.c, 22956 sudo.h, sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, 22957 version.h, visudo.c: 22958 ++version 22959 [ee57c6410ffa] 22960 22961 * testsudoers.c: 22962 added group support 22963 [54d8097df8bd] 22964 22965 * sample.sudoers: 22966 added group entry 22967 [50994d31fd49] 22968 22969 * sudoers.man: 22970 documented group support 22971 [0a16707f8fed] 22972 22973 * parse.c, parse.lex, parse.yacc, visudo.c: 22974 added group support 22975 [427218c879c8] 22976 229771995-12-15 Todd C. Miller <Todd.Miller@courtesan.com> 22978 22979 * check.c: 22980 tkfile was too short and overflowed the kerberos realm 22981 [53823a1ff5af] 22982 229831995-12-11 Todd C. Miller <Todd.Miller@courtesan.com> 22984 22985 * sudo.c: 22986 now copy command args directly from Argv 22987 [77408278b6fd] 22988 22989 * sudo.c: 22990 replaced code to copy cmnd_args so that is does not use realloc 22991 since most realloc()'s really stink 22992 [b29a0ff73fb6] 22993 229941995-12-08 Todd C. Miller <Todd.Miller@courtesan.com> 22995 22996 * configure.in: 22997 syslog() fixed in hpux 10.01 22998 [2648e6f0cdb0] 22999 230001995-12-06 Todd C. Miller <Todd.Miller@courtesan.com> 23001 23002 * configure.in: 23003 AC_CHECK_LIB() now sets SUDO_LIBS (and VISUDO_LIBS if appropriate) 23004 [8f108b8d8711] 23005 23006 * configure.in: 23007 better error if cannot find skey incs or libs 23008 [5887662ee9d3] 23009 23010 * aclocal.m4: 23011 now use a temp file for determining max len of uid_t in string form. 23012 the old hacky way broke on netbsd 23013 [b68f470fa9f8] 23014 23015 * sudo.c: 23016 added set of parens and a space 23017 [8a3d4826d022] 23018 230191995-12-05 Todd C. Miller <Todd.Miller@courtesan.com> 23020 23021 * dce_pwent.c: 23022 fixes from Jeff Earickson <jaearick@colby.edu> , 23023 [bde0f0b756ec] 23024 23025 * check.c: 23026 modified a comment 23027 [e2a97f1afbbe] 23028 23029 * Makefile.in: 23030 fixed up testsudoers target 23031 [d39c4e7bb609] 23032 23033 * configure.in: 23034 DCE changes from Jeff Earickson <jaearick@colby.edu> LIBS -> 23035 SUDO_LIBS and VISUDO_LIBS LDFLAGS -> SUDO_FDFLAGS and VISUDO_LDFLAGS 23036 [da7a1c433828] 23037 23038 * Makefile.in: 23039 LIBS -> SUDO_LIBS , VISUDO_LIBS LDFLAGS -> SUDO_LDFLAGS, 23040 VISUDO_LDFLAGS 23041 [4b69503e8487] 23042 230431995-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 23044 23045 * configure.in: 23046 fix for C2 on hpux 10 now uses -linet if it exists 23047 [8d300112263d] 23048 23049 * check.c: 23050 LONG_SKEY_PROMPT is less of a klusge / 23051 [dcc144abaac3] 23052 23053 * configure.in: 23054 fixed typos w/ dce stuff 23055 [f7dfd6d4e149] 23056 23057 * Makefile.in: 23058 added dce_pwent.c 23059 [79047acdc516] 23060 230611995-11-26 Todd C. Miller <Todd.Miller@courtesan.com> 23062 23063 * INSTALL: 23064 amended section on combining authentication mechanisms 23065 [dc5138c7c716] 23066 23067 * PORTING: 23068 minor updates for 1.3.6 23069 [fe80c13bd994] 23070 23071 * TROUBLESHOOTING: 23072 added 2 more entries 23073 [c7201439a0f5] 23074 23075 * BUGS: 23076 updated for 1.3.6 23077 [979b414d2a2d] 23078 23079 * README: 23080 overhauled 23081 [3af8b60eb594] 23082 23083 * INSTALL: 23084 rewrote for sudo 1.3.6 23085 [b16027b9c726] 23086 23087 * TROUBLESHOOTING: 23088 added 3 entries 23089 [934c9ee3f153] 23090 230911995-11-25 Todd C. Miller <Todd.Miller@courtesan.com> 23092 23093 * find_path.c, getspwuid.c, sudo.c: 23094 added explict casts for strdup since many includes don't prototype 23095 it. gag me. 23096 [3e19a11f2fcc] 23097 23098 * sudo.h: 23099 removed prototype for sudo_getpwuid() since convex C compiler choked 23100 on it. 23101 [c3ea74ca67b0] 23102 23103 * sudo.c: 23104 added prototype for sudo_getpwuid() 23105 [4a8e3cdc2b98] 23106 23107 * lsearch.c: 23108 now compiles on strict ANSI compilers 23109 [3ce5d72d0b08] 23110 23111 * check.c: 23112 added LONG_SKEY_PROMPT support 23113 [48a18b8a2332] 23114 23115 * Makefile.in: 23116 added extra $'s for make to eat up, yum. 23117 [2995b214e12b] 23118 23119 * OPTIONS, options.h: 23120 added LONG_SKEY_PROMPT 23121 [f23ae799b5a4] 23122 231231995-11-24 Todd C. Miller <Todd.Miller@courtesan.com> 23124 23125 * check.c: 23126 s/key support now works with normal s/key as well as logdaemon 23127 [d67573f523bf] 23128 23129 * OPTIONS, options.h: 23130 added SKEY_ONLY 23131 [bbf07654e0de] 23132 23133 * compat.h: 23134 set _PASSWD_LEN to 256 for any of KERB4, DCE, SKEY 23135 [205895b96a36] 23136 23137 * INSTALL: 23138 added DCE note added more AIX notes 23139 [6345403b3522] 23140 23141 * sudo.c: 23142 now include pthread.h for DCE support 23143 [6fe02865f679] 23144 23145 * check.c: 23146 dce_pwent() is ok after all ., 23147 [d26a8746a55d] 23148 23149 * logging.c: 23150 now uses SYSLOG() macro that equates to either syslog() or 23151 syslog_wrapper 23152 [42ac4cff8045] 23153 23154 * dce_pwent.c: 23155 minor formatting changes. renamed check() to somthing less generic 23156 [71859f217be1] 23157 23158 * check.c, logging.c, parse.yacc, sudo.c, sudo.h, testsudoers.c, 23159 visudo.c: 23160 now uses user_pw_ent and simple macros to get at the contents 23161 [f4cbf3e7145a] 23162 231631995-11-23 Todd C. Miller <Todd.Miller@courtesan.com> 23164 23165 * check.c: 23166 simpler dec unix C2 support 23167 [86bc8f75250e] 23168 23169 * getspwuid.c: 23170 now sets crypt_type for DEC unix C2 23171 [99aeadd18266] 23172 231731995-11-21 Todd C. Miller <Todd.Miller@courtesan.com> 23174 23175 * configure.in: 23176 added csops paths for skey 23177 [b8ca672e2117] 23178 23179 * getspwuid.c: 23180 now includes string.h for strdup() prototype 23181 [3605259c3620] 23182 23183 * getspwuid.c: 23184 fixed a few typos 23185 [46c97e4ea417] 23186 23187 * check.c: 23188 now includes skey.h 23189 [11e611ce1b61] 23190 23191 * getspwuid.c: 23192 fixed up comments 23193 [223dac56f0c8] 23194 23195 * check.c: 23196 moved a lot of the shadow passwd crap to sudo_getpwuid() 23197 [97d8887fb7d3] 23198 23199 * sudo.c: 23200 now uses sudo_pw_ent 23201 [d014dadbef48] 23202 23203 * testsudoers.c: 23204 now uses sudo_pw_ent 23205 [d92936ed7e34] 23206 23207 * visudo.c: 23208 now sets sudo_pw_ent 23209 [ff75cdfcf8b3] 23210 23211 * getspwuid.c: 23212 Initial revision 23213 [6deb6df9d7bc] 23214 23215 * tgetpass.c: 23216 moved dce stuff into compat.h 23217 [1124284396e7] 23218 23219 * logging.c, sudo.h: 23220 now uses sudo_pw_ent 23221 [404ff20a5067] 23222 23223 * Makefile.in: 23224 added sudo_getpwuid.c 23225 [6666d0644512] 23226 23227 * compat.h: 23228 added dce support 23229 [3c3b36a7ce0e] 23230 23231 * parse.yacc: 23232 now uses sudo_pw_ent 23233 [9f5e8d11bd68] 23234 232351995-11-20 Todd C. Miller <Todd.Miller@courtesan.com> 23236 23237 * check.c: 23238 fixed exempt_group stuff for OS's that don't put base gid in group 23239 vector 23240 [003f153bd396] 23241 23242 * check.c: 23243 S/Key support now works with sunos4 shadow passwords 23244 [1eb64a5efff1] 23245 23246 * Makefile.in: 23247 fixed clean rule 23248 [5695a2c62816] 23249 23250 * config.h.in, configure.in: 23251 added DCE support 23252 [f53c766c1947] 23253 23254 * tgetpass.c: 23255 DCE & KERB support 23256 [904cf436506a] 23257 23258 * check.c: 23259 first stab at dce support 23260 [aea5ca07b1e3] 23261 23262 * dce_pwent.c: 23263 now smells like sudo 23264 [8b3d609b49cd] 23265 23266 * dce_pwent.c: 23267 Initial revision 23268 [b573555f2399] 23269 23270 * check.c: 23271 skey'd sudo now works w/ normal password as well 23272 [8d038f9f6e94] 23273 232741995-11-19 Todd C. Miller <Todd.Miller@courtesan.com> 23275 23276 * Makefile.in, OPTIONS, check.c, compat.h, config.h.in, find_path.c, 23277 getwd.c, goodpath.c, ins_2001.h, ins_classic.h, ins_csops.h, 23278 ins_goons.h, insults.h, interfaces.c, logging.c, options.h, parse.c, 23279 parse.lex, parse.yacc, pathnames.h.in, putenv.c, strdup.c, sudo.c, 23280 sudo.h, sudo_setenv.c, testsudoers.c, tgetpass.c, utime.c, 23281 version.h, visudo.c: 23282 updated version number 23283 [ba7e346d7904] 23284 23285 * README: 23286 updated to reflect version change 23287 [1d15cf1d8cc8] 23288 23289 * configure.in: 23290 --with options now line up ++version 23291 [08ebf625fbca] 23292 23293 * sudo.h: 23294 removed unecesary S/Key stuff 23295 [68188cba90af] 23296 23297 * configure.in: 23298 fixed S/Key support 23299 [f6d9cbc36618] 23300 23301 * Makefile.in: 23302 -I stuff now goes in CPPFLAGS 23303 [7b8e53c5b046] 23304 23305 * check.c: 23306 fixed SKey support 23307 [52c1a5cf4435] 23308 23309 * README: 23310 updated version 23311 [bed6498a10bb] 23312 23313 * OPTIONS: 23314 fixed description of EXEMPTGROUP 23315 [cfeead55edc2] 23316 23317 * sudo.c: 23318 more people use _RLD_ than just alphas... 23319 [6a3c7090a6f6] 23320 23321 * Makefile.in: 23322 replaced $man_prefix with $mandir 23323 [dc4b36a550e2] 23324 23325 * configure.in: 23326 fixed a typo 23327 [a38a4acddcaf] 23328 23329 * Makefile.in: 23330 now use more GNU'ish dir names 23331 [c5498391a520] 23332 23333 * configure.in: 23334 now set *dir correctly (can override from command line) 23335 [523ff98fd438] 23336 23337 * sudo.c: 23338 now deal with situations where we getwd() fails 23339 [88a9e61dccbb] 23340 233411995-11-17 Todd C. Miller <Todd.Miller@courtesan.com> 23342 23343 * Makefile.in: 23344 added etc_dir, bin_dir, sbin_dir 23345 [75fd08d92842] 23346 23347 * configure.in: 23348 added sbin_dir 23349 [3cb318c0d8d1] 23350 23351 * Makefile.in: 23352 now ship a flex-generated lex.yy.c 23353 [4d083ed70dce] 23354 23355 * Makefile.in: 23356 now sets _PATH_SUDO_SUDOERS, _PATH_SUDO_STMP, SUDOERS_OWNER 23357 [4d51dc9c3780] 23358 23359 * pathnames.h.in: 23360 _PATH_SUDO_SUDOERS & _PATH_SUDO_STMP are now overridden via Makefile 23361 [773fd163d52f] 23362 23363 * options.h: 23364 no more error for redefining SUDOERS_OWNER 23365 [4ba336644c6a] 23366 23367 * OPTIONS: 23368 expanded SUDOERS_OWNER section 23369 [12fae405759e] 23370 233711995-11-16 Todd C. Miller <Todd.Miller@courtesan.com> 23372 23373 * visudo.c: 23374 now warn if chown(2) failed 23375 [d0d1db6e3a1f] 23376 23377 * logging.c: 23378 better default warning for NO_SUDOERS_FILE 23379 [5260b458ac64] 23380 23381 * sudo.c: 23382 added missing set_perms() no more cryptic message if the sudoers 23383 file is zero length, now just give a parse error 23384 [b81ea724838a] 23385 23386 * logging.c: 23387 better diagnostics if NO_SUDOERS_FILE 23388 [877e878663c5] 23389 23390 * sudo.c: 23391 check_sudoers() now catches sudoers files that are not readable (but 23392 are stat'able). 23393 [fea05663b3de] 23394 233951995-11-13 Todd C. Miller <Todd.Miller@courtesan.com> 23396 23397 * configure.in: 23398 now add -D__STDC__ for convex cc (not gcc) 23399 [c80fc53ff51b] 23400 23401 * configure.in: 23402 MAN_PREFIX -> man_prefix now sets prefix and exec_prefix 23403 [fe238226a057] 23404 23405 * Makefile.in: 23406 now uses exec_prefix & prefix from configure 23407 [f62fca5f56bd] 23408 23409 * find_path.c, getwd.c, goodpath.c, interfaces.c, logging.c, parse.c, 23410 parse.lex, parse.yacc, sudo.c, sudo.h, sudo_setenv.c, tgetpass.c, 23411 utime.c, visudo.c: 23412 options.h is now <> instead of "" so shadow build trees can have a 23413 custom copy of options.h 23414 [e6782676099c] 23415 23416 * check.c: 23417 user_is_exempt() is no longer a hack, it now uses getgrnam() 23418 [287f8d5356f7] 23419 23420 * options.h: 23421 EXEMPTGROUP is now "sudo" 23422 [61487304dbe1] 23423 23424 * configure.in: 23425 MAN_POSTINSTALL now contains a leading space 23426 [eaad4ac34012] 23427 23428 * Makefile.in: 23429 removed leading tab if @MAN_POSTINSTALL@ not defined now removes 23430 testsudoers in clean: 23431 [e01711baceb8] 23432 23433 * tgetpass.c: 23434 includes pwd.h to get _PASSWD_LEN definition 23435 [8ec174f263f1] 23436 234371995-10-30 Todd C. Miller <Todd.Miller@courtesan.com> 23438 23439 * sudo.c: 23440 unset the KRB_CONF envariable if using kerberos so we don't get 23441 spoofed into using a bogus server 23442 [2561a0274fca] 23443 234441995-09-29 Todd C. Miller <Todd.Miller@courtesan.com> 23445 23446 * parse.yacc: 23447 now explicately initialize match[] tp be FALSE 23448 [0e45e5c47766] 23449 234501995-09-23 Todd C. Miller <Todd.Miller@courtesan.com> 23451 23452 * sudo.c: 23453 removed unused variable now passes -Wall 23454 [3452508bc16d] 23455 23456 * parse.yacc: 23457 yyerror and dumpaliases are now void's now passes -Wall 23458 [2769dfb51993] 23459 23460 * parse.lex: 23461 added prototype for yyerror 23462 [1f3f0c1b4ab4] 23463 23464 * check.c, logging.c, parse.c: 23465 now passes -Wall 23466 [eab57e5e81d2] 23467 23468 * interfaces.c: 23469 rmeoved unused cruft now passes -Wall 23470 [7a47e1866f4b] 23471 23472 * Makefile.in: 23473 fixed headers that moved to emul dir 23474 [e680c1e5049b] 23475 23476 * logging.c: 23477 fixed deref of nil pointer if no args 23478 [973b9bea432f] 23479 234801995-09-15 Todd C. Miller <Todd.Miller@courtesan.com> 23481 23482 * OPTIONS: 23483 added a caveat to FQDN section 23484 [dcf6e2a5fff4] 23485 234861995-09-13 Todd C. Miller <Todd.Miller@courtesan.com> 23487 23488 * Makefile.in: 23489 more $srcdir support for install targets 23490 [f6eac78436dd] 23491 23492 * find_path.c, interfaces.c, parse.c, parse.lex, parse.yacc, putenv.c, 23493 strdup.c, sudo.c, sudo_setenv.c, testsudoers.c, visudo.c: 23494 don't include malloc.h if we include stdlib.h 23495 [fca2ff307cd8] 23496 23497 * parse.yacc: 23498 local search.h now lives in emul 23499 [51c458904424] 23500 23501 * check.c, utime.c: 23502 local utime.h now lives in emul dir 23503 [f92fc9e8c8de] 23504 23505 * lsearch.c: 23506 local search.h now lives in emul 23507 [579efc407439] 23508 23509 * Makefile.in: 23510 added support for building in other than the sourcedir 23511 [2ab53a43f7d4] 23512 235131995-09-10 Todd C. Miller <Todd.Miller@courtesan.com> 23514 23515 * OPTIONS: 23516 annotated CSOPS_INSULTS option 23517 [9e57d45a0afa] 23518 23519 * TROUBLESHOOTING: 23520 updated shadow passwords blurb 23521 [39b785bc7253] 23522 23523 * sudo.c: 23524 if SHELL_IF_NO_ARGS is set, "sudo -- foo" now runs a shell and 23525 passes along foo as the arguments 23526 [a91077aa8fc5] 23527 235281995-09-09 Todd C. Miller <Todd.Miller@courtesan.com> 23529 23530 * parse.lex: 23531 collapsed pathname and dir sections into one -- its now less 23532 expensive 23533 [89caa03bec25] 23534 23535 * parse.lex: 23536 fixed spacing quoting [,:\\=] now works correctly append() and 23537 fill() now take args to make the above work 23538 [09d023d9ef3a] 23539 23540 * sudo.c: 23541 fixed a typo that caused commands with no tty on fd 0 but a tty on 23542 fd 1 to erroneously have "none" as their tty 23543 [07d2c0e7977c] 23544 235451995-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 23546 23547 * check.c: 23548 timestampfile is now a global static removed decl of timestampfile 23549 in remove_timestamp since we can just use the global one 23550 [f0cbdc6aab1c] 23551 23552 * check.c: 23553 created touch() to update timestamps added USE_TTY_TICKETS support 23554 (bit of a kludge) 23555 [cee1dd0318f8] 23556 23557 * compat.h: 23558 added _S_IFDIR and S_ISDIR 23559 [b4a51cc9628e] 23560 23561 * OPTIONS, options.h: 23562 added USE_TTY_TICKETS 23563 [b4e22f81f25e] 23564 23565 * parse.yacc: 23566 removed const from casts for lsearch() & lfind() to placate irix 4.x 23567 C compiler 23568 [5003081f76ea] 23569 235701995-09-03 Todd C. Miller <Todd.Miller@courtesan.com> 23571 23572 * sudo.c: 23573 now only strip '/dev/' off of a tty if it starts with '/dev/' 23574 [7f62bcd24039] 23575 23576 * pathnames.h.in: 23577 added _PATH_DEV 23578 [6375f44d1910] 23579 23580 * configure.in: 23581 AC_HAVE_HEADERS -> AC_CHECK_HEADERS now check for tcgetattr only if 23582 have termios.h 23583 [9c60391235fd] 23584 23585 * tgetpass.c: 23586 fixed incorrect #ifdef termio uses "unsigned short" not int for 23587 c_?flag 23588 [d032e6a29845] 23589 23590 * parse.lex, parse.yacc: 23591 fixed a spelling error 23592 [cad6a944c7b1] 23593 23594 * Makefile.in: 23595 fixed typo 23596 [204a65403e7c] 23597 235981995-09-02 Todd C. Miller <Todd.Miller@courtesan.com> 23599 23600 * Makefile.in: 23601 fixed a comment 23602 [268f760e57ad] 23603 23604 * parse.yacc: 23605 added dotcat() to cat 2 strings w/ a dot effeciently now that we 23606 dynamically allocate strings they need to be free()'d 23607 [ec2e2152f415] 23608 23609 * parse.lex: 23610 dynamically allocates space for strings 23611 [d10ac3533d66] 23612 23613 * sudo.h: 23614 no more MAXCOMMANDLENGTH 23615 [e2e1219bff8a] 23616 23617 * sudo.h: 23618 added decl of tty 23619 [c8ae81303ee5] 23620 23621 * logging.c, sudo.c: 23622 moved tty stuff into sudo.c 23623 [e028abefeb07] 23624 236251995-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 23626 23627 * parse.c: 23628 fixed a logic bug. Was denying a command if user gave command line 23629 args but there were none in the sudoers file which is wrong. 23630 [7489a99b8e8a] 23631 23632 * sudo.h: 23633 MAXCOMMMANDLEN dropped down to 1K 23634 [38ef54ba290b] 23635 23636 * parse.lex: 23637 return foo; -> return(foo); 23638 [0e8be1b57001] 23639 23640 * parse.yacc: 23641 fixed netgr_matches() prototype 23642 [e69f15910464] 23643 23644 * parse.lex: 23645 added support for escaping "termination" characters 23646 [8bd4ef50f35c] 23647 23648 * parse.c: 23649 buf is now of size MAXPATHLEN+1 since it never holds command args 23650 [2ce4b763058c] 23651 23652 * sudo.c: 23653 fixed comments 23654 [0c74a3d2ebb0] 23655 23656 * goodpath.c: 23657 fixed negation problem (doh!) 23658 [782814e3a2d1] 23659 23660 * parse.yacc: 23661 fixed 2nd parameter to lfind() 23662 [63d7b1623c08] 23663 23664 * parse.lex: 23665 now do bounds checking in fill() and append() 23666 [54381b563251] 23667 23668 * sudo.c: 23669 include netdb.h as we should added a missing void cast added 23670 SHELL_IF_NO_ARGS support now use realloc() properly. would fail if 23671 realloc actually moved the string instead of shrinking it 23672 [897ccdec9c06] 23673 23674 * sample.sudoers: 23675 updated with examples of new features 23676 [9b3ed00e8aa6] 23677 23678 * goodpath.c: 23679 now set errno to EACCES if not a regular file or not executable 23680 [2d069548a5ea] 23681 23682 * find_path.c: 23683 if given a fully-qualified or relative path we now check it with 23684 sudo_goodpath() and error out with the appropriate error message if 23685 the file does not exist or is not executable 23686 [590f89dd8dec] 23687 23688 * emul/search.h, lsearch.c: 23689 now use correct args for lfind 23690 [fccdcdbf020e] 23691 23692 * logging.c: 23693 added a comment 23694 [fab9f49708ea] 23695 23696 * insults.h: 23697 added in CSOps insults 23698 [ad8eb1862adc] 23699 23700 * ins_csops.h: 23701 Initial revision 23702 [de5a475ec018] 23703 23704 * tgetpass.c: 23705 added RCS id 23706 [c3ffd550a482] 23707 23708 * sudo.h: 23709 increased MAXCOMMANDLENGTH to 8k HAVE_GETCWD -> HAVE_GETWD 23710 [aba25c90d08a] 23711 23712 * OPTIONS: 23713 added CLASSIC_INSULTS, CSOPS_INSULTS, SHELL_IF_NO_ARGS 23714 [e27bd62e9ccf] 23715 23716 * sudo.c: 23717 fixed -k load_interfaces() now gets called if FQDN is set 23718 -p now works with -s 23719 [07ca2a34bae8] 23720 23721 * parse.c: 23722 don't try to stat() "pseudo commands" like "validate" 23723 [75527045984b] 23724 23725 * options.h: 23726 added CLASSIC_INSULTS added CSOPS_INSULTS added SHELL_IF_NO_ARGS 23727 [07b157a0eafd] 23728 23729 * configure.in: 23730 added SecurID support added other insults to --with-csops 23731 [6c992ceb244c] 23732 23733 * config.h.in: 23734 added HAVE_SECURID 23735 [e734ff617fe8] 23736 23737 * Makefile.in: 23738 added clobber target added ins_csops.h now gets CFLAGS from 23739 configure 23740 [d1e29c7cec25] 23741 23742 * aclocal.m4: 23743 relaxed SUDO_FULL_VOID 23744 [fb4084f27406] 23745 23746 * visudo.c: 23747 function comment blocks are now in same style as rest of code 23748 [04a2931354c5] 23749 23750 * testsudoers.c: 23751 added support for command line args in /etc/sudoers 23752 [bfe4e1bcc655] 23753 23754 * sudoers.man: 23755 updated to have command args in the sudoers file 23756 [1cd34355e9ea] 23757 23758 * sudo.man: 23759 added -s and -- flags added SHELL to ENVIRONMENT VARIABLES section 23760 [930b48023b68] 23761 237621995-08-19 Todd C. Miller <Todd.Miller@courtesan.com> 23763 23764 * parse.yacc: 23765 PATH renamed to COMMAND 23766 [4e109a6de3cd] 23767 23768 * parse.lex: 23769 it is now a parse error for directories to have args attached to 23770 them 23771 [2ab10a146b54] 23772 23773 * logging.c: 23774 now say command args if telling user to buzz off 23775 [933de26ded8b] 23776 23777 * sudo.c: 23778 -s no longer indicates end of args sped up loading on cmnd_args in 23779 load_cmnd() 23780 [eac99a4da862] 23781 23782 * parse.c: 23783 removed an unreachable statement 23784 [634302623c49] 23785 23786 * parse.lex: 23787 made more efficient by pulling out the terminators when in GOTCMND 23788 state and making them their own rule 23789 [80798f1e1166] 23790 237911995-08-14 Todd C. Miller <Todd.Miller@courtesan.com> 23792 23793 * sudo.h: 23794 removed MAXLOGLEN since it is no longer used 23795 [102824196b71] 23796 23797 * parse.lex: 23798 now allows command args 23799 [d29dfa1e5254] 23800 23801 * parse.c: 23802 now groks command arguments 23803 [6c414cb7f105] 23804 23805 * logging.c: 23806 now sets tty correctly when piped input 23807 [de46a30c0406] 23808 23809 * sudo.c: 23810 fixed loading of cmnd_args (was including command name too) 23811 [15319a425ea6] 23812 23813 * logging.c: 23814 fixed a core dump due to incorrect if construct 23815 [582363c7d7fa] 23816 238171995-08-13 Todd C. Miller <Todd.Miller@courtesan.com> 23818 23819 * configure.in: 23820 only add -lsun is irix < 5 don't look for -lnsl or -lsocket if irix 23821 [da591fe9b931] 23822 23823 * aclocal.m4: 23824 fixed check for ISC 23825 [52e59f2082a7] 23826 23827 * sudo.c: 23828 now sets cmnd_args used by log_error() and that will be used by the 23829 parse to check against command args 23830 [c6804389723b] 23831 23832 * sudo.h: 23833 added cmnd_args 23834 [4d00446b4a8d] 23835 23836 * logging.c: 23837 now dynamically allocate logline since we can guess at its size 23838 [4bed8c8446aa] 23839 238401995-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 23841 23842 * logging.c: 23843 cleaned up a bunch of unnecesary #ifdef's eliminated a buffer remove 23844 "register" since the compiler knows more than I do now do a 23845 "basename" of the tty 23846 [3b1bbf0b3da1] 23847 238481995-07-31 Todd C. Miller <Todd.Miller@courtesan.com> 23849 23850 * configure.in: 23851 ++version 23852 [5ce552f9a5f1] 23853 23854 * sudo.h: 23855 added shell extern changed MODE_* to be bit masks to allow for 23856 several options together 23857 [06f9dc4f400c] 23858 23859 * sudo.c: 23860 added -s (shell) option made MODE_* masks so we can do bitwise & and 23861 | to see if multiple flags are set. 23862 [01f8143010ad] 23863 23864 * check.c: 23865 added securid support 23866 [909e078005fe] 23867 238681995-07-30 Todd C. Miller <Todd.Miller@courtesan.com> 23869 23870 * logging.c: 23871 removed a bunch of unnecesary strncpy()'s and replaced with strcat() 23872 [644506b57d61] 23873 238741995-07-29 Todd C. Miller <Todd.Miller@courtesan.com> 23875 23876 * Makefile.in, version.h: 23877 ++version 23878 [3cd6f1fbc3d9] 23879 238801995-07-27 Todd C. Miller <Todd.Miller@courtesan.com> 23881 23882 * parse.yacc: 23883 fixed free() of an uninitialized pointer (yuck) 23884 [8c404ee502ee] 23885 23886 * testsudoers.c: 23887 added netgr_matches 23888 [e7c9fa2f774c] 23889 23890 * parse.c: 23891 cleaned up netgr_matches 23892 [8108f00b810e] 23893 238941995-07-26 Todd C. Miller <Todd.Miller@courtesan.com> 23895 23896 * RUNSON: 23897 updated for 1.3.4 23898 [4741704310a1] 23899 239001995-07-25 Todd C. Miller <Todd.Miller@courtesan.com> 23901 23902 * Makefile.in: 23903 now installs sudoers.man -- really should clean this up though. 23904 [455631d45a1d] 23905 23906 * Makefile.in: 23907 added sudoers.cat and sudoers.man 23908 [0bdedd6c7363] 23909 23910 * sudo.man: 23911 pulled out stuff on the sudoers file format into a separate man page 23912 [de215d999cb9] 23913 23914 * sudoers.man: 23915 Initial revision 23916 [f25eafbb7095] 23917 23918 * HISTORY: 23919 fixed up my email address 23920 [254fbf80be74] 23921 23922 * configure.in: 23923 added checks for innetgr and getdomainname 23924 [24a99cb7e97e] 23925 23926 * visudo.c: 23927 added dummy netgr_matches function 23928 [1841ff2c01da] 23929 23930 * parse.c: 23931 added netgr_matches 23932 [ec90db6a97b8] 23933 23934 * parse.lex, parse.yacc: 23935 added NETGROUP support 23936 [c9dd93e3bc4b] 23937 23938 * config.h.in: 23939 added HAVE_INNETGR & HAVE_GETDOMAINNAME 23940 [14abd494d875] 23941 239421995-07-24 Todd C. Miller <Todd.Miller@courtesan.com> 23943 23944 * sudo.c: 23945 rewrote clean_env() that has rm_env() builtin 23946 [55cb43818a95] 23947 239481995-07-23 Todd C. Miller <Todd.Miller@courtesan.com> 23949 23950 * check.c: 23951 now cast uid to long in sprintf 23952 [b549eea40aeb] 23953 23954 * OPTIONS: 23955 added _INSULTS suffix to HAL & GOONS end 23956 [ed620d0aad30] 23957 23958 * options.h: 23959 added _INSULTS suffix to HAL & GOONS 23960 [9f72e9b83afd] 23961 23962 * ins_2001.h, ins_classic.h, ins_goons.h, insults.h: 23963 converted to new scheme of insult "unions" end 23964 [2f6d2b412132] 23965 23966 * sudo.c: 23967 now uses MAX_UID_T_LEN 23968 [c1df79e0f389] 23969 23970 * configure.in: 23971 added SUDO_UID_T_LEN !l 23972 [195f0b9f5f84] 23973 23974 * config.h.in: 23975 added MAX_UID_T_LEN 23976 [73f42ae4f14d] 23977 23978 * check.c: 23979 now use MAX_UID_T_LEN 23980 [df9c063234cb] 23981 23982 * aclocal.m4: 23983 added check for max len of uid_t fixed sco vs. isc check 23984 [d558f36d2223] 23985 239861995-07-19 Todd C. Miller <Todd.Miller@courtesan.com> 23987 23988 * configure.in: 23989 corrected version 23990 [828dd1571e86] 23991 23992 * configure.in: 23993 added sco support 23994 [af1e2f616638] 23995 23996 * aclocal.m4: 23997 hack to check for sco 23998 [549ab99a9a43] 23999 24000 * interfaces.c: 24001 removed #include <net/route.h> since it was hosing some OS's 24002 [ac78a7c04005] 24003 240041995-07-18 Todd C. Miller <Todd.Miller@courtesan.com> 24005 24006 * find_path.c: 24007 fixed prreadlink() prototype 24008 [b380fe1f2b11] 24009 24010 * check.c: 24011 added parens in #if's 24012 [e96ade691b82] 24013 24014 * configure.in: 24015 added SPW_ prefix 24016 [a302683a1483] 24017 24018 * sudo.h: 24019 moved SPW_* to config.h.in 24020 [6b3be70e34cf] 24021 24022 * sudo.c: 24023 added a set of parens 24024 [8188d735d695] 24025 24026 * config.h.in: 24027 added SPW_* 24028 [5ead6371cf60] 24029 24030 * sudo.h: 24031 added SPW_* reordered error codes 24032 [dead25b4ed0a] 24033 24034 * check.c: 24035 moved SPW_* to sudo.h 24036 [ca51fb04caf4] 24037 240381995-07-17 Todd C. Miller <Todd.Miller@courtesan.com> 24039 24040 * sudo.c: 24041 SPW_AUTH -> SPW_SECUREWARE 24042 [6b512b2bc5dc] 24043 24044 * logging.c: 24045 GLOBAL_NO_AUTH_ENT -> GLOBAL_NO_SPW_ENT 24046 [defdd0944e2f] 24047 24048 * configure.in: 24049 AUTH -> SECUREWARE 24050 [d1f8a17001dd] 24051 24052 * check.c: 24053 SPW_AUTH -> SPW_SECUREWARE 24054 [af0e8d8b89b2] 24055 24056 * check.c: 24057 now uses SHADOW_TYPE to make shadow pw support more readable and 24058 modular. It's a start... 24059 [8c2a59667014] 24060 24061 * configure.in: 24062 added autodetection of shadow passwords 24063 [85f81fa54b1b] 24064 24065 * sudo.c: 24066 now uses SHADOW_TYPE define 24067 [355e5dc09b07] 24068 24069 * config.h.in: 24070 added SHADOW_TYPE which replaces SUNOS4 & __svr4__ defines 24071 [c0c06e83e483] 24072 24073 * aclocal.m4: 24074 added SUDO_CHECK_SHADOW 24075 [464301301639] 24076 240771995-07-12 Todd C. Miller <Todd.Miller@courtesan.com> 24078 24079 * configure.in: 24080 define SVR4 for ISC define BROKEN_SYSLOG for hpux took out test for 24081 memmove() since we dno longer use it... 24082 [8aefa87d7d31] 24083 24084 * CHANGES: 24085 updated 24086 [ce97b3fd7182] 24087 24088 * logging.c: 24089 added BROKEN_SYSLOG support 24090 [a45c3bca36f6] 24091 24092 * config.h.in: 24093 added BROKEN_SYSLOG 24094 [6f6abf0a6268] 24095 24096 * check.c: 24097 now only bitch it timestamp > time_now + 2 * timeout to allow for a 24098 machine udpating its time from a server 24099 [546bc8d35325] 24100 24101 * sudo.man: 24102 added 2 security notes updated Nieusma's email addr 24103 [616756c56977] 24104 24105 * lsearch.c: 24106 changed a memmove() to memcpy() since we don't have to worry about 24107 overlapping segments. 24108 [30baa478526b] 24109 241101995-07-11 Todd C. Miller <Todd.Miller@courtesan.com> 24111 24112 * interfaces.c: 24113 cleanup up the loop when interfaces are groped in so that it is 24114 readable 24115 [1fa39446bd69] 24116 24117 * Makefile.in, version.h: 24118 ++version 24119 [b46bd2b1770f] 24120 241211995-07-09 Todd C. Miller <Todd.Miller@courtesan.com> 24122 24123 * CHANGES: 24124 annotated 124-126 24125 [b82a2b3ec7ce] 24126 241271995-07-07 Todd C. Miller <Todd.Miller@courtesan.com> 24128 24129 * check.c: 24130 fixed permissions check on /tmp/.odus 24131 [cc2431a65468] 24132 241331995-07-06 Todd C. Miller <Todd.Miller@courtesan.com> 24134 24135 * check.c: 24136 fixed some comments 24137 [8896d09b4fda] 24138 24139 * check.c: 24140 now checks owner & mode of timedir also checks for bogus dates on 24141 timestamp file 24142 [a0fad5df5b0a] 24143 24144 * OPTIONS: 24145 updated TIMEOUT info 24146 [033cc22d9e04] 24147 24148 * logging.c, sudo.h: 24149 added BAD_STAMPDIR and BAD_STAMPFILE 24150 [31d9ce691101] 24151 24152 * compat.h: 24153 added definition of S_IRWXU 24154 [ff2dab091a9b] 24155 24156 * CHANGES: 24157 updated 24158 [a40df90284f1] 24159 241601995-07-03 Todd C. Miller <Todd.Miller@courtesan.com> 24161 24162 * interfaces.c: 24163 added #ifdef to make it compile on strange arches 24164 [4a127f12afce] 24165 241661995-07-02 Todd C. Miller <Todd.Miller@courtesan.com> 24167 24168 * aclocal.m4: 24169 fixed check for fulkl void impl. 24170 [b6f2a4a361d8] 24171 24172 * check.c: 24173 added mssing "static" 24174 [520552f2772b] 24175 24176 * insults.h: 24177 replaced #elif with #else #if constructs for ancient C compilers 24178 [39ab2d365b57] 24179 24180 * INSTALL: 24181 updated irix c2 & kerb5 info 24182 [ae79b99b4905] 24183 24184 * configure.in: 24185 added shadow pw support for irix 24186 [632469d9c528] 24187 241881995-07-01 Todd C. Miller <Todd.Miller@courtesan.com> 24189 24190 * BUGS, TODO: 24191 updated 24192 [2a96bb18ac30] 24193 24194 * CHANGES: 24195 last changes for sudo 1.3.3 24196 [c1c0cd1034b8] 24197 24198 * configure.in: 24199 now calls SUDO_SOCK_SA_LEN 24200 [14ea78159d45] 24201 24202 * config.h.in: 24203 added HAVE_SA_LEN 24204 [cc2a346aa905] 24205 24206 * aclocal.m4: 24207 added SUDO_SOCK_SA_LEN 24208 [456a2025644a] 24209 24210 * interfaces.c: 24211 now works with ip implementations that use sa_len in sockaddr 24212 [90be6e028077] 24213 24214 * INSTALL: 24215 added note about buggy AIX compiler 24216 [c0f6d427e4e4] 24217 24218 * interfaces.c: 24219 now include sys/time.h for AIX 24220 [2510858ab38b] 24221 242221995-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 24223 24224 * Makefile.in: 24225 getcwd -> getwd 24226 [66085ebca98e] 24227 24228 * interfaces.c: 24229 now works for ISC and others. yay. 24230 [f336d4ffc927] 24231 242321995-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 24233 24234 * Makefile.in, version.h: 24235 version++ 24236 [836cffc2078d] 24237 242381995-06-23 Todd C. Miller <Todd.Miller@courtesan.com> 24239 24240 * aclocal.m4: 24241 fixed test for full void impl 24242 [fb004107e7b9] 24243 24244 * sudo.c: 24245 now check to see that st_dev is non-zero before assuming that we are 24246 being spoofed 24247 [1b0e1c30c506] 24248 242491995-06-20 Todd C. Miller <Todd.Miller@courtesan.com> 24250 24251 * aclocal.m4, configure.in: 24252 SUDO_FUNC_UTIME_NULL -> AC_FUNC_UTIME_NULL 24253 [4953379bfb01] 24254 242551995-06-19 Todd C. Miller <Todd.Miller@courtesan.com> 24256 24257 * aclocal.m4: 24258 fixed include file order for SUDO_FUNC_UTIME_POSIX 24259 [ff64ab7df44f] 24260 24261 * logging.c: 24262 added cast for ttyname() 24263 [444f05f56758] 24264 24265 * configure.in: 24266 fixed typo 24267 [de068e748431] 24268 24269 * check.c: 24270 now deal correctly with all known variation of utime() -- yippe 24271 [b778a4195a89] 24272 24273 * configure.in: 24274 added SUDO_FUNC_UTIME_POSIX 24275 [cf635f2269d6] 24276 24277 * aclocal.m4: 24278 added SUDO_FUNC_UTIME_NULL and SUDO_FUNC_UTIME_POSIX 24279 [d79593be4b73] 24280 24281 * config.h.in: 24282 added HAVE_UTIME_POSIX 24283 [c67b4ac0dca5] 24284 24285 * check.c: 24286 fixed a typo 24287 [b14df5680f59] 24288 24289 * check.c: 24290 no longer assume !HAVE_UTIME_NULL means old BSD utime() 24291 [0aeaf4b2f38b] 24292 24293 * check.c: 24294 fixed fascist C compiler warning 24295 [c61ddf2f1f93] 24296 24297 * interfaces.c: 24298 now set strioctl.ic_timout in STRSET() now initialize num_interfaces 24299 to 0 (just to be anal) 24300 [c54cc2ba0052] 24301 243021995-06-18 Todd C. Miller <Todd.Miller@courtesan.com> 24303 24304 * sudo.h: 24305 increaed MAXLOGLEN by MAXPATHLEN to account for ttyname 24306 [74cf585a54fb] 24307 24308 * logging.c: 24309 added tty logging 24310 [e27d8dcfbd78] 24311 24312 * interfaces.c: 24313 reworked the ISC code 24314 [bcf57ce8ae69] 24315 24316 * Makefile.in, version.h: 24317 updated version 24318 [032941c9b94d] 24319 24320 * check.c: 24321 now expect old-style utime(3) if utime() can't take NULL as an arg 24322 [018dd4a73030] 24323 24324 * configure.in: 24325 added check for utime.h 24326 [0b76e8feb618] 24327 24328 * config.h.in: 24329 added HAVE_UTIME_H 24330 [62ee42feda46] 24331 24332 * Makefile.in: 24333 added CPPFLAGS STATIC_FLAGS -> LDFLAGS 24334 [fa3201d294e1] 24335 24336 * configure.in: 24337 now search for kerb libs and includes 24338 [cc332401e571] 24339 24340 * check.c: 24341 added support for utime(2)'s that can't take a NULL parameter 24342 [98797fedf69f] 24343 24344 * utime.c: 24345 moved HAVE_UTIME_NULL stuff to update_timestamp() where t belongs 24346 [6ce6d825fb44] 24347 24348 * configure.in: 24349 added utime(s) stuff 24350 [a2afb744403e] 24351 24352 * check.c: 24353 now use utime() 24354 [48902240a51e] 24355 24356 * config.h.in: 24357 added HAVE_UTIME and HAVE_UTIME_NULL 24358 [9a56ab65d4f4] 24359 243601995-06-17 Todd C. Miller <Todd.Miller@courtesan.com> 24361 24362 * utime.c: 24363 now use HAVE_UTIME_NULL 24364 [e3944de09a92] 24365 24366 * emul/utime.h, utime.c: 24367 Initial revision 24368 [a2cbf2ef3427] 24369 24370 * check.c: 24371 need to setuid(0) to make kerb4 stuff work. 24372 [c6cfda4039d7] 24373 24374 * tgetpass.c: 24375 no more special case for kerberos 24376 [4a5c33145be9] 24377 24378 * config.h.in: 24379 took out setreuid and setresuid stuff added kerb5 stuff (use kerb4 24380 emulation) 24381 [a607ee43e650] 24382 24383 * compat.h: 24384 no longer need setreuid() emulation now set _PASSWD_LEN to 128 if 24385 kerberos 24386 [02fb274cc136] 24387 24388 * check.c: 24389 now use private ticket file for kerberos support to avoid trouncing 24390 on system one 24391 [28d8b6b812c7] 24392 243931995-06-15 Todd C. Miller <Todd.Miller@courtesan.com> 24394 24395 * sudo.h: 24396 added SPOOF_ATTEMPT & cmnd_st 24397 [d3b42a1f4d0d] 24398 24399 * sudo.c: 24400 added anti-spoofing support 24401 [ab1e2aa44a57] 24402 24403 * parse.c: 24404 now use global cmnd_st 24405 [47018265a1a6] 24406 24407 * logging.c: 24408 added SPOOF_ATTEMPT suypport 24409 [7bbe9dd2a021] 24410 24411 * testsudoers.c, visudo.c: 24412 added void casts where appropriate 24413 [f191441ba333] 24414 24415 * parse.yacc: 24416 fixed up spacing and added void casts where appropriate 24417 [15d886fc809c] 24418 24419 * sudo.c: 24420 fixed problem with "-p prompt" but no args 24421 [6fc048261a3e] 24422 244231995-06-14 Todd C. Miller <Todd.Miller@courtesan.com> 24424 24425 * sudo.man: 24426 added BUGS and annotated -l description 24427 [e5c506de2603] 24428 24429 * sudo.h: 24430 validate() now takes a flag 24431 [26627becc60a] 24432 24433 * sudo.c: 24434 validate() now takes a flag added -l 24435 [a4f7bb97fe54] 24436 24437 * parse.yacc: 24438 added support for -l 24439 [e7a9b10b0ad3] 24440 24441 * parse.c: 24442 validate() now takes a flag that says whether or not to check the 24443 command 24444 [9e1e67f4e281] 24445 244461995-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 24447 24448 * logging.c: 24449 now deals with Argv == 1 24450 [0acb637ab635] 24451 24452 * sudo.man: 24453 added -p option 24454 [e60382fc0561] 24455 24456 * sudo.c: 24457 added prompt support reworked parse_args() 24458 [2f605267ed4a] 24459 24460 * sudo.h: 24461 added prompt 24462 [5ab021bdb419] 24463 24464 * options.h: 24465 added PASSPROMPT 24466 [614727ff44a2] 24467 24468 * check.c: 24469 now use BUFSIZ as length of kerb password added kpass so pass is 24470 always a char * now use prompt global when asking for a password 24471 [76be09af784f] 24472 24473 * tgetpass.c: 24474 now use BUFSIZ as _PASSWD_LEN if using kerberos 24475 [1e907eed312b] 24476 24477 * OPTIONS: 24478 added PASSPROMPT 24479 [ddb2f405ce40] 24480 244811995-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 24482 24483 * configure.in: 24484 only look for -lufc or -lcrypt if crypt() not in libc 24485 [9717d315661f] 24486 24487 * check.c: 24488 don't exit on kerb error, just warn if k_errno == KDC_PR_UNKNOWN 24489 (unknown user) silently fail 24490 [2b48693d4ee9] 24491 24492 * INSTALL: 24493 added kerb4 note 24494 [986e393f740c] 24495 24496 * tgetpass.c: 24497 HAVE_KERBEROS -> HAVE_KERB4 24498 [e438bfb5e6aa] 24499 24500 * check.c: 24501 removed debugging printf 24502 [1cf9f5cbffa5] 24503 24504 * configure.in: 24505 KERBEROS -> KERB4 added checks for setreuid & setresuid 24506 [01e9945beb1e] 24507 24508 * config.h.in: 24509 HAVE_KERBEROS -> HAVE_KERB4 added HAVE_SETREUID and HAVE_SETRESUID 24510 [0e0bb5b8ac3e] 24511 24512 * compat.h: 24513 added deif of UID_NO_CHANGE & GID_NO_CHANGE added setreuid emulation 24514 with setresuid if applic 24515 [9dae24c47696] 24516 24517 * check.c: 24518 HAVE_KERBEROS -> HAVE_KERB4 now only do the stupid chown() hack if 24519 no setreuid() or a broken one 24520 [1fca642bdb8e] 24521 245221995-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 24523 24524 * configure.in: 24525 added kerberos support 24526 [da5639b9b8e7] 24527 24528 * config.h.in: 24529 added HAVE_KERBEROS 24530 [fcc5be550e65] 24531 24532 * tgetpass.c: 24533 added KERBEROS support (long passwords) 24534 [303ba6924dd2] 24535 24536 * check.c: 24537 added kerberos support 24538 [e40afe98fc1d] 24539 245401995-06-03 Todd C. Miller <Todd.Miller@courtesan.com> 24541 24542 * sudo.h: 24543 added MODE_BACKGROUND 24544 [9b483c932016] 24545 24546 * sudo.man: 24547 escaped dashes added -b option 24548 [62e84f1a7714] 24549 24550 * sudo.c: 24551 added -b option 24552 [7e78aaefeb95] 24553 24554 * check.c: 24555 added crypt() for osf/1 3.x enhanced secuiry 24556 [e9aa5abdb7d5] 24557 24558 * configure.in: 24559 now check for -lcrypt 24560 [5cb9c67e9fa2] 24561 24562 * interfaces.c: 24563 added ENXIO like EADDRNOTAVAIL 24564 [74223bb1ba75] 24565 245661995-05-08 Todd C. Miller <Todd.Miller@courtesan.com> 24567 24568 * configure.in: 24569 now emulate getwd(), not getcwd() 24570 [3e5439d9a5f4] 24571 24572 * sudo.c: 24573 getcwd() -> getwd() 24574 [6392a96a658e] 24575 24576 * getwd.c: 24577 getcwd -> getwd 24578 [1b0ab9bae11e] 24579 245801995-05-02 Todd C. Miller <Todd.Miller@courtesan.com> 24581 24582 * ins_2001.h, ins_classic.h, ins_goons.h: 24583 Initial revision 24584 [86db60d8cf00] 24585 24586 * insults.h: 24587 broke out insults into separate include files 24588 [0a01993bd38a] 24589 24590 * OPTIONS, options.h: 24591 added GOONS 24592 [e283203c6515] 24593 24594 * Makefile.in: 24595 added ins_2001.h ins_classic.h ins_goons.h 24596 [2a39cd6a4cd2] 24597 24598 * Makefile.in, version.h: 24599 ++version 24600 [05ebf4f5e41a] 24601 24602 * visudo.c: 24603 moved signal handler setup to setup_signals() 24604 [3dd976c04540] 24605 24606 * sudo.h: 24607 added load_interfaces() 24608 [af2d473b09e2] 24609 24610 * sudo.c: 24611 moved load_interfaces to interfaces.c 24612 [5c8c138e5d4c] 24613 24614 * parse.yacc: 24615 added clearaliases 24616 [aeb4ff301daa] 24617 24618 * OPTIONS, options.h: 24619 added FAST_MATCH 24620 [f49ea3d1b525] 24621 24622 * parse.lex: 24623 now uses clearaliases variable 24624 [a2dda415bf61] 24625 24626 * interfaces.c: 24627 Initial revision 24628 [a1990e3f5c69] 24629 24630 * Makefile.in: 24631 added interfaces.[co] 24632 [1e8e5984de97] 24633 24634 * testsudoers.c: 24635 now uses ip addrs and netmasks via load_interfaces() 24636 [54b8f7a6835e] 24637 24638 * sudo.c: 24639 now remove IFS instead of setting to "sane" value 24640 [ce7eec9f115e] 24641 246421995-05-01 Todd C. Miller <Todd.Miller@courtesan.com> 24643 24644 * parse.c: 24645 added FAST_MATCH 24646 [816d4f5fe81a] 24647 246481995-04-30 Todd C. Miller <Todd.Miller@courtesan.com> 24649 24650 * Makefile.in: 24651 sudo_goodpath.c-> goodpath.c 24652 [a5072c4e1de2] 24653 24654 * sudo.c: 24655 added Andy's new ISC changes 24656 [caa6bbee358e] 24657 246581995-04-14 Todd C. Miller <Todd.Miller@courtesan.com> 24659 24660 * OPTIONS: 24661 added a sentence to SECURE_PATH info 24662 [cad6e1569d15] 24663 24664 * BUGS: 24665 added one 24666 [4b35cf699a83] 24667 24668 * CHANGES: 24669 updated 24670 [5fded9dc62f0] 24671 24672 * RUNSON: 24673 updated 24674 [33cb993cfd39] 24675 246761995-04-13 Todd C. Miller <Todd.Miller@courtesan.com> 24677 24678 * RUNSON: 24679 updated for beta3 24680 [a05dc6a91995] 24681 24682 * Makefile.in, version.h: 24683 ++version 24684 [54aaf3fadc75] 24685 24686 * aclocal.m4: 24687 sendmail is now looked for in /usr/ucblib 24688 [231ac1a4662f] 24689 24690 * sudo.c: 24691 fixed indentation 24692 [fb137400c8c2] 24693 24694 * aclocal.m4: 24695 fixed a typo 24696 [e03f1acc468b] 24697 24698 * sudo.c: 24699 updated ISC mods 24700 [070290d4754b] 24701 24702 * configure.in: 24703 added unixware case 24704 [e90250bae0d9] 24705 24706 * check.c: 24707 user_is_exempt is no longer hidden 24708 [1a341765b8af] 24709 24710 * RUNSON: 24711 updated 24712 [a9c4898b26dd] 24713 24714 * aclocal.m4: 24715 isc and riscos changes 24716 [98b5d86585d1] 24717 24718 * OPTIONS: 24719 added NOTE about new interaction of EXEMPTGROUP and SECURE_PATH 24720 [e1ecc464ce4b] 24721 24722 * Makefile.in: 24723 fixed a typo and added testsudoers stuff 24724 [435d60e163dc] 24725 24726 * testsudoers.c: 24727 Initial revision 24728 [6ce14a448662] 24729 247301995-04-12 Todd C. Miller <Todd.Miller@courtesan.com> 24731 24732 * parse.yacc: 24733 applied fixed patch from Chris 24734 [cd6144203d13] 24735 247361995-04-11 Todd C. Miller <Todd.Miller@courtesan.com> 24737 24738 * Makefile.in: 24739 fixed a typo 24740 [34f8a54ba041] 24741 24742 * parse.yacc: 24743 added a set of braces for bison 24744 [f0e43b938914] 24745 24746 * parse.yacc: 24747 merged in Chris' changes to dekludge the parser. 24748 [82d6e373ab1c] 24749 24750 * logging.c: 24751 send_mail() was calling find_path() which is wrong since find_path() 24752 stores cmnd in a static var. Anyhow, it doesn't make much sense 24753 since MAILER should always be fully qualified 24754 [6eae6a0b8098] 24755 247561995-04-10 Todd C. Miller <Todd.Miller@courtesan.com> 24757 24758 * sample.sudoers: 24759 added User_Alias stuff 24760 [aaba8c8e918d] 24761 24762 * aclocal.m4: 24763 SUDO_NEXT now looks for /usr/lib/NextStep/software_version 24764 [52bd81f34b32] 24765 24766 * RUNSON: 24767 added DEC UNIX 3.0 w/ gcc 24768 [7daf570775b5] 24769 24770 * visudo.c: 24771 Exit was being used in places where exit should be used 24772 [6026a89c07ed] 24773 24774 * sudoers: 24775 added "User alias specification" 24776 [a487b6e234f8] 24777 24778 * parse.yacc: 24779 fixed probs caused by making nslots and naliases a size_t 24780 [0be919384f3f] 24781 24782 * RUNSON: 24783 added KSR, upped rev to 1.3.1b2 24784 [ce04ee6faadf] 24785 24786 * logging.c, parse.yacc: 24787 1024 -> BUFSIZ 24788 [cd6dda45fa11] 24789 24790 * parse.yacc: 24791 void * -> VOID * naliases and nslots are now size_t to appease 24792 lsearch on 64-bit machines 24793 [bf2f807c0dc1] 24794 247951995-04-09 Todd C. Miller <Todd.Miller@courtesan.com> 24796 24797 * TODO: 24798 did a bunch of things and added a bunch :-) 24799 [42afd957b829] 24800 24801 * PORTING: 24802 updated 24803 [972f95c85776] 24804 24805 * visudo.man: 24806 closer to BSD manpage style 24807 [07ae88f50325] 24808 24809 * sudo.man: 24810 closer to standard BSD man format 24811 [372c28dcc135] 24812 24813 * compat.h, config.h.in, emul/search.h, insults.h, options.h, 24814 pathnames.h.in, sudo.h, version.h: 24815 added RCS id 24816 [c0ec90b81002] 24817 24818 * sudo.h: 24819 removed crufty #defines that are no longer used 24820 [35e2b4b477f0] 24821 24822 * BUGS: 24823 fixed a bug 24824 [5bb3e1bee85e] 24825 24826 * sudo.man: 24827 updated based on sudo changes 24828 [e65de1cae438] 24829 24830 * parse.yacc: 24831 now allow ALL keyword in User_Aliases now allow ALL keyword as well 24832 as a NAME or ALIAS 24833 [1fb31404dd0f] 24834 24835 * CHANGES: 24836 updated 24837 [b24018ac610b] 24838 24839 * sudo.c: 24840 now sets SUDO_COMMAND and SUDO_GID envariables. 24841 [e9d791557fb7] 24842 24843 * aclocal.m4: 24844 fixed bug with full void impl check 24845 [35715301023c] 24846 24847 * parse.yacc: 24848 fixed User_Alias supoprt 24849 [4c30dfbaaa07] 24850 24851 * parse.yacc: 24852 added stubs for User_Alias support 24853 [f4afbd247edf] 24854 24855 * sudo.c: 24856 now sets removes # bogus interfaces from num_interfaces 24857 [6f077fac9ab1] 24858 24859 * parse.lex: 24860 added User_Alias support 24861 [bc7997e5df85] 24862 248631995-04-08 Todd C. Miller <Todd.Miller@courtesan.com> 24864 24865 * Makefile.in: 24866 removed extraneous TODO 24867 [bc87a3b14d6d] 24868 248691995-04-07 Todd C. Miller <Todd.Miller@courtesan.com> 24870 24871 * visudo.c: 24872 ntwk_matches -> addr_matches 24873 [475044e288b8] 24874 24875 * parse.yacc: 24876 ntwk_matches -> addr_matches 24877 [dd1f4093fd2d] 24878 24879 * parse.c: 24880 ntwk_matches -> addr_matches now use inet_addr() not inet_network() 24881 (which expects octet boundaries) fixes for OSF (sizeof(int) != 24882 sizeof(long)) 24883 [acd2f556940f] 24884 24885 * sudo.c: 24886 took out debugging info 24887 [044023063eca] 24888 24889 * aclocal.m4: 24890 OS was being set to unknown before non-uname based host checks. 24891 This caused no checks to happen since $OS was not zero-length. 24892 [335a7267479d] 24893 24894 * sudo.c: 24895 fixed loading of interfaces struct still has debugging info in 24896 though 24897 [2d1a18998c1e] 24898 24899 * parse.c: 24900 fixed typo 24901 [175674a3a9fa] 24902 249031995-04-06 Todd C. Miller <Todd.Miller@courtesan.com> 24904 24905 * Makefile.in: 24906 ++version 24907 [55d191b5daa3] 24908 24909 * version.h: 24910 ++ 24911 [d7d1f115696a] 24912 24913 * visudo.c: 24914 removed extraneous extern decl of "top 24915 [50355621047d] 24916 24917 * visudo.c: 24918 now zeros "top" 24919 [4e683210345b] 24920 24921 * parse.yacc: 24922 removed parser_cleanup (no need for it now) 24923 [afa59f222b6c] 24924 24925 * parse.lex: 24926 now calls reset_aliases() directly 24927 [3a23cbd60fc0] 24928 249291995-04-04 Todd C. Miller <Todd.Miller@courtesan.com> 24930 24931 * OPTIONS: 24932 added a sentence to SECURE_PATH description 24933 [c5bf75b85af0] 24934 24935 * parse.c: 24936 fixed my stupid bug where I used NAMLEN on something I wanted to 24937 just get the name from. argh. 24938 [111f460f6540] 24939 249401995-04-03 Todd C. Miller <Todd.Miller@courtesan.com> 24941 24942 * lsearch.c: 24943 fixed argument order of memmove() that i hosed when converting from 24944 bcopy(). arghh. 24945 [2f5336045c8b] 24946 24947 * Makefile.in: 24948 finally fixed DISTFILES line 24949 [a1b419e73a63] 24950 24951 * Makefile.in: 24952 tabs -> spaces 24953 [280fb03e5764] 24954 24955 * Makefile.in: 24956 added missing files to DISTFILES 24957 [991fc1cd2263] 24958 24959 * Makefile.in: 24960 SUPPORTED -> RUNSON 24961 [7580e65b05fb] 24962 249631995-04-01 Todd C. Miller <Todd.Miller@courtesan.com> 24964 24965 * TODO: 24966 updated 24967 [fe764a29c1cc] 24968 24969 * RUNSON: 24970 updated for pl5b1 release 24971 [aefc35bd2291] 24972 24973 * BUGS, TODO: 24974 updated 24975 [8f0ea249b687] 24976 24977 * check.c: 24978 fixed bug where if you hit return at first sudo prompt it would 24979 still log as a failure 24980 [24539c854692] 24981 24982 * CHANGES: 24983 updated 24984 [251cc7b3ede4] 24985 24986 * aclocal.m4: 24987 better test for bogus void * implementation 24988 [efe23180cb88] 24989 24990 * logging.c: 24991 added PASSWORDS_NOT_CORRECT 24992 [bd12c73f83f7] 24993 24994 * check.c: 24995 added PASSWORDS_NOT_CORRECT stuff] 24996 [90de391a979f] 24997 24998 * sudo.h: 24999 added PASSWORDS_NOT_CORRECT 25000 [727fbeb76fc5] 25001 25002 * tgetpass.c: 25003 moved pathnames.h 25004 [4f910e5a8df7] 25005 25006 * sudo.c: 25007 removed some unused vars and fixed up uid2str 25008 [70e92c7f9076] 25009 25010 * putenv.c: 25011 moved compat.h 25012 [b271091586f6] 25013 25014 * getcwd.c, getwd.c: 25015 added pathnames.h 25016 [6f25218f133f] 25017 250181995-03-31 Todd C. Miller <Todd.Miller@courtesan.com> 25019 25020 * parse.yacc: 25021 fixed a typo I introduced in the last checkin :-( 25022 [62c3af75c4fe] 25023 25024 * parse.lex: 25025 can't have #ifdef's where N is defined so just do this the broken 25026 way for AIX 25027 [c5648a5594e4] 25028 25029 * parse.yacc: 25030 better hack from Chris (but still a hack) 25031 [6b6d8aed93f3] 25032 25033 * parse.lex: 25034 stupid hack for broken aix lex 25035 [efc3f9e5280e] 25036 25037 * tgetpass.c: 25038 now includes compat.h 25039 [401822173f77] 25040 25041 * visudo.c: 25042 now includes fcntl.h 25043 [63865c2f8ac6] 25044 25045 * compat.h: 25046 added FD_SET and FD_ZERO for 4.2BSD 25047 [00c5597c0bb0] 25048 25049 * parse.yacc: 25050 dirty hack to fix parser bug. i don't really like this but it works 25051 for now... 25052 [5b8bbdc81569] 25053 25054 * sudo.c: 25055 uid2str is now static like the prototype says 25056 [f2a97b5cb870] 25057 250581995-03-30 Todd C. Miller <Todd.Miller@courtesan.com> 25059 25060 * CHANGES, SUPPORTED, TODO, TROUBLESHOOTING: 25061 updated 25062 [6f79c3e92716] 25063 25064 * RUNSON: 25065 Initial revision 25066 [12a09ef9e884] 25067 25068 * sudo.c: 25069 check_sudoers now returns an error code and sudo calls inform_user 25070 and log_error based on the return value. 25071 [340eca188d9a] 25072 25073 * logging.c, sudo.h: 25074 added entries for new errors 25075 [6050d8542e1f] 25076 25077 * parse.c: 25078 now set uid to that of SUDOERS_OWNER while parsing sudoers file 25079 [3683c42bc9b0] 25080 25081 * Makefile.in: 25082 took out testsudoers 25083 [65317d49db48] 25084 25085 * sudo.c: 25086 now explicately checks that it is setuid root 25087 [2fe1be60ef6a] 25088 25089 * sudo.c: 25090 If a user has no passwd entry sudo would segv (writing to a garbage 25091 pointer). Now allocate space before writing :-) 25092 [d08e7eb5e5ef] 25093 25094 * configure.in: 25095 reordered AC_CHECK_FUNCS 25096 [4c82e56c6f4f] 25097 25098 * config.h.in: 25099 fixed memset macro 25100 [77ede6b714ab] 25101 25102 * tgetpass.c, visudo.c: 25103 bzero -> memset 25104 [1a005bb322c8] 25105 25106 * logging.c: 25107 bzero -> memset when a parse error is logged the line number of the 25108 error is now logged too 25109 [a42d68047723] 25110 25111 * INSTALL: 25112 added Sunos to blurb about c2 security 25113 [af750a1d131e] 25114 25115 * configure.in: 25116 added a SUN4 define for C2 security 25117 [6ad5b23a3eb0] 25118 25119 * config.h.in: 25120 bcopy -> memmove bzero -> memset 25121 [5494460c8464] 25122 25123 * lsearch.c: 25124 bcopy -> memmove char * -> VOID * 25125 [a15f5c316e16] 25126 25127 * check.c: 25128 added support for sunos with C2 security 25129 [03fea5bb21e6] 25130 25131 * OPTIONS, options.h: 25132 reordered 25133 [1686265af3e1] 25134 25135 * pathnames.h.in: 25136 _PATH_SUDO_LOGFILE now set based on configure 25137 [5867b58e4a04] 25138 25139 * configure.in: 25140 added SUDO_LOGFILE and SUDO_TYPE_SIZE_T 25141 [1984d9fd1b5c] 25142 25143 * config.h.in: 25144 added _SUDO_PATH_LOGFILE 25145 [dd3eebe62580] 25146 25147 * aclocal.m4: 25148 added SUDO_LOGFILE to find where to put sudo.log added 25149 SUDO_CHECK_TYPE (just AC_CHECK_TYPE but checks unistd.h too) added 25150 SUDO_TYPE_SIZE_T (calls SUDO_CHECK_TYPE) 25151 [c589a515a99a] 25152 251531995-03-29 Todd C. Miller <Todd.Miller@courtesan.com> 25154 25155 * TROUBLESHOOTING: 25156 Initial revision 25157 [f42f1baba3a8] 25158 25159 * sudo.c: 25160 now do set_perms(PERM_ROOT) before the getpwuid() in load_global() 25161 to work around a problem is trusted hpux shadow passwords. yuck. 25162 [ae1f13b54687] 25163 25164 * parse.yacc: 25165 backed out a change in malloc/realloc 25166 [ab868db0ad69] 25167 25168 * parse.yacc: 25169 now include stdlib.h 25170 [957eef0631eb] 25171 25172 * visudo.c: 25173 now do an freopen() of the stmp file so that yyin will always point 25174 to the same thing. This is important for flex since we are doing a 25175 YY_NEWFILE 25176 [44558922fd3e] 25177 25178 * parse.yacc: 25179 replaced yywrap() with parser_cleanup() since yywrap() needs to be 25180 in parse.lex to be able to use YY_NEW_FILE. sigh. 25181 [12dd09921074] 25182 25183 * parse.lex: 25184 now have a rule that matches anything that doesn't match an 25185 explicite rule. well, you know what i mean (. matches anything not 25186 yet matched). However, this means that there is input still queued 25187 up so we need to do a YY_NEW_FILE; in yywrap. So, yywrap has moved 25188 into parse.lex and it calls parser_cleanup() which is most of the 25189 old yywrap() sigh. 25190 [7f4042bc48d6] 25191 25192 * SUPPORTED: 25193 no longer used 25194 [8f220be4da94] 25195 25196 * getcwd.c, getwd.c: 25197 moved compat.h to be the last include file 25198 [9f3a65e2d485] 25199 25200 * parse.yacc: 25201 fixed type of aliascmp() args 25202 [1c27eb989bdf] 25203 25204 * find_path.c: 25205 NULL -> '\0' 25206 [5c8d8cf1692e] 25207 25208 * parse.yacc: 25209 added casts to lfind and lsearch args for irix 25210 [61027ddeecf8] 25211 25212 * Makefile.in: 25213 bsdinstall -> install-sh 25214 [61de6612c5a5] 25215 25216 * INSTALL: 25217 added info about make realclean 25218 [29c6324d727f] 25219 25220 * Makefile.in: 25221 updated VERSION added dependencies for visudo.cat 25222 [09077d7229d4] 25223 25224 * version.h: 25225 -> pl5b1 25226 [5d21c7ad1a41] 25227 25228 * sudo.c: 25229 took out -l 25230 [fc1478d81b38] 25231 25232 * Makefile.in: 25233 now there is a real visudo.man and visudo.cat 25234 [58aeac43a6dd] 25235 25236 * sudo.man: 25237 took out visudo stuff 25238 [4a6ac4393343] 25239 25240 * visudo.man: 25241 Initial revision 25242 [cba348843db8] 25243 25244 * parse.c, parse.lex, parse.yacc: 25245 updated copyright 25246 [ffa16b70944a] 25247 25248 * README: 25249 updated for pl5 25250 [a26e423e9e5f] 25251 25252 * sudo.man: 25253 updated Nieusma & Hieb email addresses 25254 [f0083e71989d] 25255 25256 * INSTALL: 25257 updated to include options.h and OPTIONS 25258 [ee59e2b76c94] 25259 25260 * CHANGES, TODO: 25261 updated 25262 [51e011ad5220] 25263 25264 * BUGS: 25265 eliminated bug #1 (yay) 25266 [e7e88515494e] 25267 25268 * configure.in: 25269 sunos no longer gets linked statically 25270 [2e5b3ff3108f] 25271 252721995-03-28 Todd C. Miller <Todd.Miller@courtesan.com> 25273 25274 * parse.lex: 25275 prototype now uses __P() 25276 [68ecdcab4c70] 25277 25278 * parse.lex: 25279 make fill() non-ansi 25280 [d6509972260b] 25281 25282 * parse.c: 25283 made -v (validate) work 25284 [13c9d520638c] 25285 25286 * logging.c: 25287 now gives host 25288 [f04859cdba5a] 25289 25290 * find_path.c: 25291 don't check for execute/statable if fq or relative path given 25292 [4bbe851f3973] 25293 25294 * parse.c: 25295 added a cast 25296 [345c308f72f3] 25297 25298 * visudo.c: 25299 now include ctype.h for islower and tolower macros 25300 [582c0aa332d5] 25301 25302 * goodpath.c: 25303 moved _S_IFMT & _S_ISREG to compat.h 25304 [828e4ca4e7b4] 25305 25306 * sudo.c: 25307 moved a set of parens 25308 [5783474ecf37] 25309 25310 * strdup.c: 25311 now include compat.h 25312 [75e2036b94af] 25313 25314 * emul/search.h: 25315 void * -> VOID * 25316 [cedcfaf04161] 25317 25318 * parse.yacc: 25319 now cast malloc & realloc return vals added search for HAVE_LSEARCH 25320 now use strcmp if no strcasecmp available 25321 [d6a42bc3d4ae] 25322 25323 * lsearch.c: 25324 void * -> VOID * 25325 [886adc44f607] 25326 25327 * config.h.in: 25328 removed HAVE_FLEX added VOID added HAVE_DIRENT_H, HAVE_SYS_NDIR_H, 25329 HAVE_SYS_DIR_H, HAVE_NDIR_H added HAVE_LSEARCH 25330 [3b50d7fb4349] 25331 25332 * compat.h: 25333 added _S_IFMT, _S_IFREG, and S_ISREG 25334 [73d506c7d53c] 25335 25336 * aclocal.m4: 25337 took out SUDO_PROG_INSTALL 1.x to 2.x changes added echo and results 25338 to most SUDO_* macros 25339 [8442155f5936] 25340 25341 * Makefile.in: 25342 no more -I. 25343 [63462f195bd4] 25344 25345 * configure.in: 25346 various 1.x ro 2.x autoconf changes now check for strcasecmp now use 25347 AC_INSTALL_PROG instead of custom one added check for fully woorking 25348 void implementation 25349 [5ac6b6e6230f] 25350 25351 * Makefile.in: 25352 added lsearch & search.h visudo links into $(LIBOBJS) 25353 [bc119cda4598] 25354 25355 * aclocal.m4: 25356 partial 1.x to 2.x changes added SUDO_FULL_VOID 25357 [1194d01fa5c5] 25358 25359 * visudo.c: 25360 whatnow_help was prototyped to be static be was not declared as 25361 such 25362 [0f85489dd426] 25363 25364 * configure.in: 25365 autoconf 2.x changes took out HAVE_FLEX (no longer used) added check 25366 for dirent/dir/ndir.h 25367 [7408f3854948] 25368 25369 * parse.c: 25370 now use groovy gnu autoconf macro AC_HEADER_DIRENT 25371 [e465db9f5dfa] 25372 25373 * getcwd.c, getwd.c: 25374 MAXPATHLEN -> MAXPATHLEN+1 25375 [714d87424e21] 25376 25377 * emul/search.h, lsearch.c: 25378 Initial revision 25379 [55d79482c535] 25380 253811995-03-27 Todd C. Miller <Todd.Miller@courtesan.com> 25382 25383 * parse.yacc: 25384 eliminated bison warnings 25385 [61ca0a96da22] 25386 25387 * parse.lex: 25388 added missing case 25389 [6be0f849747c] 25390 25391 * visudo.c: 25392 now iincludes signal.h 25393 [221e0fcc144f] 25394 25395 * parse.yacc: 25396 only clear data structures on a parse error 25397 [7b1c0f1a4527] 25398 25399 * visudo.c: 25400 whatnow() now gives help on invalid input 25401 [e5a4cd88c587] 25402 25403 * visudo.c: 25404 added a whatnow() function (sort of like mh) 25405 [932d9b145f1c] 25406 25407 * parse.yacc: 25408 kill_aliases -> reset_aliases yywrap() now cleans up by calling 25409 reset_aliases() and clearing top took reset stuff out of yyerror() 25410 since it doesn't beling there (and doesn't work anyway). errorlineno 25411 is now initially set to -1 so we can set it to the first error that 25412 occurrs (it was getting set to the last) 25413 [2f71f95a974c] 25414 25415 * parse.lex: 25416 added a void cast 25417 [18ae6042dce4] 25418 25419 * visudo.c: 25420 rewrote from scratch based on 4.3BSD vipw.c 25421 [2f6814f18576] 25422 254231995-03-26 Todd C. Miller <Todd.Miller@courtesan.com> 25424 25425 * sudo.c, sudo.h: 25426 removed ocmnd 25427 [a31735f41ad4] 25428 25429 * sudo.h: 25430 no more sudo_realpath() and find_path() changed params 25431 [8e85c3b39159] 25432 25433 * sudo.c: 25434 find_path() changed since no more realpath() 25435 [b25366c7f2ee] 25436 25437 * parse.yacc: 25438 on error, errorlineno is set to the line where the error occurred 25439 added kill_aliases() to free the aliases struct now clean up in 25440 yyerror() so we can reparse cleanly 25441 [2342f578c27a] 25442 25443 * options.h, parse.c: 25444 no more USE_REALPATH 25445 [cfc59babeaff] 25446 25447 * logging.c: 25448 changed to use new find_path() 25449 [91c7a38e7751] 25450 25451 * find_path.c: 25452 removed all the realpath() stuff 25453 [cc21a43a8562] 25454 25455 * Makefile.in: 25456 sudo_realpath.c -> sudo_goodpath.c 25457 [03a9b1ddec2f] 25458 25459 * visudo.c: 25460 now works correctly with utk parser 25461 [08aa554a0ce8] 25462 25463 * goodpath.c: 25464 Initial revision 25465 [1ea607e1ffb2] 25466 25467 * sudo_realpath.c: 25468 eliminated a compiler warning 25469 [198bcccc55b6] 25470 25471 * sudo.c: 25472 elinated compiler warning 25473 [e2384f9a878b] 25474 25475 * sudo_realpath.c: 25476 added sudo_goodpath() 25477 [43878c4cc540] 25478 25479 * sudo.h: 25480 added prototype for sudo_goodpath 25481 [23e8627a2265] 25482 25483 * parse.c: 25484 added support for /sys/dir.h 25485 [eca897087741] 25486 25487 * options.h: 25488 USE_REALPATH turned off 25489 [620ac8b63d85] 25490 25491 * find_path.c: 25492 added calls to sudo_goodpath() 25493 [ad170904fbcd] 25494 25495 * configure.in: 25496 added check for dirent.h 25497 [7964a8c26855] 25498 25499 * config.h.in: 25500 added HAVE_DIRENT_H 25501 [1f785fec7e19] 25502 25503 * configure.in: 25504 added in linux shadow pass stuff 25505 [e585a5785f50] 25506 255071995-03-24 Todd C. Miller <Todd.Miller@courtesan.com> 25508 25509 * visudo.c: 25510 added back host, user, cmnd, parse_error 25511 [0ec19f3d64f4] 25512 25513 * visudo.c: 25514 added in utk changes plus some minor cosmetic changes 25515 [c5c1921c8a58] 25516 25517 * sudo.c, sudo_realpath.c: 25518 added void casts for printf's 25519 [9c6ff11c0082] 25520 25521 * options.h: 25522 added a define of USE_REALPATH 25523 [db3711c9efc5] 25524 25525 * configure.in: 25526 there is no more visudoers/Makefile 25527 [36e1bc1f78d0] 25528 25529 * Makefile.in: 25530 added in utk changes (visudo is now built from the toplevel) 25531 [76203d4b345d] 25532 25533 * find_path.c: 25534 added (void) casts to printf's 25535 [dd5cb1e060ac] 25536 25537 * parse.c, parse.lex, parse.yacc, sudo.h, sudo_realpath.c: 25538 merged in utk changes 25539 [35563307fd8e] 25540 255411995-03-23 Todd C. Miller <Todd.Miller@courtesan.com> 25542 25543 * find_path.c: 25544 now check to see that what we are trying to run is a file (or a link 25545 to a file, we do a stat(2) so there is no diff) 25546 [05889c4bcace] 25547 255481995-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 25549 25550 * CHANGES: 25551 updated 25552 [3e8047bb26fb] 25553 25554 * Makefile.in: 25555 aclocal.m4 -> acsite.m4 make realclean updated for new autoconf 25556 [0bdbaa7c4c7d] 25557 25558 * sudo.man: 25559 added myself as maintainer 25560 [77a9d75aab84] 25561 255621995-02-17 Todd C. Miller <Todd.Miller@courtesan.com> 25563 25564 * sudo.c: 25565 changed setegid -> setgid 25566 [7f4788d73b6f] 25567 255681995-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 25569 25570 * configure.in: 25571 fixed the test for irix 5.x to skip bad libs 25572 [bfef896de013] 25573 25574 * aclocal.m4: 25575 now initialize OS and OSREV 25576 [cc302756e440] 25577 255781995-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 25579 25580 * configure.in: 25581 irix5 changes 25582 [ac985b23f5f2] 25583 25584 * configure.in: 25585 AC_WITH -> AC_ARG_WITH changes other misc changes for autoconf 2.1 25586 compatibility 25587 [0cf8c92a06d7] 25588 255891995-01-19 Todd C. Miller <Todd.Miller@courtesan.com> 25590 25591 * visudo.c: 25592 use YY_NEW_FILE, not yyrestart since OSF flex doesn't do the righ 25593 thing wrt yyrestart (grrrr) 25594 [18e8eabfbb82] 25595 255961995-01-16 Todd C. Miller <Todd.Miller@courtesan.com> 25597 25598 * Makefile.in: 25599 added visudoers/compat.h to DISTFILES 25600 [db23b574b034] 25601 25602 * configure.in: 25603 fixed an echo 25604 [7cbc0462b89d] 25605 25606 * sudo.c: 25607 added ocmnd declaration adjusted for find_path()'s new parameters 25608 [d929cd156474] 25609 25610 * sudo.h: 25611 added ocmnd extern adjusted find_path() prototype 25612 [e0004daf5d3c] 25613 25614 * parse.c: 25615 cmndcmp() now takes 3 arguments and checks against the qualified as 25616 well as the unqualified pathname. more code that should use 25617 cmndcmp() but did not, now does 25618 [6f70a8c17bee] 25619 25620 * options.h: 25621 added to a comment 25622 [7a78680426b2] 25623 25624 * logging.c: 25625 changed to use new find_path() parameter passing 25626 [840981d30db4] 25627 25628 * find_path.c: 25629 find_path() now takes 2 copyout parameters (one for the qualified 25630 pathname and one for the unqualified pathname). The third parameter 25631 may be NULL. 25632 [851503b005e9] 25633 25634 * configure.in: 25635 no longer munge pathnames.h 25636 [427d8796c5a9] 25637 25638 * pathnames.h.in: 25639 changed _PATH_* to use _SUDO_PATH_* (which are defined in config.h) 25640 as a result, pathnames.h does not need to be run through configure 25641 and the user can override the configured values easily. 25642 [2e378f2ebe88] 25643 25644 * config.h.in: 25645 added _SUDO_PATH_* entries 25646 [0857de7cebab] 25647 25648 * aclocal.m4: 25649 _PATH* -> _SUDO_PATH_* 25650 [7601193f56cc] 25651 25652 * Makefile.in: 25653 updated DISTFILES and HDRS .o's now depend on config.h 25654 [39d8601965cf] 25655 256561995-01-13 Todd C. Miller <Todd.Miller@courtesan.com> 25657 25658 * compat.h: 25659 removed extraneous #endif 25660 [27d4c5f2ce7e] 25661 25662 * aclocal.m4: 25663 added SUDO_PROG_MV 25664 [76dda3bdd816] 25665 25666 * configure.in: 25667 added SUDO_PROG_MV added riscos and isc os types took out 25668 -DSHORT_MESSAGE from --with-csops since it is now the default 25669 [68c206ad976e] 25670 25671 * sudo.c: 25672 move the include of id.h to compat.h now includes options.h 25673 [45a1eaafb3a8] 25674 25675 * sudo.h: 25676 moved compatibility #defines to compat.h 25677 [0eee27057698] 25678 25679 * pathnames.h.in: 25680 added _PATH_MV 25681 [e830797ab320] 25682 25683 * config.h.in: 25684 move __P to compat.h 25685 [188e12e0ba93] 25686 25687 * getcwd.c, getwd.c, putenv.c: 25688 now includes compat.h 25689 [c72cb6d73981] 25690 25691 * compat.h: 25692 Initial revision 25693 [d4d2f359ae03] 25694 256951995-01-12 Todd C. Miller <Todd.Miller@courtesan.com> 25696 25697 * sudo.h: 25698 pull user-configurable stuff out and put in options.h 25699 [ef929467b070] 25700 257011995-01-11 Todd C. Miller <Todd.Miller@courtesan.com> 25702 25703 * parse.lex, parse.yacc, visudo.c: 25704 now includes options.h 25705 [e36d7c82add1] 25706 25707 * check.c, find_path.c, logging.c, parse.c, sudo_realpath.c, 25708 sudo_setenv.c: 25709 now includes options.h 25710 [f186ba03de07] 25711 25712 * Makefile.in: 25713 added visudoers/options.h 25714 [e5350c476494] 25715 25716 * OPTIONS, options.h: 25717 Initial revision 25718 [9b6b5001e318] 25719 25720 * Makefile.in: 25721 added OPTIONS and options.h 25722 [25448341e16a] 25723 25724 * logging.c: 25725 changed #ifdef's to use LOGGING and SLOG_SYSLOG/SLOG_FILE 25726 [5dd6385dd1d3] 25727 25728 * check.c, sudo.h: 25729 changed PASSWORD_TIMEOUT to minutes 25730 [0ec6aab98738] 25731 257321994-12-17 Todd C. Miller <Todd.Miller@courtesan.com> 25733 25734 * visudo.c: 25735 now only do Editor +line_num if line_num != 0 25736 [b69f04b5e3c7] 25737 257381994-12-16 Todd C. Miller <Todd.Miller@courtesan.com> 25739 25740 * visudo.c: 25741 now use mv if rename(2) fails 25742 [83210dca1bab] 25743 25744 * BUGS: 25745 added a visudo bug 25746 [d61a806f9aa7] 25747 25748 * check.c: 25749 expanded comment 25750 [641f2cba94cb] 25751 257521994-11-12 Todd C. Miller <Todd.Miller@courtesan.com> 25753 25754 * check.c: 25755 fixed user_is_exempt to return 0 if EXEMPTGROUP is not set 25756 [7a11135039a8] 25757 257581994-11-10 Todd C. Miller <Todd.Miller@courtesan.com> 25759 25760 * sudo.c: 25761 added mips & isc support 25762 [e258dc053119] 25763 25764 * parse.c: 25765 added support for non-root owned sudoers file 25766 [fea07e65a0fc] 25767 25768 * check.c: 25769 added exempt group support 25770 [928fb4bd9ad5] 25771 25772 * sudo.h: 25773 added set_perms() support added SUDOERS_OWNER so can have non-root 25774 own sudoers file added exempt group support added isc support 25775 [61c578d31fc1] 25776 25777 * visudo.c: 25778 now copy sudoers to temp file via read/write (not stdio) now chown 25779 new sudoers file to SUDOERS_OWNER 25780 [a5176c59df70] 25781 257821994-11-08 Todd C. Miller <Todd.Miller@courtesan.com> 25783 25784 * configure.in: 25785 added skey support 25786 [35a8d2fabdb7] 25787 25788 * sudo_realpath.c: 25789 be_* -> setperms() 25790 [a1631d686e1c] 25791 25792 * sudo.h: 25793 fixed typo added set_perms support added skey support added 25794 seteuid()/setegid() emulation for AIX 25795 [c0c8d6771406] 25796 25797 * sudo.c: 25798 be_* -> setperms() now check to make sure sudoers file is owned by 25799 root nread/write by only root 25800 [13ab1e261f1a] 25801 25802 * logging.c, parse.c: 25803 be_* -> setperms() 25804 [21499d845c8f] 25805 25806 * check.c: 25807 be_* -> set_perms() added skey support 25808 [df51b56871c1] 25809 258101994-11-06 Todd C. Miller <Todd.Miller@courtesan.com> 25811 25812 * Makefile.in: 25813 ++version 25814 [3c1abbe4e43c] 25815 25816 * version.h: 25817 ++ 25818 [1d2f9b540a95] 25819 258201994-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 25821 25822 * sudo.c: 25823 now sets IFS 25824 [eabbb41b9f08] 25825 25826 * insults.h: 25827 fixed typo 25828 [c7997f19216e] 25829 258301994-10-15 Todd C. Miller <Todd.Miller@courtesan.com> 25831 25832 * config.h.in: 25833 added HAVE_SKEY 25834 [da948ec4186b] 25835 258361994-10-04 Todd C. Miller <Todd.Miller@courtesan.com> 25837 25838 * CHANGES: 25839 updated 25840 [f4b55ab007ea] 25841 25842 * Makefile.in: 25843 ++version 25844 [0489068b8c95] 25845 25846 * version.h: 25847 ++ 25848 [d189faedf423] 25849 25850 * sudo.c: 25851 now bail if ARgv[1] > MAXPATHLEN 25852 [0cea8ecc9dc2] 25853 25854 * configure.in: 25855 added function check for tcgetattr(3) 25856 [e03289b22c2f] 25857 25858 * config.h.in: 25859 only define HAVE_TERMIOS_H if you have tcgetattr(3) 25860 [757eab83d1a2] 25861 25862 * config.h.in: 25863 added check for tcgetattr 25864 [c5ae92715930] 25865 258661994-09-26 Todd C. Miller <Todd.Miller@courtesan.com> 25867 25868 * CHANGES: 25869 updated 25870 [cbc419883108] 25871 258721994-09-22 Todd C. Miller <Todd.Miller@courtesan.com> 25873 25874 * parse.lex: 25875 now only include unistd.h for linux 25876 [e9adeab95ef0] 25877 258781994-09-21 Todd C. Miller <Todd.Miller@courtesan.com> 25879 25880 * Makefile.in: 25881 added visudo.8 generation 25882 [d6a3f0f887f8] 25883 25884 * configure.in: 25885 added -Wl,-bI:./aixcrypt.exp to aix flags 25886 [72594a21edcf] 25887 258881994-09-20 Todd C. Miller <Todd.Miller@courtesan.com> 25889 25890 * BUGS: 25891 added one 25892 [9993a349e096] 25893 25894 * CHANGES: 25895 updated 25896 [297b31ec4cdd] 25897 25898 * README: 25899 added mailing list info 25900 [10372f94a2b2] 25901 25902 * parse.yacc: 25903 now use sudolineno instead of yylineno fixed bison warnings 25904 [25a83e62057b] 25905 25906 * configure.in: 25907 now use -no_library_replacement for osf don't make a static binary 25908 for hpux >= 9.0 25909 [1fa7b892f1a3] 25910 25911 * tgetpass.c: 25912 added string.h/strings.h inclusion 25913 [71faa98fc0a1] 25914 25915 * config.h.in: 25916 added ssize_t def 25917 [406284bd1ac0] 25918 25919 * parse.lex: 25920 added inclusion of string.h/strings.h 25921 [6985b1df5d09] 25922 25923 * aclocal.m4: 25924 fixed uname | sed (needed to quote the '[') 25925 [4cd2d3415c1a] 25926 25927 * parse.lex: 25928 replaced yylineno with sudolineno fixed bison syntax errors 25929 [0bd31a5fab26] 25930 25931 * visudo.c: 25932 changed yylineno to sudolineno since yylineno cannot be counted 25933 upon. 25934 [38c30104d0ae] 25935 25936 * TODO: 25937 updated 25938 [5d4746f1a752] 25939 25940 * parse.c: 25941 added code to support command listings 25942 [030172e133fd] 25943 25944 * sudo.c: 25945 added code for -l flag 25946 [801dbbc82778] 25947 25948 * sudo.man: 25949 fixed typo added info for -l flag 25950 [8916ca945d65] 25951 25952 * configure.in: 25953 AC_SSIZE_T -> SUDO_SSIZE_T 25954 [c61f7f47013f] 25955 25956 * aclocal.m4: 25957 added SUDO_SSIZE_T 25958 [0ccdb77be84d] 25959 25960 * sudo.h: 25961 added MODE_LIST 25962 [9b2bd844c76c] 25963 25964 * configure.in: 25965 added AC_SSIZE_T 25966 [35cca208f9b5] 25967 25968 * find_path.c, sudo_realpath.c: 25969 readlink() is now declared as returning ssize~_t 25970 [0640a08d1407] 25971 25972 * configure.in: 25973 added -laud for OSF c2 25974 [b7539c905efc] 25975 259761994-09-02 Todd C. Miller <Todd.Miller@courtesan.com> 25977 25978 * Makefile.in, visudo.c: 25979 changed sudo-bugs.cs.colorado.edu -> sudo-bugs@cs.colorado.edu 25980 [067fd9bcb5e1] 25981 25982 * config.h.in, parse.lex, parse.yacc, pathnames.h.in: 25983 changed sudo-bugs.cs.colorado.edu -> sudo-bugs@cs.colorado.edu 25984 [fc46e7c7110a] 25985 25986 * check.c, find_path.c, getcwd.c, getwd.c, insults.h, logging.c, 25987 parse.c, putenv.c, strdup.c, sudo.c, sudo.h, sudo_realpath.c, 25988 sudo_setenv.c, tgetpass.c, version.h: 25989 changed sudo-bugs.cs.colorado.edu -> sudo-bugs@cs.colorado.ed 25990 [d1d4fbc53a98] 25991 259921994-09-01 Todd C. Miller <Todd.Miller@courtesan.com> 25993 25994 * Makefile.in: 25995 ++version 25996 [b7066d97633f] 25997 25998 * version.h: 25999 ++ 26000 [65ec69d88110] 26001 26002 * logging.c: 26003 added host to alertmail messages 26004 [d973c19ce777] 26005 26006 * CHANGES, TODO: 26007 udpated 26008 [5a65eb16faeb] 26009 26010 * logging.c: 26011 fixed logging problem where mail would not say which user it was 26012 [35723edcc5d2] 26013 26014 * configure.in: 26015 added -laud for gcc if osf & c2 26016 [18f1e0ae5548] 26017 26018 * check.c: 26019 moved set_auth_parameters to sudo.c 26020 [d23112fe01db] 26021 26022 * sudo.c: 26023 added set_auth_parameters for osf 26024 [eb70f65214ac] 26025 26026 * configure.in: 26027 cleaned up -static stuff 26028 [01e9575f0422] 26029 26030 * Makefile.in: 26031 ++version 26032 [7ac3bff5c770] 26033 26034 * version.h: 26035 ++ 26036 [10a4ff478469] 26037 26038 * sudo.c: 26039 changed setenv() to sudo_setenv() 26040 [40a78abb9946] 26041 26042 * check.c: 26043 fixed osf problem 26044 [3d69b118efb8] 26045 26046 * configure.in: 26047 added OSF C2 stuff 26048 [38cff3ad4093] 26049 26050 * CHANGES: 26051 updated 26052 [cd341dd0581a] 26053 26054 * check.c: 26055 added osf auth support & removed some extra spaces 26056 [a448cdd81514] 26057 26058 * INSTALL, SUPPORTED: 26059 added osf C2 stuff 26060 [f70484796146] 26061 260621994-08-31 Todd C. Miller <Todd.Miller@courtesan.com> 26063 26064 * TODO: 26065 added 2 suggestions 26066 [695fbdbd86e6] 26067 26068 * Makefile.in: 26069 removed README.v1.3.1 and added VERSION stuff 26070 [f69403eb04c6] 26071 26072 * version.h: 26073 pl1 26074 [21580c0f8cb1] 26075 260761994-08-30 Todd C. Miller <Todd.Miller@courtesan.com> 26077 26078 * version.h: 26079 1.3.1final 26080 [630114970298] 26081 26082 * Makefile.in: 26083 added HISTORY 26084 [901bff251614] 26085 26086 * sudo.man: 26087 mention HISTPRY file 26088 [86dbcfd4326e] 26089 26090 * sudo.c: 26091 use sizeof instead of a constant in 1 place 26092 [d819604c68ca] 26093 26094 * parse.yacc: 26095 added unistd.h 26096 [6f9500f9fe7e] 26097 26098 * parse.lex: 26099 added unistd.h 26100 [468b81a276eb] 26101 26102 * README: 26103 udpated 26104 [7e275618923a] 26105 26106 * HISTORY: 26107 Initial revision 26108 [5db1b0a3939b] 26109 261101994-08-17 Todd C. Miller <Todd.Miller@courtesan.com> 26111 26112 * version.h: 26113 ++ 26114 [7dfbb4a810bb] [SUDO_1_3_1] 26115 26116 * CHANGES: 26117 updated 26118 [7820ee610bf8] 26119 26120 * sudo_setenv.c: 26121 added unistd.h include 26122 [30cf2b654525] 26123 261241994-08-16 Todd C. Miller <Todd.Miller@courtesan.com> 26125 26126 * sudo.c: 26127 added sys/time.h for AIX 26128 [199fc8caf3a3] 26129 261301994-08-15 Todd C. Miller <Todd.Miller@courtesan.com> 26131 26132 * configure.in: 26133 added check for -lsocket and sys/sockio.h 26134 [f9abfbb31031] 26135 26136 * config.h.in: 26137 took out libshadow check and added in sys/sockio.h check 26138 [0c4b0393ac80] 26139 26140 * sudo.c: 26141 now include sockio.h instead of ioctl.h if it exists "sudo -" now 26142 gets a better error message 26143 [53041bea5483] 26144 26145 * sample.sudoers: 26146 now has a dir and subnet entry 26147 [56b820f65438] 26148 261491994-08-13 Todd C. Miller <Todd.Miller@courtesan.com> 26150 26151 * sudo.c: 26152 removed if_ether.h 26153 [b4f64507493e] 26154 26155 * TODO: 26156 added an item 26157 [ea2a1bb6922a] 26158 26159 * sudo.man: 26160 added network and ip addresses to man page 26161 [01c85016511f] 26162 26163 * sudo.c: 26164 no error if can't get interfaces or netmask since networking may not 26165 be in the kernel. 26166 [50b8890e2134] 26167 26168 * parse.c: 26169 nwo check for interfaces == NULL 26170 [dc1b3eef0db2] 26171 26172 * parse.c: 26173 fixed a bug that caused directory specs in a Cmnd_Alias to fail if 26174 the last entry in the spec failed (ie: it was only looking at the 26175 last entry). CLeaned things up by adding the cmndcmp() function--all 26176 neat & tidy 26177 [007e93578e5e] 26178 26179 * CHANGES: 26180 added one 26181 [40e8a2cef497] 26182 261831994-08-12 Todd C. Miller <Todd.Miller@courtesan.com> 26184 26185 * sudo.c: 26186 now do two passes to skip bogus interfaces (lo0, etc) 26187 [465e30aecaf7] 26188 26189 * parse.lex, parse.yacc, visudo.c: 26190 added include of netinet/in.h 26191 [11e3816ed362] 26192 26193 * logging.c, sudo_realpath.c, sudo_setenv.c: 26194 added ninclude of netinet/in.h 26195 [daccfa40fe1e] 26196 26197 * check.c, find_path.c, getcwd.c, getwd.c: 26198 added include of netinet/in.h 26199 [0222f95e06ad] 26200 26201 * version.h: 26202 ++ 26203 [d6b0cfa35a38] 26204 26205 * sudo.h: 26206 added interfaces global 26207 [ba52fa8ad75e] 26208 26209 * parse.c: 26210 now uses new interfaces global 26211 [17473ad5ecba] 26212 26213 * sudo.c: 26214 now ip addresses are gleaned fw/o dns 26215 [8828bb2007e0] 26216 262171994-08-10 Todd C. Miller <Todd.Miller@courtesan.com> 26218 26219 * sudo.c: 26220 added load_ip_addrs() to load the ip_addrs global var 26221 [60c825f04238] 26222 26223 * parse.c: 26224 added hostcmp() to compare hostnames, ip addrs, and network addrs 26225 [ab0e40e37537] 26226 26227 * sudo.h: 26228 added ip_addrs def added load_ip_addrs prototype 26229 [c41c565d0777] 26230 262311994-08-08 Todd C. Miller <Todd.Miller@courtesan.com> 26232 26233 * CHANGES: 26234 updated 26235 [2a128dbe9bcb] 26236 26237 * Makefile.in: 26238 removed multiple entries in DISTFILES 26239 [2490f4f371e6] 26240 26241 * visudo.c: 26242 ansified the !STDC_HEADERS decls 26243 [646ba06d17ae] 26244 26245 * find_path.c, getcwd.c, getwd.c, putenv.c, strdup.c: 26246 don't do malloc decl if gnuc 26247 [f1bad1925f98] 26248 26249 * sudo.c: 26250 can't use getopt(3) since it munges args to the command to be run as 26251 root don't do malloc decl if gnuc 26252 [38e78f6da14e] 26253 26254 * find_path.c, getcwd.c, getwd.c, putenv.c, strdup.c, sudo.c, 26255 sudo_realpath.c, sudo_setenv.c: 26256 ansi-fied !STDC_HEADER function prottypes 26257 [51d8cad89976] 26258 26259 * getcwd.c, getwd.c: 26260 added missing paren 26261 [6a1fae70e27e] 26262 26263 * Makefile.in: 26264 added putenv.c to DISTFILES 26265 [a5e4523eabbb] 26266 26267 * sudo_setenv.c: 26268 added params to func decls when STDC_HEADERS is not defined now can 26269 count on putenv() being there 26270 [fd587796189b] 26271 26272 * sudo_realpath.c: 26273 took out errno decl since sudo.h does it for us fixed up a next cc 26274 warning added params to func decls when STDC_HEADERS is not defined 26275 [70fa5152ace6] 26276 26277 * sudo.h: 26278 took out environ extern added local declaratio of putenv() if local 26279 version is needed 26280 [a84bae6c020d] 26281 26282 * find_path.c, getcwd.c, getwd.c, strdup.c, sudo.c: 26283 added params to func decls when STDC_HEADERS is not defined 26284 [f406f0e47ac0] 26285 26286 * config.h.in: 26287 added memcpy check check to see that ansi vs bsd macros are ntot 26288 already defiend before defining (ie: avoid redefinition) 26289 [879ae026e19f] 26290 26291 * configure.in: 26292 removed fluff setenv check plus check w/ replace for putenv if also 26293 no setenv 26294 [e3c03814ad4b] 26295 26296 * putenv.c: 26297 Initial revision 26298 [3cff63e2dc1b] 26299 263001994-08-06 Todd C. Miller <Todd.Miller@courtesan.com> 26301 26302 * sudo_setenv.c: 26303 Initial revision 26304 [4d637631fa6b] 26305 26306 * sudo.h: 26307 rm'd s realp[ath added sudo_realpath and sudo_setenv 26308 [07ba001ff57e] 26309 26310 * sudo.c: 26311 now use sudo_setenvc 26312 [fd81e04d5ef0] 26313 26314 * configure.in: 26315 added puteenv and setenv, removed realpath 26316 [27bfacfb513b] 26317 26318 * config.h.in: 26319 added putenv & setenv 26320 [515f14eaf6e4] 26321 26322 * Makefile.in: 26323 added sudo_setenv 26324 [217731a717c5] 26325 26326 * version.h: 26327 ++ 26328 [eadb346d7129] 26329 263301994-08-05 Todd C. Miller <Todd.Miller@courtesan.com> 26331 26332 * configure.in: 26333 added MAN_POSTINSTALL and /usr/share/catman for irix 26334 [2a9496c1bdba] 26335 26336 * Makefile.in: 26337 added MAN_POSTINSTALL 26338 [89b0d4695529] 26339 26340 * CHANGES: 26341 added 26342 [48c021ba8a70] 26343 26344 * sudo.man: 26345 added SUDO_* plus new options 26346 [c0759cff5683] 26347 26348 * CHANGES: 26349 added one 26350 [7d44a3922d56] 26351 26352 * configure.in: 26353 took out shadow lib 26354 [07cf3de18701] 26355 26356 * TODO: 26357 adde done 26358 [a27a578e8afe] 26359 26360 * visudo.c: 26361 now use yyrestart() if flex now reset yylineno to 0 26362 [77d67ce0b677] 26363 26364 * Makefile.in: 26365 support for installing a cat page instead of a man page if no nroff 26366 [44671c0fc0fa] 26367 26368 * configure.in: 26369 now defines HAVE_FLEX fixed up man stuff so that it looks for nroff 26370 to determine whether or not to install a cat or man page 26371 [0562d069c135] 26372 26373 * config.h.in: 26374 added HAVE_FLEX 26375 [c5490bae39d3] 26376 26377 * sudo.c: 26378 not set ret to MODE_RUN initially 26379 [88b4983c195b] 26380 26381 * find_path.c: 26382 made command (and therefor cmnd dynamically allocated) 26383 [95b82e32b6de] 26384 26385 * TODO: 26386 did #8 26387 [fb6f41308cdf] 26388 26389 * version.h: 26390 ++ 26391 [14112ecab5ae] 26392 26393 * sudo_realpath.c: 26394 changed bufs from MAXPATHLEN to MAXPATHLEN+1 26395 [0ad4f34e55c0] 26396 26397 * sudo.h: 26398 added MODE_ removed validate_only and added remove_timestamp() 26399 [dd5f99c57728] 26400 26401 * sudo.c: 26402 usage() now takes an int (exit value) added parse_args() to parse 26403 command line arguments moved call to find_path() from load_globals 26404 to new function load_cmnd() removed validate_only global -- now use 26405 the concept of "modes" added -h and -k options 26406 [c3887090b28a] 26407 26408 * parse.c: 26409 no longer use global validate_only now checks for command called 26410 "validate" removed check for non-fully qualified commands since that 26411 is done by find_path 26412 [7d56fbd26369] 26413 26414 * find_path.c: 26415 changed MAXPATHLEN r to MAXPATHLEN+1 26416 [a86e8664d971] 26417 26418 * find_path.c: 26419 fixed off by one error with MAXPATHLEN and fixed a comment 26420 [58adcef8c981] 26421 26422 * check.c: 26423 check_timestamp no longer runs reminder(), it is implied in the 26424 return val added remove_timestamp() 26425 [42ab5a77066f] 26426 26427 * CHANGES: 26428 updated 26429 [8e69b31df024] 26430 264311994-08-04 Todd C. Miller <Todd.Miller@courtesan.com> 26432 26433 * BUGS: 26434 fixed on 26435 [bc34f1ac4280] 26436 26437 * sudo_realpath.c: 26438 took out old_errno 26439 [a168d00a0768] 26440 26441 * CHANGES: 26442 updated 26443 [04ba80922df7] 26444 264451994-08-03 Todd C. Miller <Todd.Miller@courtesan.com> 26446 26447 * logging.c: 26448 moved send_mail to after syslog 26449 [4d4188087834] 26450 26451 * sudo.c: 26452 now set SUDO_ envariables 26453 [e5963f1bd3bb] 26454 264551994-08-01 Todd C. Miller <Todd.Miller@courtesan.com> 26456 26457 * version.h: 26458 ++ 26459 [2a4534845d8c] 26460 26461 * sudo_realpath.c: 26462 now print error if chdir fails 26463 [0d75c8973d49] 26464 26465 * find_path.c: 26466 removed an XXX 26467 [e2077bcb35aa] 26468 264691994-07-26 Todd C. Miller <Todd.Miller@courtesan.com> 26470 26471 * CHANGES: 26472 updated 26473 [e30a2b39b41a] 26474 26475 * configure.in: 26476 no more static binaries for aix 26477 [77a0beb6bd80] 26478 264791994-07-25 Todd C. Miller <Todd.Miller@courtesan.com> 26480 26481 * INSTALL: 26482 fixed typo 26483 [ba5e0d391bc4] 26484 26485 * sudo_realpath.c: 26486 took out stuff not needed for sudo now does be_root/be_user itself 26487 now uses cwd global 26488 [4f6d4641d793] 26489 26490 * version.h: 26491 +=2 26492 [97da927b297c] 26493 26494 * logging.c, sudo.c: 26495 be_root/be_user is now down in sudo_realpath() 26496 [f331662fa50f] 26497 26498 * logging.c, sudo.h: 26499 now works with 4.2BSD syslog (blech) 26500 [98e39d89dd36] 26501 26502 * find_path.c: 26503 now use sudo_realpath() 26504 [ab436a8ebd02] 26505 26506 * config.h.in: 26507 took out realpth() stuff since we now use sudo_realpath() 26508 [8de5ef9f6044] 26509 26510 * configure.in: 26511 ultrix enhanced sec 26512 [815fb7fffcc0] 26513 26514 * SUPPORTED: 26515 added ultrix enhanced sec. 26516 [6466766c8062] 26517 26518 * INSTALL: 26519 updated 26520 [d681a634297a] 26521 26522 * check.c: 26523 ultrix enhanced security suport 26524 [f10c8decbcc2] 26525 26526 * Makefile.in: 26527 added sudo_realpath.c 26528 [6b9bcd3be022] 26529 26530 * CHANGES: 26531 updated 26532 [2fa8084c1b53] 26533 26534 * tgetpass.c: 26535 increased passwd len to 24 for c2 security 26536 [ec64838be62d] 26537 26538 * BUGS: 26539 updated BUGS 26540 [ca00d8fec2ce] 26541 265421994-07-15 Todd C. Miller <Todd.Miller@courtesan.com> 26543 26544 * check.c: 26545 now use user global var 26546 [568769719013] 26547 26548 * configure.in: 26549 took out -ls 26550 [490a44180d5f] 26551 265521994-07-14 Todd C. Miller <Todd.Miller@courtesan.com> 26553 26554 * configure.in: 26555 added AFS libs 26556 [4fb40c8c01ba] 26557 26558 * sudo.h: 26559 user is now a char * added epasswd 26560 [27a919fafdfb] 26561 26562 * sudo.c: 26563 added tzset() to load_globals added epasswd (encrypted password) 26564 global made user dynamically allocated 26565 [b99ef9bdbfce] 26566 26567 * configure.in: 26568 added tzset test 26569 [27592dd1214b] 26570 26571 * config.h.in: 26572 added HAVE_TZSET 26573 [b13f4213f3d0] 26574 26575 * check.c: 26576 cleaned up encrypted passwd grab somewhat 26577 [c8ba9a4db38a] 26578 26579 * configure.in: 26580 fixed AFS typo 26581 [2bfcbce237b6] 26582 26583 * INSTALL: 26584 added AFS not 26585 [80c67329393c] 26586 26587 * CHANGES: 26588 udpated 26589 [2f09ecdd5d31] 26590 26591 * logging.c: 26592 can now log to both syslog & a file 26593 [4d5c0932bc01] 26594 26595 * sudo.h: 26596 added BOTH_LOGS 26597 [623c539be824] 26598 26599 * CHANGES: 26600 updated 26601 [a1c7f5ef3616] 26602 26603 * configure.in: 26604 --with-AFS 26605 [28718d8f5daf] 26606 26607 * config.h.in: 26608 added HAVE_AFS 26609 [2e32bb4e63e4] 26610 26611 * check.c: 26612 added afs changes 26613 [fe4d0ff320a2] 26614 26615 * sudo.h: 26616 removed AFS stuff :-) 26617 [a40387e6fa27] 26618 26619 * tgetpass.c: 26620 include sys/select for AIX 26621 [f32c5a8f2c84] 26622 26623 * sudo.h: 26624 added AFS 26625 [da2ab3dd0348] 26626 26627 * version.h: 26628 ++ 26629 [452d4dfe25af] 26630 266311994-07-07 Todd C. Miller <Todd.Miller@courtesan.com> 26632 26633 * CHANGES, SUPPORTED: 26634 updated 26635 [e7dfe6f23a37] 26636 26637 * logging.c: 26638 can now have MAILER undefined 26639 [1d33b98b35e1] 26640 26641 * INSTALL: 26642 new sub-note about MAILER 26643 [d35c636a0574] 26644 26645 * sudo.man: 26646 added blurb about password timeout 26647 [70c2ee50de20] 26648 26649 * configure.in: 26650 convex c2 changes 26651 [367138a6232e] 26652 26653 * aclocal.m4: 26654 took out duplicate define of _CONVEX_SOURCE 26655 [647182138450] 26656 26657 * Makefile.in: 26658 added OSDEFS 26659 [7fdcd50602d1] 26660 26661 * config.h.in: 26662 added spaces 26663 [f2b8a05e48f3] 26664 26665 * tgetpass.c: 26666 added a goto if fgets fails 26667 [68a6586d9c45] 26668 26669 * sudo.h: 26670 use __hpux not hpux convex c2 stuff 26671 [5c377a8d5f34] 26672 26673 * sudo.c: 26674 use __hpux not hpux 26675 [9363bc0f9f9e] 26676 26677 * logging.c: 26678 convex c2 stuff 26679 [ea5630975ac4] 26680 26681 * config.h.in: 26682 define ansi-ish cpp os defines if non-ansi are defined for hpux & 26683 convex 26684 [664f53a5e786] 26685 26686 * INSTALL: 26687 updated to say we support sonvex C2 26688 [5f2f8b87013e] 26689 26690 * check.c: 26691 added convex c2 support 26692 [9a665d4918fa] 26693 266941994-07-01 Todd C. Miller <Todd.Miller@courtesan.com> 26695 26696 * tgetpass.c: 26697 no more ioctl never returns NULL uses fgets() and select() to 26698 timeout 26699 [b333e6d63e97] 26700 267011994-06-29 Todd C. Miller <Todd.Miller@courtesan.com> 26702 26703 * configure.in: 26704 things were testing -n "$GCC" instead of -z "$GCC" 26705 [059a9b15ede2] 26706 26707 * tgetpass.c: 26708 now works + uses fgets() 26709 [353d7ebcb7bb] 26710 267111994-06-28 Todd C. Miller <Todd.Miller@courtesan.com> 26712 26713 * tgetpass.c: 26714 select doesn't seem to recognize a single '\n' as input waiting so 26715 we can;t use it, sigh. 26716 [f76e3218b835] 26717 267181994-06-26 Todd C. Miller <Todd.Miller@courtesan.com> 26719 26720 * PORTING: 26721 updated tgetpass() blurb 26722 [95baac736b49] 26723 26724 * configure.in: 26725 added --with-getpass 26726 [42ac0bdf58ed] 26727 26728 * Makefile.in: 26729 added tgetpass stuff 26730 [e2b38c635663] 26731 26732 * tgetpass.c: 26733 now uses stdio 26734 [36af8ff66e35] 26735 26736 * version.h: 26737 ++ 26738 [4e81c9db19bd] 26739 267401994-06-24 Todd C. Miller <Todd.Miller@courtesan.com> 26741 26742 * PORTING: 26743 updated ,. 26744 [54f523770a05] 26745 26746 * config.h.in: 26747 added USE_GETPASS && HAVE_C2_SECURITY 26748 [86b355cb2953] 26749 26750 * configure.in: 26751 fixed a test aded --with-C2 and --with-tgetpass 26752 [abf6181588ef] 26753 26754 * check.c: 26755 added hpux C2 shit 26756 [20d4177ffa88] 26757 26758 * Makefile.in: 26759 took out tgetpass.* 26760 [cc82fd9984b4] 26761 26762 * INSTALL: 26763 added C2 blurb 26764 [1d2bfc35e4b6] 26765 267661994-06-13 Todd C. Miller <Todd.Miller@courtesan.com> 26767 26768 * configure.in: 26769 no termio(s) for ultrix since it is broken 26770 [d3e82e835350] 26771 26772 * check.c: 26773 added a space (yeah, anal) 26774 [05e4b31ca68c] 26775 26776 * realpath.c, sudo_realpath.c: 26777 fixed it (duh, rtfm) 26778 [f13097cb8cb6] 26779 267801994-06-08 Todd C. Miller <Todd.Miller@courtesan.com> 26781 26782 * config.h.in: 26783 took out bsd signal stuff for irix 26784 [e179cdafc97a] 26785 26786 * visudo.c: 26787 comments in #endif 26788 [e3a629190f5e] 26789 26790 * configure.in: 26791 don't define BSD signals for irix 26792 [3ce57bffb7f0] 26793 26794 * TODO: 26795 did some... 26796 [274241cd0f74] 26797 26798 * CHANGES: 26799 updated 26800 [8f29fc755faf] 26801 26802 * realpath.c, sudo_realpath.c: 26803 took out unneeded code by changing where a strings was terminated 26804 [b5564d62d30e] 26805 268061994-06-07 Todd C. Miller <Todd.Miller@courtesan.com> 26807 26808 * realpath.c, sudo_realpath.c: 26809 fix bug where /dirname would return NULL 26810 [b85f470daf26] 26811 26812 * sudo.h: 26813 move __P to config.h 26814 [7763c0ff3f28] 26815 26816 * getcwd.c, getwd.c, realpath.c, sudo_realpath.c: 26817 added errno definition 26818 [4cc9d2d9782a] 26819 26820 * config.h.in: 26821 added __P 26822 [ca06f5aa58f3] 26823 26824 * config.h.in: 26825 added HAVE_FCHDIR 26826 [206d714641e0] 26827 26828 * strdup.c: 26829 now include stdio 26830 [0d8458da0e1d] 26831 26832 * realpath.c, sudo_realpath.c: 26833 now works if no fchdir 26834 [e035911b6722] 26835 26836 * visudo.c: 26837 define SA_RESETHAND to null if not defined 26838 [afec03e84342] 26839 26840 * configure.in: 26841 added check & replace 26842 [c1a65481441c] 26843 26844 * configure.in: 26845 took out -static for nextstep -- it doesn't work 26846 [fa1a1a611743] 26847 268481994-06-06 Todd C. Miller <Todd.Miller@courtesan.com> 26849 26850 * logging.c: 26851 moved #endif to where it belongs 26852 [07d3a8972097] 26853 26854 * SUPPORTED: 26855 correction 26856 [0c1ecba3e5a3] 26857 26858 * configure.in: 26859 now checks for strdup realpath getcwd bzero 26860 [f029a1917515] 26861 26862 * config.h.in: 26863 emulate bzero 26864 [d792352e44a3] 26865 26866 * visudo.c: 26867 added posic signals 26868 [2ed0005f90fc] 26869 26870 * tgetpass.c: 26871 bzero cast 26872 [6d91b1a1526f] 26873 26874 * logging.c: 26875 added posix signals 26876 [67ede9c22a05] 26877 26878 * configure.in: 26879 removed BROKEN_GETPASS added new srcs toreplace missing functions 26880 [cf44274bb1c8] 26881 26882 * config.h.in: 26883 added posix signal stuff 26884 [a3c1c98fe8ef] 26885 26886 * Makefile.in: 26887 added new srcs 26888 [b6a079afee47] 26889 26890 * visudo.c: 26891 updated useag 26892 [589ed091c44f] 26893 26894 * tgetpass.c: 26895 now uses posix signals 26896 [30f74964074f] 26897 26898 * PORTING: 26899 updated sto reflect major changes 26900 [bcfc309e017b] 26901 26902 * CHANGES, TODO: 26903 updated 26904 [23aacbd54278] 26905 26906 * tgetpass.c: 26907 uses sysconf() if available 26908 [a27431c90bab] 26909 26910 * sudo.h: 26911 added PASSWORD_TIMEOUT + prototypes for new functions 26912 [d7473c2f77c4] 26913 26914 * realpath.c, sudo_realpath.c: 26915 for those w/o this in libc 26916 [1e47aa7a9d46] 26917 26918 * getcwd.c, getwd.c: 26919 Initial revision 26920 [c90dea57a84f] 26921 26922 * find_path.c: 26923 rewrote to use realpath(3) - nis now all my code 26924 [d2c3bb8fb37d] 26925 26926 * config.h.in: 26927 added HAVE_REALPATH 26928 [02c10352a8c7] 26929 26930 * check.c: 26931 now use tgetpass 26932 [b5c021fc179f] 26933 26934 * Makefile.in: 26935 added LIBOBJS use tgetpass.c 26936 [230a7b3eeaa3] 26937 269381994-06-05 Todd C. Miller <Todd.Miller@courtesan.com> 26939 26940 * tgetpass.c: 26941 works now :-) 26942 [025e7a3875ba] 26943 26944 * tgetpass.c: 26945 Initial revision 26946 [3316ab33b230] 26947 26948 * pathnames.h.in: 26949 added /dev/tty 26950 [29242585e53f] 26951 269521994-06-04 Todd C. Miller <Todd.Miller@courtesan.com> 26953 26954 * version.h: 26955 incremented 26956 [f2e54b48280f] 26957 26958 * sudo.c: 26959 always use getcwd 26960 [c6068e8a4029] 26961 26962 * config.h.in: 26963 added check for getwd 26964 [ab1e102ad673] 26965 26966 * configure.in: 26967 replace strdup & realpath & getcwd if missing 26968 [b0eb14f2a1c3] 26969 26970 * pathnames.h.in: 26971 added _PATH_PWD 26972 [309d2388f69a] 26973 26974 * aclocal.m4: 26975 added SUDO_PROG_PWD 26976 [e16e85deb96c] 26977 26978 * strdup.c: 26979 Initial revision 26980 [810efdc15007] 26981 26982 * realpath.c, sudo_realpath.c: 26983 Initial revision 26984 [d85eee438e09] 26985 269861994-06-03 Todd C. Miller <Todd.Miller@courtesan.com> 26987 26988 * configure.in: 26989 quoted quare brackets 26990 [d0e7ca111d98] 26991 269921994-06-02 Todd C. Miller <Todd.Miller@courtesan.com> 26993 26994 * sudo.c: 26995 no need to strdup() a constant 26996 [a8c44712df9a] 26997 26998 * CHANGES: 26999 updated 27000 [71364129cca0] 27001 27002 * sudo.man: 27003 added validate 27004 [0bb198095a26] 27005 27006 * sudo.c: 27007 added -v to usage 27008 [31ea71f11dbb] 27009 27010 * parse.c, sudo.c, sudo.h: 27011 added validate_only stuff 27012 [9bcd853d3c90] 27013 270141994-05-30 Todd C. Miller <Todd.Miller@courtesan.com> 27015 27016 * configure.in: 27017 now finds sed 27018 [6374bb0d3f28] 27019 27020 * aclocal.m4: 27021 $OSREV is now an int 27022 [ace0666d66cf] 27023 270241994-05-29 Todd C. Miller <Todd.Miller@courtesan.com> 27025 27026 * configure.in: 27027 added mtxinu to caser 27028 [73a776887b16] 27029 27030 * sudo.h: 27031 added EXEC macro 27032 [2e8eb28b710a] 27033 27034 * sudo.c: 27035 now use the EXEC nmacro now only do a gethostbyname() if FQDN is set 27036 [56afb4f658d5] 27037 27038 * logging.c: 27039 changed mail_argv[] def now use EXEC() macro 27040 [ddcabd28edb1] 27041 27042 * check.c: 27043 took out crypt() definition 27044 [0e657724cf5f] 27045 27046 * version.h: 27047 upped the version 27048 [62c5d66119fc] 27049 27050 * configure.in: 27051 always look for -lnsl 27052 [d7b594f0313b] 27053 27054 * aclocal.m4: 27055 added an echo 27056 [1caae3491dc5] 27057 27058 * sudo.h: 27059 SHORT_MESSAGE is now the default 27060 [cfce35c3119a] 27061 27062 * config.h.in: 27063 fixed typo 27064 [6499a564bf75] 27065 27066 * configure.in: 27067 added missing AC_DEFINE(SVR4) for solaris 27068 [feef0b17b94f] 27069 27070 * sudo.man: 27071 documented the -v flag 27072 [a6429f2bc2cf] 27073 27074 * SUPPORTED: 27075 updated 27076 [088886e79540] 27077 27078 * check.c: 27079 proto-ized crypt() 27080 [801e4ff5b121] 27081 27082 * config.h.in: 27083 added LIBSHADOW undef 27084 [8df588e9ee2b] 27085 27086 * configure.in: 27087 nwo set OS to be lowercase 27088 [561ebed833e4] 27089 270901994-05-28 Todd C. Miller <Todd.Miller@courtesan.com> 27091 27092 * configure.in: 27093 now use SUDO_OSTYPE to set $OS 27094 [0e60aee23098] 27095 27096 * aclocal.m4: 27097 now use uname to determine os 27098 [99705e58d400] 27099 27100 * visudo.c: 27101 added prototypes & moved sig handler around 27102 [1f0bc8d23b51] 27103 27104 * sudo.h: 27105 added prototyppes 27106 [be3935a2b163] 27107 27108 * check.c, logging.c, sudo.c: 27109 added prototypes 27110 [2079b4605ab8] 27111 27112 * parse.c: 27113 added comment 27114 [a34d147d8399] 27115 27116 * config.h.in: 27117 nwo use _BSD_SIGNALS not _BSD_COMPAT 27118 [63663195f047] 27119 27120 * aixcrypt.exp: 27121 Initial revision 27122 [890aed08357e] 27123 27124 * Makefile.in: 27125 added aixcrypt.exp 27126 [1005a183105f] 27127 27128 * parse.lex, parse.yacc: 27129 moved config.h to top of includes 27130 [9569c49aa5f3] 27131 271321994-05-25 Todd C. Miller <Todd.Miller@courtesan.com> 27133 27134 * find_path.c: 27135 now don't bitch if get EACCESS (treat like EPERM) 27136 [dbeffb638de4] 27137 27138 * visudo.c: 27139 added -v flag and usage() 27140 [4d44ed60ed75] 27141 27142 * version.h: 27143 fixed a typo 27144 [cf3f9347ae41] 27145 27146 * sudo.c: 27147 cast Argv to a const for exec added -v flag 27148 [d11b6efc0e45] 27149 27150 * logging.c: 27151 mail_argv is now a const 27152 [93bb5d90bb6f] 27153 27154 * configure.in: 27155 only set RETSIGTYPE if it is not set already 27156 [c97aac260b77] 27157 27158 * aclocal.m4: 27159 now defines & STDC_HEADERS for Irix 27160 [9c2b24ad1fc5] 27161 27162 * Makefile.in: 27163 added version.h 27164 [9f79e880229a] 27165 27166 * insults.h, sudo.h: 27167 prevent multiple inclusion 27168 [d68c8a9243ce] 27169 27170 * version.h: 27171 Initial revision 27172 [dbb39c5ef8d9] 27173 27174 * parse.lex, parse.yacc: 27175 now includes config.h 27176 [f117e036a56b] 27177 27178 * aclocal.m4: 27179 now talks about sunos 4.x 27180 [c9054aa92d4e] 27181 27182 * visudo.c: 27183 calls to Exit now pass an arg 27184 [a92104670551] 27185 271861994-05-24 Todd C. Miller <Todd.Miller@courtesan.com> 27187 27188 * visudo.c: 27189 signal handler now takes an int argument 27190 [26f480c41523] 27191 27192 * CHANGES: 27193 updated 27194 [8c166a9d796b] 27195 27196 * sudo.c: 27197 ok, the getcwd() is now *really* done as the user 27198 [ab86cf85134a] 27199 27200 * configure.in: 27201 changed AIX STATIC_FLAGS 27202 [b9c0a3ba5663] 27203 27204 * aclocal.m4: 27205 solaris now defines SVR4 27206 [c3e20cac96f5] 27207 27208 * sudo.h: 27209 added cwd and fixed stupid core dump that makes no sense. sigh. 27210 [7a9755436dbb] 27211 27212 * sudo.c: 27213 moved getcwd stuff into load_globals 27214 [ec2bc90df1f3] 27215 27216 * parse.c: 27217 took out externs that are in suod.h 27218 [93c4b3f856d7] 27219 27220 * logging.c: 27221 moved cwd into load_globals 27222 [050de754d228] 27223 27224 * find_path.c: 27225 moved cwd stuff 27226 [22f3f3b4c34d] 27227 27228 * Makefile.in: 27229 fixed make distclean & realclean 27230 [c9964d89bcef] 27231 27232 * TODO: 27233 updated ., 27234 [e513581ef0e3] 27235 27236 * CHANGES: 27237 added solaris changes 27238 [505d930daf27] 27239 27240 * aclocal.m4: 27241 added solaris changes, need to rework 27242 [33f20fb16c49] 27243 27244 * configure.in: 27245 cleaned up for solaris 27246 [2fb8cfa05d0f] 27247 27248 * logging.c: 27249 reinstall reapchild signal handler for non-bsd signals 27250 [3d1dc545113d] 27251 27252 * sudo.h: 27253 took out getdtablesize() emulation for HP-UX (no longer needed) 27254 [1fc83d170f34] 27255 27256 * sudo.c: 27257 support for HAVE_SYSCONF 27258 [50ca2a7a224a] 27259 27260 * visudo.c: 27261 added <fcntl.h> for solaris & reorg'd the includes + minor prettying 27262 up / 27263 [0a570e826dd4] 27264 27265 * config.h.in: 27266 added HAVE_SYSCONF 27267 [2b9a9f3a4e94] 27268 272691994-05-16 Todd C. Miller <Todd.Miller@courtesan.com> 27270 27271 * configure.in: 27272 now tells you what os you are running /. 27273 [06c6332a895b] 27274 27275 * aclocal.m4: 27276 took out extra ',' 27277 [e8c75ce59f4a] 27278 272791994-05-14 Todd C. Miller <Todd.Miller@courtesan.com> 27280 27281 * config.h.in: 27282 added _BSD_COMPAT 27283 [73c5099806c2] 27284 27285 * aclocal.m4: 27286 fixed for irix5 27287 [1047d1f6c0eb] 27288 27289 * CHANGES: 27290 updated 27291 [1bc4969fee96] 27292 27293 * sudo.c: 27294 uid seinitialized to -2 27295 [8d7812b1878b] 27296 272971994-04-28 Todd C. Miller <Todd.Miller@courtesan.com> 27298 27299 * sudo.c: 27300 now removes LIBPATH for AIX 27301 [075392eb1dd9] 27302 273031994-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 27304 27305 * configure.in: 27306 now uses ufc if it finds it 27307 [ab6ce30a5958] 27308 273091994-03-12 Todd C. Miller <Todd.Miller@courtesan.com> 27310 27311 * sudo.h: 27312 no longer define yyval & yylval since yacc does it 27313 [09d250aea50a] 27314 27315 * parse.lex: 27316 now defines yylval as extenr 27317 [8ec2b88952bc] 27318 27319 * configure.in: 27320 BROKEN_GETPASS is now an OPTION 27321 [3714f4bb8312] 27322 27323 * config.h.in: 27324 took out BROKEN_GETPASS 27325 [9c4f6aa50137] 27326 27327 * Makefile.in: 27328 took out big comment 27329 [4c13cff0e556] 27330 27331 * README: 27332 updated 27333 [b8b9902b620d] 27334 27335 * Makefile.in: 27336 took out README.beta 27337 [ed2cd861e82b] 27338 27339 * SUPPORTED: 27340 Initial revision 27341 [2fffc51e6606] 27342 27343 * INSTALL: 27344 now reference SUPPORTED ., 27345 [d112c30be1f2] 27346 27347 * config.h.in: 27348 now check for convex OR __convex__ 27349 [a0e5701a3069] 27350 27351 * aclocal.m4: 27352 now check for convex or __convex__ 27353 [5dae2bfbe3bc] 27354 27355 * Makefile.in: 27356 added dist target 27357 [400a54de57db] 27358 27359 * aclocal.m4: 27360 use __convex__ 27361 [58a19470ed0b] 27362 27363 * find_path.c: 27364 now use _S_* stat stuff to be ansi-like 27365 [28cce560e048] 27366 27367 * INSTALL: 27368 updated for configure directions 27369 [a034ccc7c30a] 27370 27371 * Makefile.in: 27372 distclean now removes config.h and pathnames.h 27373 [300f2349b4ab] 27374 27375 * CHANGES: 27376 updated 27377 [646f7e9430c1] 27378 27379 * TODO: 27380 fixed typoe 27381 [70fd6361b2bc] 27382 27383 * visudo.c: 27384 updated version 27385 [cf13d87d789f] 27386 27387 * Makefile.in: 27388 updated version 27389 [8c5dacc27a7a] 27390 27391 * config.h.in, pathnames.h.in: 27392 added copyright header 27393 [747ce3d3d6b7] 27394 27395 * check.c, find_path.c, insults.h, logging.c, parse.c, parse.lex, 27396 parse.yacc, sudo.c, sudo.h: 27397 udpated version 27398 [4751c39bad18] 27399 27400 * visudo.c: 27401 udpated to use configure + pathnames.h 27402 [d45dff76a1cd] 27403 27404 * aclocal.m4: 27405 updated 27406 [f05a367a55be] 27407 27408 * Makefile.in, config.h.in, configure.in: 27409 updated 27410 [524778598879] 27411 27412 * sudo.h: 27413 now works with configure 27414 [83fc40e533f4] 27415 27416 * check.c, find_path.c, getpass.c, logging.c, parse.c, sudo.c: 27417 updated to work with configure + pathnames.h 27418 [cb67fa6ab52d] 27419 27420 * Makefile.in: 27421 added LEXLIB 27422 [f43cad4ab0a2] 27423 274241994-03-10 Todd C. Miller <Todd.Miller@courtesan.com> 27425 27426 * COPYING: 27427 updated gnu general licence to versio 2 27428 [2b0b56112ddc] 27429 27430 * config.h.in, pathnames.h.in: 27431 Initial revision 27432 [4b586f39ec2d] 27433 27434 * sudo.h: 27435 changed to work with configure 27436 [13f3506ddf16] 27437 274381994-03-09 Todd C. Miller <Todd.Miller@courtesan.com> 27439 27440 * Makefile.in, aclocal.m4, configure.in: 27441 Initial revision 27442 [a8636ae77371] 27443 27444 * visudo.c: 27445 now uses defines used by configure 27446 [de438d118993] 27447 274481994-03-01 Todd C. Miller <Todd.Miller@courtesan.com> 27449 27450 * find_path.c: 27451 sudo won't bitch about EPERM now, for real 27452 [ce26d9ef7e3f] 27453 274541994-02-28 Todd C. Miller <Todd.Miller@courtesan.com> 27455 27456 * logging.c: 27457 renamed exec_argv to eliminate a libc name clash with ksros 27458 [bcb4350d8411] 27459 27460 * CHANGES: 27461 corrected 27462 [dae68d422efd] 27463 27464 * logging.c, sudo.c, sudo.h: 27465 execve -> execv 27466 [40cc2c4bdb15] 27467 27468 * TODO: 27469 upated 27470 [9275a8b8fc45] 27471 27472 * PORTING: 27473 added 2 mroe items 27474 [6cbb5c56993c] 27475 27476 * CHANGES: 27477 updated 27478 [73f34f8e571a] 27479 27480 * sudo.h: 27481 added UMASK and mode_t declaration 27482 [7c2015e1d171] 27483 27484 * sudo.c: 27485 added UMASK 27486 [d37be7523680] 27487 27488 * logging.c: 27489 now opens log file with mode 077 27490 [0825cc3ee841] 27491 27492 * check.c: 27493 saved current umask ans restores it 27494 [659c1aaae8e8] 27495 27496 * sudo.h: 27497 added MAXLOGFILELEN 27498 [34331c7dee90] 27499 27500 * logging.c: 27501 split long log lines. FOr syslog, split into multiple entries, for 27502 a log file, indent the extra for readability 27503 [72c9e4cdba6e] 27504 275051994-02-27 Todd C. Miller <Todd.Miller@courtesan.com> 27506 27507 * CHANGES: 27508 added changes 27509 [81196833673d] 27510 27511 * sudo.h: 27512 MAXLOGLEN & MAXSYSLOGLEN are now different (as they should be) 27513 [1aa69e903840] 27514 275151994-02-25 Todd C. Miller <Todd.Miller@courtesan.com> 27516 27517 * TODO: 27518 added input from Brett M Hogden <hogden@rge.com> 27519 [80f01fc88ce9] 27520 275211994-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 27522 27523 * sudo.c: 27524 added rmenv() to remove stuff from environ. can now uses execvp() 27525 OR execve() becuase of this. 27526 [e7fc2535bd67] 27527 27528 * logging.c: 27529 now uses execvp() OR execve() 27530 [56391aa1f99d] 27531 27532 * sudo.h: 27533 added USE_EXECVE 27534 [f21f38050b95] 27535 27536 * sudo.h: 27537 added environ 27538 [6b805e23c6f6] 27539 27540 * find_path.c: 27541 now ignore EPERM 27542 [c8fd7117a1d7] 27543 27544 * sudo.h: 27545 moved some func decls out of sudo.h and into sudo.c as statics /. 27546 [5f555c267d27] 27547 27548 * CHANGES: 27549 updated 27550 [431f478af320] 27551 27552 * sudo.h: 27553 took out Envp 27554 [6f722be7793d] 27555 275561994-02-14 Todd C. Miller <Todd.Miller@courtesan.com> 27557 27558 * BUGS: 27559 Initial revision 27560 [4a8ecf0da95c] 27561 275621994-02-10 Todd C. Miller <Todd.Miller@courtesan.com> 27563 27564 * CHANGES: 27565 added SECURE_PATH 27566 [1c72cb222609] 27567 27568 * sudo.c, sudo.h: 27569 added SECURE_PATH 27570 [5bf5357a63c5] 27571 27572 * sudo.h: 27573 added SECURE_PATH 27574 [3976a74405ac] 27575 27576 * INSTALL: 27577 added sample.sudoers note 27578 [1b395d29aaeb] 27579 27580 * sudoers: 27581 Initial revision 27582 [485888d07477] 27583 275841994-02-09 Todd C. Miller <Todd.Miller@courtesan.com> 27585 27586 * find_path.c: 27587 fixed typo 27588 [bfc3cc4d41ca] 27589 27590 * PORTING: 27591 took out SAVED_UID garbage 27592 [b7c2d3469661] [SUDO_1_3_0] 27593 27594 * INSTALL: 27595 mentioned HAL 27596 [253d6695df90] 27597 27598 * sudo.h: 27599 added HAL line 27600 [29ec1a4ac6de] 27601 27602 * insults.h: 27603 added HAL insults 27604 [7d7c96d77c74] 27605 27606 * TODO: 27607 updated 27608 [aa2ed9790586] 27609 27610 * logging.c: 27611 more verbose error if mailer not found 27612 [fca47fd00cb6] 27613 27614 * check.c: 27615 now do getpwent as root for soem shadow password systems (bsdi) 27616 [e0339e110d46] 27617 276181994-02-08 Todd C. Miller <Todd.Miller@courtesan.com> 27619 27620 * sudo.h: 27621 took out SAVED_UID garbade 27622 [fcb0e81dcdb5] 27623 27624 * sudo.c: 27625 took out SAVED_UID garbage since it don't work 27626 [507e9513e9c2] 27627 276281994-02-06 Todd C. Miller <Todd.Miller@courtesan.com> 27629 27630 * README: 27631 updated 27632 [d2b6b253dae5] 27633 27634 * insults.h: 27635 added a missing space :-) 27636 [8940ea991f87] 27637 27638 * sudo.c, sudo.h: 27639 took out multimax cruft 27640 [c2606b365181] 27641 27642 * INSTALL: 27643 minor update 27644 [05fb6ee73131] 27645 27646 * PORTING: 27647 finished 27648 [c4ac47c84dc5] 27649 27650 * sudo.c: 27651 fixed a typo + indentation 27652 [7eab40aae8fa] 27653 276541994-02-05 Todd C. Miller <Todd.Miller@courtesan.com> 27655 27656 * sudo.h: 27657 took outumoved some defines to the config file ,. ,. 27658 [defff05beb52] 27659 27660 * PORTING: 27661 Initial revision 27662 [c803e9127959] 27663 27664 * TODO: 27665 did #6 27666 [c6fa1c946c31] 27667 27668 * sudo.h: 27669 added HAS_SAVED_UID 27670 [6a88a39c0a07] 27671 27672 * sudo.c: 27673 put back AIX cruft 27674 [a24d2507ddd4] 27675 276761994-02-03 Todd C. Miller <Todd.Miller@courtesan.com> 27677 27678 * sudo.c: 27679 aix changes 27680 [1663915f754a] 27681 276821994-02-02 Todd C. Miller <Todd.Miller@courtesan.com> 27683 27684 * CHANGES: 27685 updated 27686 [a8cc73747cae] 27687 27688 * check.c, logging.c, parse.c, sudo.c, sudo.h: 27689 now is only root when abs necesary 27690 [3c9d12c5cdfe] 27691 27692 * check.c: 27693 added missing %s\n 27694 [609320b72d89] 27695 276961994-01-31 Todd C. Miller <Todd.Miller@courtesan.com> 27697 27698 * install-sh: 27699 Initial revision 27700 [b5bba140a175] 27701 27702 * TODO: 27703 updated 27704 [c9d2eba602af] 27705 27706 * CHANGES: 27707 updated 27708 [932f1fc3bb14] 27709 27710 * sudo.c: 27711 now removed _RLD_* for alphas 27712 [54a36e648158] 27713 27714 * INSTALL: 27715 updated for new config scheme 27716 [61c8ae800444] 27717 27718 * find_path.c: 27719 more verbose eror messages 27720 [b4fd123db42d] 27721 277221994-01-27 Todd C. Miller <Todd.Miller@courtesan.com> 27723 27724 * TODO: 27725 now have solaris 27726 [371002fbf266] 27727 27728 * sudo.h: 27729 define __svr4__ for SOLARIS 27730 [0b5cf5ed936d] 27731 27732 * check.c: 27733 added svr4 junk for shadow pws for solaris 2.x 27734 [91ed58f21618] 27735 27736 * check.c, sudo.c: 27737 took out setuid(0) and setreuid(udi) garbage. Its not needed since 27738 we start out setuid with the correct perms. 27739 [07689e782b0b] 27740 27741 * check.c, sudo.c, sudo.h: 27742 now use setreuid() 27743 [7d64d685d78e] 27744 277451994-01-26 Todd C. Miller <Todd.Miller@courtesan.com> 27746 27747 * sudo.man: 27748 revised AUTHORS secrtion & added ENV_EDITOR stuff to VARIABLES 27749 sectoin 27750 [b26967b1e19b] 27751 27752 * visudo.c: 27753 now uses ENV_EDITOR if you want to use the EDITOR envar 27754 [a4f8fcb9bd1d] 27755 27756 * sudo.h: 27757 now uses ENV_EDITOR if you want to use the EDITOR envar >> . 27758 [028cc55c4328] 27759 277601993-12-07 Todd C. Miller <Todd.Miller@courtesan.com> 27761 27762 * INSTALL: 27763 rewrote most of this 27764 [a6750923f9c9] 27765 27766 * README: 27767 minor update + spell fix 27768 [a411717a7249] 27769 27770 * sudo.h: 27771 added all options that are in the Makefile 27772 [6db3b3b841b3] 27773 27774 * getpass.c: 27775 now use USE_TERMIO #define for sgi & hpux 27776 [b91f89ae6be1] 27777 27778 * TODO: 27779 todo: posix sigs 27780 [4548a56eb2ef] 27781 277821993-12-06 Todd C. Miller <Todd.Miller@courtesan.com> 27783 27784 * check.c, find_path.c: 27785 always include strings.h 27786 [1fc20bda92c0] 27787 27788 * visudo.c: 27789 added STATICEDITOR 27790 [0596f820716e] 27791 27792 * sudo.h: 27793 sgi has vi in /usr/bin too 27794 [94203b62bfd9] 27795 27796 * sudo.man: 27797 added VISUAL 27798 [87c2844c4cac] 27799 278001993-12-03 Todd C. Miller <Todd.Miller@courtesan.com> 27801 27802 * sudo.h: 27803 sue /usr/bin/vi on some systems 27804 [e3ad9190f35e] 27805 27806 * sudo.c: 27807 fixed warning (include strings.h) 27808 [0b896de4d8a0] 27809 27810 * sudo.man: 27811 added John_Rouillard@dl5000.bc.edu's changes (new features) 27812 [f41b4205a8cf] 27813 27814 * CHANGES: 27815 changes from John_Rouillard@dl5000.bc.edu 27816 [6bdef8e948d5] 27817 27818 * visudo.c: 27819 added EDITOR envar 27820 [5c4bf716de21] 27821 27822 * check.c, find_path.c, parse.c, sudo.c: 27823 added patches from John_Rouillard directory spec 27824 uses EDITOR 27825 [f62a435f8c41] 27826 278271993-12-02 Todd C. Miller <Todd.Miller@courtesan.com> 27828 27829 * getpass.c: 27830 added flush for hpux 27831 [07cfdd6a7b55] 27832 278331993-11-30 Todd C. Miller <Todd.Miller@courtesan.com> 27834 27835 * sudo.c: 27836 no longer assume malloc returns a char * 27837 [7480bd2756f3] 27838 27839 * sudo.c: 27840 alpha change to remove LD_-like thing fixed SHLIB_PATH stuff -- now 27841 gets removed correctly 27842 [8587166c6ac8] 27843 27844 * sudo.h: 27845 added STD_HEADERS macro 27846 [480f5a9a516c] 27847 27848 * sudo.c: 27849 now uses STD_HEADERS macor for ansi 27850 [c5018806fd59] 27851 27852 * find_path.c: 27853 now uses STD_HEADERS macro 27854 [ad821e0788ea] 27855 27856 * check.c: 27857 niceties for C compiler bitches -- no real change 27858 [0fc0b1a5fb64] 27859 278601993-11-29 Todd C. Miller <Todd.Miller@courtesan.com> 27861 27862 * visudo.c: 27863 now doesn't fclose a file never opened. 27864 [ee888ec9427d] 27865 278661993-11-28 Todd C. Miller <Todd.Miller@courtesan.com> 27867 27868 * sudo.man: 27869 added visudo line 27870 [698d51c66407] 27871 27872 * sudo.man: 27873 added error stuff added me in there... 27874 [d202fd34b906] 27875 27876 * CHANGES: 27877 noted insults 27878 [998a22c2230c] 27879 27880 * INSTALL: 27881 added blurb about reading stuff 27882 [e71db100798f] 27883 27884 * sudo.h: 27885 added insults 27886 [c110431cec56] 27887 27888 * insults.h: 27889 corrected somments and removed newlines 27890 [493706fd488c] 27891 27892 * check.c: 27893 now uses insults 27894 [6d23cf06a0ef] 27895 27896 * insults.h: 27897 Initial revision 27898 [83153c26b4a3] 27899 27900 * INSTALL: 27901 added dec syslog note 27902 [555437273237] 27903 27904 * sample.sudoers: 27905 added real stuff in there 27906 [53442a7fba78] 27907 27908 * TODO: 27909 added a todo 27910 [c630472bd4dc] 27911 27912 * TODO: 27913 added one 27914 [806464453284] 27915 279161993-11-27 Todd C. Miller <Todd.Miller@courtesan.com> 27917 27918 * sample.sudoers: 27919 Initial revision 27920 [7db0a9f1ca8f] 27921 27922 * sudo.man: 27923 updated with changes 27924 [d9bf254c6c08] 27925 27926 * sudo.man: 27927 Initial revision 27928 [dd6f11174ac6] 27929 27930 * indent.pro: 27931 Initial revision 27932 [dbfbb494fad9] 27933 27934 * CHANGES, COPYING, INSTALL, README, TODO: 27935 Initial revision 27936 [6d98f489a079] 27937 27938 * visudo.c: 27939 updated version number and took out jeff's old addr since it is no 27940 good 27941 [ee47c24818cb] 27942 27943 * check.c, find_path.c, logging.c, parse.c, parse.lex, parse.yacc, 27944 sudo.c, sudo.h: 27945 updated version number and took out jeff's email (since it is 27946 invalid) 27947 [54616458a52e] 27948 279491993-10-28 Todd C. Miller <Todd.Miller@courtesan.com> 27950 27951 * check.c: 27952 added fflush() 27953 [145c881f4fb4] 27954 279551993-10-23 Todd C. Miller <Todd.Miller@courtesan.com> 27956 27957 * find_path.c: 27958 now return NULL instead pfof exiting for nopnn-fatal errors 27959 [8bc74f8cb1ae] 27960 279611993-10-21 Todd C. Miller <Todd.Miller@courtesan.com> 27962 27963 * check.c: 27964 new banner 27965 [5387ab2af516] 27966 27967 * parse.lex: 27968 now sudo.h gets included first 27969 [2acb01c18e18] 27970 279711993-10-18 Todd C. Miller <Todd.Miller@courtesan.com> 27972 27973 * parse.lex: 27974 now can use flex 27975 [164d3839adf0] 27976 27977 * sudo.h: 27978 linux patch 27979 [f1b6b1b1a2ca] 27980 27981 * sudo.c: 27982 hpux 9 fix, removes SHLIB_PATH linux patch 27983 [67611dc1737f] 27984 27985 * check.c: 27986 linux diff 27987 [c24536682397] 27988 279891993-10-15 Todd C. Miller <Todd.Miller@courtesan.com> 27990 27991 * find_path.c: 27992 stat now ignores EINVAL 27993 [c7761a5dc642] 27994 279951993-10-06 Todd C. Miller <Todd.Miller@courtesan.com> 27996 27997 * find_path.c, sudo.c: 27998 now declare strdup as extern 27999 [6b7d6f8784b5] 28000 280011993-10-04 Todd C. Miller <Todd.Miller@courtesan.com> 28002 28003 * visudo.c: 28004 reformatted with indent + by hand 28005 [9d43084e4990] 28006 28007 * check.c, find_path.c, getpass.c, logging.c, parse.c, sudo.c, sudo.h: 28008 used indent to "fix" coding style 28009 [489ffacbdc70] 28010 28011 * find_path.c: 28012 now checks '.' or '.' or '' in PATH -- but does it LAST should maybe 28013 move the code that does this into the loop body. makes it messier 28014 tho. hmmm. 28015 [c4d22b48da9a] 28016 280171993-09-08 Todd C. Miller <Todd.Miller@courtesan.com> 28018 28019 * find_path.c: 28020 redid the fix for non-executable files in an easier to read way plus 28021 some minor aethetic changes 28022 [84fe337f1426] 28023 28024 * find_path.c: 28025 fixed bug with non-executable tings of same name in path introduced 28026 by checkig errno after stat(2). 28027 [c2a812cfcbc1] 28028 280291993-09-05 Todd C. Miller <Todd.Miller@courtesan.com> 28030 28031 * sudo.c: 28032 fixed off by one error 28033 [fabb7cee0041] 28034 28035 * find_path.c: 28036 now handles decending below '/' correctly 28037 [5d2ddfc0b220] 28038 28039 * sudo.c: 28040 now actually builds Envp instead of munging envp 28041 [bdc4b08f6898] 28042 280431993-09-04 Todd C. Miller <Todd.Miller@courtesan.com> 28044 28045 * parse.yacc: 28046 now includes sys/param.h 28047 [efbb494ab4de] 28048 28049 * visudo.c: 28050 now includes sys/param.h 28051 [ad6c91d59958] 28052 28053 * sudo.h: 28054 fixed ifndef -> ifdef 28055 [7aebe822d863] 28056 28057 * qualify.c: 28058 make more like find_path.c 28059 [853b2dab2e03] 28060 28061 * find_path.c: 28062 rewritten by millert 28063 [c6a043cc11b3] 28064 28065 * sudo.h: 28066 fixed MAXCOMMANDLENGTH now uses USE_CWD and NEED_STRDUP added info 28067 about new defines in the comment 28068 [39ffefce3aec] 28069 28070 * logging.c: 28071 now uses USE_CWD 28072 [fa0f3b118bb3] 28073 28074 * sudo.h: 28075 added delc for clean_envp() and Envp 28076 [a12034e300c2] 28077 28078 * sudo.c: 28079 now rips LD_* env vars out of envp and passed sanitized Envp to exec 28080 [d201a218e056] 28081 28082 * logging.c: 28083 now uses execve() 28084 [f3e01032cd33] 28085 28086 * find_path.c: 28087 ENOTDIR is ok now too (in case part of the path is bogus) 28088 [b5cbbb201bb5] 28089 28090 * qualify.c: 28091 now works correctly (ttaltotal rewrite) 28092 [0c25d64a5c68] 28093 28094 * parse.lex: 28095 now includes sys/param.h didn't match trailing / -- fix from 28096 rouilj@cs.umb.edu 28097 [b6363ba110af] 28098 280991993-06-11 Todd C. Miller <Todd.Miller@courtesan.com> 28100 28101 * sudo.c: 28102 moved around the #ifndef _AIX 28103 [7d4330950c20] 28104 28105 * check.c, logging.c, parse.c: 28106 Initial revision 28107 [c101e9572d7f] 28108 281091993-03-20 Todd C. Miller <Todd.Miller@courtesan.com> 28110 28111 * qualify.c: 28112 Initial revision 28113 [5a5f21d0e0bf] 28114 281151993-03-13 Todd C. Miller <Todd.Miller@courtesan.com> 28116 28117 * find_path.c: 28118 now works if you do sudo bin/test 28119 [07835120ce43] 28120 28121 * find_path.c: 28122 works 28123 [c3da8b5efa20] 28124 281251993-03-02 Todd C. Miller <Todd.Miller@courtesan.com> 28126 28127 * sudo.h: 28128 Initial revision 28129 [28a1caa38b72] 28130 28131 * visudo.c: 28132 Initial revision 28133 [0e5cd7c3cdbe] 28134 28135 * parse.lex, parse.yacc: 28136 Initial revision 28137 [5f2d0cccb06b] 28138 281391993-02-16 Todd C. Miller <Todd.Miller@courtesan.com> 28140 28141 * sudo.c: 28142 took out errno.h 28143 [7466431a2655] 28144 28145 * sudo.c: 28146 now spews error if exec fails and exits with -1 28147 [e5c41ea725c1] 28148 28149 * sudo.c: 28150 Initial revision 28151 [8aeabe39a0c2] 28152 28153 * find_path.c: 28154 now only execs files with (an) executable bit set. 28155 [0a451f9c0e58] 28156 28157 * find_path.c: 28158 Initial revision 28159 [02a534891a35] 28160 281611993-02-15 Todd C. Miller <Todd.Miller@courtesan.com> 28162 28163 * getpass.c: 28164 added nice comment 28165 [ea8b2aaa9389] 28166 28167 * getpass.c: 28168 now works on sgi's 28169 [bf2b7c6d0960] 28170 28171 * getpass.c: 28172 Initial revision 28173 [9f4de251c1b5] 28174 28175