Я только что закончил свою кроссплатформенную оболочку. Это хорошо работает в Linux, но в Window у меня очень странное поведение.
Когда я запускаю свой сервер (через петлевой порт 4242), программа начинает принимать соединения из случайных источников и получать от них.
Пример того, что зарегистрировано в моем терминале (это происходило в очень высоком темпе непрерывно):
New client connected : 0.0.0.0:58030
Forwarding connection to worker in threadpool...
Waiting for client request...
New client connected : 0.0.0.0:58031
Received 4294967295 bytes from client ''
Forwarding connection to worker in threadpool...
Waiting for client request...
New client connected : Waiting for client request...
Received 4294967295 bytes from client ''0.0.0.0:Received 4294967295 bytes from client ''
58032
Waiting for client request...
Waiting for client request...
Received 4294967295 bytes from client ''
Received 4294967295 bytes from client ''Forwarding connection to worker in threadpool...
Здесь мы видим 3 соединения принимаются формы 0.0.0.0:58030
, 0.0.0.0:58031
а также 0.0.0.0:58032
, Для каждого соединения Recv
вернуть огромное количество прочитанных байтов, но реальный буфер пуст.
Любая идея о том, что может вызвать такого рода поведение, чтобы ориентировать мои исследования?
4294967295 — -1 приведен к неподписанному. Таким образом, вы получаете -1, вероятно, для обозначения некоторой ошибки сокета, и рассматриваете ее как число без знака.
Других решений пока нет …