-# Copyright (c) 2010, 2011 Nicira Networks
+# Copyright (c) 2010, 2011, 2012 Nicira, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
_pidfile = make_pidfile_name(name)
-def get_pidfile():
- """Returns an absolute path to the configured pidfile, or None if no
- pidfile is configured."""
- return _pidfile
-
-
def set_no_chdir():
"""Sets that we do not chdir to "/"."""
global _chdir
_chdir = False
-def is_chdir_enabled():
- """Will we chdir to "/" as part of daemonizing?"""
- return _chdir
-
-
def ignore_existing_pidfile():
"""Normally, daemonize() or daemonize_start() will terminate the program
with a message if a locked pidfile already exists. If this function is
if _fork_and_wait_for_startup() > 0:
# Running in parent process.
sys.exit(0)
+
# Running in daemon or monitor process.
+ os.setsid()
if _monitor:
saved_daemonize_fd = _daemonize_fd
_fork_notify_startup(_daemonize_fd)
if _detach:
- os.setsid()
if _chdir:
os.chdir("/")
_close_standard_fds()