Annotation of embedaddon/sudo/NEWS, revision 1.1
1.1 ! misho 1: What's new in Sudo 1.8.3p2?
! 2:
! 3: * Fixed a format string vulnerability when the sudo binary (or a
! 4: symbolic link to the sudo binary) contains printf format escapes
! 5: and the -D (debugging) flag is used.
! 6:
! 7: What's new in Sudo 1.8.3p1?
! 8:
! 9: * Fixed a crash in the monitor process on Solaris when NOPASSWD
! 10: was specified or when authentication was disabled.
! 11:
! 12: * Fixed matching of a Runas_Alias in the group section of a
! 13: Runas_Spec.
! 14:
! 15: What's new in Sudo 1.8.3?
! 16:
! 17: * Fixed expansion of strftime() escape sequences in the "log_dir"
! 18: sudoers setting.
! 19:
! 20: * Esperanto, Italian and Japanese translations from translationproject.org.
! 21:
! 22: * Sudo will now use PAM by default on AIX 6 and higher.
! 23:
! 24: * Added --enable-werror configure option for gcc's -Werror flag.
! 25:
! 26: * Visudo no longer assumes all editors support the +linenumber
! 27: command line argument. It now uses a whitelist of editors known
! 28: to support the option.
! 29:
! 30: * Fixed matching of network addresses when a netmask is specified
! 31: but the address is not the first one in the CIDR block.
! 32:
! 33: * The configure script now check whether or not errno.h declares
! 34: the errno variable. Previously, sudo would always declare errno
! 35: itself for older systems that don't declare it in errno.h.
! 36:
! 37: * The NOPASSWD tag is now honored for denied commands too, which
! 38: matches historic sudo behavior (prior to sudo 1.7.0).
! 39:
! 40: * Sudo now honors the "DEREF" setting in ldap.conf which controls
! 41: how alias dereferencing is done during an LDAP search.
! 42:
! 43: * A symbol conflict with the pam_ssh_agent_auth PAM module that
! 44: would cause a crash been resolved.
! 45:
! 46: * The inability to load a group provider plugin is no longer
! 47: a fatal error.
! 48:
! 49: * A potential crash in the utmp handling code has been fixed.
! 50:
! 51: * Two PAM session issues have been resolved. In previous versions
! 52: of sudo, the PAM session was opened as one user and closed as
! 53: another. Additionally, if no authentication was performed, the
! 54: PAM session would never be closed.
! 55:
! 56: * Sudo will now work correctly with LDAP-based sudoers using TLS
! 57: or SSL on Debian systems.
! 58:
! 59: * The LOGNAME, USER and USERNAME environment variables are preserved
! 60: correctly again in sudoedit mode.
! 61:
! 62: What's new in Sudo 1.8.2?
! 63:
! 64: * Sudo, visudo, sudoreplay and the sudoers plug-in now have natural
! 65: language support (NLS). This can be disabled by passing configure
! 66: the --disable-nls option. Sudo will use gettext(), if available,
! 67: to display translated messages. All translations are coordinated
! 68: via The Translation Project, http://translationproject.org/.
! 69:
! 70: * Plug-ins are now loaded with the RTLD_GLOBAL flag instead of
! 71: RTLD_LOCAL. This fixes missing symbol problems in PAM modules
! 72: on certain platforms, such as FreeBSD and SuSE Linux Enterprise.
! 73:
! 74: * I/O logging is now supported for commands run in background mode
! 75: (using sudo's -b flag).
! 76:
! 77: * Group ownership of the sudoers file is now only enforced when
! 78: the file mode on sudoers allows group readability or writability.
! 79:
! 80: * Visudo now checks the contents of an alias and warns about cycles
! 81: when the alias is expanded.
! 82:
! 83: * If the user specifes a group via sudo's -g option that matches
! 84: the target user's group in the password database, it is now
! 85: allowed even if no groups are present in the Runas_Spec.
! 86:
! 87: * The sudo Makefiles now have more complete dependencies which are
! 88: automatically generated instead of being maintained manually.
! 89:
! 90: * The "use_pty" sudoers option is now correctly passed back to the
! 91: sudo front end. This was missing in previous versions of sudo
! 92: 1.8 which prevented "use_pty" from being honored.
! 93:
! 94: * "sudo -i command" now works correctly with the bash version
! 95: 2.0 and higher. Previously, the .bash_profile would not be
! 96: sourced prior to running the command unless bash was built with
! 97: NON_INTERACTIVE_LOGIN_SHELLS defined.
! 98:
! 99: * When matching groups in the sudoers file, sudo will now match
! 100: based on the name of the group instead of the group ID. This can
! 101: substantially reduce the number of group lookups for sudoers
! 102: files that contain a large number of groups.
! 103:
! 104: * Multi-factor authentication is now supported on AIX.
! 105:
! 106: * Added support for non-RFC 4517 compliant LDAP servers that require
! 107: that seconds be present in a timestamp, such as Tivoli Directory Server.
! 108:
! 109: * If the group vector is to be preserved, the PATH search for the
! 110: command is now done with the user's original group vector.
! 111:
! 112: * For LDAP-based sudoers, the "runas_default" sudoOption now works
! 113: properly in a sudoRole that contains a sudoCommand.
! 114:
! 115: * Spaces in command line arguments for "sudo -s" and "sudo -i" are
! 116: now escaped with a backslash when checking the security policy.
! 117:
! 118: What's new in Sudo 1.8.1p2?
! 119:
! 120: * Two-character CIDR-style IPv4 netmasks are now matched correctly
! 121: in the sudoers file.
! 122:
! 123: * A build error with MIT Kerberos V has been resolved.
! 124:
! 125: * A crash on HP-UX in the sudoers plugin when wildcards are
! 126: present in the sudoers file has been resolved.
! 127:
! 128: * Sudo now works correctly on Tru64 Unix again.
! 129:
! 130: What's new in Sudo 1.8.1p1?
! 131:
! 132: * Fixed a problem on AIX where sudo was unable to set the final
! 133: uid if the PAM module modified the effective uid.
! 134:
! 135: * A non-existent includedir is now treated the same as an empty
! 136: directory and not reported as an error.
! 137:
! 138: * Removed extraneous parens in LDAP filter when sudoers_search_filter
! 139: is enabled that can cause an LDAP search error.
! 140:
! 141: * Fixed a "make -j" problem for "make install".
! 142:
! 143: What's new in Sudo 1.8.1?
! 144:
! 145: * A new LDAP setting, sudoers_search_filter, has been added to
! 146: ldap.conf. This setting can be used to restrict the set of
! 147: records returned by the LDAP query. Based on changes from Matthew
! 148: Thomas.
! 149:
! 150: * White space is now permitted within a User_List when used in
! 151: conjunction with a per-user Defaults definition.
! 152:
! 153: * A group ID (%#gid) may now be specified in a User_List or Runas_List.
! 154: Likewise, for non-Unix groups the syntax is %:#gid.
! 155:
! 156: * Support for double-quoted words in the sudoers file has been fixed.
! 157: The change in 1.7.5 for escaping the double quote character
! 158: caused the double quoting to only be available at the beginning
! 159: of an entry.
! 160:
! 161: * The fix for resuming a suspended shell in 1.7.5 caused problems
! 162: with resuming non-shells on Linux. Sudo will now save the process
! 163: group ID of the program it is running on suspend and restore it
! 164: when resuming, which fixes both problems.
! 165:
! 166: * A bug that could result in corrupted output in "sudo -l" has been
! 167: fixed.
! 168:
! 169: * Sudo will now create an entry in the utmp (or utmpx) file when
! 170: allocating a pseudo-tty (e.g. when logging I/O). The "set_utmp"
! 171: and "utmp_runas" sudoers file options can be used to control this.
! 172: Other policy plugins may use the "set_utmp" and "utmp_user"
! 173: entries in the command_info list.
! 174:
! 175: * The sudoers policy now stores the TSID field in the logs
! 176: even when the "iolog_file" sudoers option is defined to a value
! 177: other than %{sessid}. Previously, the TSID field was only
! 178: included in the log file when the "iolog_file" option was set
! 179: to its default value.
! 180:
! 181: * The sudoreplay utility now supports arbitrary session IDs.
! 182: Previously, it would only work with the base-36 session IDs
! 183: that the sudoers plugin uses by default.
! 184:
! 185: * Sudo now passes "run_shell=true" to the policy plugin in the
! 186: settings list when sudo's -s command line option is specified.
! 187: The sudoers policy plugin uses this to implement the "set_home"
! 188: sudoers option which was missing from sudo 1.8.0.
! 189:
! 190: * The "noexec" functionality has been moved out of the sudoers
! 191: policy plugin and into the sudo front-end, which matches the
! 192: behavior documented in the plugin writer's guide. As a result,
! 193: the path to the noexec file is now specified in the sudo.conf
! 194: file instead of the sudoers file.
! 195:
! 196: * On Solaris 10, the PRIV_PROC_EXEC privilege is now used to
! 197: implement the "noexec" feature. Previously, this was implemented
! 198: via the LD_PRELOAD environment variable.
! 199:
! 200: * The exit values for "sudo -l", "sudo -v" and "sudo -l command"
! 201: have been fixed in the sudoers policy plugin.
! 202:
! 203: * The sudoers policy plugin now passes the login class, if any,
! 204: back to the sudo front-end.
! 205:
! 206: * The sudoers policy plugin was not being linked with requisite
! 207: libraries in certain configurations.
! 208:
! 209: * Sudo now parses command line arguments before loading any plugins.
! 210: This allows "sudo -V" or "sudo -h" to work even if there is a problem
! 211: with sudo.conf
! 212:
! 213: * Plugins are now linked with the static version of libgcc to allow
! 214: the plugin to run on a system where no shared libgcc is installed,
! 215: or where it is installed in a different location.
! 216:
! 217: What's new in Sudo 1.8.0?
! 218:
! 219: * Sudo has been refactored to use a modular framework that can
! 220: support third-party policy and I/O logging plugins. The default
! 221: plugin is "sudoers" which provides the traditional sudo functionality.
! 222: See the sudo_plugin manual for details on the plugin API and the
! 223: sample in the plugins directory for a simple example.
! 224:
! 225: What's new in Sudo 1.7.5?
! 226:
! 227: * When using visudo in check mode, a file named "-" may be used to
! 228: check sudoers data on the standard input.
! 229:
! 230: * Sudo now only fetches shadow password entries when using the
! 231: password database directly for authentication.
! 232:
! 233: * Password and group entries are now cached using the same key
! 234: that was used to look them up. This fixes a problem when looking
! 235: up entries by name if the name in the retrieved entry does not
! 236: match the name used to look it up. This may happen on some systems
! 237: that do case insensitive lookups or that truncate long names.
! 238:
! 239: * GCC will no longer display warnings on glibc systems that use
! 240: the warn_unused_result attribute for write(2) and other system calls.
! 241:
! 242: * If a PAM account management module denies access, sudo now prints
! 243: a more useful error message and stops trying to validate the user.
! 244:
! 245: * Fixed a potential hang on idle systems when the sudo-run process
! 246: exits immediately.
! 247:
! 248: * Sudo now includes a copy of zlib that will be used on systems
! 249: that do not have zlib installed.
! 250:
! 251: * The --with-umask-override configure flag has been added to enable
! 252: the "umask_override" sudoers Defaults option at build time.
! 253:
! 254: * Sudo now unblocks all signals on startup to avoid problems caused
! 255: by the parent process changing the default signal mask.
! 256:
! 257: * LDAP Sudoers entries may now specify a time period for which
! 258: the entry is valid. This requires an updated sudoers schema
! 259: that includes the sudoNotBefore and sudoNotAfter attributes.
! 260: Support for timed entries must be explicitly enabled in the
! 261: ldap.conf file. Based on changes from Andreas Mueller.
! 262:
! 263: * LDAP Sudoers entries may now specify a sudoOrder attribute that
! 264: determines the order in which matching entries are applied. The
! 265: last matching entry is used, just like file-based sudoers. This
! 266: requires an updated sudoers schema that includes the sudoOrder
! 267: attribute. Based on changes from Andreas Mueller.
! 268:
! 269: * When run as sudoedit, or when given the -e flag, sudo now treats
! 270: command line arguments as pathnames. This means that slashes
! 271: in the sudoers file entry must explicitly match slashes in
! 272: the command line arguments. As a result, and entry such as:
! 273: user ALL = sudoedit /etc/*
! 274: will allow editing of /etc/motd but not /etc/security/default.
! 275:
! 276: * NETWORK_TIMEOUT is now an alias for BIND_TIMELIMIT in ldap.conf for
! 277: compatibility with OpenLDAP configuration files.
! 278:
! 279: * The LDAP API TIMEOUT parameter is now honored in ldap.conf.
! 280:
! 281: * The I/O log directory may now be specified in the sudoers file.
! 282:
! 283: * Sudo will no longer refuse to run if the sudoers file is writable
! 284: by root.
! 285:
! 286: * Sudo now performs command line escaping for "sudo -s" and "sudo -i"
! 287: after validating the command so the sudoers entries do not need
! 288: to include the backslashes.
! 289:
! 290: * Logging and email sending are now done in the locale specified
! 291: by the "sudoers_locale" setting ("C" by default). Email send by
! 292: sudo now includes MIME headers when "sudoers_locale" is not "C".
! 293:
! 294: * The configure script has a new option, --disable-env-reset, to
! 295: allow one to change the default for the sudoers Default setting
! 296: "env_reset" at compile time.
! 297:
! 298: * When logging "sudo -l command", sudo will now prepend "list "
! 299: to the command in the log line to distinguish between an
! 300: actual command invocation in the logs.
! 301:
! 302: * Double-quoted group and user names may now include escaped double
! 303: quotes as part of the name. Previously this was a parse error.
! 304:
! 305: * Sudo once again restores the state of the signal handlers it
! 306: modifies before executing the command. This allows sudo to be
! 307: used with the nohup command.
! 308:
! 309: * Resuming a suspended shell now works properly when I/O logging
! 310: is not enabled (the I/O logging case was already correct).
! 311:
! 312: What's new in Sudo 1.7.4p6?
! 313:
! 314: * A bug has been fixed in the I/O logging support that could cause
! 315: visual artifacts in full-screen programs such as text editors.
! 316:
! 317: What's new in Sudo 1.7.4p5?
! 318:
! 319: * A bug has been fixed that would allow a command to be run without the
! 320: user entering a password when sudo's -g flag is used without the -u flag.
! 321:
! 322: * If user has no supplementary groups, sudo will now fall back on checking
! 323: the group file explicitly, which restores historic sudo behavior.
! 324:
! 325: * A crash has been fixed when sudo's -g flag is used without the -u flag
! 326: and the sudoers file contains an entry with no runas user or group listed.
! 327:
! 328: * A crash has been fixed when the Solaris project support is enabled
! 329: and sudo's -g flag is used without the -u flag.
! 330:
! 331: * Sudo no longer exits with an error when support for auditing is
! 332: compiled in but auditing is not enabled.
! 333:
! 334: * Fixed a bug introduced in sudo 1.7.3 where the ticket file was not
! 335: being honored when the "targetpw" sudoers Defaults option was enabled.
! 336:
! 337: * The LOG_INPUT and LOG_OUTPUT tags in sudoers are now parsed correctly.
! 338:
! 339: * A crash has been fixed in "sudo -l" when sudo is built with auditing
! 340: support and the user is not allowed to run any commands on the host.
! 341:
! 342: What's new in Sudo 1.7.4p4?
! 343:
! 344: * A potential security issue has been fixed with respect to the handling
! 345: of sudo's -g command line option when -u is also specified. The flaw
! 346: may allow an attacker to run commands as a user that is not authorized
! 347: by the sudoers file.
! 348:
! 349: * A bug has been fixed where "sudo -l" output was incomplete if multiple
! 350: sudoers sources were defined in nsswitch.conf and there was an error
! 351: querying one of the sources.
! 352:
! 353: * The log_input, log_output, and use_pty sudoers options now work correctly
! 354: on AIX. Previously, sudo would hang if they were enabled.
! 355:
! 356: * The "make install" target now works correctly when sudo is built in a
! 357: directory other than the source directory.
! 358:
! 359: * The "runas_default" sudoers setting now works properly in a per-command
! 360: Defaults line.
! 361:
! 362: * Suspending and resuming the bash shell when PAM is in use now works
! 363: correctly. The SIGCONT signal was not propagated to the child process.
! 364:
! 365: What's new in Sudo 1.7.4p3?
! 366:
! 367: * A bug has been fixed where duplicate HOME environment variables could be
! 368: present when the env_reset setting was disabled and the always_set_home
! 369: setting was enabled in sudoers.
! 370:
! 371: * The value of sysconfdir is now substituted into the path to the sudoers.d
! 372: directory in the installed sudoers file.
! 373:
! 374: * Compilation problems on IRIX and other platforms have been fixed.
! 375:
! 376: * If multiple PAM "auth" actions are specified and the user enters ^C at
! 377: the password prompt, sudo will no longer prompt for a password for any
! 378: subsequent "auth" actions. Previously it was necessary to enter ^C for
! 379: each "auth" action.
! 380:
! 381: What's new in Sudo 1.7.4p2?
! 382:
! 383: * A bug where sudo could spin in a busy loop waiting for the child process
! 384: has been fixed.
! 385:
! 386: What's new in Sudo 1.7.4p1?
! 387:
! 388: * A bug introduced in sudo 1.7.3 that prevented the -k and -K options from
! 389: functioning when the tty_tickets sudoers option is enabled has been fixed.
! 390:
! 391: * Sudo no longer prints a warning when the -k or -K options are specified
! 392: and the ticket file does not exist.
! 393:
! 394: * It is now easier to cross-compile sudo.
! 395:
! 396: What's new in Sudo 1.7.4?
! 397:
! 398: * Sudoedit will now preserve the file extension in the name of the
! 399: temporary file being edited. The extension is used by some
! 400: editors (such as emacs) to choose the editing mode.
! 401:
! 402: * Time stamp files have moved from /var/run/sudo to either /var/db/sudo,
! 403: /var/lib/sudo or /var/adm/sudo. The directories are checked for
! 404: existence in that order. This prevents users from receiving the
! 405: sudo lecture every time the system reboots. Time stamp files older
! 406: than the boot time are ignored on systems where it is possible to
! 407: determine this.
! 408:
! 409: * The tty_tickets sudoers option is now enabled by default.
! 410:
! 411: * Ancillary documentation (README files, LICENSE, etc) is now installed
! 412: in a sudo documentation directory.
! 413:
! 414: * Sudo now recognizes "tls_cacert" as an alias for "tls_cacertfile"
! 415: in ldap.conf.
! 416:
! 417: * Defaults settings that are tied to a user, host or command may
! 418: now include the negation operator. For example:
! 419: Defaults:!millert lecture
! 420: will match any user but millert.
! 421:
! 422: * The default PATH environment variable, used when no PATH variable
! 423: exists, now includes /usr/sbin and /sbin.
! 424:
! 425: * Sudo now uses polypkg (http://rc.quest.com/topics/polypkg/)
! 426: for cross-platform packing.
! 427:
! 428: * On Linux, sudo will now restore the nproc resource limit before
! 429: executing a command, unless the limit appears to have been modified
! 430: by pam_limits. This avoids a problem with bash scripts that open
! 431: more than 32 descriptors on SuSE Linux, where sysconf(_SC_CHILD_MAX)
! 432: will return -1 when RLIMIT_NPROC is set to RLIMIT_UNLIMITED (-1).
! 433:
! 434: * The HOME and MAIL environment variables are now reset based on the
! 435: target user's password database entry when the env_reset sudoers option
! 436: is enabled (which is the case in the default configuration). Users
! 437: wishing to preserve the original values should use a sudoers entry like:
! 438: Defaults env_keep += HOME
! 439: to preserve the old value of HOME and
! 440: Defaults env_keep += MAIL
! 441: to preserve the old value of MAIL.
! 442:
! 443: * Fixed a problem in the restoration of the AIX authdb registry setting.
! 444:
! 445: * Sudo will now fork(2) and wait until the command has completed before
! 446: calling pam_close_session().
! 447:
! 448: * The default syslog facility is now "authpriv" if the operating system
! 449: supports it, else "auth".
! 450:
! 451: What's new in Sudo 1.7.3?
! 452:
! 453: * Support for logging I/O for the command being run.
! 454: For more information, see the documentation for the "log_input"
! 455: and "log_output" Defaults options in the sudoers manual. Also
! 456: see the sudoreplay manual for how to replay I/O log sessions.
! 457:
! 458: * The use_pty sudoers option can be used to force a command to be
! 459: run in a pseudo-pty, even when I/O logging is not enabled.
! 460:
! 461: * On some systems, sudo can now detect when a user has logged out
! 462: and back in again when tty-based time stamps are in use. Supported
! 463: systems include Solaris systems with the devices file system,
! 464: Mac OS X, and Linux systems with the devpts filesystem (pseudo-ttys
! 465: only).
! 466:
! 467: * On AIX systems, the registry setting in /etc/security/user is
! 468: now taken into account when looking up users and groups. Sudo
! 469: now applies the correct the user and group ids when running a
! 470: command as a user whose account details come from a different
! 471: source (e.g. LDAP or DCE vs. local files).
! 472:
! 473: * Support for multiple 'sudoers_base' and 'uri' entries in ldap.conf.
! 474: When multiple entries are listed, sudo will try each one in the
! 475: order in which they are specified.
! 476:
! 477: * Sudo's SELinux support should now function correctly when running
! 478: commands as a non-root user and when one of stdin, stdout or stderr
! 479: is not a terminal.
! 480:
! 481: * Sudo will now use the Linux audit system with configure with
! 482: the --with-linux-audit flag.
! 483:
! 484: * Sudo now uses mbr_check_membership() on systems that support it
! 485: to determine group membership. Currently, only Darwin (Mac OS X)
! 486: supports this.
! 487:
! 488: * When the tty_tickets sudoers option is enabled but there is no
! 489: terminal device, sudo will no longer use or create a tty-based
! 490: ticket file. Previously, sudo would use a tty name of "unknown".
! 491: As a consequence, if a user has no terminal device, sudo will
! 492: now always prompt for a password.
! 493:
! 494: * The passwd_timeout and timestamp_timeout options may now be
! 495: specified as floating point numbers for more granular timeout
! 496: values.
! 497:
! 498: * Negating the fqdn option in sudoers now works correctly when sudo
! 499: is configured with the --with-fqdn option. In previous versions
! 500: of sudo the fqdn was set before sudoers was parsed.
! 501:
! 502: What's new in Sudo 1.7.2?
! 503:
! 504: * A new #includedir directive is available in sudoers. This can be
! 505: used to implement an /etc/sudo.d directory. Files in an includedir
! 506: are not edited by visudo unless they contain a syntax error.
! 507:
! 508: * The -g option did not work properly when only setting the group
! 509: (and not the user). Also, in -l mode the wrong user was displayed
! 510: for sudoers entries where only the group was allowed to be set.
! 511:
! 512: * Fixed a problem with the alias checking in visudo which
! 513: could prevent visudo from exiting.
! 514:
! 515: * Sudo will now correctly parse the shell-style /etc/environment
! 516: file format used by pam_env on Linux.
! 517:
! 518: * When doing password and group database lookups, sudo will only
! 519: cache an entry by name or by id, depending on how the entry was
! 520: looked up. Previously, sudo would cache by both name and id
! 521: from a single lookup, but this breaks sites that have multiple
! 522: password or group database names that map to the same uid or
! 523: gid.
! 524:
! 525: * User and group names in sudoers may now be enclosed in double
! 526: quotes to avoid having to escape special characters.
! 527:
! 528: * BSM audit fixes when changing to a non-root uid.
! 529:
! 530: * Experimental non-Unix group support. Currently only works with
! 531: Quest Authorization Services and allows Active Directory groups
! 532: fixes for Minix-3.
! 533:
! 534: * For Netscape/Mozilla-derived LDAP SDKs the certificate and key
! 535: paths may be specified as a directory or a file. However, version
! 536: 5.0 of the SDK only appears to support using a directory (despite
! 537: documentation to the contrary). If SSL client initialization
! 538: fails and the certificate or key paths look like they could be
! 539: default file name, strip off the last path element and try again.
! 540:
! 541: * A setenv() compatibility fix for Linux systems, where a NULL
! 542: value is treated the same as an empty string and the variable
! 543: name is checked against the NULL pointer.
! 544:
! 545: What's new in Sudo 1.7.1?
! 546:
! 547: * A new Defaults option "pwfeedback" will cause sudo to provide visual
! 548: feedback when the user is entering a password.
! 549:
! 550: * A new Defaults option "fast_glob" will cause sudo to use the fnmatch()
! 551: function for file name globbing instead of glob(). When this option
! 552: is enabled, sudo will not check the file system when expanding wildcards.
! 553: This is faster but a side effect is that relative paths with wildcard
! 554: will no longer work.
! 555:
! 556: * New BSM audit support for systems that support it such as FreeBSD
! 557: and Mac OS X.
! 558:
! 559: * The file name specified with the #include directive may now include
! 560: a %h escape which is expanded to the short form of hostname.
! 561:
! 562: * The -k flag may now be specified along with a command, causing the
! 563: user's timestamp file to be ignored.
! 564:
! 565: * New support for Tivoli-based LDAP START_TLS, present in AIX.
! 566:
! 567: * New support for /etc/netsvc.conf on AIX.
! 568:
! 569: * The unused alias checks in visudo now handle the case of an alias
! 570: referring to another alias.
! 571:
! 572: What's new in Sudo 1.7.0?
! 573:
! 574: * Rewritten parser that converts sudoers into a set of data structures.
! 575: This eliminates a number of ordering issues and makes it possible to
! 576: apply sudoers Defaults entries before searching for the command.
! 577: It also adds support for per-command Defaults specifications.
! 578:
! 579: * Sudoers now supports a #include facility to allow the inclusion of other
! 580: sudoers-format files.
! 581:
! 582: * Sudo's -l (list) flag has been enhanced:
! 583: o applicable Defaults options are now listed
! 584: o a command argument can be specified for testing whether a user
! 585: may run a specific command.
! 586: o a new -U flag can be used in conjunction with "sudo -l" to allow
! 587: root (or a user with "sudo ALL") list another user's privileges.
! 588:
! 589: * A new -g flag has been added to allow the user to specify a
! 590: primary group to run the command as. The sudoers syntax has been
! 591: extended to include a group section in the Runas specification.
! 592:
! 593: * A uid may now be used anywhere a username is valid.
! 594:
! 595: * The "secure_path" run-time Defaults option has been restored.
! 596:
! 597: * Password and group data is now cached for fast lookups.
! 598:
! 599: * The file descriptor at which sudo starts closing all open files is now
! 600: configurable via sudoers and, optionally, the command line.
! 601:
! 602: * Visudo will now warn about aliases that are defined but not used.
! 603:
! 604: * The -i and -s command line flags now take an optional command
! 605: to be run via the shell. Previously, the argument was passed
! 606: to the shell as a script to run.
! 607:
! 608: * Improved LDAP support. SASL authentication may now be used in
! 609: conjunction when connecting to an LDAP server. The krb5_ccname
! 610: parameter in ldap.conf may be used to enable Kerberos.
! 611:
! 612: * Support for /etc/nsswitch.conf. LDAP users may now use nsswitch.conf
! 613: to specify the sudoers order. E.g.:
! 614: sudoers: ldap files
! 615: to check LDAP, then /etc/sudoers. The default is "files", even
! 616: when LDAP support is compiled in. This differs from sudo 1.6
! 617: where LDAP was always consulted first.
! 618:
! 619: * Support for /etc/environment on AIX and Linux. If sudo is run
! 620: with the -i flag, the contents of /etc/environment are used to
! 621: populate the new environment that is passed to the command being
! 622: run.
! 623:
! 624: * If no terminal is available or if the new -A flag is specified,
! 625: sudo will use a helper program to read the password if one is
! 626: configured. Typically, this is a graphical password prompter
! 627: such as ssh-askpass.
! 628:
! 629: * A new Defaults option, "mailfrom" that sets the value of the
! 630: "From:" field in the warning/error mail. If unspecified, the
! 631: login name of the invoking user is used.
! 632:
! 633: * A new Defaults option, "env_file" that refers to a file containing
! 634: environment variables to be set in the command being run.
! 635:
! 636: * A new flag, -n, may be used to indicate that sudo should not
! 637: prompt the user for a password and, instead, exit with an error
! 638: if authentication is required.
! 639:
! 640: * If sudo needs to prompt for a password and it is unable to disable
! 641: echo (and no askpass program is defined), it will refuse to run
! 642: unless the "visiblepw" Defaults option has been specified.
! 643:
! 644: * Prior to version 1.7.0, hitting enter/return at the Password: prompt
! 645: would exit sudo. In sudo 1.7.0 and beyond, this is treated as
! 646: an empty password. To exit sudo, the user must press ^C or ^D
! 647: at the prompt.
! 648:
! 649: * visudo will now check the sudoers file owner and mode in -c (check)
! 650: mode when the -s (strict) flag is specified.
! 651:
! 652: * A new Defaults option "umask_override" will cause sudo to set the
! 653: umask specified in sudoers even if it is more permissive than the
! 654: invoking user's umask.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>