Trying to set GID after UID has changed is (probably) fails because of
missing privileges.
Change-Id: I89d90bf1d7e0433f0c98483f1c807e9de08e026c
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
"""Call a function/method with different uid/gid"""
# Set UID and GID
try:
+ if gid and gid > 0:
+ os.setresgid(gid, gid, gid)
if uid and uid > 0:
os.setresuid(uid, uid, uid)
# Set environment
os.environ['HOME'] = pwd.getpwuid(uid).pw_dir
- if gid and gid > 0:
- os.setresgid(gid, gid, gid)
except OSError as err:
ret_data_q.put(GbpServiceError("Setting UID/GID (%s:%s) failed: %s" %
(uid, gid, err)))