Todd C. Miller
9d6695ed43
Add "Auto-Submitted: auto-generated" line to sudo mail for rfc 3834.
2006-12-11 18:21:29 +00:00
Todd C. Miller
304dc46d7f
Add efree() for consistency with emalloc() et al. Allows us to rely
...
on C89 behavior (free(NULL) is valid) even on K&R.
2005-03-29 14:29:47 +00:00
Todd C. Miller
e7dcda7920
Make varargs usage consistent with the rest of the code.
2005-03-11 01:57:44 +00:00
Todd C. Miller
778d587063
Update copyright years.
2005-02-12 22:56:07 +00:00
Todd C. Miller
3b8b88407f
Add __unused to rcsids
2005-01-27 15:42:30 +00:00
Todd C. Miller
dfccf19338
g/c pwcache_init/pwcache_destroy
2005-01-05 19:43:36 +00:00
Todd C. Miller
a5d9296d25
Adapt to pwutil.c
2005-01-05 01:10:16 +00:00
Todd C. Miller
051a2110a4
Add closefrom sudoers option to start closing at a point other than 3.
...
Add closefrom_override sudoers option and -C sudo flag to allow the
user to specify a different closefrom starting point.
2004-12-16 18:33:49 +00:00
Todd C. Miller
2c2daa8eca
Use: #include <config.h>
...
Not: #include "config.h"
That way we get the correct config.h when build dir != src dir
2004-11-19 18:39:14 +00:00
Todd C. Miller
9846e562ad
Implement group caching and use the passwd and group caches throughout.
2004-11-16 04:24:11 +00:00
Todd C. Miller
51375f969f
Add local error/warning functions like err/warn but that call an additional
...
cleanup routine in the error case. This means we no longer need to compile
a special version of alloc.o for visudo.
2004-11-15 15:53:53 +00:00
Todd C. Miller
0b34123a8b
Create and use private versions of setpwent() and endpwent() that
...
set/end the shadow password file too.
2004-11-15 04:06:16 +00:00
Todd C. Miller
541908f1bd
A user can always list their own entries, even with -u.
...
Better error message when failing to list another user's entries.
2004-11-11 17:22:30 +00:00
Todd C. Miller
4549980664
Convert some bitwise AND to ISSET
2004-10-26 22:39:35 +00:00
Todd C. Miller
899e22194e
Add NO_STDERR flag.
2004-10-26 22:20:18 +00:00
Todd C. Miller
b0a49825eb
Preliminary changes to support nsr-tandem-nsk. Based on patches from
...
Tom Bates.
2004-05-17 20:08:46 +00:00
Todd C. Miller
3a2282c927
More to a less restrictive, ISC-style license.
2004-02-13 21:36:43 +00:00
Todd C. Miller
c4a8ab8b99
Use the SET, CLR and ISSET macros.
2004-01-29 22:33:58 +00:00
Todd C. Miller
e987e1152b
Don't truncate usernames to 8 characters in the log message.
2004-01-05 01:16:24 +00:00
Todd C. Miller
02f37dc2da
Add support for tuples in def_data.in; these are implemented as an
...
enum type. Currently there is only a single tuple enum but in the
future we may have one tuple enum per T_TUPLE entry in def_data.in.
Currently listpw, verifypw and lecture are tuples. This avoids the
need to have two entries (one ival, one str) for pwflags and syslog
values.
lecture is now a tuple with the following values: never, once, always
We no longer use both an int and string entry for syslog facilities
and priorities. Instead, there are logfac2str() and logpri2str()
functions that get used when we need to print the string values.
2003-12-30 22:31:30 +00:00
Todd C. Miller
6ad252765b
Create def_* macros for each defaults value so we no longer need
...
the def_{flag,ival,str,list,mode} macros (which have been removed).
This is a step toward more flexible data types in def_data.in.
2003-12-30 22:20:21 +00:00
Todd C. Miller
27ad285a03
Also exit waitpid() loop when pid == 0. Fixes a problem where the sudo
...
process would spin eating up CPU until sendmail finished when it has
to send mail.
2003-06-09 20:07:56 +00:00
Todd C. Miller
a76a79f6d7
add DARPA credit on affected files
2003-04-16 00:42:10 +00:00
Todd C. Miller
dcf1a5acce
Use warn/err and getprogname() throughout. The main exception is
...
openlog(). Since the admin may be filtering logs based on the
program name in the log files, hard code this to "sudo".
2003-04-02 18:25:30 +00:00
Todd C. Miller
fff31a8a56
g/c unused variable
2003-03-24 21:09:27 +00:00
Todd C. Miller
a7d746af2d
Fix boolean thinko in SIGCHLD reaper and call reapchild after sending
...
mail instead of doing a conditional sudo_waitpid.
2003-03-20 02:04:32 +00:00
Todd C. Miller
48229cbac6
update copyright year
2003-03-15 20:31:02 +00:00
Todd C. Miller
f4b5af8dac
use pid_t
2003-03-15 00:43:51 +00:00
Todd C. Miller
fd140ff5da
minor sign fixes pointed out by gcc -Wsign-compare
2002-11-22 19:11:47 +00:00
Todd C. Miller
c289159953
g/c second arg to set_perms--it is no longer used
2002-05-05 00:43:38 +00:00
Todd C. Miller
261f819073
o when invoking the mailer as root use a hard-coded environment that
...
doesn't include any info from the user's environment. Basically
paranoia.
o Add support for the NO_ROOT_MAILER compile-time option and run the
mailer as the user and not root if NO_ROOT_MAILER is defined.
2002-01-16 21:28:25 +00:00
Todd C. Miller
ddf96f301d
Use set_perms(PERM_FULL_ROOT, 0) before exec'ing the mailer since we never
...
want to run the mailer setuid.
2002-01-13 18:27:25 +00:00
Todd C. Miller
3d723eda82
Fix compilation on K&C
2001-12-14 23:33:38 +00:00
Todd C. Miller
65fad4df35
o Reorder some headers and use STDC_HEADERS define properly
...
o Update copyright year
2001-12-14 19:52:54 +00:00
Todd C. Miller
241cb64cc4
Kill POSIX_SIGNALS define and old signal support now that we emulate POSIX ones
...
Also be sure to correctly initialize struct sigaction.
2001-12-08 19:44:30 +00:00
Todd C. Miller
1fbc786d66
when setting up pipes in child process check for case where stdin == pipe fd 0
2001-10-16 05:35:26 +00:00
Todd C. Miller
b31b73f071
In log_error() free message, not logline unconditionally, then
...
free logline if it is not the same as message. No function change
but this mirrors how they are allocated.
2001-08-23 21:42:31 +00:00
Todd C. Miller
11127e3468
Use setpwent()/endpwent() + all the shadow variants to make sure
...
we don't inadvertantly leak an fd to the child. Apparently Linux's
shadow routines leave the fd open even if you don't call setspent().
Reported by mike@gistnet.com ; different patch used.
2001-05-10 18:55:12 +00:00
Todd C. Miller
9dd02e2fb9
Fix a non-exploitable buffer overflow in the word splitting code. This
...
should really be rewritten.
2001-04-13 01:41:57 +00:00
Todd C. Miller
d956d77528
Move defaults info into its own files from which we generate
...
.h and .c files. This makes adding or rearranging variables
much simpler.
2000-12-31 01:38:37 +00:00
Todd C. Miller
2ad0d64a1a
Fix errant ';' (typo) that broken MSG_ONLY
2000-10-27 22:35:42 +00:00
Todd C. Miller
2ff3a2315e
Don't use vsyslog(3) since HP-UX (and others?) lack it. This means
...
that "%m" won't be expanded but we don't use that anyway since the
logging routines may splat to stderr as well.
2000-09-07 14:43:26 +00:00
Todd C. Miller
455f27816f
Bracket calls to syslog with an openlog() and closelog() since some
...
authentication methods (like PAM) may do their own logging via
syslog. Since we don't use syslog much (usually just once per
session) this doesn't really incur a performance penalty.
It also Fixes a SEGV with pam_kafs.
2000-04-17 18:01:14 +00:00
Todd C. Miller
a6ad7f071c
Get rid of grandchild hack, it was causing problems and there is really
...
no need for it. This fixes a bug where we spin eating up CPU when the
user runs a long-running process like a shell.
2000-03-13 16:05:05 +00:00
Todd C. Miller
deab20a57f
mail_if_foo -> mail_foo
1999-10-09 05:01:48 +00:00
Todd C. Miller
1296f28845
The exit() in log_error() was mistakenly removed in a previous version.
...
Put it back...
1999-10-08 01:12:02 +00:00
Todd C. Miller
7769bf6a32
o Change defaults stuff to put the value right in the struct.
...
o Implement mailer_flags
o Store syslog stuff both in int and string form. Setting the string
form magically updates the int version.
o Add boolean attribute to strings where it makes sense to say !foo
1999-10-07 21:21:08 +00:00
Todd C. Miller
f7e23611be
Use strftime() instead of ctime() if it is available.
1999-09-15 09:15:33 +00:00
Todd C. Miller
80ac47fb07
add log_year option
1999-09-14 16:56:32 +00:00
Todd C. Miller
13bf42675d
Add support for "Defaults" line in sudoers to make configuration variables
...
changable at runtime (and on a global, per-host and per-user basis).
Both the names and the internal representation are still subject to change.
It was necessary to make sudo_user.runas but a char ** instead of a
char * since this value can be changed by a Defaults line. There is a
similar (but more complicated) issue with sudo_user.prompt but it
is handled differently at the moment.
Add a "-L" flag to list the name of options with their descriptions. This
may only be temporary.
Move some prototypes to parse.h
Be much less restrictive on what is allowed for a username.
1999-09-08 08:06:28 +00:00