From 90adbaf559f626f37a75f01f8f6c1dffc2ef1954 Mon Sep 17 00:00:00 2001
From: Dmitrii <naidv88@gmail.com>
Date: Fri, 17 Dec 2021 21:16:33 +0500
Subject: [PATCH] [+] add new functionality

---
 modules/net/dap_chain_node_cli_cmd.c | 45 +++++++++++++++++++++++++++-
 1 file changed, 44 insertions(+), 1 deletion(-)

diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c
index 2cd68919ab..407b011b57 100644
--- a/modules/net/dap_chain_node_cli_cmd.c
+++ b/modules/net/dap_chain_node_cli_cmd.c
@@ -4641,12 +4641,17 @@ static int s_check_cmd(int a_arg_index, int a_argc, char **a_argv, char **a_str_
         goto end;
     }
 
+    printf("....%p\n", l_chain->cells);
+
     if (l_str_opts_check[OPT_HASH]) {
+#if 0
         size_t l_size_store_datum = 0;
         dap_store_obj_t *l_store_datum = dap_chain_global_db_obj_gr_get(l_str_opts_check[OPT_HASH], &l_size_store_datum, l_gdb_group);
         dap_chain_node_cli_set_reply_text(a_str_reply, "%s datum by hash: %s",
                                           l_size_store_datum ? "found" : "not found",
                                           l_str_opts_check[OPT_HASH]);
+#endif
+
     }
 
     if (l_str_opts_check[OPT_FILE]) {
@@ -4655,7 +4660,7 @@ static int s_check_cmd(int a_arg_index, int a_argc, char **a_argv, char **a_str_
             l_ret = -1;
             goto end;
         }
-
+#if 0
         dap_chain_hash_fast_t l_key_hash;
         dap_hash_fast(l_sign->pkey_n_sign, l_sign->header.sign_size, &l_key_hash);
         char *l_key_str = dap_chain_hash_fast_to_str_new(&l_key_hash);
@@ -4667,8 +4672,34 @@ static int s_check_cmd(int a_arg_index, int a_argc, char **a_argv, char **a_str_
                                               l_str_opts_check[OPT_FILE]);
             DAP_FREE(l_key_str);
         }
+#endif
+#if 0
+        dap_chain_cell_id_t l_cell_id = {0};
+        dap_chain_atom_iter_t *l_iter = NULL;
+        for (uint64_t i = 0; i >= 0; i++) {
+            l_iter = l_chain->callback_atom_iter_create(l_chain, l_cell_id);
+            if (l_iter) {
+                size_t l_size = 0;
+                dap_chain_datum_t *l_datum = l_chain->callback_atom_iter_get_next(l_iter, &l_size);
+                if (l_datum) {
+                    printf("l_size: %ld\n", l_size);
+                    for (size_t i = 0; i < l_size; i++) {
+
+                        dap_hash_fast_t l_hash;
+                        dap_chain_hash_fast_from_str(l_datum[i].data, &l_hash);
+                        char *l_key = dap_hash_fast_to_str_new(&l_hash);
+                        printf("key: %s\n", l_key);
+                    }
+
+
+                }
+            } else break;
+            l_cell_id.uint64++;
+        }
+#endif
     }
 
+
 end:
 
     if (l_gdb_group) DAP_FREE(l_gdb_group);
@@ -4772,13 +4803,16 @@ static int s_signer_cmd(int a_arg_index, int a_argc, char **a_argv, char **a_str
     dap_chain_datum_t *l_datum = NULL;
     dap_global_db_obj_t *l_objs = NULL;
 
+    printf("#\n");
     l_ret = s_get_key_from_file(l_opts_sign[OPT_FILE], l_opts_sign[OPT_MIME], l_opts_sign[OPT_CERT], &l_sign);
     if (!l_ret) {
+        dap_chain_node_cli_set_reply_text(a_str_reply, "%s cert not found", l_opts_sign[OPT_CERT]);
         l_ret = -1;
         goto end;
     }
 
 
+    printf("##\n");
 
     l_datum = dap_chain_datum_create(DAP_CHAIN_DATUM_SIGNER, l_sign->pkey_n_sign, l_sign->header.sign_size);
     if (!l_datum) {
@@ -4787,14 +4821,23 @@ static int s_signer_cmd(int a_arg_index, int a_argc, char **a_argv, char **a_str
         goto end;
     }
 
+    printf("###\n");
 
+#if 0
     char *l_hash_str = dap_chain_mempool_datum_add(l_datum, l_chain);
     dap_chain_node_cli_set_reply_text(a_str_reply, "%s by certificate is signed %s", l_opts_sign[OPT_FILE],
                                       l_hash_str ? "successfull": "not successfull");
+
     if (l_hash_str) {
         l_ret = 0;
         DAP_FREE(l_hash_str);
     }
+    printf("####\n");
+#endif
+    dap_chain_cell_id_t l_cell_id = {0};
+    dap_chain_cell_create_fill(l_chain, l_cell_id);
+    l_ret = l_chain->callback_add_datums(l_chain, &l_datum, 1);
+    printf("l_ret datum: %d\n", l_ret);
 
 end:
 
-- 
GitLab