[SCM] Samba Shared Repository - branch master updated -
release-4-0-0alpha6-511-gf023bf9
Stefan Metzmacher
metze at samba.org
Thu Feb 5 17:19:19 GMT 2009
The branch, master has been updated
via f023bf94f1cfb0523cbbd24b5a44c6ae6450f261 (commit)
via 40c3ab2fbc39e2fcd2e6713ecb08fe7b5b61ba17 (commit)
via e5a6eadd8214b56da34f733318a0fecaebbe5ef5 (commit)
via c8b9679e4091b7dc78c4288aa868f5ec923fb843 (commit)
via ba0042fcdb028688768184d0831a9f6afb8f7269 (commit)
via 0872fa7b1f60aeb4e6d5bb1eb40fcba35fdf85d4 (commit)
via 1d22e0eceffc19a611f0bfe850f3714352f4c297 (commit)
via ea546df5739e59a4302b09d7ba515c8b665394b7 (commit)
via 4cb9ccd84125708613074c2371f9507755ad4115 (commit)
via b493bc1aa11bfd479420318f57944285182ab548 (commit)
via d25a3c749f10647f0b73106f432eb390624cc2e1 (commit)
via 0fe9980fa08ac488f19086d650646017acaaf6e9 (commit)
via fdd6c106cf236150e4c5e7c6176156230c3ccfa9 (commit)
via 3d6587c777408bbc1c1ecfb82750136874c5e565 (commit)
via 5fbbddec353a9f809db549d21c16e5c9d9fbbd5b (commit)
from 71d2287ec7740cf2089ddbef6991e7c3a80dcae0 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit f023bf94f1cfb0523cbbd24b5a44c6ae6450f261
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 18:18:33 2009 +0100
s4:libcli/smb2: fix c++ warning
metze
commit 40c3ab2fbc39e2fcd2e6713ecb08fe7b5b61ba17
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 18:18:09 2009 +0100
s4:auth/ntlm: fix c++ warning
metze
commit e5a6eadd8214b56da34f733318a0fecaebbe5ef5
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 15:58:40 2009 +0100
s4:pyregistry: fix compiler warnings
metze
commit c8b9679e4091b7dc78c4288aa868f5ec923fb843
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 15:57:59 2009 +0100
s4:pyauth: fix compiler warnings
metze
commit ba0042fcdb028688768184d0831a9f6afb8f7269
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 11:18:12 2009 +0100
s4:pyrpc: fix compiler warnings
metze
commit 0872fa7b1f60aeb4e6d5bb1eb40fcba35fdf85d4
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 11:13:08 2009 +0100
s4:pycredentials: fix compiler warnings
metze
commit 1d22e0eceffc19a611f0bfe850f3714352f4c297
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 11:04:28 2009 +0100
s4:pyldb: fix compiler warnings
metze
commit ea546df5739e59a4302b09d7ba515c8b665394b7
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 10:04:01 2009 +0100
s4:pyparam: fix compiler warnings
metze
commit 4cb9ccd84125708613074c2371f9507755ad4115
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 09:39:03 2009 +0100
s4:lib/registry: fix c++ warnings
metze
commit b493bc1aa11bfd479420318f57944285182ab548
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 09:33:59 2009 +0100
s4:build: remove not commited files under librpc/gen_ndr with make clean
metze
commit d25a3c749f10647f0b73106f432eb390624cc2e1
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 09:33:16 2009 +0100
s4:pvfs_aio: fix compiler warning
metze
commit 0fe9980fa08ac488f19086d650646017acaaf6e9
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Feb 5 09:31:41 2009 +0100
LDAP-UPTODATEVECTOR: fix segfault against samba4 as server
metze
commit fdd6c106cf236150e4c5e7c6176156230c3ccfa9
Author: Stefan Metzmacher <metze at samba.org>
Date: Wed Feb 4 08:53:45 2009 +0100
s4:pvfs: remove compiler warning
metze
commit 3d6587c777408bbc1c1ecfb82750136874c5e565
Author: Stefan Metzmacher <metze at samba.org>
Date: Wed Feb 4 08:52:41 2009 +0100
s4:pvfs: use talloc_get_type() to cast from void *
metze
commit 5fbbddec353a9f809db549d21c16e5c9d9fbbd5b
Author: Stefan Metzmacher <metze at samba.org>
Date: Wed Feb 4 08:50:46 2009 +0100
s4:pvfs: fix some talloc related compiler warnings
metze
-----------------------------------------------------------------------
Summary of changes:
source4/auth/credentials/pycredentials.c | 49 +++++------
source4/auth/credentials/pycredentials.h | 2 +-
source4/auth/ntlm/auth.c | 2 +-
source4/auth/pyauth.h | 2 +-
source4/lib/ldb/pyldb.c | 137 ++++++++++++++++++-----------
source4/lib/registry/patchfile_preg.c | 14 ++--
source4/lib/registry/pyregistry.c | 29 ++++---
source4/lib/registry/regf.c | 2 +-
source4/libcli/smb2/request.c | 2 +-
source4/librpc/config.mk | 4 +-
source4/librpc/rpc/pyrpc.c | 8 +-
source4/ntvfs/posix/pvfs_acl.c | 2 +-
source4/ntvfs/posix/pvfs_aio.c | 2 +-
source4/ntvfs/posix/pvfs_flush.c | 3 +-
source4/ntvfs/posix/pvfs_fsinfo.c | 3 +-
source4/ntvfs/posix/pvfs_ioctl.c | 3 +-
source4/ntvfs/posix/pvfs_lock.c | 6 +-
source4/ntvfs/posix/pvfs_mkdir.c | 6 +-
source4/ntvfs/posix/pvfs_open.c | 24 ++++--
source4/ntvfs/posix/pvfs_oplock.c | 3 +-
source4/ntvfs/posix/pvfs_qfileinfo.c | 6 +-
source4/ntvfs/posix/pvfs_read.c | 3 +-
source4/ntvfs/posix/pvfs_rename.c | 19 +++--
source4/ntvfs/posix/pvfs_resolve.c | 4 +-
source4/ntvfs/posix/pvfs_search.c | 52 ++++++++----
source4/ntvfs/posix/pvfs_seek.c | 3 +-
source4/ntvfs/posix/pvfs_setfileinfo.c | 9 ++-
source4/ntvfs/posix/pvfs_unlink.c | 6 +-
source4/ntvfs/posix/pvfs_util.c | 2 +-
source4/ntvfs/posix/pvfs_wait.c | 6 +-
source4/ntvfs/posix/pvfs_write.c | 3 +-
source4/ntvfs/posix/vfs_posix.c | 3 +-
source4/param/pyparam.c | 30 +++---
source4/selftest/skip | 1 -
source4/torture/ldap/uptodatevector.c | 1 +
35 files changed, 273 insertions(+), 178 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source4/auth/credentials/pycredentials.c b/source4/auth/credentials/pycredentials.c
index 6fcab80..3eacf9a 100644
--- a/source4/auth/credentials/pycredentials.c
+++ b/source4/auth/credentials/pycredentials.c
@@ -34,8 +34,7 @@ struct cli_credentials *cli_credentials_from_py_object(PyObject *py_obj)
if (py_obj == Py_None) {
return cli_credentials_init_anon(NULL);
}
-
- /* FIXME: Check type? */
+
return PyCredentials_AsCliCredentials(py_obj);
}
@@ -53,7 +52,7 @@ static PyObject *py_creds_new(PyTypeObject *type, PyObject *args, PyObject *kwar
static PyObject *py_creds_get_username(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_username(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_username(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_username(py_talloc_Object *self, PyObject *args)
@@ -63,12 +62,12 @@ static PyObject *py_creds_set_username(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- return PyBool_FromLong(cli_credentials_set_username(self->ptr, newval, obt));
+ return PyBool_FromLong(cli_credentials_set_username(PyCredentials_AsCliCredentials(self), newval, obt));
}
static PyObject *py_creds_get_password(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_password(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_password(PyCredentials_AsCliCredentials(self)));
}
@@ -79,12 +78,12 @@ static PyObject *py_creds_set_password(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- return PyBool_FromLong(cli_credentials_set_password(self->ptr, newval, obt));
+ return PyBool_FromLong(cli_credentials_set_password(PyCredentials_AsCliCredentials(self), newval, obt));
}
static PyObject *py_creds_get_domain(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_domain(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_domain(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_domain(py_talloc_Object *self, PyObject *args)
@@ -94,12 +93,12 @@ static PyObject *py_creds_set_domain(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- return PyBool_FromLong(cli_credentials_set_domain(self->ptr, newval, obt));
+ return PyBool_FromLong(cli_credentials_set_domain(PyCredentials_AsCliCredentials(self), newval, obt));
}
static PyObject *py_creds_get_realm(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_realm(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_realm(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_realm(py_talloc_Object *self, PyObject *args)
@@ -109,12 +108,12 @@ static PyObject *py_creds_set_realm(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- return PyBool_FromLong(cli_credentials_set_realm(self->ptr, newval, obt));
+ return PyBool_FromLong(cli_credentials_set_realm(PyCredentials_AsCliCredentials(self), newval, obt));
}
static PyObject *py_creds_get_bind_dn(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_bind_dn(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_bind_dn(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_bind_dn(py_talloc_Object *self, PyObject *args)
@@ -123,12 +122,12 @@ static PyObject *py_creds_set_bind_dn(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s", &newval))
return NULL;
- return PyBool_FromLong(cli_credentials_set_bind_dn(self->ptr, newval));
+ return PyBool_FromLong(cli_credentials_set_bind_dn(PyCredentials_AsCliCredentials(self), newval));
}
static PyObject *py_creds_get_workstation(py_talloc_Object *self)
{
- return PyString_FromStringOrNULL(cli_credentials_get_workstation(self->ptr));
+ return PyString_FromStringOrNULL(cli_credentials_get_workstation(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_workstation(py_talloc_Object *self, PyObject *args)
@@ -138,33 +137,33 @@ static PyObject *py_creds_set_workstation(py_talloc_Object *self, PyObject *args
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- return PyBool_FromLong(cli_credentials_set_workstation(self->ptr, newval, obt));
+ return PyBool_FromLong(cli_credentials_set_workstation(PyCredentials_AsCliCredentials(self), newval, obt));
}
static PyObject *py_creds_is_anonymous(py_talloc_Object *self)
{
- return PyBool_FromLong(cli_credentials_is_anonymous(self->ptr));
+ return PyBool_FromLong(cli_credentials_is_anonymous(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_anonymous(py_talloc_Object *self)
{
- cli_credentials_set_anonymous(self->ptr);
+ cli_credentials_set_anonymous(PyCredentials_AsCliCredentials(self));
Py_RETURN_NONE;
}
static PyObject *py_creds_authentication_requested(py_talloc_Object *self)
{
- return PyBool_FromLong(cli_credentials_authentication_requested(self->ptr));
+ return PyBool_FromLong(cli_credentials_authentication_requested(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_wrong_password(py_talloc_Object *self)
{
- return PyBool_FromLong(cli_credentials_wrong_password(self->ptr));
+ return PyBool_FromLong(cli_credentials_wrong_password(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_set_cmdline_callbacks(py_talloc_Object *self)
{
- return PyBool_FromLong(cli_credentials_set_cmdline_callbacks(self->ptr));
+ return PyBool_FromLong(cli_credentials_set_cmdline_callbacks(PyCredentials_AsCliCredentials(self)));
}
static PyObject *py_creds_parse_string(py_talloc_Object *self, PyObject *args)
@@ -174,15 +173,15 @@ static PyObject *py_creds_parse_string(py_talloc_Object *self, PyObject *args)
if (!PyArg_ParseTuple(args, "s|i", &newval, &obt))
return NULL;
- cli_credentials_parse_string(self->ptr, newval, obt);
+ cli_credentials_parse_string(PyCredentials_AsCliCredentials(self), newval, obt);
Py_RETURN_NONE;
}
static PyObject *py_creds_get_nt_hash(py_talloc_Object *self)
{
- const struct samr_Password *ntpw = cli_credentials_get_nt_hash(self->ptr, self->ptr);
+ const struct samr_Password *ntpw = cli_credentials_get_nt_hash(PyCredentials_AsCliCredentials(self), self->ptr);
- return PyString_FromStringAndSize((char *)ntpw->hash, 16);
+ return PyString_FromStringAndSize(discard_const_p(char, ntpw->hash), 16);
}
static PyObject *py_creds_set_kerberos_state(py_talloc_Object *self, PyObject *args)
@@ -191,7 +190,7 @@ static PyObject *py_creds_set_kerberos_state(py_talloc_Object *self, PyObject *a
if (!PyArg_ParseTuple(args, "i", &state))
return NULL;
- cli_credentials_set_kerberos_state(self->ptr, state);
+ cli_credentials_set_kerberos_state(PyCredentials_AsCliCredentials(self), state);
Py_RETURN_NONE;
}
@@ -206,7 +205,7 @@ static PyObject *py_creds_guess(py_talloc_Object *self, PyObject *args)
if (lp_ctx == NULL)
return NULL;
- cli_credentials_guess(self->ptr, lp_ctx);
+ cli_credentials_guess(PyCredentials_AsCliCredentials(self), lp_ctx);
Py_RETURN_NONE;
}
@@ -223,7 +222,7 @@ static PyObject *py_creds_set_machine_account(py_talloc_Object *self, PyObject *
if (lp_ctx == NULL)
return NULL;
- status = cli_credentials_set_machine_account(self->ptr, lp_ctx);
+ status = cli_credentials_set_machine_account(PyCredentials_AsCliCredentials(self), lp_ctx);
PyErr_NTSTATUS_IS_ERR_RAISE(status);
Py_RETURN_NONE;
diff --git a/source4/auth/credentials/pycredentials.h b/source4/auth/credentials/pycredentials.h
index 4424127..f2e15fa 100644
--- a/source4/auth/credentials/pycredentials.h
+++ b/source4/auth/credentials/pycredentials.h
@@ -25,6 +25,6 @@
PyAPI_DATA(PyTypeObject) PyCredentials;
struct cli_credentials *cli_credentials_from_py_object(PyObject *py_obj);
#define PyCredentials_Check(py_obj) PyObject_TypeCheck(py_obj, &PyCredentials)
-#define PyCredentials_AsCliCredentials(py_obj) py_talloc_get_ptr(py_obj)
+#define PyCredentials_AsCliCredentials(py_obj) py_talloc_get_type(py_obj, struct cli_credentials)
#endif /* _PYCREDENTIALS_H_ */
diff --git a/source4/auth/ntlm/auth.c b/source4/auth/ntlm/auth.c
index d00c812..20967a6 100644
--- a/source4/auth/ntlm/auth.c
+++ b/source4/auth/ntlm/auth.c
@@ -462,7 +462,7 @@ _PUBLIC_ NTSTATUS auth_register(const struct auth_operations *ops)
struct auth_backend, num_backends+1);
NT_STATUS_HAVE_NO_MEMORY(backends);
- new_ops = talloc_memdup(backends, ops, sizeof(*ops));
+ new_ops = (struct auth_operations *)talloc_memdup(backends, ops, sizeof(*ops));
NT_STATUS_HAVE_NO_MEMORY(new_ops);
new_ops->name = talloc_strdup(new_ops, ops->name);
NT_STATUS_HAVE_NO_MEMORY(new_ops->name);
diff --git a/source4/auth/pyauth.h b/source4/auth/pyauth.h
index de1c1c5..f5c6339 100644
--- a/source4/auth/pyauth.h
+++ b/source4/auth/pyauth.h
@@ -24,7 +24,7 @@
#include "auth/session.h"
PyAPI_DATA(PyTypeObject) PyAuthSession;
-#define PyAuthSession_AsSession(obj) py_talloc_get_ptr(obj)
+#define PyAuthSession_AsSession(obj) py_talloc_get_type(obj, struct auth_session_info)
#define PyAuthSession_Check(obj) PyObject_TypeCheck(obj, &PyAuthSession)
struct auth_session_info *PyObject_AsSession(PyObject *obj);
PyObject *PyAuthSession_FromSession(struct auth_session_info *session);
diff --git a/source4/lib/ldb/pyldb.c b/source4/lib/ldb/pyldb.c
index ef2af06..81b9609 100644
--- a/source4/lib/ldb/pyldb.c
+++ b/source4/lib/ldb/pyldb.c
@@ -51,8 +51,10 @@ void PyErr_SetLdbError(int ret, struct ldb_context *ldb_ctx)
{
if (ret == LDB_ERR_PYTHON_EXCEPTION)
return; /* Python exception should already be set, just keep that */
- PyErr_SetObject(PyExc_LdbError, Py_BuildValue((char *)"(i,s)", ret, ldb_ctx == NULL?ldb_strerror(ret):ldb_errstring(ldb_ctx)));
+ PyErr_SetObject(PyExc_LdbError, Py_BuildValue(discard_const_p(char, "(i,s)"),
+ ret, ldb_ctx == NULL?ldb_strerror(ret):ldb_errstring(ldb_ctx)));
}
+
static PyObject *PyObject_FromLdbValue(struct ldb_context *ldb_ctx,
struct ldb_message_element *el,
struct ldb_val *val)
@@ -298,9 +300,11 @@ static PyObject *py_ldb_dn_new(PyTypeObject *type, PyObject *args, PyObject *kwa
PyObject *py_ldb;
struct ldb_context *ldb_ctx;
PyLdbDnObject *py_ret;
- const char *kwnames[] = { "ldb", "dn", NULL };
+ const char * const kwnames[] = { "ldb", "dn", NULL };
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Os", (char **)kwnames, &py_ldb, &str))
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "Os",
+ discard_const_p(char *, kwnames),
+ &py_ldb, &str))
return NULL;
ldb_ctx = PyLdb_AsLdbContext(py_ldb);
@@ -361,8 +365,8 @@ PyTypeObject PyLdbDn = {
static void py_ldb_debug(void *context, enum ldb_debug_level level, const char *fmt, va_list ap) PRINTF_ATTRIBUTE(3, 0);
static void py_ldb_debug(void *context, enum ldb_debug_level level, const char *fmt, va_list ap)
{
- PyObject *fn = context;
- PyObject_CallFunction(fn, (char *)"(i,O)", level, PyString_FromFormatV(fmt, ap));
+ PyObject *fn = (PyObject *)context;
+ PyObject_CallFunction(fn, discard_const_p(char, "(i,O)"), level, PyString_FromFormatV(fmt, ap));
}
static PyObject *py_ldb_set_debug(PyLdbObject *self, PyObject *args)
@@ -488,7 +492,7 @@ static const char **PyList_AsStringList(TALLOC_CTX *mem_ctx, PyObject *list)
static int py_ldb_init(PyLdbObject *self, PyObject *args, PyObject *kwargs)
{
- const char *kwnames[] = { "url", "flags", "options", NULL };
+ const char * const kwnames[] = { "url", "flags", "options", NULL };
char *url = NULL;
PyObject *py_options = Py_None;
const char **options;
@@ -496,8 +500,9 @@ static int py_ldb_init(PyLdbObject *self, PyObject *args, PyObject *kwargs)
int ret;
struct ldb_context *ldb;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|ziO:Ldb.__init__", (char **)kwnames,
- &url, &flags, &py_options))
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|ziO:Ldb.__init__",
+ discard_const_p(char *, kwnames),
+ &url, &flags, &py_options))
return -1;
ldb = PyLdb_AsLdbContext(self);
@@ -548,9 +553,11 @@ static PyObject *py_ldb_connect(PyLdbObject *self, PyObject *args, PyObject *kwa
PyObject *py_options = Py_None;
int ret;
const char **options;
- const char *kwnames[] = { "url", "flags", "options", NULL };
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|iO", (char **)kwnames, &url, &flags,
- &py_options))
+ const char * const kwnames[] = { "url", "flags", "options", NULL };
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|iO",
+ discard_const_p(char *, kwnames),
+ &url, &flags, &py_options))
return NULL;
if (py_options == Py_None) {
@@ -721,8 +728,9 @@ static PyObject *ldb_ldif_to_pyobject(struct ldb_ldif *ldif)
} else {
/* We don't want this attached to the 'ldb' any more */
talloc_steal(NULL, ldif);
- return Py_BuildValue((char *)"(iO)", ldif->changetype,
- PyLdbMessage_FromMessage(ldif->msg));
+ return Py_BuildValue(discard_const_p(char, "(iO)"),
+ ldif->changetype,
+ PyLdbMessage_FromMessage(ldif->msg));
}
}
@@ -786,7 +794,7 @@ static PyObject *py_ldb_search(PyLdbObject *self, PyObject *args, PyObject *kwar
char *expr = NULL;
PyObject *py_attrs = Py_None;
PyObject *py_controls = Py_None;
- const char *kwnames[] = { "base", "scope", "expression", "attrs", "controls", NULL };
+ const char * const kwnames[] = { "base", "scope", "expression", "attrs", "controls", NULL };
int ret;
struct ldb_result *res;
struct ldb_request *req;
@@ -795,8 +803,9 @@ static PyObject *py_ldb_search(PyLdbObject *self, PyObject *args, PyObject *kwar
struct ldb_control **parsed_controls;
struct ldb_dn *base;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OizOO", (char **)kwnames,
- &py_base, &scope, &expr, &py_attrs, &py_controls))
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OizOO",
+ discard_const_p(char *, kwnames),
+ &py_base, &scope, &expr, &py_attrs, &py_controls))
return NULL;
ldb_ctx = PyLdb_AsLdbContext(self);
@@ -1009,7 +1018,7 @@ static PyObject *py_ldb_get_firstmodule(PyLdbObject *self, void *closure)
}
static PyGetSetDef py_ldb_getset[] = {
- { (char *)"firstmodule", (getter)py_ldb_get_firstmodule, NULL, NULL },
+ { discard_const_p(char, "firstmodule"), (getter)py_ldb_get_firstmodule, NULL, NULL },
{ NULL }
};
@@ -1109,10 +1118,12 @@ static PyObject *py_ldb_module_search(PyLdbModuleObject *self, PyObject *args, P
PyObject *py_base, *py_tree, *py_attrs;
int ret, scope;
struct ldb_request *req;
- const char *kwnames[] = { "base", "scope", "tree", "attrs", NULL };
+ const char * const kwnames[] = { "base", "scope", "tree", "attrs", NULL };
struct ldb_module *mod;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "OiOO", (char **)kwnames,
- &py_base, &scope, &py_tree, &py_attrs))
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "OiOO",
+ discard_const_p(char *, kwnames),
+ &py_base, &scope, &py_tree, &py_attrs))
return NULL;
mod = self->mod;
@@ -1372,9 +1383,12 @@ static PyObject *py_ldb_msg_element_new(PyTypeObject *type, PyObject *args, PyOb
struct ldb_message_element *el;
int flags = 0;
char *name = NULL;
- const char *kwnames[] = { "elements", "flags", "name", NULL };
+ const char * const kwnames[] = { "elements", "flags", "name", NULL };
PyLdbMessageElementObject *ret;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|Ois", (char **)kwnames, &py_elements, &flags, &name))
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|Ois",
+ discard_const_p(char *, kwnames),
+ &py_elements, &flags, &name))
return NULL;
el = talloc_zero(NULL, struct ldb_message_element);
@@ -1596,11 +1610,14 @@ static PyMappingMethods py_ldb_msg_mapping = {
static PyObject *py_ldb_msg_new(PyTypeObject *type, PyObject *args, PyObject *kwargs)
{
- const char *kwnames[] = { "dn", NULL };
+ const char * const kwnames[] = { "dn", NULL };
struct ldb_message *ret;
PyObject *pydn = NULL;
PyLdbMessageObject *py_ret;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O", (char **)kwnames, &pydn))
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O",
+ discard_const_p(char *, kwnames),
+ &pydn))
return NULL;
ret = ldb_msg_new(NULL);
@@ -1650,7 +1667,7 @@ static int py_ldb_msg_set_dn(PyLdbMessageObject *self, PyObject *value, void *cl
}
static PyGetSetDef py_ldb_msg_getset[] = {
- { (char *)"dn", (getter)py_ldb_msg_get_dn, (setter)py_ldb_msg_set_dn, NULL },
+ { discard_const_p(char, "dn"), (getter)py_ldb_msg_get_dn, (setter)py_ldb_msg_set_dn, NULL },
{ NULL }
};
@@ -1714,7 +1731,7 @@ PyTypeObject PyLdbTree = {
/* Ldb_module */
static int py_module_search(struct ldb_module *mod, struct ldb_request *req)
{
- PyObject *py_ldb = mod->private_data;
+ PyObject *py_ldb = (PyObject *)mod->private_data;
PyObject *py_result, *py_base, *py_attrs, *py_tree;
py_base = PyLdbDn_FromDn(req->op.search.base);
@@ -1737,7 +1754,9 @@ static int py_module_search(struct ldb_module *mod, struct ldb_request *req)
PyList_SetItem(py_attrs, i, PyString_FromString(req->op.search.attrs[i]));
}
- py_result = PyObject_CallMethod(py_ldb, (char *)"search", (char *)"OiOO", py_base, req->op.search.scope, py_tree, py_attrs);
+ py_result = PyObject_CallMethod(py_ldb, discard_const_p(char, "search"),
+ discard_const_p(char, "OiOO"),
+ py_base, req->op.search.scope, py_tree, py_attrs);
Py_DECREF(py_attrs);
Py_DECREF(py_tree);
@@ -1759,16 +1778,18 @@ static int py_module_search(struct ldb_module *mod, struct ldb_request *req)
static int py_module_add(struct ldb_module *mod, struct ldb_request *req)
{
- PyObject *py_ldb = mod->private_data;
+ PyObject *py_ldb = (PyObject *)mod->private_data;
PyObject *py_result, *py_msg;
- py_msg = PyLdbMessage_FromMessage((struct ldb_message *)req->op.add.message);
+ py_msg = PyLdbMessage_FromMessage(discard_const_p(struct ldb_message, req->op.add.message));
if (py_msg == NULL) {
return LDB_ERR_OPERATIONS_ERROR;
}
- py_result = PyObject_CallMethod(py_ldb, (char *)"add", (char *)"O", py_msg);
+ py_result = PyObject_CallMethod(py_ldb, discard_const_p(char, "add"),
+ discard_const_p(char, "O"),
+ py_msg);
Py_DECREF(py_msg);
@@ -1783,16 +1804,18 @@ static int py_module_add(struct ldb_module *mod, struct ldb_request *req)
static int py_module_modify(struct ldb_module *mod, struct ldb_request *req)
{
- PyObject *py_ldb = mod->private_data;
+ PyObject *py_ldb = (PyObject *)mod->private_data;
PyObject *py_result, *py_msg;
- py_msg = PyLdbMessage_FromMessage((struct ldb_message *)req->op.mod.message);
+ py_msg = PyLdbMessage_FromMessage(discard_const_p(struct ldb_message, req->op.mod.message));
if (py_msg == NULL) {
return LDB_ERR_OPERATIONS_ERROR;
}
- py_result = PyObject_CallMethod(py_ldb, (char *)"modify", (char *)"O", py_msg);
+ py_result = PyObject_CallMethod(py_ldb, discard_const_p(char, "modify"),
+ discard_const_p(char, "O"),
+ py_msg);
Py_DECREF(py_msg);
@@ -1807,7 +1830,7 @@ static int py_module_modify(struct ldb_module *mod, struct ldb_request *req)
static int py_module_del(struct ldb_module *mod, struct ldb_request *req)
{
- PyObject *py_ldb = mod->private_data;
+ PyObject *py_ldb = (PyObject *)mod->private_data;
PyObject *py_result, *py_dn;
py_dn = PyLdbDn_FromDn(req->op.del.dn);
@@ -1815,7 +1838,9 @@ static int py_module_del(struct ldb_module *mod, struct ldb_request *req)
if (py_dn == NULL)
return LDB_ERR_OPERATIONS_ERROR;
- py_result = PyObject_CallMethod(py_ldb, (char *)"delete", (char *)"O", py_dn);
+ py_result = PyObject_CallMethod(py_ldb, discard_const_p(char, "delete"),
+ discard_const_p(char, "O"),
+ py_dn);
if (py_result == NULL) {
return LDB_ERR_PYTHON_EXCEPTION;
@@ -1828,7 +1853,7 @@ static int py_module_del(struct ldb_module *mod, struct ldb_request *req)
static int py_module_rename(struct ldb_module *mod, struct ldb_request *req)
{
- PyObject *py_ldb = mod->private_data;
+ PyObject *py_ldb = (PyObject *)mod->private_data;
PyObject *py_result, *py_olddn, *py_newdn;
py_olddn = PyLdbDn_FromDn(req->op.rename.olddn);
@@ -1841,7 +1866,9 @@ static int py_module_rename(struct ldb_module *mod, struct ldb_request *req)
if (py_newdn == NULL)
return LDB_ERR_OPERATIONS_ERROR;
- py_result = PyObject_CallMethod(py_ldb, (char *)"rename", (char *)"OO", py_olddn, py_newdn);
+ py_result = PyObject_CallMethod(py_ldb, discard_const_p(char, "rename"),
+ discard_const_p(char, "OO"),
+ py_olddn, py_newdn);
--
Samba Shared Repository
More information about the samba-cvs
mailing list