svn commit: samba r25371 - in branches/4.0-python: . source/lib source/scripting/python source/setup

jelmer at samba.org jelmer at samba.org
Thu Sep 27 01:31:46 GMT 2007


Author: jelmer
Date: 2007-09-27 01:31:43 +0000 (Thu, 27 Sep 2007)
New Revision: 25371

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25371

Log:
Add uuid module.
Added:
   branches/4.0-python/source/scripting/python/uuidmodule.c
Modified:
   branches/4.0-python/
   branches/4.0-python/.bzrignore
   branches/4.0-python/source/lib/basic.mk
   branches/4.0-python/source/scripting/python/config.mk
   branches/4.0-python/source/scripting/python/provision.py
   branches/4.0-python/source/scripting/python/talloc.c
   branches/4.0-python/source/setup/provision


Changeset:

Property changes on: branches/4.0-python
___________________________________________________________________
Name: bzr:revision-info
...skipped...
Name: bzr:file-ids
...skipped...
Name: bzr:revision-id:v3-trunk0
...skipped...

Modified: branches/4.0-python/.bzrignore
===================================================================
--- branches/4.0-python/.bzrignore	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/.bzrignore	2007-09-27 01:31:43 UTC (rev 25371)
@@ -211,3 +211,4 @@
 source/lib/ldb/swig/ldb.py
 source/lib/tdb/swig/tdb.py
 source/lib/tdb/swig/tdb_wrap.c
+source/scripting/python/talloc.h

Modified: branches/4.0-python/source/lib/basic.mk
===================================================================
--- branches/4.0-python/source/lib/basic.mk	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/lib/basic.mk	2007-09-27 01:31:43 UTC (rev 25371)
@@ -15,7 +15,6 @@
 include util/config.mk
 include tdr/config.mk
 include dbwrap/config.mk
-include python/config.mk
 
 ##############################
 # Start SUBSYSTEM LIBCRYPTO

Modified: branches/4.0-python/source/scripting/python/config.mk
===================================================================
--- branches/4.0-python/source/scripting/python/config.mk	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/scripting/python/config.mk	2007-09-27 01:31:43 UTC (rev 25371)
@@ -7,3 +7,8 @@
 PRIVATE_DEPENDENCIES = LIBSAMBA-CONFIG talloc_python
 OBJ_FILES = \
 			parammodule.o
+
+[PYTHON::python_uuid]
+PRIVATE_DEPENDENCIES = LIBNDR talloc_python
+OBJ_FILES = \
+			uuidmodule.o

Modified: branches/4.0-python/source/scripting/python/provision.py
===================================================================
--- branches/4.0-python/source/scripting/python/provision.py	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/scripting/python/provision.py	2007-09-27 01:31:43 UTC (rev 25371)
@@ -233,6 +233,7 @@
         return False
     return True
 
+
 def setup_ldb(ldif, info, dbname, erase=True, failok=False):
     ldb = open_ldb(info, dbname, erase)
     if setup_add_ldif(ldif, info, ldb, failok):

Modified: branches/4.0-python/source/scripting/python/talloc.c
===================================================================
--- branches/4.0-python/source/scripting/python/talloc.c	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/scripting/python/talloc.c	2007-09-27 01:31:43 UTC (rev 25371)
@@ -25,6 +25,7 @@
 #include "Python.h"
 #include "param/param.h"
 
-TALLOC_CTX *PyMemCtx() {
+TALLOC_CTX *PyMemCtx(void)
+{
 	return talloc_autofree_context();
 }

Added: branches/4.0-python/source/scripting/python/uuidmodule.c
===================================================================
--- branches/4.0-python/source/scripting/python/uuidmodule.c	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/scripting/python/uuidmodule.c	2007-09-27 01:31:43 UTC (rev 25371)
@@ -0,0 +1,58 @@
+/* 
+   Unix SMB/CIFS implementation.
+   Samba utility functions
+   Copyright (C) Jelmer Vernooij <jelmer at samba.org> 2007
+   
+   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"
+#include "scripting/python/talloc.h"
+#include "Python.h"
+#include "librpc/ndr/libndr.h"
+
+static PyObject *uuid_random(PyObject *self, PyObject *args)
+{
+	struct GUID guid;
+	char *str;
+
+	if (!PyArg_ParseTuple(args, ""))
+	        return NULL;
+
+	guid = GUID_random();
+
+	str = GUID_string(PyMemCtx(), &guid);
+	if (str == NULL) {
+		PyErr_SetString(PyExc_TypeError, "can't convert uuid to string");
+		return NULL;
+	}
+
+	talloc_free(str);
+
+	return PyString_FromString(str);
+}
+
+static PyMethodDef methods[] = {
+	{ "random", (PyCFunction)uuid_random, METH_VARARGS, NULL},
+	{ NULL, NULL }
+};
+
+PyDoc_STRVAR(param_doc, "UUID helper routines");
+
+PyMODINIT_FUNC inituuid(void)
+{
+	PyObject *mod = Py_InitModule3("uuid", methods, param_doc);
+	if (mod == NULL)
+		return;
+}

Modified: branches/4.0-python/source/setup/provision
===================================================================
--- branches/4.0-python/source/setup/provision	2007-09-27 01:26:19 UTC (rev 25370)
+++ branches/4.0-python/source/setup/provision	2007-09-27 01:31:43 UTC (rev 25371)
@@ -5,7 +5,7 @@
 #	Released under the GNU GPL v2 or later
 #
 
-from samba import getopt
+import getopt
 import optparse
 import sys
 



More information about the samba-cvs mailing list