[shrpx] fix password handling for certs keys

We should only call daemon() after ListenHandler is
instantiated, where  SSL_CTX_use_PrivateKey_file is called,
otherwise we have no stdin/stdout to get the password for
keyfile.
This commit is contained in:
Raul Gutierrez Segales 2012-10-27 22:29:27 -07:00
parent 45f302f363
commit 6f6f6ffc41
1 changed files with 7 additions and 6 deletions

View File

@ -230,6 +230,13 @@ int event_loop()
ListenHandler *listener_handler = new ListenHandler(evbase); ListenHandler *listener_handler = new ListenHandler(evbase);
if(get_config()->daemon) {
if(daemon(0, 0) == -1) {
LOG(FATAL) << "Failed to daemonize: " << strerror(errno);
exit(EXIT_FAILURE);
}
}
// ListenHandler loads private key. After that, we drop the root // ListenHandler loads private key. After that, we drop the root
// privileges if needed. // privileges if needed.
drop_privileges(); drop_privileges();
@ -648,12 +655,6 @@ int main(int argc, char **argv)
mod_config()->use_syslog = true; mod_config()->use_syslog = true;
} }
if(get_config()->daemon) {
if(daemon(0, 0) == -1) {
LOG(FATAL) << "Failed to daemonize: " << strerror(errno);
exit(EXIT_FAILURE);
}
}
if(get_config()->pid_file) { if(get_config()->pid_file) {
save_pid(); save_pid();
} }