C
typedef struct { WORD wRxBytesRem; WORD wRxHsBytesRem; BYTE rxProtocol; BYTE rxHSType; BYTE idSession; BYTE idMD5, idSHA1; BYTE idRxHash; BYTE idRxBuffer, idTxBuffer; DWORD_VAL dwTemp; struct { unsigned char bIsServer : 1; unsigned char bClientHello : 1; unsigned char bServerHello : 1; unsigned char bServerCertificate : 1; unsigned char bServerHelloDone : 1; unsigned char bClientKeyExchange : 1; unsigned char bRemoteChangeCipherSpec : 1; unsigned char bRemoteFinished : 1; unsigned char bLocalChangeCipherSpec : 1; unsigned char bLocalFinished : 1; unsigned char bExpectingMAC : 1; unsigned char bNewSession : 1; unsigned char bCloseNotify : 1; unsigned char bDone : 1; unsigned char bRSAInProgress : 1; unsigned char bKeysValid : 1; } Flags; BYTE requestedMessage; void * supplementaryBuffer; BYTE supplementaryDataType; } SSL_STUB;
Description
Memory holder for general information associated with an SSL connections.
Members
Members |
Description |
WORD wRxBytesRem; |
Bytes left to read in current record |
WORD wRxHsBytesRem; |
Bytes left to read in current Handshake submessage |
BYTE rxProtocol; |
Protocol for message being read |
BYTE rxHSType; |
Handshake message being received |
BYTE idSession; |
ID for associated session |
BYTE idRxHash; |
ID for MAC hash (TX needs no persistence) |
DWORD_VAL dwTemp; |
Used for state machine in RxCertificate |
unsigned char bIsServer : 1; |
We are the server |
unsigned char bClientHello : 1; |
ClientHello has been sent/received |
unsigned char bServerHello : 1; |
ServerHello has been sent/received |
unsigned char bServerCertificate : 1; |
ServerCertificate has been sent/received |
unsigned char bServerHelloDone : 1; |
ServerHelloDone has been sent/received |
unsigned char bClientKeyExchange : 1; |
ClientKeyExchange has been sent/received |
unsigned char bRemoteChangeCipherSpec : 1; |
Remote node has sent a ChangeCipherSpec message |
unsigned char bRemoteFinished : 1; |
Remote node has sent a Finished message |
unsigned char bLocalChangeCipherSpec : 1; |
We have sent a ChangeCipherSpec message |
unsigned char bLocalFinished : 1; |
We have sent a Finished message |
unsigned char bExpectingMAC : 1; |
We expect a MAC at end of message |
unsigned char bNewSession : 1; |
TRUE if a new session, FALSE if resuming |
unsigned char bCloseNotify : 1; |
Whether or not a CloseNotify has been sent/received |
unsigned char bDone : 1; |
TRUE if the connection is closed |
unsigned char bRSAInProgress : 1; |
TRUE when RSA op is in progress |
unsigned char bKeysValid : 1; |
TRUE if the session keys have been generated |
BYTE requestedMessage; |
Currently requested message to send, or 0xff |