From 44571987e552919312a12d07b0d88ccbd1ef3262 Mon Sep 17 00:00:00 2001 From: "Dmitriy A. Gerasimov" <dmitriy.gerasimov@demlabs.net> Date: Tue, 5 Feb 2019 00:44:40 +0700 Subject: [PATCH] [+] Chain address production --- .gitignore | 2 +- dap_chain_cert.c | 18 +++++++++++++++++- dap_chain_cert.h | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index c6127b38c1..4bf974a899 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ # Prerequisites *.d - +*.autosave # Object files *.o *.ko diff --git a/dap_chain_cert.c b/dap_chain_cert.c index 4f7af2c878..81871e23ba 100644 --- a/dap_chain_cert.c +++ b/dap_chain_cert.c @@ -29,7 +29,7 @@ #include "dap_common.h" #include "dap_chain_cert.h" #include "dap_chain_cert_file.h" - +#include "dap_hash.h" #define LOG_TAG "dap_chain_cert" @@ -78,6 +78,22 @@ size_t dap_chain_cert_sign_output_size(dap_chain_cert_t * a_cert, size_t a_size_ return dap_chain_sign_create_output_cals_size( a_cert->key_private,a_size_wished); } +/** + * @brief dap_chain_cert_to_addr + * @param a_cert + * @param a_net_id + * @return + */ +dap_chain_addr_t * dap_chain_cert_to_addr(dap_chain_cert_t * a_cert, dap_chain_net_id_t a_net_id) +{ + dap_chain_addr_t * l_addr = DAP_NEW_Z(dap_chain_addr_t); + l_addr->addr_ver = 1; + l_addr->net_id.uint64 = a_net_id.uint64; + l_addr->sig_type.raw = dap_chain_sign_type_from_key_type( a_cert->key_private->type).raw; + // dap_hash(&l_addr); + l_addr->checksum; +} + /** * @brief dap_chain_cert_sign_output * @param a_cert diff --git a/dap_chain_cert.h b/dap_chain_cert.h index cee6ccc0bb..c85b38240e 100644 --- a/dap_chain_cert.h +++ b/dap_chain_cert.h @@ -48,6 +48,9 @@ dap_chain_cert_t * dap_chain_cert_generate(const char * a_cert_name,const char * dap_chain_cert_t * dap_chain_cert_generate_mem(const char * a_cert_name, dap_enc_key_type_t a_key_type ); + +dap_chain_addr_t * dap_chain_cert_to_addr(dap_chain_cert_t * a_cert, dap_chain_net_id_t a_net_id); + dap_chain_cert_t * dap_chain_cert_add_file(const char * a_cert_name,const char *a_file_path); void dap_chain_cert_add_folder(const char* a_cert_name_prefix,const char *a_folder_path); void dap_chain_cert_dump(dap_chain_cert_t * a_cert); -- GitLab