Todd C. Miller [Sat, 21 Jun 2008 00:34:47 +0000 (00:34 +0000)]
Change how the mailer is waited for. Instead of having a SIGCHLD
handler, use the double fork trick to orphan the child that opens
the pipe to sendmail. Fixes a problem running su on some Linux distros.
Todd C. Miller [Wed, 11 Jun 2008 01:13:39 +0000 (01:13 +0000)]
Ignore SIGPIPE instead of blocking it when piping to the mailer. If we
only block the signal it may be delivered later when we unblock.
Also, there is no need to block SIGCHLD since we no longer do the
double fork. The normal SIGCHLD handler is sufficient.
Todd C. Miller [Thu, 8 May 2008 16:49:12 +0000 (16:49 +0000)]
Initialize tags to UNSPEC instead of def_* in "sudo -l" mode.
This fixes a problem where the tag value printed was influenced
by defaults set in the first pass through the parser.
Todd C. Miller [Wed, 26 Mar 2008 17:11:53 +0000 (17:11 +0000)]
It turns out the logic for getting AIX limits is more convoluted
than I realized and differs depending on whether the soft and/or
hard limits are defined.
Todd C. Miller [Sun, 23 Mar 2008 14:18:56 +0000 (14:18 +0000)]
Back out AIX-specific change to set the sudo_noexec path to the .a
file, we do really want to use the .so file. Since libtool doesn't
do that correctly, just install the .so file ourselves in the Makefile.
Todd C. Miller [Tue, 18 Mar 2008 20:08:46 +0000 (20:08 +0000)]
parse_args() cleanup:
Sort command line options in the getopt() switch
The -U option requires a parameter
Normalize a few ISSET calls
Split mode into mode and flags and retire the now-obsolete excl variable
Todd C. Miller [Wed, 12 Mar 2008 23:42:32 +0000 (23:42 +0000)]
Use getopt() to parse the command line. We need to be able to
intersperse env variables and options yet still honor "--""
which complicates things slightly.
Todd C. Miller [Wed, 5 Mar 2008 20:19:50 +0000 (20:19 +0000)]
When adding a default, only call list2tq() once to do the list to
tq conversion. It is not legal to call list2tq multiple times on
the same list since list2tq consumes and modifies the list argument.
Todd C. Miller [Wed, 27 Feb 2008 14:26:28 +0000 (14:26 +0000)]
Disable use of gss_krb5_ccache_name() by default and add
--enable-gss-krb5-ccache-name configure option to enable it. It
seems that gss_krb5_ccache_name() doesn't work properly with some
combinations of Heimdal and OpenLDAP.
Todd C. Miller [Fri, 22 Feb 2008 20:19:34 +0000 (20:19 +0000)]
Only set std_prompt for the PAM_PROMPT_* cases. The conversation function
may be called for non-password reading purposes so we must be careful
not to use def_prompt in cases where it may not be set.
Todd C. Miller [Mon, 18 Feb 2008 15:42:43 +0000 (15:42 +0000)]
Remove the =cut on the first line (above the copyright notice) to quiet
pod2man. Also remove the hackery in the FILES section and just deal
with the fact that there will a newline between each pathname.
Todd C. Miller [Wed, 13 Feb 2008 12:28:37 +0000 (12:28 +0000)]
Remove dependence on VALIDATE_NOT_OK in logging functions.
Split log_auth() into log_allowed() and log_denial()
Replace mail_auth() with should_mail() and a call to send_mail()
Todd C. Miller [Sat, 9 Feb 2008 14:30:07 +0000 (14:30 +0000)]
Add support for SELinux RBAC. Sudoers entries may specify a role and type.
There are also role and type defaults that may be used. To make sure a
transition occurs, when using RBAC commands are executed via the new sesh
binary. Based on initial changes from Dan Walsh.
Todd C. Miller [Sat, 9 Feb 2008 14:30:06 +0000 (14:30 +0000)]
Add support for SELinux RBAC. Sudoers entries may specify a role and type.
There are also role and type defaults that may be used. To make sure a
transition occurs, when using RBAC commands are executed via the new sesh
binary. Based on initial changes from Dan Walsh.