From d4a80fdf38428c7a0e6cda6da838c8ccc5d8f2ab Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 13 Jun 2006 21:21:44 +0000 Subject: r16209: Klocwork bug #66, ensure no null deref. Jeremy. (This used to be commit 79e693798cf322071ea64a4014a01ad9eaba73e8) --- source3/auth/auth_util.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'source3/auth/auth_util.c') diff --git a/source3/auth/auth_util.c b/source3/auth/auth_util.c index 43ae5c1af6..fb21d424c5 100644 --- a/source3/auth/auth_util.c +++ b/source3/auth/auth_util.c @@ -1082,6 +1082,7 @@ NTSTATUS create_token_from_username(TALLOC_CTX *mem_ctx, const char *username, /* This is a passdb user, so ask passdb */ struct samu *sam_acct = NULL; + const DOM_SID *gr_sid = NULL; if ( !(sam_acct = samu_new( tmp_ctx )) ) { goto done; @@ -1094,7 +1095,13 @@ NTSTATUS create_token_from_username(TALLOC_CTX *mem_ctx, const char *username, goto done; } - sid_copy(&primary_group_sid, pdb_get_group_sid(sam_acct)); + gr_sid = pdb_get_group_sid(sam_acct); + if (!gr_sid) { + result = NT_STATUS_NO_MEMORY; + goto done; + } + + sid_copy(&primary_group_sid, gr_sid); if (!sid_to_gid(&primary_group_sid, gid)) { DEBUG(1, ("sid_to_gid(%s) failed\n", -- cgit