diff options
| author | Grant Limberg <grant.limberg@zerotier.com> | 2016-11-16 16:23:56 -0800 |
|---|---|---|
| committer | Grant Limberg <grant.limberg@zerotier.com> | 2016-11-16 16:23:56 -0800 |
| commit | b4bacd50a1ae70d53d16aef6880aa1fc6870bd8c (patch) | |
| tree | 21fd07022eff4a5debd4cc37da02f22660348237 /osdep/LinuxDropPrivileges.cpp | |
| parent | 6445337a32f5470e84bb9b139c25697e22d492f6 (diff) | |
| parent | 3c248ec61a732f539dcf0c9ea3d92ae8f42b62fe (diff) | |
| download | infinitytier-b4bacd50a1ae70d53d16aef6880aa1fc6870bd8c.tar.gz infinitytier-b4bacd50a1ae70d53d16aef6880aa1fc6870bd8c.zip | |
Merge branch 'dev' into systemtray
Diffstat (limited to 'osdep/LinuxDropPrivileges.cpp')
| -rw-r--r-- | osdep/LinuxDropPrivileges.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/osdep/LinuxDropPrivileges.cpp b/osdep/LinuxDropPrivileges.cpp index dab85bd8..e2688e65 100644 --- a/osdep/LinuxDropPrivileges.cpp +++ b/osdep/LinuxDropPrivileges.cpp @@ -102,6 +102,8 @@ void dropPrivileges(std::string homeDir) { return; } + createOwnedHomedir(homeDir, targetUser); + if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_IS_SET, CAP_NET_RAW, 0, 0) < 0) { // Kernel has no support for ambient capabilities. notDropping(homeDir); @@ -113,8 +115,6 @@ void dropPrivileges(std::string homeDir) { return; } - createOwnedHomedir(homeDir, targetUser); - if (setCapabilities((1 << CAP_NET_ADMIN) | (1 << CAP_NET_RAW) | (1 << CAP_SETUID) | (1 << CAP_SETGID)) < 0) { fprintf(stderr, "ERROR: failed to set capabilities (not running as real root?)\n"); exit(1); |
