Public Member Functions | |
virtual void | OnSecureConnectionEstablished (JetByteTools::Socket::IStreamSocket &socket, const JetByteTools::Socket::IAddress &address)=0 |
Called when a secure connection is established, i.e. a connection that is protected by SSL. This is called before the OnConnectionEstablished() is called and is intended to allow the user to do specific connection establishment operations that are only required for secure connections. The address is the address that the socket is connected to. | |
virtual void | OnSecureSocketReleased (JetByteTools::Core::IIndexedOpaqueUserData &userData)=0 |
Called when a secure connection is released back to the allocator. This is called after OnSocketReleased() and is intended to allow you to clean up any user data that you might need to clean up for secure connections. | |
virtual int | Verify (int preverify_ok, X509_STORE_CTX *pContext)=0 |
Called to verify a connection's certificates. | |
virtual const CApplicationProtocolSelection * | GetApplicationProtocolSelection (JetByteTools::Socket::IStreamSocket &socket)=0 |
Called to request a client's list of application protocols to advertise during connection handshake. | |
virtual const CApplicationProtocolSelection * | OnApplicationLayerProtocolNegotiation (JetByteTools::Socket::IStreamSocket &socket, const CApplicationProtocolSelection &offeredProtocols)=0 |
Called to negotiate an application layer protocol on the server side. You are supplied the client's advertised protocols, you can either return just your selected protocol or all of your available protocols and the calling code will perform the negotiation. | |
virtual void | OnApplicationLayerProtocolNegotiated (JetByteTools::Socket::IStreamSocket &socket, const JetByteTools::Core::_tstring &protocol)=0 |
Called after an application layer protocol has been negotiated. | |
Protected Member Functions | |
virtual | ~ISecureStreamSocketCallback () |
We never delete instances of this interface; you must manage the lifetime of the class that implements it. |
virtual ~ISecureStreamSocketCallback | ( | ) | [protected, virtual] |
We never delete instances of this interface; you must manage the lifetime of the class that implements it.
virtual void OnSecureConnectionEstablished | ( | JetByteTools::Socket::IStreamSocket & | socket, | |
const JetByteTools::Socket::IAddress & | address | |||
) | [pure virtual] |
Called when a secure connection is established, i.e. a connection that is protected by SSL. This is called before the OnConnectionEstablished() is called and is intended to allow the user to do specific connection establishment operations that are only required for secure connections. The address is the address that the socket is connected to.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.
virtual void OnSecureSocketReleased | ( | JetByteTools::Core::IIndexedOpaqueUserData & | userData | ) | [pure virtual] |
Called when a secure connection is released back to the allocator. This is called after OnSocketReleased() and is intended to allow you to clean up any user data that you might need to clean up for secure connections.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.
virtual int Verify | ( | int | preverify_ok, | |
X509_STORE_CTX * | pContext | |||
) | [pure virtual] |
Called to verify a connection's certificates.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.
virtual const CApplicationProtocolSelection* GetApplicationProtocolSelection | ( | JetByteTools::Socket::IStreamSocket & | socket | ) | [pure virtual] |
Called to request a client's list of application protocols to advertise during connection handshake.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.
virtual const CApplicationProtocolSelection* OnApplicationLayerProtocolNegotiation | ( | JetByteTools::Socket::IStreamSocket & | socket, | |
const CApplicationProtocolSelection & | offeredProtocols | |||
) | [pure virtual] |
Called to negotiate an application layer protocol on the server side. You are supplied the client's advertised protocols, you can either return just your selected protocol or all of your available protocols and the calling code will perform the negotiation.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.
virtual void OnApplicationLayerProtocolNegotiated | ( | JetByteTools::Socket::IStreamSocket & | socket, | |
const JetByteTools::Core::_tstring & | protocol | |||
) | [pure virtual] |
Called after an application layer protocol has been negotiated.
Implemented in CStreamSocketConnectionManagerCallback, CStreamSocketServerCallback, and CStreamSocketServerExCallback.