Opened 8 years ago

Last modified 8 years ago

#3603 defect new

_Win32Waker doesn't use symbolic name for TCP_NODELAY and doesn't explicitly close its tcp port

Reported by: Jean-Paul Calderone Owned by:
Priority: normal Milestone:
Component: core Keywords: win32
Cc: Branch:


_Win32Waker creates a client socket and sets IPPROTO_TCP option 1 - this is probably meant to be socket.TCP_NODELAY. It should use the symbolic name.

It also creates a server port and just lets the socket fall out of scope. It should explicitly close it instead.

Change History (3)

comment:1 Changed 8 years ago by Jean-Paul Calderone

Also, the waker creates its connection using blocking sockets. This basically only works by accident (it may also fail under extremely obscure, rare conditions, based on how many outstanding connection attempts there are on the system).

It'd probably be good to factor this socketpair(2)-like functionality into a general API where it can be re-used (lots of tests want it).

comment:2 Changed 8 years ago by Glyph

Owner: changed from Glyph to Jean-Paul Calderone

comment:3 Changed 6 years ago by <automation>

Owner: Jean-Paul Calderone deleted
Note: See TracTickets for help on using tickets.