Parent Directory
|
Revision Log
Added MOTD and logfile functionality
from random import randint from thread import start_new_thread from time import sleep import socket import os PRONDIR = '/home/jeremy/src/asciipron/pron/' PRONUSER = 1000 LOGFILE = "/home/jeremy/src/asciipron/pron.log" MOTDDELAY = 3 MOTD = """--------------------------------------------------------------------------------\r Welcome to the ASCII Pr0n server on jalapeno. Please send questions and comments\r to synack@csh.rit.edu. Enjoy the show!\r --------------------------------------------------------------------------------""" logfile = open(LOGFILE, 'w') def log(host, message): logfile.write(repr(host) + '\t' + message + '\n') logfile.flush() if os.geteuid() == 0: os.seteuid(PRONUSER) sd = socket.socket() sd.bind(('0.0.0.0', 6969)) sd.listen(6) pronfiles = os.listdir(PRONDIR) def pronserve(sock, addr): log(addr, 'connected') try: sock.send(MOTD + '\r\n') sleep(MOTDDELAY) while True: pron = open(PRONDIR + pronfiles[randint(0, (len(pronfiles) - 1))]) for line in pron.readlines(): sock.send(line + '\r') sleep(0.05) except socket.error: log(addr, 'disconnected') sock.close() return 0 try: while True: afd = sd.accept() start_new_thread(pronserve, (afd)) except KeyboardInterrupt: sd.close() logfile.close()
| synack at csh.rit.edu | ViewVC Help |
| Powered by ViewVC 1.0.0 |