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