From a5e7d09aa54d54471bc9373c0067cc8752498e3f Mon Sep 17 00:00:00 2001 From: Marcel Nijenhof Date: Fri, 15 Feb 2019 15:35:47 +0100 Subject: [PATCH 1/2] Correctie lange antwoorden (1500). - Extra check op '\r' in recv en loop totdat die gevonden is. - decode verplaats naar recv functie. --- lmwsip.py | 21 ++++++++++++--------- siprun | 2 +- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/lmwsip.py b/lmwsip.py index 0ea9316..accc90c 100644 --- a/lmwsip.py +++ b/lmwsip.py @@ -107,7 +107,10 @@ send a sip command to the server recieve a answer from the sip server """ - return(self._socket.recv(4096)) + buf="" + while re.search("\r$", buf) == None: + buf += self._socket.recv(4096).decode('utf-8') + return(buf) def login(self): """login() @@ -118,8 +121,8 @@ Raises a LmwLoginFailure exception on failure li="LI " + self.user + "," + self.password + "\r" self.send(li) d = self.recv() - if (d.decode('ascii')[0] != '!'): - raise LmwLoginFailure(self.user + ":" + d.decode('ascii')) + if (d[0] != '!'): + raise LmwLoginFailure(self.user + ":" + d) def ti(self): """ti() @@ -131,9 +134,9 @@ Raises a LmwCmdWarn of failure ti="TI " + self.meetnet + "\r" self.send(ti) d = self.recv() - if (d.decode('ascii')[0] != '!'): - raise LmwCmdWarn("TI " + self.meetnet +":" + d.decode('ascii')) - return (d.decode('ascii')[2:-1]) + if (d('ascii')[0] != '!'): + raise LmwCmdWarn("TI " + self.meetnet +":" + d) + return (d[2:-1]) def cmd(self, process, location, parameter, time_delta, day, time_of_day, cmd_type="DATA"): @@ -166,9 +169,9 @@ Returns: self.send(cmdstr) d = self.recv() - if (d.decode('ascii')[0] != '!'): - raise LmwCmdWarn(d.decode('ascii')) - return (d.decode('ascii')[2:-1]) + if (d[0] != '!'): + raise LmwCmdWarn(d) + return (d[2:-1]) def value(self, process, location, parameter, day = None, time_of_day = None): diff --git a/siprun b/siprun index 149bd6b..8c1cd5f 100755 --- a/siprun +++ b/siprun @@ -63,7 +63,7 @@ def main(): cmd = cmd.replace('\n', '\r') print("> [%s]" % (cmd.strip('\r'))) lmwsip.send(cmd) - print("< [%s]" % (lmwsip.recv().decode('utf-8').strip('\r'))) + print("< [%s]" % (lmwsip.recv().strip('\r'))) f.close() if __name__ == "__main__": From 4b1d59c22c610dab4160aac3115934da1aeae96d Mon Sep 17 00:00:00 2001 From: Marcel Nijenhof Date: Fri, 15 Feb 2019 15:45:25 +0100 Subject: [PATCH 2/2] Extra files aan git ignore toegevoegd. Locale copien met paswoorden mogen niet ingechecked worden. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index bee8a64..9b52b88 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ __pycache__ +lmwsip-test +*.sip