[Bug 133736] [udp] ip_id not protected ...
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Feb 1 15:21:47 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=133736
Tom Jones <thj at FreeBSD.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |Overcome By Events
Status|Open |Closed
CC| |thj at FreeBSD.org
--- Comment #3 from Tom Jones <thj at FreeBSD.org> ---
Hi,
I wrote a python test case that I think should exercise this. I didn't manage
to hit this case, if you can reproduce this on a modern FreeBSD please reopen
the bug. If you can add an exact reproduction case that would be very helpful.
server:
#!/usr/bin/env python3
import socket
import sys
UDP_IP = "0.0.0.0"
UDP_PORT = 5005
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM) # UDP
sock.bind((UDP_IP, UDP_PORT))
peers = {}
while True:
data, addr = sock.recvfrom(2500)
#sys.stdout.write(".")
#sys.stdout.flush()
if addr in peers:
if data != peers[addr]:
print("mismatch in recv'd data")
print("peer {} \n data: \t{} recvd: {}\t".format(addr, peers[addr],
data))
exit()
else:
peers[addr] = data
client:
#!/usr/bin/env python3
import socket
from multiprocessing import Process
def sendthread(ip, port, message):
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM) # UDP
while True:
try:
sock.sendto(message, (ip, port))
except OSError as e:
if e.errno == 55:
pass
if __name__ == '__main__':
ip = "137.50.17.240"
port = 5005
one = Process(target=sendthread, args=(ip, port, bytes("A" * 2000,
encoding='ascii')))
two = Process(target=sendthread, args=(ip, port, bytes("B" * 2000,
encoding='ascii')))
one.start()
two.start()
one.join()
two.join()
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list