]> TLD Linux GIT Repositories - tld-ftp-admin.git/blob - ftpiod/ftpiod.py
- raw from PLD
[tld-ftp-admin.git] / ftpiod / ftpiod.py
1 #!/usr/bin/env python
2 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
3
4 import sys, os
5 sys.path.insert(0, os.environ['HOME']+'/pld-ftp-admin/modules')
6 import cons
7
8 def daemonize():
9     sys.stdin.close()
10     sys.stdout.close()
11     sys.stderr.close()
12     for fd in range(256):
13         try:
14             os.close(fd)
15         except:
16             pass
17     pid=os.fork()
18     if pid!=0:
19         sys.exit(0)
20     os.setsid()
21
22
23 #daemonize()
24
25
26 while True:
27     for readable in cons.readables():
28         if readable==cons.privlistener:
29             newsock,addr=readable.accept()
30             cons.add(cons.Connection(newsock, True))
31         elif readable==cons.publistener:
32             newsock,addr=readable.accept()
33             cons.add(cons.Connection(newsock, False))
34         else:
35             readable.handleinput()
36