]> granicus.if.org Git - python/commitdiff
Ofir Reichenberg suggested to apply htonl() to grpaddr in openmcastsock().
authorGuido van Rossum <guido@python.org>
Sat, 7 Aug 1999 14:01:05 +0000 (14:01 +0000)
committerGuido van Rossum <guido@python.org>
Sat, 7 Aug 1999 14:01:05 +0000 (14:01 +0000)
Also got rid of unnecessary use of eval() and regsub.gsub().

Demo/sockets/mcast.py

index fe4aacbba3cd71555c0eae66b2293c23e7d2b391..cc7a7e07d447c7b1465fa1492a8e6fac91d39c64 100755 (executable)
@@ -59,7 +59,7 @@ def receiver():
 # Open a UDP socket, bind it to a port and select a multicast group
 def openmcastsock(group, port):
        # Import modules used only here
-       import regsub
+       import string
        import struct
        #
        # Create a socket
@@ -77,13 +77,13 @@ def openmcastsock(group, port):
        group = gethostbyname(group)
        #
        # Construct binary group address
-       bytes = eval(regsub.gsub('\.', ',', group))
+       bytes = map(int, string.split(group, "."))
        grpaddr = 0
        for byte in bytes: grpaddr = (grpaddr << 8) | byte
        #
        # Construct struct mreq from grpaddr and ifaddr
        ifaddr = INADDR_ANY
-       mreq = struct.pack('ll', grpaddr, ifaddr)
+       mreq = struct.pack('ll', htonl(grpaddr), htonl(ifaddr))
        #
        # Add group membership
        s.setsockopt(IPPROTO_IP, IP_ADD_MEMBERSHIP, mreq)