// ------------------------------------------------------------ // Accept call // ------------------------------------------------------------ int accept_c(P_TCP_SOCK p_tcp_sock) { int optval = 1; // Keep alive socklen_t optlen = sizeof(optval); socklen_t clilen = sizeof(p_tcp_sock->cli_addr); /* wait for connection on local port.*/ if ((p_tcp_sock->sock = accept(sockfd, (struct sockaddr*) &p_tcp_sock->cli_addr, &clilen)) < 0) { fprintf(stderr, "Failed to accept socket!, error = %d\n", errno); if( errno == 22) return -1; return error_category(errno); } if (setsockopt(p_tcp_sock->sock, SOL_SOCKET, SO_KEEPALIVE, &optval, optlen) < 0) { fprintf(stderr, "Failed to set option keepalive!, error = %d\n", errno); return error_category(errno); } sprintf(p_tcp_sock->from_ip, "%.*s", 19, inet_ntoa(p_tcp_sock->cli_addr.sin_addr)); if (_debug) { fprintf(stdout, "connect from %s\n", p_tcp_sock->from_ip); } p_tcp_sock->sesion_active = 1; return 0; }
inline boost::system::error_code make_error_code(errc_t e) { return boost::system::error_code(static_cast<int>(e), error_category()); }
std::error_condition make_error_condition(error_condition_t e) { return std::error_condition(static_cast<int>(e), error_category()); }
std::error_code make_error_code(error_code_t e) { return std::error_code(static_cast<int>(e), error_category()); }