Lines Matching refs:user
137 process::isolate_child(const optional< passwd::user >& unprivileged_user, in isolate_child()
152 const passwd::user& user = unprivileged_user.get(); in isolate_child() local
154 if (user.gid != ::getgid()) { in isolate_child()
155 if (::setgid(user.gid) == -1) in isolate_child()
157 % user.gid % ::getuid() % ::getgid(), errno); in isolate_child()
160 groups[0] = user.gid; in isolate_child()
163 % user.gid % ::getuid() % ::getgid(), errno); in isolate_child()
166 if (user.uid != ::getuid()) { in isolate_child()
167 if (::setuid(user.uid) == -1) in isolate_child()
169 % user.uid % ::getuid() % ::getgid(), errno); in isolate_child()
187 process::isolate_path(const optional< passwd::user >& unprivileged_user, in isolate_path()
192 const passwd::user& user = unprivileged_user.get(); in isolate_path() local
194 const bool change_group = user.gid != ::getgid(); in isolate_path()
195 const bool change_user = user.uid != ::getuid(); in isolate_path()
200 do_chown(file, user.uid, user.gid); in isolate_path()
202 do_chown(file, ::getuid(), user.gid); in isolate_path()
205 do_chown(file, user.uid, ::getgid()); in isolate_path()