mirror of https://github.com/fail2ban/fail2ban
- Create a PID file in /var/run/fail2ban/. Thanks to Julien Perez.
git-svn-id: https://fail2ban.svn.sourceforge.net/svnroot/fail2ban/branches/FAIL2BAN-0_8@647 a942ae1a-1317-0410-a47c-b1dcaea8d605_tent/ipv6_via_aInfo
parent
5e02f46174
commit
ae26b901ab
|
@ -29,6 +29,8 @@ ver. 0.8.2 (2008/??/??) - stable
|
||||||
2.3.
|
2.3.
|
||||||
- New log rotation detection algorithm.
|
- New log rotation detection algorithm.
|
||||||
- Print monitored files in status.
|
- Print monitored files in status.
|
||||||
|
- Create a PID file in /var/run/fail2ban/. Thanks to Julien
|
||||||
|
Perez.
|
||||||
|
|
||||||
ver. 0.8.1 (2007/08/14) - stable
|
ver. 0.8.1 (2007/08/14) - stable
|
||||||
----------
|
----------
|
||||||
|
|
|
@ -36,6 +36,8 @@ import logging, logging.handlers, sys, os, signal
|
||||||
logSys = logging.getLogger("fail2ban.server")
|
logSys = logging.getLogger("fail2ban.server")
|
||||||
|
|
||||||
class Server:
|
class Server:
|
||||||
|
|
||||||
|
PID_FILE = "/var/run/fail2ban/fail2ban.pid"
|
||||||
|
|
||||||
def __init__(self, daemon = False):
|
def __init__(self, daemon = False):
|
||||||
self.__loggingLock = Lock()
|
self.__loggingLock = Lock()
|
||||||
|
@ -57,6 +59,15 @@ class Server:
|
||||||
def start(self, sock, force = False):
|
def start(self, sock, force = False):
|
||||||
logSys.info("Starting Fail2ban v" + version.version)
|
logSys.info("Starting Fail2ban v" + version.version)
|
||||||
|
|
||||||
|
# Creates a PID file.
|
||||||
|
try:
|
||||||
|
logSys.debug("Creating PID file %s" % Server.PID_FILE)
|
||||||
|
pidFile = open(Server.PID_FILE, 'w')
|
||||||
|
pidFile.write("%s\n" % os.getpid())
|
||||||
|
pidFile.close()
|
||||||
|
except IOError, e:
|
||||||
|
logSys.error("Unable to create PID file: %s" % e)
|
||||||
|
|
||||||
# Install signal handlers
|
# Install signal handlers
|
||||||
signal.signal(signal.SIGTERM, self.__sigTERMhandler)
|
signal.signal(signal.SIGTERM, self.__sigTERMhandler)
|
||||||
signal.signal(signal.SIGINT, self.__sigTERMhandler)
|
signal.signal(signal.SIGINT, self.__sigTERMhandler)
|
||||||
|
@ -76,6 +87,12 @@ class Server:
|
||||||
self.__asyncServer.start(sock, force)
|
self.__asyncServer.start(sock, force)
|
||||||
except AsyncServerException, e:
|
except AsyncServerException, e:
|
||||||
logSys.error("Could not start server: %s", e)
|
logSys.error("Could not start server: %s", e)
|
||||||
|
# Removes the PID file.
|
||||||
|
try:
|
||||||
|
logSys.debug("Remove PID file %s" % Server.PID_FILE)
|
||||||
|
os.remove(Server.PID_FILE)
|
||||||
|
except OSError, e:
|
||||||
|
logSys.error("Unable to remove PID file: %s" % e)
|
||||||
logSys.info("Exiting Fail2ban")
|
logSys.info("Exiting Fail2ban")
|
||||||
|
|
||||||
def quit(self):
|
def quit(self):
|
||||||
|
|
Loading…
Reference in New Issue