diff options
author | Alvaro Neira Ayuso <aneira@soleta.eu> | 2019-12-12 18:03:11 +0100 |
---|---|---|
committer | Alvaro Neira Ayuso <alvaroneay@gmail.com> | 2020-01-19 19:50:44 +0100 |
commit | 9eabc7f9a8933d3d3e88835173d45721c6ba3041 (patch) | |
tree | 44503c5ebba276f8ff5ba7e72e3f4960a86c7685 /src/ogClient.py | |
parent | ebd640a9c5d308c0ba115fea6c8cc0666010eab6 (diff) |
Execute socket loop on run socket function
Ported code from main function to a client function for clearing the main loop.
Diffstat (limited to 'src/ogClient.py')
-rw-r--r-- | src/ogClient.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/ogClient.py b/src/ogClient.py index 2c57730..05c243d 100644 --- a/src/ogClient.py +++ b/src/ogClient.py @@ -93,3 +93,23 @@ class ogClient: self.data = ""
self.content_len = 0
self.trailer = False
+
+ def run(self):
+ while 1:
+ sock = self.get_socket()
+ state = self.get_state()
+
+ if state == State.CONNECTING:
+ readset = [ sock ]
+ writeset = [ sock ]
+ else:
+ readset = [ sock ]
+ writeset = [ ]
+
+ readable, writable, exception = select.select(readset, writeset, [ ])
+ if state == State.CONNECTING and sock in writable:
+ self.connect2()
+ elif state == State.RECEIVING and sock in readable:
+ self.receive()
+ else:
+ print "bad state" + str(state)
|