SO_SSL_GET_CLIENT/SO_SSL_SET_CLIENT

This WSAIoctl command is used to get/set the client data that SSL will use for the socket. The lpvInBuffe points to the following structure:

struct sslclientopts {
    char *cert;
    int certlen;
    time_t sidtimeout;
    int32 sidentries;
    char *siddir;
};
 

cert and certlen are used to define the clients certificate. sidtimeout specifies the number of seconds that session-id's are allowed to live. sidentries defines the maximum number of entries to keep in the session-id cache. siddir defines the location of the temporary file used to hold the session-id cache when a temporary file is needed by the implementation.

The SSL implementation requires and guarantees MT-safe access to the session-id cache.