summaryrefslogtreecommitdiff
path: root/plugins/pychrysa/arch/vmpa.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pychrysa/arch/vmpa.c')
-rw-r--r--plugins/pychrysa/arch/vmpa.c27
1 files changed, 24 insertions, 3 deletions
diff --git a/plugins/pychrysa/arch/vmpa.c b/plugins/pychrysa/arch/vmpa.c
index f9a9db7..43131b5 100644
--- a/plugins/pychrysa/arch/vmpa.c
+++ b/plugins/pychrysa/arch/vmpa.c
@@ -28,7 +28,6 @@
#include <string.h>
-#include <src/arch/vmpa.h>
@@ -544,8 +543,6 @@ PyTypeObject *get_python_vmpa_type(void)
}
-
-
/******************************************************************************
* *
* Paramètres : module = module dont la définition est à compléter. *
@@ -574,3 +571,27 @@ bool register_python_vmpa(PyObject *module)
return (ret == 0);
}
+
+
+/******************************************************************************
+* *
+* Paramètres : obj = objet Python à traiter. *
+* *
+* Description : Donne accès au coeur d'un objet 'pychrysalide.arch.vmpa'. *
+* *
+* Retour : Localistion réelle ou NULL en cas de mauvaise conversion. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+vmpa2t *get_internal_vmpa(PyObject *obj)
+{
+ int ret; /* Bilan d'analyse */
+
+ ret = PyObject_IsInstance(obj, (PyObject *)get_python_vmpa_type());
+ if (!ret) return NULL;
+
+ return &((py_vmpa_t *)obj)->addr;
+
+}