Skip to content
Snippets Groups Projects
Commit 5bbac046 authored by Constantin Papizh's avatar Constantin Papizh
Browse files

Dup func fixed

parent fd8b9321
No related branches found
No related tags found
3 merge requests!251Master,!250Master,!194Dup func fixed
Pipeline #5111 passed with stage
in 15 seconds
......@@ -639,18 +639,25 @@ dap_enc_key_serealize_t* dap_enc_key_serealize(dap_enc_key_t * key)
*/
dap_enc_key_t* dap_enc_key_dup(dap_enc_key_t * a_key)
{
dap_enc_key_t * l_ret = DAP_NEW_S_SIZE(dap_enc_key_t,sizeof(*l_ret) );
memcpy(l_ret,a_key,sizeof (*a_key));
l_ret->priv_key_data = DAP_NEW_Z_SIZE(byte_t, l_ret->priv_key_data_size);
memcpy(l_ret->priv_key_data, a_key->priv_key_data, a_key->priv_key_data_size);
l_ret->pub_key_data = DAP_NEW_Z_SIZE(byte_t, a_key->pub_key_data_size);
memcpy(l_ret->pub_key_data, a_key->pub_key_data, a_key->pub_key_data_size);
if (!a_key || a_key->type == DAP_ENC_KEY_TYPE_INVALID) {
return NULL;
}
dap_enc_key_t *l_ret = dap_enc_key_new(a_key->type);
if (l_ret->priv_key_data_size) {
l_ret->priv_key_data = DAP_NEW_Z_SIZE(byte_t, a_key->priv_key_data_size);
l_ret->priv_key_data_size = a_key->priv_key_data_size;
memcpy(l_ret->priv_key_data, a_key->priv_key_data, a_key->priv_key_data_size);
}
if (a_key->pub_key_data_size) {
l_ret->pub_key_data = DAP_NEW_Z_SIZE(byte_t, a_key->pub_key_data_size);
l_ret->pub_key_data_size = a_key->pub_key_data_size;
memcpy(l_ret->pub_key_data, a_key->pub_key_data, a_key->pub_key_data_size);
}
if(a_key->_inheritor_size) {
l_ret->_inheritor = DAP_NEW_Z_SIZE(byte_t, a_key->_inheritor_size );
l_ret->_inheritor = DAP_NEW_Z_SIZE(byte_t, a_key->_inheritor_size);
l_ret->_inheritor_size = a_key->_inheritor_size;
memcpy(l_ret->_inheritor, a_key->_inheritor, a_key->_inheritor_size);
}
return l_ret;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment