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

Public Member Functions

virtual bool EnableSSL (const char *cert_fn, DS3_SSL_METHOD method)=0
 
virtual bool SwitchToSSL_Server (DSL_SOCKET *sock)=0
 
virtual bool SwitchToSSL_Client (DSL_SOCKET *sock)=0
 
- Public Member Functions inherited from DSL_Sockets3_Base
 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

virtual DSL_SOCKETpAllocSocket ()=0
 
virtual int pRecv (DSL_SOCKET *sock, char *buf, uint32 bufsize)=0
 
virtual int pPeek (DSL_SOCKET *sock, char *buf, uint32 bufsize)=0
 
virtual int pSend (DSL_SOCKET *sock, const char *buf, uint32 bufsize)=0
 
virtual void pCloseSSL (DSL_SOCKET *sock)=0
 
virtual int pSelect_Read (DSL_SOCKET *sock, timeval *timeo)
 
- Protected Member Functions inherited from DSL_Sockets3_Base
void pUpdateError (DSL_SOCKET *sock)
 
void pUpdateError (DSL_SOCKET *sock, int serrno, const char *errstr)
 

Friends

class DSL_Sockets3_Base
 

Additional Inherited Members

- Protected Attributes inherited from DSL_Sockets3_Base
DSL_Mutex_BasehMutex = NULL
 
char bError [512]
 
int bErrNo
 
bool silent
 
unsigned int avail_flags = 0
 
unsigned int enabled_flags = 0
 

Detailed Description

Definition at line 197 of file sockets3.h.


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