From 51b9235d9c96fa9fcbb205e65183ac84c7353125 Mon Sep 17 00:00:00 2001
From: Alexey Stratulat <alexey.stratulat@demlabs.net>
Date: Fri, 5 Jul 2019 00:36:01 +0700
Subject: [PATCH] [+] Created a basis for dap_enc_key binding

---
 include/wrapping_dap_enc_key.h | 29 ++++++++++++++++++++
 src/wrapping_dap_enc_key.c     | 49 ++++++++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+)
 create mode 100644 include/wrapping_dap_enc_key.h
 create mode 100644 src/wrapping_dap_enc_key.c

diff --git a/include/wrapping_dap_enc_key.h b/include/wrapping_dap_enc_key.h
new file mode 100644
index 00000000..160e745d
--- /dev/null
+++ b/include/wrapping_dap_enc_key.h
@@ -0,0 +1,29 @@
+#include "dap_enc_key.h"
+
+dap_enc_key_t *dapEncKey;
+
+PyObject* dap_enc_key_get_enc_size_py(PyObject *self, PyObject *args);//dap_enc_key_t * a_key, const size_t buf_in_size); -> size_t
+PyObject* dap_enc_key_get_dec_size_py(PyObject *self, PyObject *args);//dap_enc_key_t * a_key, const size_t buf_in_size); -> size_t
+
+
+// allocate memory for key struct
+PyObject* dap_enc_key_new_py(PyObject *self, PyObject *args);//dap_enc_key_type_t a_key_type);     ->dap_enc_key_t*
+
+
+// default gen key
+PyObject *dap_enc_key_new_generate_py(PyObject *self, PyObject *args);//dap_enc_key_type_t key_type, const void *kex_buf,  ->dap_enc_key_t*
+                                        //size_t kex_size, const void* seed,
+                                        //size_t seed_size, size_t key_size);
+
+// update struct dap_enc_key_t after insert foreign keys
+PyObject* dap_enc_key_update_py(PyObject *self, PyObject *args);//dap_enc_key_t *a_key);            ->void
+
+// for asymmetric gen public key
+PyObject *dap_enc_gen_pub_key_from_priv_py(PyObject *self, PyObject *args);//struct dap_enc_key *a_key, void **priv_key, size_t *alice_msg_len);  ->dap_enc_key_t *
+
+
+PyObject *dap_enc_gen_key_public_size_py(PyObject *self, PyObject *args);//dap_enc_key_t *a_key); ->size_t
+PyObject *dap_enc_gen_key_public_py(PyObject *self, PyObject *args);//dap_enc_key_t *a_key, void * a_output); ->int
+
+PyObject *dap_enc_key_signature_delete_py(PyObject *self, PyObject *args);//dap_enc_key_type_t a_key_type, uint8_t *a_sig_buf);     ->void
+PyObject *dap_enc_key_delete_py(PyObject *self, PyObject *args);//dap_enc_key_t * a_key);       ->void
\ No newline at end of file
diff --git a/src/wrapping_dap_enc_key.c b/src/wrapping_dap_enc_key.c
new file mode 100644
index 00000000..eb03a0dc
--- /dev/null
+++ b/src/wrapping_dap_enc_key.c
@@ -0,0 +1,49 @@
+PyObject* dap_enc_key_get_enc_size_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+PyObject* dap_enc_key_get_dec_size_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+
+// allocate memory for key struct
+PyObject* dap_enc_key_new_py(PyObject *self, PyObject *args){
+    int type_key;
+    if(!PyArg_ParseTuple(args, "i", &type_key)){
+        return NULL;
+    }
+    if (type_key < 0 || type_key > 16){
+        return PyLong_FromLong(-1);
+    }
+    dap_enc_key_t *key = dap_enc_key_new(type_key);
+    return PyLong_FromLong(0);
+}
+
+// default gen key
+PyObject *dap_enc_key_new_generate_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+
+// update struct dap_enc_key_t after insert foreign keys
+PyObject* dap_enc_key_update_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+
+// for asymmetric gen public key
+PyObject *dap_enc_gen_pub_key_from_priv_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+
+
+PyObject *dap_enc_gen_key_public_size_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+PyObject *dap_enc_gen_key_public_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+
+PyObject *dap_enc_key_signature_delete_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
+PyObject *dap_enc_key_delete_py(PyObject *self, PyObject *args){
+    return PyLong_FromLong(0);
+}
\ No newline at end of file
-- 
GitLab