DSL
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
DSL_Sockets3_Base Class Reference
Inheritance diagram for DSL_Sockets3_Base:
Inheritance graph
[legend]
Collaboration diagram for DSL_Sockets3_Base:
Collaboration graph
[legend]

Public Member Functions

 DSL_Sockets3_Base (DSL_Mutex_Base *mutex=NULL)
 
virtual bool IsSupported (unsigned int flag)
 This lets you know if a feature is supported.
 
virtual bool IsEnabled (unsigned int flag)
 This lets you know if a feature is supported and activated (ie. EnableSSL() has been called)
 
virtual void Silent (bool bSilent)
 Don't print socket errors to the console.
 
virtual int GetLastError (D_SOCKET *sock=NULL)
 
virtual const char * GetLastErrorString (D_SOCKET *sock=NULL)
 
virtual DSL_SOCKETCreate (int family=PF_INET, int type=SOCK_STREAM, int proto=IPPROTO_TCP, uint32 flags=0)
 
virtual int Close (DSL_SOCKET *sock)
 
virtual bool IsKnownSocket (DSL_SOCKET *sock)
 
virtual int GetFamilyHint (const char *host, int port)
 Returns PF_INET or PF_INET6 for a domain or IP address.
 
virtual bool Connect (DSL_SOCKET *sock, const char *host, int port)
 
virtual bool Connect (DSL_SOCKET *sock, sockaddr *addr, size_t addrlen)
 
virtual bool ConnectWithTimeout (DSL_SOCKET *sock, const char *host, int port, uint32 timeout)
 Connect with timeout in milliseconds.
 
virtual int Send (DSL_SOCKET *sock, const char *data, int datalen=-1, bool doloop=true)
 
virtual int Recv (DSL_SOCKET *sock, char *buf, uint32 bufsize)
 
virtual int RecvLine (DSL_SOCKET *sock, char *buf, int bufsize)
 
virtual int Peek (DSL_SOCKET *sock, char *buf, uint32 bufsize)
 
virtual int Select_Read (DSL_SOCKET *sock, timeval *timeo)
 same return value as select()
 
virtual int Select_Read (DSL_SOCKET *sock, uint32 millisec)
 same return value as select()
 
virtual int Select_Write (DSL_SOCKET *sock, timeval *timeo)
 same return value as select()
 
virtual int Select_Write (DSL_SOCKET *sock, uint32 millisec)
 same return value as select()
 
virtual int Select_Read_List (DSL_SOCKET_LIST *list, timeval *timeo)
 same return value as select(). Use below functions to build your lists. More...
 
virtual int Select_Read_List (DSL_SOCKET_LIST *list, uint32 millisec)
 same return value as select()
 
virtual int Select_List (DSL_SOCKET_LIST *list_r, DSL_SOCKET_LIST *list_w, timeval *timeo)
 same return value as select()
 
virtual int Select_List (DSL_SOCKET_LIST *list_r, DSL_SOCKET_LIST *list_w, uint32 millisec)
 same return value as select()
 
virtual DSL_SOCKETAccept (DSL_SOCKET *s, sockaddr *addr, socklen_t *addrlen, uint32 flags=0)
 
virtual DSL_SOCKETAccept (DSL_SOCKET *s, uint32 flags=0)
 
virtual bool Bind (DSL_SOCKET *sock, int port)
 Bind to all interfaces (0.0.0.0)
 
virtual bool BindToAddr (DSL_SOCKET *sock, const char *host, int port)
 Bind to specific IP.
 
virtual bool Listen (DSL_SOCKET *s, int backlog=5)
 
virtual int SendTo (DSL_SOCKET *sock, const char *host, int port, const char *buf, int datalen=-1)
 For UDP/datagram sockets, same details otherwise as Send()
 
virtual int RecvFrom (DSL_SOCKET *sock, char *host, uint32 hostSize, int *port, char *buf, uint32 bufsize)
 For UDP/datagram sockets, same details otherwise as Recv()
 
virtual int RecvLineFrom (DSL_SOCKET *sock, char *host, uint32 hostSize, int *port, char *buf, uint32 bufsize)
 For UDP/datagram sockets, same details otherwise as RecvLine()
 
virtual int PeekFrom (DSL_SOCKET *sock, char *host, uint32 hostSize, int *port, char *buf, uint32 bufsize)
 For UDP/datagram sockets, same details otherwise as Peek()
 
virtual int SetRecvTimeout (DSL_SOCKET *sock, uint32 millisec)
 
virtual int SetSendTimeout (DSL_SOCKET *sock, uint32 millisec)
 
virtual bool IsNonBlocking (DSL_SOCKET *sock)
 
virtual void SetNonBlocking (DSL_SOCKET *sock, bool non_blocking=true)
 
virtual int SetReuseAddr (DSL_SOCKET *sock, bool reuse_addr=true)
 
virtual int SetLinger (DSL_SOCKET *sock, bool linger, unsigned short timeo=30)
 
virtual int SetNoDelay (DSL_SOCKET *sock, bool no_delay=true)
 
virtual int SetKeepAlive (DSL_SOCKET *sock, bool ka=true)
 
virtual int SetBroadcast (DSL_SOCKET *sock, bool broadcast=true)
 
virtual bool DisableUDPConnReset (DSL_SOCKET *sock, bool noconnreset)
 
virtual std::string GetHostIP (const char *host, int type=SOCK_STREAM, int proto=IPPROTO_TCP)
 

Protected Member Functions

void pUpdateError (DSL_SOCKET *sock)
 
void pUpdateError (DSL_SOCKET *sock, int serrno, const char *errstr)
 
virtual DSL_SOCKETpAllocSocket ()
 
virtual int pRecv (DSL_SOCKET *sock, char *buf, uint32 bufsize)
 
virtual int pPeek (DSL_SOCKET *sock, char *buf, uint32 bufsize)
 
virtual int pSend (DSL_SOCKET *sock, const char *buf, uint32 bufsize)
 
virtual int pSelect_Read (DSL_SOCKET *sock, timeval *timeo)
 

Protected Attributes

DSL_Mutex_BasehMutex = NULL
 
char bError [512]
 
int bErrNo
 
bool silent
 
unsigned int avail_flags = 0
 
unsigned int enabled_flags = 0
 

Friends

class DSL_Sockets_Events
 

Member Function Documentation

◆ Select_Read_List()

int DSL_Sockets3_Base::Select_Read_List ( DSL_SOCKET_LIST list,
timeval *  timeo 
)
virtual

same return value as select(). Use below functions to build your lists.

See also
DFD_ZERO
DFD_SET
DFD_ISSET

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