ACE_SOCK_Acceptor Class ReferenceDefines a factory that creates new ACE_Streams passively.
More...
#include <SOCK_Acceptor.h>
List of all members.
|
Public Types |
typedef ACE_INET_Addr | PEER_ADDR |
typedef ACE_SOCK_Stream | PEER_STREAM |
Public Member Functions |
| ACE_SOCK_Acceptor (void) |
| Default constructor.
|
| ACE_SOCK_Acceptor (const ACE_Addr &local_sap, int reuse_addr=0, int protocol_family=PF_UNSPEC, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0) |
| ACE_SOCK_Acceptor (const ACE_Addr &local_sap, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr, int protocol_family=PF_UNSPEC, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0) |
int | open (const ACE_Addr &local_sap, int reuse_addr=0, int protocol_family=PF_UNSPEC, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0) |
int | open (const ACE_Addr &local_sap, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr, int protocol_family=PF_UNSPEC, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0) |
int | close (void) |
| Close the socket. Returns 0 on success and -1 on failure.
|
| ~ACE_SOCK_Acceptor (void) |
| Default dtor.
|
int | accept (ACE_SOCK_Stream &new_stream, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, int restart=1, int reset_new_handle=0) const |
int | accept (ACE_SOCK_Stream &new_stream, ACE_Accept_QoS_Params qos_params, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, int restart=1, int reset_new_handle=0) const |
void | dump (void) const |
| Dump the state of an object.
|
Public Attributes |
| ACE_ALLOC_HOOK_DECLARE |
| Declare the dynamic allocation hooks.
|
Protected Member Functions |
int | shared_accept_start (ACE_Time_Value *timeout, int restart, int &in_blocking_mode) const |
int | shared_accept_finish (ACE_SOCK_Stream new_stream, int in_blocking_mode, int reset_new_handle) const |
int | shared_open (const ACE_Addr &local_sap, int protocol_family, int backlog) |
Private Member Functions |
int | get_remote_addr (ACE_Addr &) const |
| Do not allow this function to percolate up to this interface...
|
Detailed Description
Defines a factory that creates new ACE_Streams passively.
The ACE_SOCK_Acceptor has its own "passive-mode" socket. This serves as a factory to create so-called "data-mode" sockets, which are what the ACE_SOCK_Stream encapsulates. Therefore, by inheriting from ACE_SOCK, ACE_SOCK_Acceptor gets its very own socket.
Member Typedef Documentation
Constructor & Destructor Documentation
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_SOCK_Acceptor::ACE_SOCK_Acceptor |
( |
void |
|
) |
|
ACE_SOCK_Acceptor::ACE_SOCK_Acceptor |
( |
const ACE_Addr & |
local_sap, |
|
|
int |
reuse_addr = 0 , |
|
|
int |
protocol_family = PF_UNSPEC , |
|
|
int |
backlog = ACE_DEFAULT_BACKLOG , |
|
|
int |
protocol = 0 | |
|
) |
| | |
Initialize a passive-mode BSD-style acceptor socket (no QoS). local_sap is the address that we're going to listen for connections on. If reuse_addr is 1 then we'll use the SO_REUSEADDR to reuse this address.
ACE_SOCK_Acceptor::ACE_SOCK_Acceptor |
( |
const ACE_Addr & |
local_sap, |
|
|
ACE_Protocol_Info * |
protocolinfo, |
|
|
ACE_SOCK_GROUP |
g, |
|
|
u_long |
flags, |
|
|
int |
reuse_addr, |
|
|
int |
protocol_family = PF_UNSPEC , |
|
|
int |
backlog = ACE_DEFAULT_BACKLOG , |
|
|
int |
protocol = 0 | |
|
) |
| | |
Initialize a passive-mode QoS-enabled acceptor socket. Returns 0 on success and -1 on failure.
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_SOCK_Acceptor::~ACE_SOCK_Acceptor |
( |
void |
|
) |
|
Member Function Documentation
int ACE_SOCK_Acceptor::open |
( |
const ACE_Addr & |
local_sap, |
|
|
int |
reuse_addr = 0 , |
|
|
int |
protocol_family = PF_UNSPEC , |
|
|
int |
backlog = ACE_DEFAULT_BACKLOG , |
|
|
int |
protocol = 0 | |
|
) |
| | |
Initialize a passive-mode BSD-style acceptor socket (no QoS). local_sap is the address that we're going to listen for connections on. If reuse_addr is 1 then we'll use the SO_REUSEADDR to reuse this address. Returns 0 on success and -1 on failure.
Reimplemented in ACE_LSOCK_Acceptor, and ACE_MEM_Acceptor.
int ACE_SOCK_Acceptor::open |
( |
const ACE_Addr & |
local_sap, |
|
|
ACE_Protocol_Info * |
protocolinfo, |
|
|
ACE_SOCK_GROUP |
g, |
|
|
u_long |
flags, |
|
|
int |
reuse_addr, |
|
|
int |
protocol_family = PF_UNSPEC , |
|
|
int |
backlog = ACE_DEFAULT_BACKLOG , |
|
|
int |
protocol = 0 | |
|
) |
| | |
Initialize a passive-mode QoS-enabled acceptor socket. Returns 0 on success and -1 on failure.
Reimplemented in ACE_MEM_Acceptor.
int ACE_SOCK_Acceptor::close |
( |
void |
|
) |
|
Close the socket. Returns 0 on success and -1 on failure.
Reimplemented from ACE_SOCK.
Accept a new ACE_SOCK_Stream connection. A timeout of 0 means block forever, a timeout of {0, 0} means poll. <restart> == 1 means "restart if interrupted," i.e., if errno == EINTR. Note that new_stream inherits the "blocking mode" of this ACE_SOCK_Acceptor, i.e., if this acceptor factory is in non-blocking mode, the new_stream will be in non-blocking mode and vice versa.
Reimplemented in ACE_LOCK_SOCK_Acceptor< ACE_LOCK >, and ACE_MEM_Acceptor.
Accept a new ACE_SOCK_Stream connection using the QoS information in qos_params. A timeout of 0 means block forever, a timeout of {0, 0} means poll. restart == 1 means "restart if interrupted," i.e., if errno == EINTR. Note that new_stream inherits the "blocking mode" of this ACE_SOCK_Acceptor, i.e., if this acceptor factory is in non-blocking mode, the new_stream will be in non-blocking mode and vice versa.
Reimplemented in ACE_MEM_Acceptor.
void ACE_SOCK_Acceptor::dump |
( |
void |
|
) |
const |
int ACE_SOCK_Acceptor::shared_accept_start |
( |
ACE_Time_Value * |
timeout, |
|
|
int |
restart, |
|
|
int & |
in_blocking_mode | |
|
) |
| | const [protected] |
int ACE_SOCK_Acceptor::shared_accept_finish |
( |
ACE_SOCK_Stream |
new_stream, |
|
|
int |
in_blocking_mode, |
|
|
int |
reset_new_handle | |
|
) |
| | const [protected] |
int ACE_SOCK_Acceptor::shared_open |
( |
const ACE_Addr & |
local_sap, |
|
|
int |
protocol_family, |
|
|
int |
backlog | |
|
) |
| | [protected] |
This method factors out the common <open> code and is called by both the QoS-enabled <open> method and the BSD-style <open> method.
int ACE_SOCK_Acceptor::get_remote_addr |
( |
ACE_Addr & |
|
) |
const [private] |
Do not allow this function to percolate up to this interface...
Reimplemented from ACE_SOCK.
Member Data Documentation
The documentation for this class was generated from the following files:
Generated on Mon Sep 15 07:17:01 2008 for ACE by
1.5.5
|