X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=daemon.h;h=c0a9f20c9b902fa1eb41e129663978e52a2655e7;hp=11035b50b9dc2636b7a60d717907c2e91be7c560;hb=8221397af24a2df3c2edbc889847ce0ab15eb3e0;hpb=2ed89c59f0efcd0a2763f47c7d3455663241e623 diff --git a/daemon.h b/daemon.h index 11035b50..c0a9f20c 100644 --- a/daemon.h +++ b/daemon.h @@ -1,12 +1,32 @@ /** \file daemon.h exported symbols from daemon.c */ -void daemon_init(void); -FILE *open_log(const char *logfile_name); -void close_log(FILE* logfile); +void daemonize(void); +void daemon_open_log_or_die(void); +void daemon_close_log(void); void log_welcome(const char *whoami, int loglevel); -void para_drop_privileges(const char *username); +void drop_privileges_or_die(const char *username, const char *groupname); /** used for server_uptime() */ enum uptime {UPTIME_SET, UPTIME_GET}; time_t server_uptime(enum uptime set_or_get); __malloc char *uptime_str(void); +void daemon_set_logfile(char *logfile_name); +void daemon_set_flag(unsigned flag); +void daemon_clear_flag(unsigned flag); +void daemon_set_loglevel(int loglevel); +void daemon_set_default_log_colors(void); +int daemon_set_log_color(char const *arg); + +/** Daemon log configuration flags. */ +enum daemon_flags { + /** Whether the hostname should be logged. */ + DF_LOG_HOSTNAME = 1, + /** Whether the PID should be logged. */ + DF_LOG_PID = 2, + /** Prepend log message with date and time. */ + DF_LOG_TIME = 4, + /** Also print the loglevel for each message. */ + DF_LOG_LL = 8, + /** Use colored output. */ + DF_COLOR_LOG = 16, +};