summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2003-05-14 20:48:45 +0000
committerJeremy Allison <jra@samba.org>2003-05-14 20:48:45 +0000
commit430d12876bd0df52f85fc5a905a106e6db38e4c0 (patch)
tree2c4e2b2deca89489e6c9ae62b9eaf5dc12c7f068 /source3
parent1124804f5d0ea5bdd0fbbb3bb09393ac65db4150 (diff)
downloadsamba-430d12876bd0df52f85fc5a905a106e6db38e4c0.tar.gz
samba-430d12876bd0df52f85fc5a905a106e6db38e4c0.tar.bz2
samba-430d12876bd0df52f85fc5a905a106e6db38e4c0.zip
Fix winbindd coredump. Remember to set a ** pointer to null before
searching and not finding otherwise we return a valid looking pointer that was whatever crap was on the stack. Jeremy. (This used to be commit b6e78900175d4362f3a4d0216aa635931a0c11e9)
Diffstat (limited to 'source3')
-rw-r--r--source3/nsswitch/winbindd_cm.c2
-rw-r--r--source3/smbd/connection.c1
2 files changed, 3 insertions, 0 deletions
diff --git a/source3/nsswitch/winbindd_cm.c b/source3/nsswitch/winbindd_cm.c
index dbcfdcf88f..02fd15e069 100644
--- a/source3/nsswitch/winbindd_cm.c
+++ b/source3/nsswitch/winbindd_cm.c
@@ -450,6 +450,8 @@ static NTSTATUS get_connection_from_cache(const char *domain, const char *pipe_n
struct winbindd_cm_conn *conn, conn_temp;
NTSTATUS result;
+ *conn_out = NULL;
+
for (conn = cm_conns; conn; conn = conn->next) {
if (strequal(conn->domain, domain) &&
strequal(conn->pipe_name, pipe_name)) {
diff --git a/source3/smbd/connection.c b/source3/smbd/connection.c
index 5547309a81..c2718d4d70 100644
--- a/source3/smbd/connection.c
+++ b/source3/smbd/connection.c
@@ -38,6 +38,7 @@ TDB_CONTEXT *conn_tdb_ctx(void)
static void make_conn_key(connection_struct *conn, const char *name, TDB_DATA *pkbuf, struct connections_key *pkey)
{
ZERO_STRUCTP(pkey);
+ ZERO_STRUCTP(pkbuf);
pkey->pid = sys_getpid();
pkey->cnum = conn?conn->cnum:-1;
fstrcpy(pkey->name, name);