ACE  6.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Private Attributes | List of all members
ACE_MEM_Acceptor Class Reference

Defines the format and interface for the acceptor side of the local mmap stream. More...

#include <MEM_Acceptor.h>

Inheritance diagram for ACE_MEM_Acceptor:
Inheritance graph
[legend]
Collaboration diagram for ACE_MEM_Acceptor:
Collaboration graph
[legend]

Public Types

typedef ACE_MEM_Addr PEER_ADDR
 
typedef ACE_MEM_Stream PEER_STREAM
 
- Public Types inherited from ACE_SOCK_Acceptor
typedef ACE_INET_Addr PEER_ADDR
 
typedef ACE_SOCK_Stream PEER_STREAM
 

Public Member Functions

 ACE_MEM_Acceptor (void)
 Default constructor. More...
 
 ~ACE_MEM_Acceptor (void)
 Destructor. More...
 
 ACE_MEM_Acceptor (const ACE_MEM_Addr &remote_sap, int reuse_addr=0, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0)
 Initiate a passive mode socket. More...
 
int open (const ACE_MEM_Addr &local_sap, int reuse_addr=0, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0)
 
int accept (ACE_MEM_Stream &new_ipc_sap, ACE_MEM_Addr *remote_addr=0, ACE_Time_Value *timeout=0, bool restart=true, bool reset_new_handle=false)
 Accept a new data transfer connection. More...
 
int shared_accept_finish (ACE_MEM_Stream new_stream, int in_blocking_mode, bool reset_new_handle) const
 
const ACE_TCHARmmap_prefix (void) const
 
void mmap_prefix (const ACE_TCHAR *prefix)
 
void init_buffer_size (ACE_OFF_T bytes)
 
ACE_MEM_IO::Signal_Strategy preferred_strategy (void) const
 Get the preferred signaling strategy. More...
 
void preferred_strategy (ACE_MEM_IO::Signal_Strategy strategy)
 Set the preferred signaling strategy. More...
 
int get_local_addr (ACE_MEM_Addr &) const
 
void dump (void) const
 Dump the state of an object. More...
 
- Public Member Functions inherited from ACE_SOCK_Acceptor
 ACE_SOCK_Acceptor (void)
 Default constructor. More...
 
 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. More...
 
 ~ACE_SOCK_Acceptor (void)
 Default dtor. More...
 
int accept (ACE_SOCK_Stream &new_stream, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, bool restart=true, bool reset_new_handle=false) const
 
int accept (ACE_SOCK_Stream &new_stream, ACE_Accept_QoS_Params qos_params, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, bool restart=true, bool reset_new_handle=false) const
 
void dump (void) const
 Dump the state of an object. More...
 
- Public Member Functions inherited from ACE_SOCK
int set_option (int level, int option, void *optval, int optlen) const
 Wrapper around the setsockopt system call. More...
 
int get_option (int level, int option, void *optval, int *optlen) const
 Wrapper around the getsockopt system call. More...
 
int close (void)
 
int get_local_addr (ACE_Addr &) const
 
int get_remote_addr (ACE_Addr &) const
 
void dump (void) const
 Dump the state of an object. More...
 
int open (int type, int protocol_family, int protocol, int reuse_addr)
 Wrapper around the BSD-style socket system call (no QoS). More...
 
int open (int type, int protocol_family, int protocol, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr)
 Wrapper around the QoS-enabled WSASocket function. More...
 
- Public Member Functions inherited from ACE_IPC_SAP
int control (int cmd, void *) const
 Interface for <ioctl>. More...
 
int enable (int value) const
 
int disable (int value) const
 
ACE_HANDLE get_handle (void) const
 Get the underlying handle. More...
 
void set_handle (ACE_HANDLE handle)
 Set the underlying handle. More...
 
void dump (void) const
 Dump the state of an object. More...
 

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Public Attributes inherited from ACE_SOCK_Acceptor
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Public Attributes inherited from ACE_SOCK
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Public Attributes inherited from ACE_IPC_SAP
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 

Protected Member Functions

int open (const ACE_Addr &local_sap, int reuse_addr=0, int protocol_family=PF_INET, 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, int backlog=ACE_DEFAULT_BACKLOG, int protocol=0)
 
int accept (ACE_SOCK_Stream &new_stream, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, bool restart=true, bool reset_new_handle=false) const
 
int accept (ACE_SOCK_Stream &new_stream, ACE_Accept_QoS_Params qos_params, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, bool restart=true, bool reset_new_handle=false) const
 
- Protected Member Functions inherited from ACE_SOCK_Acceptor
int shared_accept_start (ACE_Time_Value *timeout, bool restart, int &in_blocking_mode) const
 
int shared_accept_finish (ACE_SOCK_Stream new_stream, int in_blocking_mode, bool reset_new_handle) const
 
int shared_open (const ACE_Addr &local_sap, int protocol_family, int backlog)
 
- Protected Member Functions inherited from ACE_SOCK
 ACE_SOCK (int type, int protocol_family, int protocol=0, int reuse_addr=0)
 
 ACE_SOCK (int type, int protocol_family, int protocol, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr)
 
 ACE_SOCK (void)
 
 ~ACE_SOCK (void)
 Protected destructor. More...
 
- Protected Member Functions inherited from ACE_IPC_SAP
 ACE_IPC_SAP (void)
 Default constructor. More...
 
 ~ACE_IPC_SAP (void)
 Protected destructor. More...
 

