svn commit: samba r16335 - branches/SAMBA_3_0/source/rpc_client trunk/source/rpc_client

vlendec at samba.org vlendec at samba.org
Sat Jun 17 07:43:56 GMT 2006


Author: vlendec
Date: 2006-06-17 07:43:56 +0000 (Sat, 17 Jun 2006)
New Revision: 16335

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

Log:
Fix Klocwork IDs 107 108 109 111 112 113 114 116 117 118 121
Modified:
   branches/SAMBA_3_0/source/rpc_client/cli_ds.c
   branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c
   branches/SAMBA_3_0/source/rpc_client/cli_samr.c
   branches/SAMBA_3_0/source/rpc_client/cli_srvsvc.c
   trunk/source/rpc_client/cli_ds.c
   trunk/source/rpc_client/cli_lsarpc.c
   trunk/source/rpc_client/cli_samr.c
   trunk/source/rpc_client/cli_srvsvc.c


Changeset:
Modified: branches/SAMBA_3_0/source/rpc_client/cli_ds.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_client/cli_ds.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ branches/SAMBA_3_0/source/rpc_client/cli_ds.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -100,6 +100,10 @@
 		*num_domains = r.num_domains;
 		*trusts = TALLOC_ARRAY(mem_ctx, struct ds_domain_trust, r.num_domains);
 
