summaryrefslogtreecommitdiffstats
path: root/pym/portage_data.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2006-10-19 23:04:26 +0000
committerZac Medico <zmedico@gentoo.org>2006-10-19 23:04:26 +0000
commitbc419636d00e8ff7ce5acb08b5320fe41f8d29c8 (patch)
tree7ad9444c0cbbabfd56a4d29e42128b3e3b613038 /pym/portage_data.py
parentdf6da8be9378ad9afe7ab8a05894f6e4579737e9 (diff)
downloadportage-bc419636d00e8ff7ce5acb08b5320fe41f8d29c8.tar.gz
portage-bc419636d00e8ff7ce5acb08b5320fe41f8d29c8.tar.bz2
portage-bc419636d00e8ff7ce5acb08b5320fe41f8d29c8.zip
For userpriv, call setgroups with all groups that the portage user belongs to (bug #137610).
svn path=/main/trunk/; revision=4760
Diffstat (limited to 'pym/portage_data.py')
-rw-r--r--pym/portage_data.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/pym/portage_data.py b/pym/portage_data.py
index 3bbb1dd58..ba6000f94 100644
--- a/pym/portage_data.py
+++ b/pym/portage_data.py
@@ -3,6 +3,8 @@
# Distributed under the terms of the GNU General Public License v2
# $Id$
+if not hasattr(__builtins__, "set"):
+ from sets import Set as set
import os,pwd,grp
from portage_util import writemsg
@@ -107,3 +109,10 @@ if (uid!=0) and (portage_gid not in os.getgroups()):
writemsg(red("*** Please add this user to the portage group if you wish to use portage.\n"))
writemsg("\n")
portage_group_warning()
+
+userpriv_groups = [portage_gid]
+if secpass >= 2:
+ for g in grp.getgrall():
+ if "portage" in g[3]:
+ userpriv_groups.append(g[2])
+ userpriv_groups = list(set(userpriv_groups))