blob: 7e1d75fcf57ac3c3a16c6b2fa547532a8c1ea546 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#include "tcp_acceptor_impl.h"
using namespace NAsio;
bool TOperationAccept::Execute(int errorCode) {
if (errorCode) {
H_(errorCode, *this);
return true;
}
struct sockaddr_storage addr;
socklen_t sz = sizeof(addr);
SOCKET res = ::accept(Fd(), (sockaddr*)&addr, &sz);
if (res == INVALID_SOCKET) {
H_(LastSystemError(), *this);
} else {
NS_.Assign(res, TEndpoint(new NAddr::TOpaqueAddr((sockaddr*)&addr)));
H_(0, *this);
}
return true;
}
|