+		if (*trusts == NULL) {
+			return NT_STATUS_NO_MEMORY;
+		}
+
 		for ( i=0; i< *num_domains; i++ ) {
 			(*trusts)[i].flags = r.domains.trusts[i].flags;
 			(*trusts)[i].parent_index = r.domains.trusts[i].parent_index;

Modified: branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -1177,6 +1177,12 @@
 	privileges = TALLOC_ARRAY( mem_ctx, fstring, *count );
 	names      = TALLOC_ARRAY( mem_ctx, char *, *count );
 
+	if ((privileges == NULL) || (names == NULL)) {
+		TALLOC_FREE(privileges);
+		TALLOC_FREE(names);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for ( i=0; i<*count; i++ ) {
 		UNISTR4 *uni_string = &r.rights->strings[i];
 

Modified: branches/SAMBA_3_0/source/rpc_client/cli_samr.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_client/cli_samr.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ branches/SAMBA_3_0/source/rpc_client/cli_samr.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -1505,6 +1505,12 @@
 	*names = TALLOC_ARRAY(mem_ctx, char *, r.num_names1);
 	*name_types = TALLOC_ARRAY(mem_ctx, uint32, r.num_names1);
 
+	if ((*names == NULL) || (*name_types == NULL)) {
+		TALLOC_FREE(*names);
+		TALLOC_FREE(*name_types);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for (i = 0; i < r.num_names1; i++) {
 		fstring tmp;
 
@@ -1564,6 +1570,12 @@
 	*rids = TALLOC_ARRAY(mem_ctx, uint32, r.num_rids1);
 	*rid_types = TALLOC_ARRAY(mem_ctx, uint32, r.num_rids1);
 
+	if ((*rids == NULL) || (*rid_types == NULL)) {
+		TALLOC_FREE(*rids);
+		TALLOC_FREE(*rid_types);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for (i = 0; i < r.num_rids1; i++) {
 		(*rids)[i] = r.rids[i];
 		(*rid_types)[i] = r.types[i];

Modified: branches/SAMBA_3_0/source/rpc_client/cli_srvsvc.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_client/cli_srvsvc.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ branches/SAMBA_3_0/source/rpc_client/cli_srvsvc.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -108,6 +108,9 @@
 	switch(info_level) {
 	case 1:
 		ctr->share.info1 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_1, ctr->num_entries);
+		if (ctr->share.info1 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info1, 0, sizeof(SRV_SHARE_INFO_1));
 
@@ -135,6 +138,9 @@
 		break;
 	case 2:
 		ctr->share.info2 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_2, ctr->num_entries);
+		if (ctr->share.info2 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info2, 0, sizeof(SRV_SHARE_INFO_2));
 
@@ -169,6 +175,10 @@
 	/* adding info-level 502 here */
 	case 502:
 		ctr->share.info502 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_502, ctr->num_entries);
+
+		if (ctr->share.info502 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info502, 0, sizeof(SRV_SHARE_INFO_502));
 
@@ -534,6 +544,9 @@
 	switch(file_level) {
 	case 3:
 		ctr->file.info3 = TALLOC_ARRAY(mem_ctx, SRV_FILE_INFO_3, ctr->num_entries);
+		if (ctr->file.info3 == NULL) {
+			return WERR_NOMEM;
+		}
 
 		memset(ctr->file.info3, 0, 
 		       sizeof(SRV_FILE_INFO_3) * ctr->num_entries);

Modified: trunk/source/rpc_client/cli_ds.c
===================================================================
--- trunk/source/rpc_client/cli_ds.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ trunk/source/rpc_client/cli_ds.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -100,6 +100,10 @@
 		*num_domains = r.num_domains;
 		*trusts = TALLOC_ARRAY(mem_ctx, struct ds_domain_trust, r.num_domains);
 
+		if (*trusts == NULL) {
+			return NT_STATUS_NO_MEMORY;
+		}
+
 		for ( i=0; i< *num_domains; i++ ) {
 			(*trusts)[i].flags = r.domains.trusts[i].flags;
 			(*trusts)[i].parent_index = r.domains.trusts[i].parent_index;

Modified: trunk/source/rpc_client/cli_lsarpc.c
===================================================================
--- trunk/source/rpc_client/cli_lsarpc.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ trunk/source/rpc_client/cli_lsarpc.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -1177,6 +1177,12 @@
 	privileges = TALLOC_ARRAY( mem_ctx, fstring, *count );
 	names      = TALLOC_ARRAY( mem_ctx, char *, *count );
 
+	if ((privileges == NULL) || (names == NULL)) {
+		TALLOC_FREE(privileges);
+		TALLOC_FREE(names);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for ( i=0; i<*count; i++ ) {
 		UNISTR4 *uni_string = &r.rights->strings[i];
 

Modified: trunk/source/rpc_client/cli_samr.c
===================================================================
--- trunk/source/rpc_client/cli_samr.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ trunk/source/rpc_client/cli_samr.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -1505,6 +1505,12 @@
 	*names = TALLOC_ARRAY(mem_ctx, char *, r.num_names1);
 	*name_types = TALLOC_ARRAY(mem_ctx, uint32, r.num_names1);
 
+	if ((*names == NULL) || (*name_types == NULL)) {
+		TALLOC_FREE(*names);
+		TALLOC_FREE(*name_types);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for (i = 0; i < r.num_names1; i++) {
 		fstring tmp;
 
@@ -1564,6 +1570,12 @@
 	*rids = TALLOC_ARRAY(mem_ctx, uint32, r.num_rids1);
 	*rid_types = TALLOC_ARRAY(mem_ctx, uint32, r.num_rids1);
 
+	if ((*rids == NULL) || (*rid_types == NULL)) {
+		TALLOC_FREE(*rids);
+		TALLOC_FREE(*rid_types);
+		return NT_STATUS_NO_MEMORY;
+	}
+
 	for (i = 0; i < r.num_rids1; i++) {
 		(*rids)[i] = r.rids[i];
 		(*rid_types)[i] = r.types[i];

Modified: trunk/source/rpc_client/cli_srvsvc.c
===================================================================
--- trunk/source/rpc_client/cli_srvsvc.c	2006-06-17 07:20:47 UTC (rev 16334)
+++ trunk/source/rpc_client/cli_srvsvc.c	2006-06-17 07:43:56 UTC (rev 16335)
@@ -108,6 +108,9 @@
 	switch(info_level) {
 	case 1:
 		ctr->share.info1 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_1, ctr->num_entries);
+		if (ctr->share.info1 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info1, 0, sizeof(SRV_SHARE_INFO_1));
 
@@ -135,6 +138,9 @@
 		break;
 	case 2:
 		ctr->share.info2 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_2, ctr->num_entries);
+		if (ctr->share.info2 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info2, 0, sizeof(SRV_SHARE_INFO_2));
 
@@ -169,6 +175,10 @@
 	/* adding info-level 502 here */
 	case 502:
 		ctr->share.info502 = TALLOC_ARRAY(mem_ctx, SRV_SHARE_INFO_502, ctr->num_entries);
+
+		if (ctr->share.info502 == NULL) {
+			return WERR_NOMEM;
+		}
 		
 		memset(ctr->share.info502, 0, sizeof(SRV_SHARE_INFO_502));
 
@@ -534,6 +544,9 @@
 	switch(file_level) {
 	case 3:
 		ctr->file.info3 = TALLOC_ARRAY(mem_ctx, SRV_FILE_INFO_3, ctr->num_entries);
+		if (ctr->file.info3 == NULL) {
+			return WERR_NOMEM;
+		}
 
 		memset(ctr->file.info3, 0, 
 		       sizeof(SRV_FILE_INFO_3) * ctr->num_entries);



More information about the samba-cvs mailing list