def __init__(self, options):
self.ports = options.ports
self.password = options.password
self.ssl_pem_file = options.ssl_pem_file
self.motdfile = options.motd
self.verbose = options.verbose
self.debug = options.debug
self.logdir = options.logdir
self.chroot = options.chroot
self.setuid = options.setuid
self.statedir = options.statedir
if self.ssl_pem_file:
self.ssl = __import__("ssl")
# Find certificate after daemonization if path is relative:
if self.ssl_pem_file and os.path.exists(self.ssl_pem_file):
self.ssl_pem_file = os.path.abspath(self.ssl_pem_file)
# else: might exist in the chroot jail, so just continue
if options.listen:
self.address = socket.gethostbyname(options.listen)
else:
self.address = ""
server_name_limit = 63 # From the RFC.
self.name = socket.getfqdn(self.address)[:server_name_limit]
self.channels = {} # irc_lower(Channel name) --> Channel instance.
self.clients = {} # Socket --> Client instance.
self.nicknames = {} # irc_lower(Nickname) --> Client instance.
if self.logdir:
create_directory(self.logdir)
if self.statedir:
create_directory(self.statedir)
评论列表
文章目录