[SCM] Samba Shared Repository - branch master updated
Matthias Dieter Wallnöfer
mdw at samba.org
Tue Mar 22 12:53:02 MDT 2011
The branch, master has been updated
via 3940777 s4:python bindings - handle NULL returns from "loadparm_init_global"
via 5d09aca s4:param/loadparm.c - check for OOM
via bd25bc1 s4:auth/system_session.c - check for OOM
from b8d0994 s4:ntvfs/posix: name->dos.attrib isn't initialized in pvfs_access_check_create()
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 3940777a14a93dbf88fcc9e43452fc2f84a7b6fc
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date: Mon Mar 21 10:32:24 2011 +0100
s4:python bindings - handle NULL returns from "loadparm_init_global"
Reviewed-by: Jelmer
Autobuild-User: Matthias Dieter Wallnöfer <mdw at samba.org>
Autobuild-Date: Tue Mar 22 19:52:57 CET 2011 on sn-devel-104
commit 5d09acab7e5e671f244d69f59d1714a16bdb93fb
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date: Mon Mar 21 10:25:52 2011 +0100
s4:param/loadparm.c - check for OOM
Return NULL if the loadparm context hasn't been allocated
Reviewed-by: Jelmer
commit bd25bc133a2a6f2b4d755b6d3ea83c956a60e3af
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date: Mon Mar 21 10:25:09 2011 +0100
s4:auth/system_session.c - check for OOM
Reviewed-by: Jelmer
-----------------------------------------------------------------------
Summary of changes:
source4/auth/gensec/pygensec.c | 10 ++++++++++
source4/auth/system_session.c | 2 ++
source4/param/loadparm.c | 3 +++
source4/param/pyparam.c | 4 ++++
source4/param/pyparam_util.c | 3 +++
5 files changed, 22 insertions(+), 0 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source4/auth/gensec/pygensec.c b/source4/auth/gensec/pygensec.c
index cd05bd7..5fe3703 100644
--- a/source4/auth/gensec/pygensec.c
+++ b/source4/auth/gensec/pygensec.c
@@ -113,6 +113,11 @@ static PyObject *py_gensec_start_client(PyTypeObject *type, PyObject *args, PyOb
}
settings->lp_ctx = loadparm_init_global(true);
+ if (settings->lp_ctx == NULL) {
+ PyErr_NoMemory();
+ PyObject_DEL(self);
+ return NULL;
+ }
}
ev = tevent_context_init(self->talloc_ctx);
@@ -181,6 +186,11 @@ static PyObject *py_gensec_start_server(PyTypeObject *type, PyObject *args, PyOb
}
settings->lp_ctx = loadparm_init_global(true);
+ if (settings->lp_ctx == NULL) {
+ PyErr_NoMemory();
+ PyObject_DEL(self);
+ return NULL;
+ }
}
ev = tevent_context_init(self->talloc_ctx);
diff --git a/source4/auth/system_session.c b/source4/auth/system_session.c
index ad0dab6..54b8f51 100644
--- a/source4/auth/system_session.c
+++ b/source4/auth/system_session.c
@@ -268,6 +268,8 @@ static NTSTATUS auth_domain_admin_session_info(TALLOC_CTX *parent_ctx,
struct auth_user_info_dc *user_info_dc = NULL;
TALLOC_CTX *mem_ctx = talloc_new(parent_ctx);
+ NT_STATUS_HAVE_NO_MEMORY(mem_ctx);
+
nt_status = auth_domain_admin_user_info_dc(mem_ctx, lpcfg_netbios_name(lp_ctx),
lpcfg_workgroup(lp_ctx), domain_sid,
&user_info_dc);
diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c
index 1864436..49d2e1c 100644
--- a/source4/param/loadparm.c
+++ b/source4/param/loadparm.c
@@ -2533,6 +2533,9 @@ struct loadparm_context *loadparm_init_global(bool load_default)
if (global_loadparm_context == NULL) {
global_loadparm_context = loadparm_init(NULL);
}
+ if (global_loadparm_context == NULL) {
+ return NULL;
+ }
if (load_default && !global_loadparm_context->loaded) {
lpcfg_load_default(global_loadparm_context);
}
diff --git a/source4/param/pyparam.c b/source4/param/pyparam.c
index a248215..3ba8146 100644
--- a/source4/param/pyparam.c
+++ b/source4/param/pyparam.c
@@ -335,6 +335,10 @@ static PyObject *py_lp_ctx_new(PyTypeObject *type, PyObject *args, PyObject *kwa
return NULL;
}
ret->ptr = loadparm_init_global(false);
+ if (ret->ptr == NULL) {
+ PyErr_NoMemory();
+ return NULL;
+ }
return (PyObject *)ret;
}
diff --git a/source4/param/pyparam_util.c b/source4/param/pyparam_util.c
index 528c007..cbf2095 100644
--- a/source4/param/pyparam_util.c
+++ b/source4/param/pyparam_util.c
@@ -35,6 +35,9 @@ _PUBLIC_ struct loadparm_context *lpcfg_from_py_object(TALLOC_CTX *mem_ctx, PyOb
if (PyString_Check(py_obj)) {
lp_ctx = loadparm_init_global(false);
+ if (lp_ctx == NULL) {
+ return NULL;
+ }
if (!lpcfg_load(lp_ctx, PyString_AsString(py_obj))) {
PyErr_Format(PyExc_RuntimeError, "Unable to load %s",
PyString_AsString(py_obj));
--
Samba Shared Repository
More information about the samba-cvs
mailing list