Modified: trunk/base/src/port1.0/portutil.tcl (81629 => 81630)
--- trunk/base/src/port1.0/portutil.tcl 2011-08-03 05:33:54 UTC (rev 81629)
+++ trunk/base/src/port1.0/portutil.tcl 2011-08-03 06:13:57 UTC (rev 81630)
@@ -2075,6 +2075,7 @@
return
} elseif {[geteuid] != 0} {
seteuid 0; setegid 0
+ set escalated 1
}
set passwd {*}
@@ -2117,6 +2118,10 @@
ui_warn "adduser is not implemented on ${os.platform}."
ui_warn "The requested user '$name' was not created."
}
+
+ if {[info exists escalated]} {
+ dropPrivileges
+ }
}
proc addgroup {name args} {
@@ -2128,6 +2133,7 @@
return
} elseif {[geteuid] != 0} {
seteuid 0; setegid 0
+ set escalated 1
}
set gid [nextgid]
@@ -2158,6 +2164,10 @@
ui_warn "addgroup is not implemented on ${os.platform}."
ui_warn "The requested group was not created."
}
+
+ if {[info exists escalated]} {
+ dropPrivileges
+ }
}
# proc to calculate size of a directory