diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-01-13 16:44:42 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-01-14 19:53:04 +0100 |
commit | 252675a5788059dbcc49b175b56fa6c6a35ef74a (patch) | |
tree | a9dc4990f8b857abdb5cc0d420326913ed6093f7 /source4/scripting/python/pytalloc.c | |
parent | ce874c0b898eee3dfa8439424350579bf974e98f (diff) | |
download | samba-252675a5788059dbcc49b175b56fa6c6a35ef74a.tar.gz samba-252675a5788059dbcc49b175b56fa6c6a35ef74a.tar.bz2 samba-252675a5788059dbcc49b175b56fa6c6a35ef74a.zip |
python: Add some utility functions for working with Python objects based on talloc pointers.
(This used to be commit 9366ddba92e192cd88e12eafba4a90af8c266f1c)
Diffstat (limited to 'source4/scripting/python/pytalloc.c')
-rw-r--r-- | source4/scripting/python/pytalloc.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/source4/scripting/python/pytalloc.c b/source4/scripting/python/pytalloc.c new file mode 100644 index 0000000000..55ed56a627 --- /dev/null +++ b/source4/scripting/python/pytalloc.c @@ -0,0 +1,34 @@ +/* + Unix SMB/CIFS implementation. + Python/Talloc glue + Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2008 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#include "includes.h" + +void py_talloc_dealloc(PyObject* self) +{ + py_talloc_Object *obj = (py_talloc_Object *)self; + talloc_free(obj->object); + PyObject_Del(self); +} + +PyObject *py_talloc_import(PyTypeObject *py_type, void *ptr) +{ + PyObject *ret = PyObject_New(py_talloc_Object, &py_type); + ret->talloc_ptr = talloc_reference(NULL, ptr); + return ret; +} |