Open
Description
I'm seeing from LOG=TRACE that tox-bootstrapd goes into an infinite loop if you give it a tcp_port packet of less than the expected number 128 of bytes.
If you compile and run other/bootstrap_daemon/src/tox-bootstrapd.c
and change in bootstrap_node_info.py
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
to
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
and run it against the BS daemon, it fills the TRACE logs with:
TCP_server.c:1055(do_incoming) handling incoming TCP connection 0
TCP_common.c:203(read_TCP_packet) recv buffer has 82 bytes, but requested 128 bytes
TCP_server.c:375(read_connection_handshake) connection handshake is not ready yet
I'm guessing that the cause is network.c#524 where the MSG_NOSIGNAL
makes it loop forever, even after the clent has died. So you also get lots of tcp sockets left dangling in CLOSE_WAIT.