commit | 3c0be8a473c01a23f5413c88a3aa6e60b4772e5a | [log] [tgz] |
---|---|---|
author | Samuel Holland <samuel@sholland.net> | Sun Apr 12 16:00:16 2015 -0500 |
committer | Rob Landley <rob@landley.net> | Sun Apr 12 16:00:16 2015 -0500 |
tree | fd3732fc7edf71373bae4914ead3fc6219302182 | |
parent | 776aa3cb927f889a0481c2530128940c75984feb [diff] |
unshare: fix -r Calling unshare(2) immediately puts us in the new namespace with the "overflow" user and group ID. By calling geteuid() and getegid() in handle_r() after calling unshare(), we try to map that to root, which Linux refuses to let us do. What we really want to map to root is the caller's uid/gid in the original namespace. So we have to save them before calling unshare().