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