#include <P_Connection.h>
Inherits Connection.
Inherited by ClusterMachine, and Machine.
Public Member Functions | |
int | proxy_listen (bool non_blocking=false) |
int | accept (Connection *c) |
int | listen (bool non_blocking=false, int recv_bufsize=0, int send_bufsize=0, bool transparent=false) |
int | setup_fd_for_listen (bool non_blocking=false, int recv_bufsize=0, int send_bufsize=0, bool transparent=false) |
Server () | |
Data Fields | |
IpEndpoint | accept_addr |
Client side (inbound) local IP address. | |
bool | f_inbound_transparent |
If set, the related incoming connect was transparent. | |
bool | http_accept_filter |
If set, a kernel HTTP accept filter. |
Definition at line 156 of file P_Connection.h.
Server::Server | ( | ) | [inline] |
Definition at line 188 of file P_Connection.h.
References accept_addr.
int Server::accept | ( | Connection * | c | ) |
Definition at line 86 of file Connection.cc.
References SocketManager::accept(), Connection::addr, ats_ip_nptop(), Connection::close(), Debug, Connection::fd, FD_CLOEXEC, is_debug_tag_set, IpEndpoint::sa, safe_fcntl(), safe_nonblocking(), safe_setsockopt(), SocketManager::set_sndbuf_size(), socketManager, and SOCKOPT_ON.
Referenced by NetAccept::do_blocking_accept(), net_accept(), and send_throttle_message().
int Server::listen | ( | bool | non_blocking = false , |
|
int | recv_bufsize = 0 , |
|||
int | send_bufsize = 0 , |
|||
bool | transparent = false | |||
) |
Definition at line 293 of file Connection.cc.
References accept_addr, Connection::addr, ats_ip4_set(), ats_ip_copy(), ats_ip_port_host_order(), ats_ip_size(), ats_is_ip(), Connection::close(), Error, Connection::fd, get_listen_backlog(), ink_assert, SocketManager::ink_bind(), NO_FD, IpEndpoint::sa, safe_getsockname(), safe_listen(), setup_fd_for_listen(), SocketManager::socket(), and socketManager.
Referenced by NetAccept::do_listen().
int Server::proxy_listen | ( | bool | non_blocking = false |
) |
int Server::setup_fd_for_listen | ( | bool | non_blocking = false , |
|
int | recv_bufsize = 0 , |
|||
int | send_bufsize = 0 , |
|||
bool | transparent = false | |||
) |
transparent | Inbound transparent. |
Definition at line 153 of file Connection.cc.
References NetProcessor::accept_mss, add_http_filter(), Connection::addr, ats_is_ip6(), Connection::close(), Debug, Error, Connection::fd, FD_CLOEXEC, http_accept_filter, ink_assert, NO_FD, ROUNDUP, safe_fcntl(), safe_nonblocking(), safe_setsockopt(), SocketManager::set_rcvbuf_size(), SocketManager::set_sndbuf_size(), socketManager, SOCKOPT_ON, and TS_IP_TRANSPARENT.
Referenced by NetAccept::do_listen(), and listen().
Client side (inbound) local IP address.
Definition at line 159 of file P_Connection.h.
Referenced by UnixNetProcessor::accept_internal(), NetAccept::do_listen(), listen(), and Server().
If set, the related incoming connect was transparent.
Definition at line 162 of file P_Connection.h.
Referenced by UnixNetProcessor::accept_internal(), NetAccept::acceptFastEvent(), NetAccept::do_blocking_accept(), and net_accept().
If set, a kernel HTTP accept filter.
Definition at line 165 of file P_Connection.h.
Referenced by UnixNetProcessor::accept_internal(), and setup_fd_for_listen().