NAME
ACE_TLI_Acceptor -
Defines the member functions for ACE_TLI_Acceptor abstraction.
SYNOPSIS
#include <ace/TLI_Acceptor.h>
class ACE_TLI_Acceptor : public ACE_TLI
{
public:
friend class ACE_Request_Queue;
ACE_TLI_Acceptor (void);
ACE_TLI_Acceptor (
const ACE_Addr &remote_sap,
int reuse_addr = 0,
int oflag = O_RDWR,
struct t_info *info = 0,
int backlog = 5,
const char device[] = "/dev/tcp"
);
ACE_HANDLE open (
const ACE_Addr &remote_sap,
int reuse_addr = 0,
int oflag = O_RDWR,
struct t_info *info = 0,
int backlog = 5,
const char device[] = "/dev/tcp"
);
int close (void);
int accept (
ACE_TLI_Stream &new_tli_sap,
ACE_Addr *remote_addr = 0,
ACE_Time_Value *timeout = 0,
int restart = 1,
int rwflag = 1,
netbuf *udata = 0,
netbuf *opt = 0
);
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;
private:
const char *device_;
int backlog_;
int rwflag_;
int handle_async_event (int restart, int rwflag);
ACE_TLI_Request_Queue *queue_;
};
DESCRIPTION
This class implements the algorithm described in Steve Rago's
book on System V UNIX network programming. It basically
makes TLI look like the C++ SOCK_SAP socket wrappers with
respect to establishing passive-mode listener endpoints.
Initialization and termination methods.
ACE_TLI_Acceptor (void);
ACE_TLI_Acceptor (
const ACE_Addr &remote_sap,
int reuse_addr = 0,
int oflag = O_RDWR,
struct t_info *info = 0,
int backlog = 5,
const char device[] = "/dev/tcp"
);
Initiate a passive mode socket.
ACE_HANDLE open (
const ACE_Addr &remote_sap,
int reuse_addr = 0,
int oflag = O_RDWR,
struct t_info *info = 0,
int backlog = 5,
const char device[] = "/dev/tcp"
);
Initiate a passive mode socket.
int close (void);
Close down the acceptor and release resources.
Passive connection acceptance method.
int accept (
ACE_TLI_Stream &new_tli_sap,
ACE_Addr *remote_addr = 0,
ACE_Time_Value *timeout = 0,
int restart = 1,
int rwflag = 1,
netbuf *udata = 0,
netbuf *opt = 0
);
Accept a new data transfer connection. A timeout of 0 means
block forever, a timeout of {0, 0} means poll. restart == 1
means "restart if interrupted."
void dump (void) const;
Dump the state of an object.
ACE_ALLOC_HOOK_DECLARE;
Declare the dynamic allocation hooks.
AUTHOR
Doug Schmidt
LIBRARY
ace