[PATCH] s3-winbind: Fix a segfault passing NULL to a fstring argument.

Andreas Schneider asn at samba.org
Tue Aug 13 00:37:22 MDT 2013


BUG: https://bugzilla.samba.org/show_bug.cgi?id=10082
Signed-off-by: Andreas Schneider <asn at samba.org>
---
 source3/winbindd/winbindd_cm.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c
index 6c3f6ea..08c763c 100644
--- a/source3/winbindd/winbindd_cm.c
+++ b/source3/winbindd/winbindd_cm.c
@@ -1127,6 +1127,7 @@ static bool dcip_to_name(TALLOC_CTX *mem_ctx,
 	uint32_t nt_version = NETLOGON_NT_VERSION_1;
 	NTSTATUS status;
 	const char *dc_name;
+	fstring nbtname;
 
 	ip_list.ss = *pss;
 	ip_list.port = 0;
@@ -1210,9 +1211,17 @@ static bool dcip_to_name(TALLOC_CTX *mem_ctx,
 
 	/* try node status request */
 
-	if (name_status_find(domain->name, 0x1c, 0x20, pss, *name) ) {
+	if (name_status_find(domain->name, 0x1c, 0x20, pss, nbtname) ) {
 		namecache_store(*name, 0x20, 1, &ip_list);
-		return True;
+
+		if (name != NULL) {
+			*name = talloc_strdup(mem_ctx, nbtname);
+			if (*name == NULL) {
+				return false;
+			}
+		}
+
+		return true;
 	}
 	return False;
 }
-- 
1.8.3.1




More information about the samba-technical mailing list