Commit Graph

63 Commits

Author SHA1 Message Date
Todd C. Miller
705c4c7515 Fix off by one error in number of bytes allocated via malloc (does not
affected any released version of sudo).
2001-12-31 05:53:23 +00:00
Todd C. Miller
087f5a7d56 Fix setting of $USER and $LOGNAME in the non-reset_env case.
Also allow HOME, SHELL, LOGNAME, and USER to be specified in keep_env
2001-12-18 17:42:37 +00:00
Todd C. Miller
46dd419cd9 o Reorder some headers and use STDC_HEADERS define properly
o Update copyright year
2001-12-14 19:52:47 +00:00
Todd C. Miller
2e677e1023 Remove "secure_path" Defaults option since it cannot work with the
existing parser.
2001-12-14 06:40:03 +00:00
Todd C. Miller
2cbd965d63 o Remove assumption that PATH and TERM are not listed in env_keep
o If no PATH is in the environment use a default value
o If TERM is not set in the non-reset case also give it a default
  value.
2001-12-14 06:24:26 +00:00
Todd C. Miller
199a17436d o Convert environment handling to use lists instead of strings.
This greatly simplifies routines that need to do "foreach" type
   operations.
 o Add new init_envtables() function to set env_check and env_delete
   defaults based on initial_badenv_table and initial_checkenv_table
   (formerly sudo_badenv_table).
2001-12-11 23:02:51 +00:00
Todd C. Miller
63ae9ec2ad Dump default bad env table when 'sudo -V' is run by root. 2001-11-12 18:08:30 +00:00
Todd C. Miller
65302649f5 Add support for '*' in env_keep when not resetting the environment
(ie: the normal case).
2001-11-12 04:51:57 +00:00
Todd C. Miller
ab020c056b Add env_delete variable that lets the user replace/add to the bad_env_table.
Allow '*' wildcard in env_keep entries.
2001-11-12 04:47:22 +00:00
Todd C. Miller
aeb8cefc42 glibc uses the LANGUAGE env var so clear that too; Solar Designer 2001-01-07 18:57:23 +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
1875e47474 Make env_keep override badenv_table as documented
Fix traversal of badenv_table (broken in last commit)
2000-12-30 21:22:08 +00:00
Todd C. Miller
998631b73a New Defaults options:
o stay_setuid - sudo will remain setuid if system has saved uids or setreuid(2)
 o env_reset - reset the environment to a sane default
 o env_keep - preserve environment variables that would otherwise be cleared

No longer use getenv/putenv/setenv functions--do environment munging by hand.
Potentially dangerous environment variables can be cleared only if they
contain '/' pr '%' characters to protect buggy programs.
Moved environment routines into env.c (new file)
2000-12-30 03:29:47 +00:00