summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/lib/ldb/ldb.i14
-rw-r--r--source4/lib/ldb/ldb.py21
-rw-r--r--source4/lib/ldb/ldb_wrap.c14
3 files changed, 43 insertions, 6 deletions
diff --git a/source4/lib/ldb/ldb.i b/source4/lib/ldb/ldb.i
index 6a807a7dde..38a928ffb1 100644
--- a/source4/lib/ldb/ldb.i
+++ b/source4/lib/ldb/ldb.i
@@ -194,6 +194,7 @@ PyObject *ldb_val_to_py_object(struct ldb_context *ldb_ctx,
%rename(__cmp__) ldb_dn::compare;
%rename(__len__) ldb_dn::get_comp_num;
%rename(Dn) ldb_dn;
+%feature("docstring") ldb_dn "A LDB distinguished name.";
typedef struct ldb_dn {
%extend {
ldb_dn(ldb *ldb_ctx, const char *str)
@@ -356,6 +357,7 @@ PyObject *ldb_msg_element_to_set(struct ldb_context *ldb_ctx,
int ldb_msg_element_compare(ldb_message_element *, ldb_message_element *);
/* ldb_message_element */
%rename(MessageElement) ldb_message_element;
+%feature("docstring") ldb_message_element "Message element.";
%rename(ldb_message_element_compare) ldb_msg_element_compare;
typedef struct ldb_message_element {
%extend {
@@ -417,6 +419,7 @@ typedef struct ldb_message_element {
/* ldb_message */
+%feature("docstring") ldb_message "Message.";
%rename(Message) ldb_message;
#ifdef SWIGPYTHON
%rename(__delitem__) ldb_message::remove_attr;
@@ -613,6 +616,7 @@ PyObject *PyExc_LdbError;
}
%rename(Ldb) ldb_context;
+%feature("docstring") ldb_context "Connection to a LDB database.";
%typemap(in,noblock=1) struct ldb_dn * {
if (ldb_dn_from_pyobject(NULL, $input, arg1, &$1) != 0) {
@@ -776,6 +780,9 @@ typedef struct ldb_context {
%feature("docstring") set_modules_dir "S.set_modules_dir(path) -> None\n" \
"Set path LDB should search for modules";
void set_modules_dir(const char *path);
+ %feature("docstring") set_debug "S.set_debug(callback) -> None\n" \
+ "Set callback for LDB debug messages.\n" \
+ "The callback should accept a debug level and debug text.";
ldb_error set_debug(void (*debug)(void *context, enum ldb_debug_level level,
const char *fmt, va_list ap),
void *context);
@@ -793,7 +800,7 @@ typedef struct ldb_context {
%feature("docstring") transaction_commit "S.transaction_commit() -> None\n" \
"Commit currently active transaction.";
ldb_error transaction_commit();
- %feature("docstring") transaction_commit "S.transaction_cancel() -> None\n" \
+ %feature("docstring") transaction_cancel "S.transaction_cancel() -> None\n" \
"Cancel currently active transaction.";
ldb_error transaction_cancel();
void schema_attribute_remove(const char *name);
@@ -877,6 +884,9 @@ int ldb_valid_attr_name(const char *s);
typedef unsigned long time_t;
+%feature("docstring") timestring "S.timestring(int) -> string\n"
+ "Generate a LDAP time string from a UNIX timestamp";
+
%inline %{
static char *timestring(time_t t)
{
@@ -888,6 +898,8 @@ static char *timestring(time_t t)
%}
%rename(string_to_time) ldb_string_to_time;
+%feature("docstring") string_to_time "S.string_to_time(string) -> int\n"
+ "Parse a LDAP time string into a UNIX timestamp.";
time_t ldb_string_to_time(const char *s);
%typemap(in,noblock=1) const struct ldb_module_ops * {
diff --git a/source4/lib/ldb/ldb.py b/source4/lib/ldb/ldb.py
index 0149f05429..56f34c8605 100644
--- a/source4/lib/ldb/ldb.py
+++ b/source4/lib/ldb/ldb.py
@@ -67,8 +67,10 @@ CHANGETYPE_DELETE = _ldb.CHANGETYPE_DELETE
CHANGETYPE_MODIFY = _ldb.CHANGETYPE_MODIFY
ldb_val_to_py_object = _ldb.ldb_val_to_py_object
class Dn(object):
+ """A LDB Distinguished name."""
thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
def __init__(self, *args, **kwargs):
+ """A LDB Distinguished name."""
_ldb.Dn_swiginit(self,_ldb.new_Dn(*args, **kwargs))
__swig_destroy__ = _ldb.delete_Dn
def validate(*args, **kwargs):
@@ -148,9 +150,11 @@ Dn_swigregister(Dn)
ldb_msg_element_compare = _ldb.ldb_msg_element_compare
class MessageElement(object):
+ """A message element."""
thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
__repr__ = _swig_repr
def __init__(self, *args, **kwargs):
+ """A message element."""
_ldb.MessageElement_swiginit(self,_ldb.new_MessageElement(*args, **kwargs))
__swig_destroy__ = _ldb.delete_MessageElement
def __getitem__(self, i):
@@ -182,6 +186,7 @@ MessageElement_swigregister(MessageElement)
ldb_msg_list_elements = _ldb.ldb_msg_list_elements
class Message(object):
+ """A LDB message."""
thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
__repr__ = _swig_repr
dn = _swig_property(_ldb.Message_dn_get, _ldb.Message_dn_set)
@@ -260,6 +265,7 @@ LDB_ERR_OBJECT_CLASS_MODS_PROHIBITED = _ldb.LDB_ERR_OBJECT_CLASS_MODS_PROHIBITED
LDB_ERR_AFFECTS_MULTIPLE_DSAS = _ldb.LDB_ERR_AFFECTS_MULTIPLE_DSAS
LDB_ERR_OTHER = _ldb.LDB_ERR_OTHER
class Ldb(object):
+ """A connection to a LDB database."""
thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
def __init__(self, *args, **kwargs):
_ldb.Ldb_swiginit(self,_ldb.new_Ldb(*args, **kwargs))
@@ -343,6 +349,13 @@ class Ldb(object):
"""
return _ldb.Ldb_transaction_commit(*args, **kwargs)
+ def transaction_cancel(*args, **kwargs):
+ """
+ S.transaction_cancel() -> None
+ Cancel currently active transaction.
+ """
+ return _ldb.Ldb_transaction_cancel(*args, **kwargs)
+
def parse_ldif(*args, **kwargs):
"""
S.parse_ldif(ldif) -> iter(messages)
@@ -415,7 +428,13 @@ def valid_attr_name(*args, **kwargs):
Check whether the supplied name is a valid attribute name.
"""
return _ldb.valid_attr_name(*args, **kwargs)
-timestring = _ldb.timestring
+
+def timestring(*args, **kwargs):
+ """
+ S.timestring(int) -> string
+ Generate a LDAP time string from a UNIX timestamp
+ """
+ return _ldb.timestring(*args, **kwargs)
string_to_time = _ldb.string_to_time
def register_module(*args, **kwargs):
diff --git a/source4/lib/ldb/ldb_wrap.c b/source4/lib/ldb/ldb_wrap.c
index bfd507a8f2..95b71547ef 100644
--- a/source4/lib/ldb/ldb_wrap.c
+++ b/source4/lib/ldb/ldb_wrap.c
@@ -5727,7 +5727,7 @@ fail:
static PyMethodDef SwigMethods[] = {
{ (char *)"ldb_val_to_py_object", (PyCFunction) _wrap_ldb_val_to_py_object, METH_VARARGS | METH_KEYWORDS, NULL},
- { (char *)"new_Dn", (PyCFunction) _wrap_new_Dn, METH_VARARGS | METH_KEYWORDS, NULL},
+ { (char *)"new_Dn", (PyCFunction) _wrap_new_Dn, METH_VARARGS | METH_KEYWORDS, (char *)"A LDB Distinguished name."},
{ (char *)"delete_Dn", (PyCFunction)_wrap_delete_Dn, METH_O, NULL},
{ (char *)"Dn_validate", (PyCFunction)_wrap_Dn_validate, METH_O, (char *)"\n"
"S.validate() -> bool\n"
@@ -5771,7 +5771,7 @@ static PyMethodDef SwigMethods[] = {
{ (char *)"ldb_msg_element_compare", (PyCFunction) _wrap_ldb_msg_element_compare, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"MessageElement___iter__", (PyCFunction)_wrap_MessageElement___iter__, METH_O, NULL},
{ (char *)"MessageElement___set__", (PyCFunction)_wrap_MessageElement___set__, METH_O, NULL},
- { (char *)"new_MessageElement", (PyCFunction) _wrap_new_MessageElement, METH_VARARGS | METH_KEYWORDS, NULL},
+ { (char *)"new_MessageElement", (PyCFunction) _wrap_new_MessageElement, METH_VARARGS | METH_KEYWORDS, (char *)"A message element."},
{ (char *)"MessageElement___len__", (PyCFunction)_wrap_MessageElement___len__, METH_O, NULL},
{ (char *)"MessageElement_get", (PyCFunction) _wrap_MessageElement_get, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"delete_MessageElement", (PyCFunction)_wrap_delete_MessageElement, METH_O, NULL},
@@ -5848,7 +5848,10 @@ static PyMethodDef SwigMethods[] = {
"S.transaction_commit() -> None\n"
"Commit currently active transaction.\n"
""},
- { (char *)"Ldb_transaction_cancel", (PyCFunction)_wrap_Ldb_transaction_cancel, METH_O, NULL},
+ { (char *)"Ldb_transaction_cancel", (PyCFunction)_wrap_Ldb_transaction_cancel, METH_O, (char *)"\n"
+ "S.transaction_cancel() -> None\n"
+ "Cancel currently active transaction.\n"
+ ""},
{ (char *)"Ldb_schema_attribute_remove", (PyCFunction) _wrap_Ldb_schema_attribute_remove, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"Ldb_schema_attribute_add", (PyCFunction) _wrap_Ldb_schema_attribute_add, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"Ldb_setup_wellknown_attributes", (PyCFunction)_wrap_Ldb_setup_wellknown_attributes, METH_O, NULL},
@@ -5864,7 +5867,10 @@ static PyMethodDef SwigMethods[] = {
"S.valid_attr_name(name) -> bool\n"
"Check whether the supplied name is a valid attribute name.\n"
""},
- { (char *)"timestring", (PyCFunction) _wrap_timestring, METH_VARARGS | METH_KEYWORDS, NULL},
+ { (char *)"timestring", (PyCFunction) _wrap_timestring, METH_VARARGS | METH_KEYWORDS, (char *)"\n"
+ "S.timestring(int) -> string\n"
+ "Generate a LDAP time string from a UNIX timestamp\n"
+ ""},
{ (char *)"string_to_time", (PyCFunction) _wrap_string_to_time, METH_VARARGS | METH_KEYWORDS, NULL},
{ (char *)"register_module", (PyCFunction) _wrap_register_module, METH_VARARGS | METH_KEYWORDS, (char *)"\n"
"S.register_module(module) -> None\n"