Author: glen                         Date: Tue Sep 14 21:15:20 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- restore to pre 1.7.4 behaviour of -H and $HOME ($MAIL)

---- Files affected:
packages/sudo:
   sudo.spec (1.172 -> 1.173) , bug-440.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/sudo/sudo.spec
diff -u packages/sudo/sudo.spec:1.172 packages/sudo/sudo.spec:1.173
--- packages/sudo/sudo.spec:1.172       Tue Sep 14 22:17:51 2010
+++ packages/sudo/sudo.spec     Tue Sep 14 23:15:15 2010
@@ -1,7 +1,4 @@
 # $Revision$, $Date$
-# TODO
-# - think of reverting 1.7.4 "behaviour" for -H and $HOME:
-#   http://www.gratisoft.us/bugzilla/show_bug.cgi?id=440
 #
 # Conditional build:
 %bcond_with    kerberos5       # enable Kerberos V support (conflicts with PAM)
@@ -25,7 +22,7 @@
 Summary(uk.UTF-8):     Дозволяє вказаним користувачам виконувати команди від 
імені root
 Name:          sudo
 Version:       1.7.4p4
-Release:       1
+Release:       2
 Epoch:         1
 License:       BSD
 Group:         Applications/System
@@ -36,6 +33,7 @@
 Source3:       %{name}.logrotate
 Patch0:                %{name}-libtool.patch
 Patch1:                %{name}-env.patch
+Patch2:                bug-440.patch
 URL:           http://www.sudo.ws/sudo/
 BuildRequires: autoconf >= 2.53
 BuildRequires: automake
@@ -147,6 +145,7 @@
 
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 %{__mv} install-sh install-custom-sh
@@ -264,6 +263,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.173  2010/09/14 21:15:15  glen
+- restore to pre 1.7.4 behaviour of -H and $HOME ($MAIL)
+
 Revision 1.172  2010/09/14 20:17:51  glen
 - upstream bug
 

================================================================
Index: packages/sudo/bug-440.patch
diff -u /dev/null packages/sudo/bug-440.patch:1.1
--- /dev/null   Tue Sep 14 23:15:20 2010
+++ packages/sudo/bug-440.patch Tue Sep 14 23:15:15 2010
@@ -0,0 +1,57 @@
+--- 1.7.4p4/env.c      Wed Aug 18 15:27:03 2010
++++ 1.7/env.c  Tue Sep 14 11:41:50 2010
+@@ -608,10 +608,16 @@
+ #ifdef ENV_DEBUG
+     memset(env.envp, 0, env.env_size * sizeof(char *));
+ #endif
+-    if (def_env_reset || ISSET(sudo_mode, MODE_LOGIN_SHELL)) {
+-      /* Reset HOME based on target user unless keeping old value. */
+-      reset_home = TRUE;
+ 
++    /* Reset HOME based on target user if configured to. */
++    if (ISSET(sudo_mode, MODE_RUN)) {
++      if (def_always_set_home ||
++          ISSET(sudo_mode, MODE_RESET_HOME | MODE_LOGIN_SHELL) || 
++          (ISSET(sudo_mode, MODE_SHELL) && def_set_home))
++          reset_home = TRUE;
++    }
++
++    if (def_env_reset || ISSET(sudo_mode, MODE_LOGIN_SHELL)) {
+       /* Pull in vars we want to keep from the old environment. */
+       for (ep = old_envp; *ep; ep++) {
+           int keepit;
+@@ -696,6 +702,11 @@
+           if (!ISSET(didvar, DID_USERNAME))
+               sudo_setenv("USERNAME", user_name, FALSE);
+       }
++
++      /* If we didn't keep HOME, reset it based on target user. */
++      if (!ISSET(didvar, KEPT_HOME))
++          reset_home = TRUE;
++
+       /*
+        * Set MAIL to target user in -i mode or if MAIL is not preserved
+        * from user's environment.
+@@ -709,13 +720,6 @@
+           sudo_putenv(cp, ISSET(didvar, DID_MAIL), TRUE);
+       }
+     } else {
+-      /* Reset HOME based on target user if configured to. */
+-      if (ISSET(sudo_mode, MODE_RUN)) {
+-          if (def_always_set_home || ISSET(sudo_mode, MODE_RESET_HOME) || 
+-              (ISSET(sudo_mode, MODE_SHELL) && def_set_home))
+-              reset_home = TRUE;
+-      }
+-
+       /*
+        * Copy environ entries as long as they don't match env_delete or
+        * env_check.
+@@ -765,7 +769,7 @@
+     }
+ 
+     /* Set $HOME to target user if not preserving user's value. */
+-    if (reset_home && !ISSET(didvar, KEPT_HOME))
++    if (reset_home)
+       sudo_setenv("HOME", runas_pw->pw_dir, TRUE);
+ 
+     /* Provide default values for $TERM and $PATH if they are not set. */
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/sudo/sudo.spec?r1=1.172&r2=1.173&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to