two coverity-prompted fixes

Jim Meyering jim at meyering.net
Wed Oct 19 21:56:32 UTC 2011


FYI,

>From 37903511cd7ed84a9a6c269751d4172e91eb0802 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Wed, 19 Oct 2011 22:43:42 +0200
Subject: [PATCH 1/2] avoid a NULL dereference

* setup.c (validate_provider): Don't dereference NULL when no
provider port is specified.
---
 setup.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/setup.c b/setup.c
index ab60900..184cfd5 100644
--- a/setup.c
+++ b/setup.c
@@ -151,7 +151,7 @@ validate_provider (Hash_table *h)
 	    ok = 0;
 	}
 	// ensure port is a positive integer with 5 or fewer digits
-	if (5 < strlen (port) || strcspn (port, "0123456789")) {
+	if (port && (5 < strlen (port) || strcspn (port, "0123456789"))) {
 	    log_msg(0, _("%s: %s-provider: invalid port: %s"),
 		    name, type, port);
 	    ok = 0;
--
1.7.7.30.g22b6ea


>From dfc64b72b799e3d114432621ff9f74a0d6842fa0 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Wed, 19 Oct 2011 22:45:05 +0200
Subject: [PATCH 2/2] maint: avoid warning from coverity about '0' as memset
 fill byte

* rest.c (do_oauth): Use 'x' instead, so no one thinks we meant 0.
---
 rest.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/rest.c b/rest.c
index 2c67160..5030da1 100644
--- a/rest.c
+++ b/rest.c
@@ -2477,7 +2477,7 @@ do_oauth (struct MHD_Connection *conn, my_state *ms,
 	size_t nb = (oargc+1) * sizeof(char*);
 	oargv = malloc(nb);
 	if (oargv) {
-		memset((void*)oargv, '0', nb);
+		memset((void*)oargv, 'x', nb);
 		((char *)oargv)[nb - 1] = 0;
 		oargv = (char **) oauth_url_escape((char *)oargv);
 	}
--
1.7.7.30.g22b6ea


More information about the iwhd-devel mailing list