Opened 6 years ago

Last modified 5 years ago

#3603 defect new

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

Reported by: exarkun Owned by:
Priority: normal Milestone:
Component: core Keywords: win32
Cc: Branch:
Author: Launchpad Bug:

Description

_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 6 years ago by exarkun

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 5 years ago by glyph

  • Owner changed from glyph to exarkun

comment:3 Changed 4 years ago by <automation>

  • Owner exarkun deleted
Note: See TracTickets for help on using tickets.