@@ -5531,7 +5531,7 @@ nc_server_config_ssh_dup(const struct nc_server_ssh_opts *src, struct nc_server_
55315531 dst_hostkey -> key .pubkey .data = strdup (src_hostkey -> key .pubkey .data );
55325532 NC_CHECK_ERRMEM_GOTO (!dst_hostkey -> key .pubkey .data , rc = 1 , cleanup );
55335533 }
5534- } else {
5534+ } else if ( src_hostkey -> store == NC_STORE_KEYSTORE ) {
55355535 dst_hostkey -> ks_ref = strdup (src_hostkey -> ks_ref );
55365536 NC_CHECK_ERRMEM_GOTO (!dst_hostkey -> ks_ref , rc = 1 , cleanup );
55375537 }
@@ -5643,7 +5643,7 @@ nc_server_config_tls_dup(const struct nc_server_tls_opts *src, struct nc_server_
56435643 NC_CHECK_ERRMEM_GOTO (!(* dst )-> local .key .pubkey .data , rc = 1 , cleanup );
56445644 (* dst )-> local .cert .data = strdup (src -> local .cert .data );
56455645 NC_CHECK_ERRMEM_GOTO (!(* dst )-> local .cert .data , rc = 1 , cleanup );
5646- } else {
5646+ } else if ( src -> cert_store == NC_STORE_KEYSTORE ) {
56475647 (* dst )-> keystore .asym_key_ref = strdup (src -> keystore .asym_key_ref );
56485648 NC_CHECK_ERRMEM_GOTO (!(* dst )-> keystore .asym_key_ref , rc = 1 , cleanup );
56495649 (* dst )-> keystore .cert_ref = strdup (src -> keystore .cert_ref );
@@ -5664,7 +5664,7 @@ nc_server_config_tls_dup(const struct nc_server_tls_opts *src, struct nc_server_
56645664 NC_CHECK_ERRMEM_GOTO (!dst_ca -> ca_certs [i ].data , rc = 1 , cleanup );
56655665 LY_ARRAY_INCREMENT (dst_ca -> ca_certs );
56665666 }
5667- } else {
5667+ } else if ( src_ca -> ca_certs_store == NC_STORE_TRUSTSTORE ) {
56685668 dst_ca -> ca_cert_bag_ts_ref = strdup (src_ca -> ca_cert_bag_ts_ref );
56695669 NC_CHECK_ERRMEM_GOTO (!dst_ca -> ca_cert_bag_ts_ref , rc = 1 , cleanup );
56705670 }
@@ -5679,7 +5679,7 @@ nc_server_config_tls_dup(const struct nc_server_tls_opts *src, struct nc_server_
56795679 NC_CHECK_ERRMEM_GOTO (!dst_ca -> ee_certs [i ].data , rc = 1 , cleanup );
56805680 LY_ARRAY_INCREMENT (dst_ca -> ee_certs );
56815681 }
5682- } else {
5682+ } else if ( src_ca -> ee_certs_store == NC_STORE_TRUSTSTORE ) {
56835683 dst_ca -> ee_cert_bag_ts_ref = strdup (src_ca -> ee_cert_bag_ts_ref );
56845684 NC_CHECK_ERRMEM_GOTO (!dst_ca -> ee_cert_bag_ts_ref , rc = 1 , cleanup );
56855685 }
0 commit comments