#include "dirs.h"
#include "dpif.h"
#include "dummy.h"
+#include "fatal-signal.h"
#include "memory.h"
#include "netdev.h"
#include "openflow/openflow.h"
#include "ovsdb-idl.h"
#include "poll-loop.h"
-#include "process.h"
-#include "signals.h"
#include "simap.h"
#include "stream-ssl.h"
#include "stream.h"
{
char *unixctl_path = NULL;
struct unixctl_server *unixctl;
- struct signal *sighup;
char *remote;
bool exiting;
int retval;
set_program_name(argv[0]);
service_start(&argc, &argv);
remote = parse_options(argc, argv, &unixctl_path);
- signal(SIGPIPE, SIG_IGN);
- sighup = signal_register(SIGHUP);
- process_init();
+ fatal_ignore_sigpipe();
ovsrec_init();
daemonize_start();
exiting = false;
while (!exiting) {
- if (signal_poll(sighup)) {
- vlog_reopen_log_file();
- }
memory_run();
if (memory_should_report()) {
struct simap usage;
unixctl_server_run(unixctl);
netdev_run();
- signal_wait(sighup);
memory_wait();
bridge_wait();
unixctl_server_wait(unixctl);