diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c index 1e6272b9f2..e49f8eafb2 100644 --- a/lib/vtls/vtls.c +++ b/lib/vtls/vtls.c @@ -499,8 +499,8 @@ CURLcode Curl_ssl_addsessionid(struct Curl_easy *data, int sockindex) { size_t i; - struct Curl_ssl_session *store = &data->state.session[0]; - long oldest_age = data->state.session[0].age; /* zero if unused */ + struct Curl_ssl_session *store; + long oldest_age; char *clone_host; char *clone_conn_to_host; int conn_to_port; @@ -516,6 +516,11 @@ CURLcode Curl_ssl_addsessionid(struct Curl_easy *data, const char *hostname = conn->host.name; #endif (void)sockindex; + if(!data->state.session) + return CURLE_OK; + + store = &data->state.session[0]; + oldest_age = data->state.session[0].age; /* zero if unused */ DEBUGASSERT(SSL_SET_OPTION(primary.sessionid)); clone_host = strdup(hostname);