svn commit: samba r20161 - in branches/SAMBA_4_0/source/libnet: .

mimir at samba.org mimir at samba.org
Wed Dec 13 23:35:51 GMT 2006


Author: mimir
Date: 2006-12-13 23:35:50 +0000 (Wed, 13 Dec 2006)
New Revision: 20161

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20161

Log:
Prevent potential segfault in case account is unknown.


rafal


Modified:
   branches/SAMBA_4_0/source/libnet/libnet_lookup.c


Changeset:
Modified: branches/SAMBA_4_0/source/libnet/libnet_lookup.c
===================================================================
--- branches/SAMBA_4_0/source/libnet/libnet_lookup.c	2006-12-13 22:19:10 UTC (rev 20160)
+++ branches/SAMBA_4_0/source/libnet/libnet_lookup.c	2006-12-13 23:35:50 UTC (rev 20161)
@@ -418,14 +418,18 @@
 
 			/* TODO: verify if returned pointers are non-null */
 
-			io->out.domain_sid = *domains->domains[0].sid;
-			io->out.rid        = sids->sids[0].rid;
-			io->out.sid_type   = sids->sids[0].sid_type;
+			if (sids->count > 0) {
+				io->out.rid        = sids->sids[0].rid;
+				io->out.sid_type   = sids->sids[0].sid_type;
+			}
 
-			num_auths = io->out.domain_sid.num_auths++;
-			io->out.domain_sid.sub_auths[num_auths] = io->out.rid;
+			if (domains->count > 0) {
+				io->out.domain_sid = *domains->domains[0].sid;
+				num_auths = io->out.domain_sid.num_auths++;
+				io->out.domain_sid.sub_auths[num_auths] = io->out.rid;
 
-			io->out.sidstr     = dom_sid_string(mem_ctx, &io->out.domain_sid);
+				io->out.sidstr     = dom_sid_string(mem_ctx, &io->out.domain_sid);
+			}
 		}
 
 		io->out.error_string = talloc_strdup(mem_ctx, "Success");



More information about the samba-cvs mailing list