Private Attributes

ACE_TCHARmmap_prefix_
 
ACE_MEM_SAP::MALLOC_OPTIONS malloc_options_
 
ACE_MEM_IO::Signal_Strategy preferred_strategy_
 Preferred signaling strategy. More...
 

Detailed Description

Defines the format and interface for the acceptor side of the local mmap stream.

This class should be modified to prevent user passing a non-localhost endpoint as the acceptor listen point because it doesn't make any sense at all to make the listening endpoint visible (or connectable) anywhere outside of this machine. However, the type of endpoint is left as <ACE_Addr> so we can later changed to use UNIX-domain sockets with mmap stream if so desired. (Currently, using UNIX-domain sockets, i.e., ACE_LSOCK_*, with this class will not work.)

Member Typedef Documentation

Constructor & Destructor Documentation

ACE_MEM_Acceptor::ACE_MEM_Acceptor ( void  )

Default constructor.

ACE_MEM_Acceptor::~ACE_MEM_Acceptor ( void  )

Destructor.

ACE_MEM_Acceptor::ACE_MEM_Acceptor ( const ACE_MEM_Addr remote_sap,
int  reuse_addr = 0,
int  backlog = ACE_DEFAULT_BACKLOG,
int  protocol = 0 
)

Initiate a passive mode socket.

Member Function Documentation

int ACE_MEM_Acceptor::accept ( ACE_MEM_Stream new_ipc_sap,
ACE_MEM_Addr remote_addr = 0,
ACE_Time_Value timeout = 0,
bool  restart = true,
bool  reset_new_handle = false 
)

Accept a new data transfer connection.

int ACE_MEM_Acceptor::accept ( ACE_SOCK_Stream new_stream,
ACE_Addr remote_addr = 0,
ACE_Time_Value timeout = 0,
bool  restart = true,
bool  reset_new_handle = false 
) const
inlineprotected
int ACE_MEM_Acceptor::accept ( ACE_SOCK_Stream new_stream,
ACE_Accept_QoS_Params  qos_params,
ACE_Addr remote_addr = 0,
ACE_Time_Value timeout = 0,
bool  restart = true,
bool  reset_new_handle = false 
) const
inlineprotected
void ACE_MEM_Acceptor::dump ( void  ) const

Dump the state of an object.

int ACE_MEM_Acceptor::get_local_addr ( ACE_MEM_Addr sap) const
inline

Return the local endpoint address in the referenced <ACE_Addr>. Returns 0 if successful, else -1.

void ACE_MEM_Acceptor::init_buffer_size ( ACE_OFF_T  bytes)
inline

Change the initial MMAP buffer size (in bytes) of the MEM_Stream this MEM_Acceptor creates.

const ACE_TCHAR * ACE_MEM_Acceptor::mmap_prefix ( void  ) const
inline

Accessor/mutator of mmap filename prefix. By default, the <mmap_prefix_> is not set and the mmap filename is ${(TMP|TEMP)}//ACE_MEM_Acceptor_(port-number)_(&stream), otherwise, it is <mmap_prefix_>_(port-number)_(&stream), <mmap_prefix_> should include absolute path so the connector within the same host can located the mmap file. Example: /tmp/mmapfile.

void ACE_MEM_Acceptor::mmap_prefix ( const ACE_TCHAR prefix)
inline
int ACE_MEM_Acceptor::open ( const ACE_MEM_Addr local_sap,
int  reuse_addr = 0,
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.

int ACE_MEM_Acceptor::open ( const ACE_Addr local_sap,
int  reuse_addr = 0,
int  protocol_family = PF_INET,
int  backlog = ACE_DEFAULT_BACKLOG,
int  protocol = 0 
)
protected
int ACE_MEM_Acceptor::open ( const ACE_Addr local_sap,
ACE_Protocol_Info protocolinfo,
ACE_SOCK_GROUP  g,
u_long  flags,
int  reuse_addr,
int  protocol_family,
int  backlog = ACE_DEFAULT_BACKLOG,
int  protocol = 0 
)
inlineprotected
ACE_MEM_IO::Signal_Strategy ACE_MEM_Acceptor::preferred_strategy ( void  ) const
inline

Get the preferred signaling strategy.

void ACE_MEM_Acceptor::preferred_strategy ( ACE_MEM_IO::Signal_Strategy  strategy)
inline

Set the preferred signaling strategy.

int ACE_MEM_Acceptor::shared_accept_finish ( ACE_MEM_Stream  new_stream,
int  in_blocking_mode,
bool  reset_new_handle 
) const

Perform operations that must occur after <ACE_OS::accept> is called.

Member Data Documentation

ACE_MEM_Acceptor::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

ACE_MEM_SAP::MALLOC_OPTIONS ACE_MEM_Acceptor::malloc_options_
private

A cached MALLOC_OPTIONS. MEM_Accaptor use it to create the shared mamory malloc upon every incoming connection.

ACE_TCHAR* ACE_MEM_Acceptor::mmap_prefix_
private

The filename prefix of the created mmap files. It should contains the absolute path name of the file.

ACE_MEM_IO::Signal_Strategy ACE_MEM_Acceptor::preferred_strategy_
private

Preferred signaling strategy.


The documentation for this class was generated from the following files: