summaryrefslogtreecommitdiff
path: root/source4/scripting/python
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2008-01-25 00:51:09 +0100
committerJelmer Vernooij <jelmer@samba.org>2008-01-25 00:51:09 +0100
commit8afcbdcfe71fad0f6a22314de16ac047148d42b8 (patch)
tree2887debfec76d4a3407319604cb6766572b9db6a /source4/scripting/python
parentd958f4b3912dc298037c112ad724b85a7a46ecdb (diff)
downloadsamba-8afcbdcfe71fad0f6a22314de16ac047148d42b8.tar.gz
samba-8afcbdcfe71fad0f6a22314de16ac047148d42b8.tar.bz2
samba-8afcbdcfe71fad0f6a22314de16ac047148d42b8.zip
python: Make SamDB.set_ntds_invocation_id take a string.
(This used to be commit 59bb26772f089cf4d8727c12230cfef8126762b1)
Diffstat (limited to 'source4/scripting/python')
-rw-r--r--source4/scripting/python/misc.i11
-rw-r--r--source4/scripting/python/misc.py2
-rw-r--r--source4/scripting/python/misc_wrap.c100
3 files changed, 65 insertions, 48 deletions
diff --git a/source4/scripting/python/misc.i b/source4/scripting/python/misc.i
index d5c9cde93e..a11b2fb825 100644
--- a/source4/scripting/python/misc.i
+++ b/source4/scripting/python/misc.i
@@ -67,4 +67,13 @@ const char *samba_version_string(void);
int dsdb_set_global_schema(struct ldb_context *ldb);
int ldb_register_samba_handlers(struct ldb_context *ldb);
-bool samdb_set_ntds_invocation_id(struct ldb_context *ldb, const struct GUID *invocation_id_in); \ No newline at end of file
+%inline %{
+bool dsdb_set_ntds_invocation_id(struct ldb_context *ldb, const char *guid)
+{
+ struct GUID invocation_id_in;
+ if (NT_STATUS_IS_ERR(GUID_from_string(guid, &invocation_id_in))) {
+ return false;
+ }
+ return samdb_set_ntds_invocation_id(ldb, &invocation_id_in);
+}
+%}
diff --git a/source4/scripting/python/misc.py b/source4/scripting/python/misc.py
index 998de46504..2fc7fe37e7 100644
--- a/source4/scripting/python/misc.py
+++ b/source4/scripting/python/misc.py
@@ -70,6 +70,6 @@ dsdb_attach_schema_from_ldif_file = _misc.dsdb_attach_schema_from_ldif_file
version = _misc.version
dsdb_set_global_schema = _misc.dsdb_set_global_schema
ldb_register_samba_handlers = _misc.ldb_register_samba_handlers
-samdb_set_ntds_invocation_id = _misc.samdb_set_ntds_invocation_id
+dsdb_set_ntds_invocation_id = _misc.dsdb_set_ntds_invocation_id
diff --git a/source4/scripting/python/misc_wrap.c b/source4/scripting/python/misc_wrap.c
index 564bcc0e46..f467f851bd 100644
--- a/source4/scripting/python/misc_wrap.c
+++ b/source4/scripting/python/misc_wrap.c
@@ -2459,36 +2459,35 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
/* -------- TYPES TABLE (BEGIN) -------- */
-#define SWIGTYPE_p_GUID swig_types[0]
-#define SWIGTYPE_p_TALLOC_CTX swig_types[1]
-#define SWIGTYPE_p_auth_session_info swig_types[2]
-#define SWIGTYPE_p_char swig_types[3]
-#define SWIGTYPE_p_cli_credentials swig_types[4]
-#define SWIGTYPE_p_dom_sid swig_types[5]
-#define SWIGTYPE_p_int swig_types[6]
-#define SWIGTYPE_p_ldb_context swig_types[7]
-#define SWIGTYPE_p_ldb_dn swig_types[8]
-#define SWIGTYPE_p_ldb_ldif swig_types[9]
-#define SWIGTYPE_p_ldb_message swig_types[10]
-#define SWIGTYPE_p_ldb_message_element swig_types[11]
-#define SWIGTYPE_p_ldb_result swig_types[12]
-#define SWIGTYPE_p_loadparm_context swig_types[13]
-#define SWIGTYPE_p_loadparm_service swig_types[14]
-#define SWIGTYPE_p_long_long swig_types[15]
-#define SWIGTYPE_p_param_context swig_types[16]
-#define SWIGTYPE_p_param_opt swig_types[17]
-#define SWIGTYPE_p_param_section swig_types[18]
-#define SWIGTYPE_p_security_descriptor swig_types[19]
-#define SWIGTYPE_p_security_token swig_types[20]
-#define SWIGTYPE_p_short swig_types[21]
-#define SWIGTYPE_p_signed_char swig_types[22]
-#define SWIGTYPE_p_unsigned_char swig_types[23]
-#define SWIGTYPE_p_unsigned_int swig_types[24]
-#define SWIGTYPE_p_unsigned_long swig_types[25]
-#define SWIGTYPE_p_unsigned_long_long swig_types[26]
-#define SWIGTYPE_p_unsigned_short swig_types[27]
-static swig_type_info *swig_types[29];
-static swig_module_info swig_module = {swig_types, 28, 0, 0, 0, 0};
+#define SWIGTYPE_p_TALLOC_CTX swig_types[0]
+#define SWIGTYPE_p_auth_session_info swig_types[1]
+#define SWIGTYPE_p_char swig_types[2]
+#define SWIGTYPE_p_cli_credentials swig_types[3]
+#define SWIGTYPE_p_dom_sid swig_types[4]
+#define SWIGTYPE_p_int swig_types[5]
+#define SWIGTYPE_p_ldb_context swig_types[6]
+#define SWIGTYPE_p_ldb_dn swig_types[7]
+#define SWIGTYPE_p_ldb_ldif swig_types[8]
+#define SWIGTYPE_p_ldb_message swig_types[9]
+#define SWIGTYPE_p_ldb_message_element swig_types[10]
+#define SWIGTYPE_p_ldb_result swig_types[11]
+#define SWIGTYPE_p_loadparm_context swig_types[12]
+#define SWIGTYPE_p_loadparm_service swig_types[13]
+#define SWIGTYPE_p_long_long swig_types[14]
+#define SWIGTYPE_p_param_context swig_types[15]
+#define SWIGTYPE_p_param_opt swig_types[16]
+#define SWIGTYPE_p_param_section swig_types[17]
+#define SWIGTYPE_p_security_descriptor swig_types[18]
+#define SWIGTYPE_p_security_token swig_types[19]
+#define SWIGTYPE_p_short swig_types[20]
+#define SWIGTYPE_p_signed_char swig_types[21]
+#define SWIGTYPE_p_unsigned_char swig_types[22]
+#define SWIGTYPE_p_unsigned_int swig_types[23]
+#define SWIGTYPE_p_unsigned_long swig_types[24]
+#define SWIGTYPE_p_unsigned_long_long swig_types[25]
+#define SWIGTYPE_p_unsigned_short swig_types[26]
+static swig_type_info *swig_types[28];
+static swig_module_info swig_module = {swig_types, 27, 0, 0, 0, 0};
#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
@@ -2795,6 +2794,16 @@ SWIG_From_int (int value)
return SWIG_From_long (value);
}
+
+bool dsdb_set_ntds_invocation_id(struct ldb_context *ldb, const char *guid)
+{
+ struct GUID invocation_id_in;
+ if (NT_STATUS_IS_ERR(GUID_from_string(guid, &invocation_id_in))) {
+ return false;
+ }
+ return samdb_set_ntds_invocation_id(ldb, &invocation_id_in);
+}
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -3103,39 +3112,42 @@ fail:
}
-SWIGINTERN PyObject *_wrap_samdb_set_ntds_invocation_id(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_dsdb_set_ntds_invocation_id(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
PyObject *resultobj = 0;
struct ldb_context *arg1 = (struct ldb_context *) 0 ;
- struct GUID *arg2 = (struct GUID *) 0 ;
+ char *arg2 = (char *) 0 ;
bool result;
void *argp1 = 0 ;
int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
PyObject * obj0 = 0 ;
PyObject * obj1 = 0 ;
char * kwnames[] = {
- (char *) "ldb",(char *) "invocation_id_in", NULL
+ (char *) "ldb",(char *) "guid", NULL
};
- if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:samdb_set_ntds_invocation_id",kwnames,&obj0,&obj1)) SWIG_fail;
+ if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:dsdb_set_ntds_invocation_id",kwnames,&obj0,&obj1)) SWIG_fail;
res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_ldb_context, 0 | 0 );
if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "samdb_set_ntds_invocation_id" "', argument " "1"" of type '" "struct ldb_context *""'");
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dsdb_set_ntds_invocation_id" "', argument " "1"" of type '" "struct ldb_context *""'");
}
arg1 = (struct ldb_context *)(argp1);
- res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_GUID, 0 | 0 );
+ res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "samdb_set_ntds_invocation_id" "', argument " "2"" of type '" "struct GUID const *""'");
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "dsdb_set_ntds_invocation_id" "', argument " "2"" of type '" "char const *""'");
}
- arg2 = (struct GUID *)(argp2);
+ arg2 = (char *)(buf2);
if (arg1 == NULL)
SWIG_exception(SWIG_ValueError,
"ldb context must be non-NULL");
- result = (bool)samdb_set_ntds_invocation_id(arg1,(struct GUID const *)arg2);
+ result = (bool)dsdb_set_ntds_invocation_id(arg1,(char const *)arg2);
resultobj = SWIG_From_bool((bool)(result));
+ if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
return resultobj;
fail:
+ if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
return NULL;
}
@@ -3150,14 +3162,13 @@ static PyMethodDef SwigMethods[] = {
{ (char *)"version", (PyCFunction)_wrap_version, METH_NOARGS, NULL},
{ (char *)"dsdb_set_global_schema", (PyCFunction) _wrap_dsdb_set_global_schema, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"ldb_register_samba_handlers", (PyCFunction) _wrap_ldb_register_samba_handlers, METH_VARARGS | METH_KEYWORDS, NULL},
- { (char *)"samdb_set_ntds_invocation_id", (PyCFunction) _wrap_samdb_set_ntds_invocation_id, METH_VARARGS | METH_KEYWORDS, NULL},
+ { (char *)"dsdb_set_ntds_invocation_id", (PyCFunction) _wrap_dsdb_set_ntds_invocation_id, METH_VARARGS | METH_KEYWORDS, NULL},
{ NULL, NULL, 0, NULL }
};
/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
-static swig_type_info _swigt__p_GUID = {"_p_GUID", "struct GUID *", 0, 0, (void*)0, 0};
static swig_type_info _swigt__p_TALLOC_CTX = {"_p_TALLOC_CTX", "TALLOC_CTX *", 0, 0, (void*)0, 0};
static swig_type_info _swigt__p_auth_session_info = {"_p_auth_session_info", "struct auth_session_info *", 0, 0, (void*)0, 0};
static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
@@ -3187,7 +3198,6 @@ static swig_type_info _swigt__p_unsigned_long_long = {"_p_unsigned_long_long", "
static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "unsigned short *|uint_least16_t *|uint16_t *", 0, 0, (void*)0, 0};
static swig_type_info *swig_type_initial[] = {
- &_swigt__p_GUID,
&_swigt__p_TALLOC_CTX,
&_swigt__p_auth_session_info,
&_swigt__p_char,
@@ -3217,7 +3227,6 @@ static swig_type_info *swig_type_initial[] = {
&_swigt__p_unsigned_short,
};
-static swig_cast_info _swigc__p_GUID[] = { {&_swigt__p_GUID, 0, 0, 0},{0, 0, 0, 0}};
static swig_cast_info _swigc__p_TALLOC_CTX[] = { {&_swigt__p_TALLOC_CTX, 0, 0, 0},{0, 0, 0, 0}};
static swig_cast_info _swigc__p_auth_session_info[] = { {&_swigt__p_auth_session_info, 0, 0, 0},{0, 0, 0, 0}};
static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
@@ -3247,7 +3256,6 @@ static swig_cast_info _swigc__p_unsigned_long_long[] = { {&_swigt__p_unsigned_l
static swig_cast_info _swigc__p_unsigned_short[] = { {&_swigt__p_unsigned_short, 0, 0, 0},{0, 0, 0, 0}};
static swig_cast_info *swig_cast_initial[] = {
- _swigc__p_GUID,
_swigc__p_TALLOC_CTX,
_swigc__p_auth_session_info,
_swigc__p_char,