summaryrefslogtreecommitdiffstats
path: root/source/nsswitch
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2004-05-07 18:14:38 +0000
committerJeremy Allison <jra@samba.org>2004-05-07 18:14:38 +0000
commit4309df41ef689aab5a1d12190b1545616950392e (patch)
tree8cbaaa2162eae90dbc4d97a873e9e123460dcfb8 /source/nsswitch
parent3183f2b37bd22d04f4c94993fa96b2b19d7d9a34 (diff)
downloadsamba-4309df41ef689aab5a1d12190b1545616950392e.tar.gz
samba-4309df41ef689aab5a1d12190b1545616950392e.tar.xz
samba-4309df41ef689aab5a1d12190b1545616950392e.zip
r565: Uninitialized data fixes from kawasa_r@itg.hitachi.co.jp.
Jeremy.
Diffstat (limited to 'source/nsswitch')
-rw-r--r--source/nsswitch/wb_client.c1
-rw-r--r--source/nsswitch/winbindd_group.c3
-rw-r--r--source/nsswitch/winbindd_pam.c1
3 files changed, 5 insertions, 0 deletions
diff --git a/source/nsswitch/wb_client.c b/source/nsswitch/wb_client.c
index 5d431392450..a1c71becf03 100644
--- a/source/nsswitch/wb_client.c
+++ b/source/nsswitch/wb_client.c
@@ -270,6 +270,7 @@ static int wb_getgroups(const char *user, gid_t **groups)
/* Call winbindd */
+ ZERO_STRUCT(request);
fstrcpy(request.data.username, user);
ZERO_STRUCT(response);
diff --git a/source/nsswitch/winbindd_group.c b/source/nsswitch/winbindd_group.c
index 4800ab20cfa..7b4529144e2 100644
--- a/source/nsswitch/winbindd_group.c
+++ b/source/nsswitch/winbindd_group.c
@@ -631,6 +631,9 @@ enum winbindd_result winbindd_getgrent(struct winbindd_cli_state *state)
malloc(num_groups * sizeof(struct winbindd_gr))) == NULL)
return WINBINDD_ERROR;
+ memset(state->response.extra_data, '\0',
+ num_groups * sizeof(struct winbindd_gr) );
+
state->response.data.num_entries = 0;
group_list = (struct winbindd_gr *)state->response.extra_data;
diff --git a/source/nsswitch/winbindd_pam.c b/source/nsswitch/winbindd_pam.c
index c1840b60533..25f53e7a535 100644
--- a/source/nsswitch/winbindd_pam.c
+++ b/source/nsswitch/winbindd_pam.c
@@ -48,6 +48,7 @@ static NTSTATUS append_info3_as_ndr(TALLOC_CTX *mem_ctx,
prs_mem_free(&ps);
return NT_STATUS_NO_MEMORY;
}
+ memset( state->response.extra_data, '\0', size );
prs_copy_all_data_out(state->response.extra_data, &ps);
state->response.length += size;
prs_mem_free(&ps);