svn commit: samba r16339 - branches/SAMBA_3_0/source/libads branches/SAMBA_3_0/source/rpcclient trunk/source/libads trunk/source/rpcclient

vlendec at samba.org vlendec at samba.org
Sun Jun 18 09:45:19 GMT 2006


Author: vlendec
Date: 2006-06-18 09:45:18 +0000 (Sun, 18 Jun 2006)
New Revision: 16339

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

Log:
Fix Klocwork ID 

277 278     (cmd_*)

485 487 488 (ldap.c)

Volker

Modified:
   branches/SAMBA_3_0/source/libads/ldap.c
   branches/SAMBA_3_0/source/rpcclient/cmd_samr.c
   branches/SAMBA_3_0/source/rpcclient/cmd_spoolss.c
   trunk/source/libads/ldap.c
   trunk/source/rpcclient/cmd_samr.c
   trunk/source/rpcclient/cmd_spoolss.c


Changeset:
Modified: branches/SAMBA_3_0/source/libads/ldap.c
===================================================================
--- branches/SAMBA_3_0/source/libads/ldap.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ branches/SAMBA_3_0/source/libads/ldap.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -904,8 +904,14 @@
  **/
 char *ads_parent_dn(const char *dn)
 {
-	char *p = strchr(dn, ',');
+	char *p;
 
+	if (dn == NULL) {
+		return NULL;
+	}
+
+	p = strchr(dn, ',');
+
 	if (p == NULL) {
 		return NULL;
 	}

Modified: branches/SAMBA_3_0/source/rpcclient/cmd_samr.c
===================================================================
--- branches/SAMBA_3_0/source/rpcclient/cmd_samr.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ branches/SAMBA_3_0/source/rpcclient/cmd_samr.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -1680,7 +1680,12 @@
 	/* Look up names */
 
 	num_names = argc - 2;
-	names = TALLOC_ARRAY(mem_ctx, const char *, num_names);
+	if ((names = TALLOC_ARRAY(mem_ctx, const char *, num_names)) == NULL) {
+		rpccli_samr_close(cli, mem_ctx, &domain_pol);
+		rpccli_samr_close(cli, mem_ctx, &connect_pol);
+		result = NT_STATUS_NO_MEMORY;
+		goto done;
+	}
 
 	for (i = 0; i < argc - 2; i++)
 		names[i] = argv[i + 2];
@@ -1747,6 +1752,12 @@
 
 	num_rids = argc - 2;
 	rids = TALLOC_ARRAY(mem_ctx, uint32, num_rids);
+	if ((rids = TALLOC_ARRAY(mem_ctx, uint32, num_rids)) == NULL) {
+		rpccli_samr_close(cli, mem_ctx, &domain_pol);
+		rpccli_samr_close(cli, mem_ctx, &connect_pol);
+		result = NT_STATUS_NO_MEMORY;
+		goto done;
+	}
 
 	for (i = 0; i < argc - 2; i++)
                 sscanf(argv[i + 2], "%i", &rids[i]);

Modified: branches/SAMBA_3_0/source/rpcclient/cmd_spoolss.c
===================================================================
--- branches/SAMBA_3_0/source/rpcclient/cmd_spoolss.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ branches/SAMBA_3_0/source/rpcclient/cmd_spoolss.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -2454,6 +2454,10 @@
 	option.count = option.ctr.count = 2;
 
 	option.ctr.type = TALLOC_ARRAY(mem_ctx, SPOOL_NOTIFY_OPTION_TYPE, 2);
+	if (option.ctr.type == NULL) {
+		result = WERR_NOMEM;
+		goto done;
+	}
 
 	ZERO_STRUCT(option.ctr.type[0]);
 	option.ctr.type[0].type = PRINTER_NOTIFY_TYPE;

Modified: trunk/source/libads/ldap.c
===================================================================
--- trunk/source/libads/ldap.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ trunk/source/libads/ldap.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -904,8 +904,14 @@
  **/
 char *ads_parent_dn(const char *dn)
 {
-	char *p = strchr(dn, ',');
+	char *p;
 
+	if (dn == NULL) {
+		return NULL;
+	}
+
+	p = strchr(dn, ',');
+
 	if (p == NULL) {
 		return NULL;
 	}

Modified: trunk/source/rpcclient/cmd_samr.c
===================================================================
--- trunk/source/rpcclient/cmd_samr.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ trunk/source/rpcclient/cmd_samr.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -1680,7 +1680,12 @@
 	/* Look up names */
 
 	num_names = argc - 2;
-	names = TALLOC_ARRAY(mem_ctx, const char *, num_names);
+	if ((names = TALLOC_ARRAY(mem_ctx, const char *, num_names)) == NULL) {
+		rpccli_samr_close(cli, mem_ctx, &domain_pol);
+		rpccli_samr_close(cli, mem_ctx, &connect_pol);
+		result = NT_STATUS_NO_MEMORY;
+		goto done;
+	}
 
 	for (i = 0; i < argc - 2; i++)
 		names[i] = argv[i + 2];
@@ -1747,6 +1752,12 @@
 
 	num_rids = argc - 2;
 	rids = TALLOC_ARRAY(mem_ctx, uint32, num_rids);
+	if ((rids = TALLOC_ARRAY(mem_ctx, uint32, num_rids)) == NULL) {
+		rpccli_samr_close(cli, mem_ctx, &domain_pol);
+		rpccli_samr_close(cli, mem_ctx, &connect_pol);
+		result = NT_STATUS_NO_MEMORY;
+		goto done;
+	}
 
 	for (i = 0; i < argc - 2; i++)
                 sscanf(argv[i + 2], "%i", &rids[i]);

Modified: trunk/source/rpcclient/cmd_spoolss.c
===================================================================
--- trunk/source/rpcclient/cmd_spoolss.c	2006-06-18 09:26:05 UTC (rev 16338)
+++ trunk/source/rpcclient/cmd_spoolss.c	2006-06-18 09:45:18 UTC (rev 16339)
@@ -2454,6 +2454,10 @@
 	option.count = option.ctr.count = 2;
 
 	option.ctr.type = TALLOC_ARRAY(mem_ctx, SPOOL_NOTIFY_OPTION_TYPE, 2);
+	if (option.ctr.type == NULL) {
+		result = WERR_NOMEM;
+		goto done;
+	}
 
 	ZERO_STRUCT(option.ctr.type[0]);
 	option.ctr.type[0].type = PRINTER_NOTIFY_TYPE;



More information about the samba-cvs mailing list