3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
|
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
|
+
+
-
+
+
-
+
+
+
|
statePtr->password = NULL;
}
if (statePtr->vcmd) {
Tcl_DecrRefCount(statePtr->vcmd);
statePtr->vcmd = NULL;
}
/* Remove list of ALPN protocols */
if (statePtr->protos) {
ckfree(statePtr->protos);
statePtr->protos = NULL;
}
/* BIO_free_all() frees up an entire BIO chain */
if (statePtr->bio) {
/* This will call SSL_shutdown. Bug 1414045 */
dprintf("BIO_free_all(%p)", statePtr->bio);
dprintf("BIO_free(%p)", statePtr->bio);
BIO_free_all(statePtr->bio);
statePtr->bio = NULL;
}
/* Free SSL context and statePtr->p_bio */
if (statePtr->ssl) {
dprintf("SSL_free(%p)", statePtr->ssl);
dprintf("SSL_free(%p) and p_bio(%p)", statePtr->ssl, statePtr->p_bio);
SSL_free(statePtr->ssl);
statePtr->ssl = NULL;
}
/* Free CTX context */
if (statePtr->ctx) {
dprintf("SSL_CTX_free(%p)", statePtr->ctx);
SSL_CTX_free(statePtr->ctx);
statePtr->ctx = NULL;
}
dprintf("Returning");
}
|