projects
/
umurmur.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
README update. Now using Markdown syntax
[umurmur.git]
/
src
/
main.c
diff --git
a/src/main.c
b/src/main.c
index cef4f605a4d2e88877d7e488dbb83302e378f962..fce997a77a471f4201d3706e107f0e51ac1fee58 100644
(file)
--- a/
src/main.c
+++ b/
src/main.c
@@
-1,5
+1,5
@@
-/* Copyright (C) 2009-201
0
, Martin Johansson <martin@fatbob.nu>
- Copyright (C) 2005-201
0
, Thorvald Natvig <thorvald@natvig.com>
+/* Copyright (C) 2009-201
1
, Martin Johansson <martin@fatbob.nu>
+ Copyright (C) 2005-201
1
, Thorvald Natvig <thorvald@natvig.com>
All rights reserved.
All rights reserved.
@@
-29,7
+29,6
@@
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
@@
-163,8
+162,8
@@
void signal_handler(int sig)
{
switch(sig) {
case SIGHUP:
{
switch(sig) {
case SIGHUP:
- /* XXX - do stuff? */
- Log_
info("HUP signal"
);
+ Log_info("HUP signal received.");
+ Log_
reset(
);
break;
case SIGTERM:
Log_info("TERM signal. Shutting down.");
break;
case SIGTERM:
Log_info("TERM signal. Shutting down.");
@@
-277,28
+276,29
@@
int main(int argc, char **argv)
break;
}
}
break;
}
}
-
- /* Logging to terminal if not daemonizing, otherwise to syslog.
- * Need to initialize logging before calling Conf_init()
- */
- if (!nodaemon)
- Log_init(false);
- else
- Log_init(true);
/* Initialize the config subsystem early;
/* Initialize the config subsystem early;
- * switch_user() will need to read some config variables.
+ * switch_user() will need to read some config variables
as well as logging
.
*/
Conf_init(conffile);
*/
Conf_init(conffile);
-
+
+ /* Logging to terminal if not daemonizing, otherwise to syslog or log file.
+ */
if (!nodaemon) {
daemonize();
if (!nodaemon) {
daemonize();
+ Log_init(false);
if (pidfile != NULL)
lockfile(pidfile);
switch_user();
if (pidfile != NULL)
lockfile(pidfile);
switch_user();
- }
+ /* Reopen log file. If user switch results in access denied, we catch
+ * it early.
+ */
+ Log_reset();
+ }
+ else Log_init(true);
+
signal(SIGCHLD, SIG_IGN); /* ignore child */
signal(SIGTSTP, SIG_IGN); /* ignore tty signals */
signal(SIGTTOU, SIG_IGN);
signal(SIGCHLD, SIG_IGN); /* ignore child */
signal(SIGTSTP, SIG_IGN); /* ignore tty signals */
signal(SIGTTOU, SIG_IGN);