X-Git-Url: https://git.ralfj.de/saartuer.git/blobdiff_plain/8b136f42bf0c83f8aee52c315f7dbebc371cce1b..d084286e81b121106a0a165e3c151762635466e0:/tysock.py diff --git a/tysock.py b/tysock.py index 3951d1f..11b5183 100644 --- a/tysock.py +++ b/tysock.py @@ -1,4 +1,4 @@ -import socket, os, stat +import socket, os, stat, struct, pwd, errno from statemachine import StateMachine from libtuer import logger SO_PEERCRED = 17 # DO - NOT - TOUCH @@ -26,7 +26,7 @@ def forcerm(name): class TySocket(): CMDs = { b'buzz': StateMachine.CMD_BUZZ, - b'open': StateMachine.CMD_OPEN, + b'unlock': StateMachine.CMD_UNLOCK, } def __init__(self, sm): @@ -44,10 +44,11 @@ class TySocket(): self._sock.listen(1) def _answer(self, conn): - def answer(msg): + def answer(msg, lastMsg = True): # this is called in another thread, so it should be quick and not touch the TySocket waynesend(conn, msg) - conn.close() + if lastMsg: + conn.close() return answer def accept(self): @@ -74,7 +75,4 @@ class TySocket(): except KeyboardInterrupt: raise # forward Ctrl-C to the outside except Exception as e: - logger.error("TySocket: Something went wrong: %s" % str(e)) - - def stop(self): - pass + logger.critical("TySocket: Something went wrong: %s" % str(e))