]> granicus.if.org Git - python/commitdiff
Fixed the UDP server -- this never worked. Ray Loyzaga deserves
authorGuido van Rossum <guido@python.org>
Tue, 16 Jun 1998 02:27:33 +0000 (02:27 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 16 Jun 1998 02:27:33 +0000 (02:27 +0000)
credit for complaining about this and for testing these changes.

Lib/SocketServer.py

index cf8a365fb8a6bf2ad02e42217b0b606cfe94cdff..0d0caac77231484d85a14313b05327deb7a113b8 100644 (file)
@@ -265,7 +265,12 @@ class UDPServer(TCPServer):
     max_packet_size = 8192
 
     def get_request(self):
-        return self.socket.recvfrom(self.max_packet_size)
+        data, client_addr = self.socket.recvfrom(self.max_packet_size)
+        return (data, self.socket), client_addr
+
+    def server_activate(self):
+        # No need to call listen() for UDP.
+        pass
 
 
 if hasattr(socket, 'AF_UNIX'):
@@ -411,4 +416,4 @@ class DatagramRequestHandler(BaseRequestHandler):
         self.wfile = StringIO.StringIO(self.packet)
 
     def finish(self):
-        self.socket.send(self.wfile.getvalue())
+        self.socket.sendto(self.wfile.getvalue(), self.client_address)