Browse Source
Merge pull request #2274 from poplite/fix-su
Switch user before starting plugin server
pull/2275/head
Max Lv
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
11 additions and
11 deletions
-
src/server.c
|
|
@ -1927,6 +1927,17 @@ main(int argc, char **argv) |
|
|
|
ev_signal_start(EV_DEFAULT, &sigchld_watcher); |
|
|
|
#endif |
|
|
|
|
|
|
|
#ifndef __MINGW32__ |
|
|
|
// setuid |
|
|
|
if (user != NULL && !run_as(user)) { |
|
|
|
FATAL("failed to switch user"); |
|
|
|
} |
|
|
|
|
|
|
|
if (geteuid() == 0) { |
|
|
|
LOGI("running from root user"); |
|
|
|
} |
|
|
|
#endif |
|
|
|
|
|
|
|
// setup keys |
|
|
|
LOGI("initializing ciphers... %s", method); |
|
|
|
crypto = crypto_init(password, key, method); |
|
|
@ -2086,17 +2097,6 @@ main(int argc, char **argv) |
|
|
|
ev_timer_init(&block_list_watcher, block_list_clear_cb, UPDATE_INTERVAL, UPDATE_INTERVAL); |
|
|
|
ev_timer_start(EV_DEFAULT, &block_list_watcher); |
|
|
|
|
|
|
|
#ifndef __MINGW32__ |
|
|
|
// setuid |
|
|
|
if (user != NULL && !run_as(user)) { |
|
|
|
FATAL("failed to switch user"); |
|
|
|
} |
|
|
|
|
|
|
|
if (geteuid() == 0) { |
|
|
|
LOGI("running from root user"); |
|
|
|
} |
|
|
|
#endif |
|
|
|
|
|
|
|
// init block list |
|
|
|
init_block_list(); |
|
|
|
|
|
|
|