X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fdaemon.h;h=dd85b463185e14236446c13f780b2f74ad4d98ef;hb=4f1046117c54e60b8ef6b7b21c23d3a4bf2e61fb;hp=06280ac24c3dbf60d2874f1d64354a36d7f50306;hpb=eb077b264f0801971e02f1fdcd62241388c7448e;p=openvswitch diff --git a/lib/daemon.h b/lib/daemon.h index 06280ac2..dd85b463 100644 --- a/lib/daemon.h +++ b/lib/daemon.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009 Nicira Networks. + * Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,18 +21,19 @@ #include #include -enum { - OPT_DETACH = UCHAR_MAX + 2048, - OPT_NO_CHDIR, - OPT_OVERWRITE_PIDFILE, - OPT_PIDFILE, -}; +#define DAEMON_OPTION_ENUMS \ + OPT_DETACH, \ + OPT_NO_CHDIR, \ + OPT_OVERWRITE_PIDFILE, \ + OPT_PIDFILE, \ + OPT_MONITOR #define DAEMON_LONG_OPTIONS \ {"detach", no_argument, 0, OPT_DETACH}, \ {"no-chdir", no_argument, 0, OPT_NO_CHDIR}, \ {"pidfile", optional_argument, 0, OPT_PIDFILE}, \ - {"overwrite-pidfile", no_argument, 0, OPT_OVERWRITE_PIDFILE} + {"overwrite-pidfile", no_argument, 0, OPT_OVERWRITE_PIDFILE},\ + {"monitor", no_argument, 0, OPT_MONITOR} #define DAEMON_OPTION_HANDLERS \ case OPT_DETACH: \ @@ -49,6 +50,10 @@ enum { \ case OPT_OVERWRITE_PIDFILE: \ ignore_existing_pidfile(); \ + break; \ + \ + case OPT_MONITOR: \ + daemon_set_monitor(); \ break; char *make_pidfile_name(const char *name); @@ -58,7 +63,10 @@ void set_no_chdir(void); bool is_chdir_enabled(void); void set_detach(void); bool get_detach(void); +void daemon_set_monitor(void); void daemonize(void); +void daemonize_start(void); +void daemonize_complete(void); void die_if_already_running(void); void ignore_existing_pidfile(void); void daemon_usage(void);