Unexpected EADDRINUSE

Bob Halley Bob.Halley at nominum.com
Tue Jan 3 20:22:05 PST 2006


Sorry my attachments didn't make it :)

#
# sink.py
#
import socket
import traceback

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind(('127.0.0.1', 12345))
s.listen(5)

while True:
    try:
        n = s.accept()[0]
        d = None
        while d != '':
            d = n.recv(100)
        n.close()
    except socket.error:
        pass


#
# conn.py
#
import socket
import traceback

n = 0
while True:
    try:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
        s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        s.bind(('127.0.0.1', 0))
        print s.getsockname()
        s.connect(('127.0.0.1', 12345))
        s.close()
        n += 1
        if n > 0 and n % 1000 == 0:
            print n
    except Exception, e:
        traceback.print_exc()
        break
print n



More information about the freebsd-net mailing list