MCPcopy
hub / github.com/pyload/pyload / _server

Method _server

module/plugins/hooks/ClickNLoad.py:100–157  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

98
99 @threaded
100 def _server(self):
101 try:
102 self.exit_done.clear()
103 self.server_running = True
104
105 dock_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
106 dock_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
107 dock_socket.bind((self.cnl_ip, self.cnl_port))
108 dock_socket.listen(5)
109
110 while True:
111 client_socket, client_addr = dock_socket.accept()
112
113 if not self.do_exit:
114 self.log_debug("Connection from %s:%s" % client_addr)
115
116 server_socket = socket.socket(
117 socket.AF_INET, socket.SOCK_STREAM)
118
119 if self.pyload.config.get('webinterface', 'https'):
120 try:
121 server_socket = ssl.wrap_socket(server_socket)
122
123 except NameError:
124 self.log_error(
125 _("Missing SSL lib"),
126 _("Please disable HTTPS in pyLoad settings"))
127 client_socket.close()
128 continue
129
130 except Exception, e:
131 self.log_error(_("SSL error: %s") % e.message)
132 client_socket.close()
133 continue
134
135 server_socket.connect((self.web_ip, self.web_port))
136
137 self.forward(
138 client_socket,
139 server_socket,
140 self.config.get('dest') == "queue")
141 self.forward(server_socket, client_socket)
142
143 else:
144 break
145
146 dock_socket.close()
147 self.server_running = False
148 self.exit_done.set()
149
150 except socket.timeout:
151 self.log_debug("Connection timed out, retrying...")
152 return self._server()
153
154 except socket.error, e:
155 self.log_error(e)
156 time.sleep(240)
157 return self._server()

Callers 1

proxyMethod · 0.95

Calls 12

forwardMethod · 0.95
log_debugMethod · 0.80
log_errorMethod · 0.80
_Function · 0.50
clearMethod · 0.45
bindMethod · 0.45
listenMethod · 0.45
acceptMethod · 0.45
getMethod · 0.45
closeMethod · 0.45
setMethod · 0.45
sleepMethod · 0.45

Tested by

no test coverage detected