@@ -504,6 +504,9 @@ nc_server_destroy(void)
504504 lydict_remove (server_opts .ctx , server_opts .capabilities [i ]);
505505 }
506506 free (server_opts .capabilities );
507+ server_opts .capabilities = NULL ;
508+ server_opts .capabilities_count = 0 ;
509+
507510 pthread_spin_destroy (& server_opts .sid_lock );
508511
509512#if defined(NC_ENABLED_SSH ) || defined(NC_ENABLED_TLS )
@@ -513,20 +516,28 @@ nc_server_destroy(void)
513516 if (server_opts .passwd_auth_data && server_opts .passwd_auth_data_free ) {
514517 server_opts .passwd_auth_data_free (server_opts .passwd_auth_data );
515518 }
519+ server_opts .passwd_auth_data = NULL ;
520+ server_opts .passwd_auth_data_free = NULL ;
516521
517522 nc_server_ssh_del_authkey (NULL , NULL , 0 , NULL );
518523
519524 if (server_opts .hostkey_data && server_opts .hostkey_data_free ) {
520525 server_opts .hostkey_data_free (server_opts .hostkey_data );
521526 }
527+ server_opts .hostkey_data = NULL ;
528+ server_opts .hostkey_data_free = NULL ;
522529#endif
523530#ifdef NC_ENABLED_TLS
524531 if (server_opts .server_cert_data && server_opts .server_cert_data_free ) {
525532 server_opts .server_cert_data_free (server_opts .server_cert_data );
526533 }
534+ server_opts .server_cert_data = NULL ;
535+ server_opts .server_cert_data_free = NULL ;
527536 if (server_opts .trusted_cert_list_data && server_opts .trusted_cert_list_data_free ) {
528537 server_opts .trusted_cert_list_data_free (server_opts .trusted_cert_list_data );
529538 }
539+ server_opts .trusted_cert_list_data = NULL ;
540+ server_opts .trusted_cert_list_data_free = NULL ;
530541#endif
531542 nc_destroy ();
532543}
0 commit comments