| 514 | }; |
| 515 | |
| 516 | static int MsgPeek(SOCKET s) { |
| 517 | int flags = MSG_PEEK; |
| 518 | |
| 519 | #if defined(_win_) |
| 520 | TUnblockingGuard unblocker(s); |
| 521 | Y_UNUSED(unblocker); |
| 522 | #else |
| 523 | flags |= MSG_DONTWAIT; |
| 524 | #endif |
| 525 | |
| 526 | char c; |
| 527 | return recv(s, &c, 1, flags); |
| 528 | } |
| 529 | |
| 530 | bool IsNotSocketClosedByOtherSide(SOCKET s) { |
| 531 | return HasSocketDataToRead(s) != ESocketReadStatus::SocketClosed; |
no test coverage detected