diff options
Diffstat (limited to 'lib/talloc')
-rw-r--r-- | lib/talloc/pytalloc.c | 15 | ||||
-rw-r--r-- | lib/talloc/pytalloc.h | 1 |
2 files changed, 15 insertions, 1 deletions
diff --git a/lib/talloc/pytalloc.c b/lib/talloc/pytalloc.c index 054704f42d7..bea6961efc9 100644 --- a/lib/talloc/pytalloc.c +++ b/lib/talloc/pytalloc.c @@ -88,7 +88,7 @@ PyObject *py_talloc_reference_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, voi } /** - * Default (but slightly more useful than the default) implementation of Repr(). + * Default (but only slightly more useful than the default) implementation of Repr(). */ PyObject *py_talloc_default_repr(PyObject *obj) { @@ -99,6 +99,19 @@ PyObject *py_talloc_default_repr(PyObject *obj) type->tp_name, talloc_obj->ptr); } +/** + * Default (but only slightly more useful than the default) implementation of cmp. + */ +int py_talloc_default_cmp(PyObject *_obj1, PyObject *_obj2) +{ + py_talloc_Object *obj1 = (py_talloc_Object *)_obj1, + *obj2 = (py_talloc_Object *)_obj2; + if (obj1->ob_type != obj2->ob_type) + return (obj1->ob_type - obj2->ob_type); + + return (py_talloc_get_ptr(obj1) - py_talloc_get_ptr(obj2)); +} + static void py_cobject_talloc_free(void *ptr) { talloc_free(ptr); diff --git a/lib/talloc/pytalloc.h b/lib/talloc/pytalloc.h index 47827563522..b17977a46c7 100644 --- a/lib/talloc/pytalloc.h +++ b/lib/talloc/pytalloc.h @@ -55,5 +55,6 @@ PyObject *py_talloc_default_repr(PyObject *py_obj); PyObject *PyCObject_FromTallocPtr(void *); PyObject *PyString_FromString_check_null(const char *ptr); +int py_talloc_default_cmp(PyObject *obj1, PyObject *obj2); #endif /* _PY_TALLOC_H_ */ |