Todd C. Miller
f9f4aca556
Add support for runas groups. This allows the user to run a command
...
with a different effective group. If the -g option is specified
without -u the command will be run as the current user (only the
group will change). the -g and -u options may be used together.
TODO: implement runas group for ldap
improve runas group documentation
add testsudoers support
2007-11-21 20:12:00 +00:00
Todd C. Miller
4f5e88532f
PAM wants the full tty path so add user_ttypath which holds the
...
full path to the tty or is NULL if no tty was present.
2007-09-13 23:05:34 +00:00
Todd C. Miller
19fa259480
Remove support for compilers that don't support void *
2007-08-31 23:30:07 +00:00
Todd C. Miller
fa6536920b
Be consistent when using single quotes and backticks.
2007-08-20 14:46:40 +00:00
Todd C. Miller
2315b317e2
Add new linebuf code to do appends of dynamically allocated strings
...
and word-wrapped output. Currently used for sudo's usage() and
sudo -l output. Sudo usage strings are now in sudo_usage.h which
is generated at configure time.
2007-08-19 20:48:09 +00:00
Todd C. Miller
d28030c9fd
Fix line wrapping in usage() and use the actual tty width instead of
...
assuming 80.
2007-08-18 12:22:16 +00:00
Todd C. Miller
317e600f41
Remove monitor support until there is a versino of systrace that
...
uses a lookaside buffer (or we have a better mechanism to use).
2007-08-15 15:20:01 +00:00
Todd C. Miller
72b36ddf50
use getaddrinfo() instead of gethostbyname() if it is available
2007-08-15 13:22:06 +00:00
Todd C. Miller
c939690786
Deal with OSes where sizeof(gid_t) < sizeof(int).
2007-08-14 19:27:27 +00:00
Todd C. Miller
580be13e74
If we can open sudoers but fail to read the first byte, close the
...
file stream before trying again.
2007-08-14 14:04:41 +00:00
Todd C. Miller
5cd49e1e00
Sort SYNOPSIS and sync usage. From Igor Sobrado.
2007-07-22 19:20:42 +00:00
Todd C. Miller
8f0f4743fd
rebuild_env() and insert_env_vars() no longer return environment pointer,
...
they set environ directly.
No longer need to pass around an envp pointer since we just operate
on environ now.
Add dosync argument to insert_env() that indicates whether it should
reset environ when realloc()ing env.envp.
Use an initial size of 128 for the environment.
2007-07-18 16:57:31 +00:00
Todd C. Miller
af18ed5e9d
Add support for krb5_ccname in ldap.conf. If specified, it will
...
override the default value of KRB5CCNAME in the environment for
the duration of the call to ldap_sasl_interactive_bind_s().
2007-07-15 19:44:46 +00:00
Todd C. Miller
6462c1edd2
Defer setting user-specified env vars until after authentication.
2007-07-09 19:13:38 +00:00
Todd C. Miller
87a95bb3a6
Allow user to set environment variables on the command line as long
...
as they are allowed by env_keep and env_check. Ie: apply the same
restrictions as normal environment variables.
TODO: deal with secure_path
2007-07-09 17:22:55 +00:00
Todd C. Miller
5919eb1fa6
Call rebuild_env() in call cases.
...
Pass original envp to sudo_edit().
Don't allow -E or env var setting in sudoedit mode.
More accurate usage() when called as sudoedit.
2007-07-08 18:44:28 +00:00
Todd C. Miller
6f1a9c0bc9
Do not update timestamp if user not validated by sudoers.
2007-07-06 18:51:43 +00:00
Todd C. Miller
3d321157a3
fix typo in Solaris project support
2007-07-01 20:55:14 +00:00
Todd C. Miller
49b66be51e
Make -- on the command line match the manual page.
...
The implied shell case has been simplified as a result.
2007-07-01 13:07:06 +00:00
Todd C. Miller
879c46e4dd
Add support for setting environment variables on the command line.
...
This is only allowed if the setenv sudoers options is enabled or if
the command is prefixed with the SETENV tag.
2007-06-23 23:58:54 +00:00
Todd C. Miller
60b7ac61bf
Add Solaris 10 "project" support. From Michael Brantley.
2007-06-19 22:24:51 +00:00
Todd C. Miller
4dcaba90a0
Don't force sudo into the C locale.
2007-06-18 12:57:21 +00:00
Todd C. Miller
7fb914ea0a
cleanenv() is no more.
2007-06-11 22:27:43 +00:00
Todd C. Miller
3f2b6b1460
-i is also one of the mutually exclusive options to list it in the
...
warning message. Noted by Chris Pepper.
2007-04-16 16:13:33 +00:00
Todd C. Miller
c28a289f11
Print sudoers path in -V mode for root.
2006-07-17 12:25:07 +00:00
Todd C. Miller
2d282cd226
cleanup() now takes an int as an arg so it can be used as a signal
...
handler too.
2005-11-18 01:39:59 +00:00
Todd C. Miller
c7140895af
Make a copy of the shell field in the passwd struct for NewArgv to avoid
...
a use after free situation after sudo_endpwent() is called.
2005-11-18 01:38:32 +00:00
Todd C. Miller
b2a32d13c0
Move sudo_end{gr,pw}ent() until just before the exec since they
...
free up our cached copy of the passwd structs, including sudo_user
and sudo_runas. Fixes a use-after-free bug.
2005-11-11 22:23:08 +00:00
Todd C. Miller
69c627658f
Enable malloc debugging on OpenBSD when SUDO_DEVEL is set.
2005-11-11 22:17:59 +00:00
Todd C. Miller
c7ea24f2cc
Add explicit cast from mode_t -> u_int in printf to silence warnings on Solaris
2005-04-24 23:24:58 +00:00
Todd C. Miller
f261a99f22
In -l mode, only check local sudoers file if def_ignore_sudoers is not set
...
and call LDAP versions from display_privs() and display_cmnd() instead
of directly from main(). Because of this we need to defer closing
the ldap connection until after -l processing has ocurred and we
must pass in the ldap pointer to display_privs() and display_cmnd().
2005-04-12 01:37:08 +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
9efe91fa1e
Move initgroups() for -U option into display_privs() so group matching
...
in sudoers works correctly.
2005-03-29 03:33:05 +00:00
Todd C. Miller
6bee8e3770
Just clean the environment once. This assumes that any further
...
setenv/putenv will be able to handle the fact that we replaced environ
with our own malloc'd copy but all the implementations I've checked do.
2005-02-20 16:48:05 +00:00
Todd C. Miller
87a8b5b48b
In -i mode, base the value of insert_env()'s dupcheck flag on DID_FOO flags.
...
Move checks for $HOME resetting into rebuild_env()
2005-02-16 04:16:22 +00:00
Todd C. Miller
74894ebf62
Move setting of user_path, user_shell, user_prompt and prev_user
...
into init_vars() since user_shell at least is needed there.
2005-02-13 05:33:59 +00:00
Todd C. Miller
b7068a4138
Fix some printf format mismatches on error.
2005-02-12 23:48:46 +00:00
Todd C. Miller
778d587063
Update copyright years.
2005-02-12 22:56:07 +00:00
Todd C. Miller
ab2e7bc267
Instead of zeroing out the environment, just prune out entries
...
based on the env_delete and env_check lists. Base building up
the new environment on the current environment and the variables
we removed initially.
2005-02-10 04:00:04 +00:00
Todd C. Miller
0b315c10d0
Set locale to "C" if locales are supported, just to be safe.
2005-02-10 03:24:00 +00:00
Todd C. Miller
d27f06b5f1
Alloc an extra slot in NewArgv. Removes the need to malloc an new
...
vector if execve() fails.
2005-02-08 03:50:42 +00:00
Todd C. Miller
9a890467a7
Use execve(2) and wrap the command in sh if we get ENOEXEC.
2005-02-07 04:16:28 +00:00
Todd C. Miller
3b8b88407f
Add __unused to rcsids
2005-01-27 15:42:30 +00:00
Todd C. Miller
840d51a160
s/-O/-C/
2005-01-18 00:41:31 +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
bb76440b4f
sort usage
2004-12-16 19:20:25 +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
f93cd1e97a
Fix last commit.
2004-12-10 02:07:27 +00:00
Todd C. Miller
07d74adfba
Make sure stdin, stdout and stderr are open and dup them to /dev/null
...
if not.
2004-12-10 00:26:22 +00:00