From 6ea2c41bea3eeda758934d7af33261e1091ae1d5 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Fri, 18 Sep 2015 23:30:01 +1000 Subject: [PATCH] 4216. [cleanup] Silence static analysis warnings. [RT #40649] (cherry picked from commit 705d56b47a932cc277f980755e80ac4f46a18a64) --- CHANGES | 2 ++ lib/dns/gen.c | 6 +++--- lib/dns/master.c | 5 ++--- lib/irs/resconf.c | 3 ++- lib/isc/buffer.c | 2 ++ lib/isc/httpd.c | 2 +- lib/isc/unix/socket.c | 9 +++++---- 7 files changed, 17 insertions(+), 12 deletions(-) diff --git a/CHANGES b/CHANGES index 9219443eb4..bb4d535915 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +4216. [cleanup] Silence static analysis warnings. [RT #40649] + 4215. [bug] nsupdate: skip to next request on GSSTKEY create failure. [RT #40685] diff --git a/lib/dns/gen.c b/lib/dns/gen.c index 7a7dafb461..daa020c3bd 100644 --- a/lib/dns/gen.c +++ b/lib/dns/gen.c @@ -770,7 +770,7 @@ main(int argc, char **argv) { continue; if (hash == HASH(ttn2->typename)) { fprintf(stdout, "\t\t\tRDATATYPE_COMPARE" - "(\"%s\", %u, " + "(\"%s\", %d, " "_typename, _length, _typep); \\\n", ttn2->typename, ttn2->type); ttn2->sorted = 1; @@ -786,7 +786,7 @@ main(int argc, char **argv) { ttn = find_typename(i); if (ttn == NULL) continue; - fprintf(stdout, "\tcase %u: return (%s); \\\n", + fprintf(stdout, "\tcase %d: return (%s); \\\n", i, upper(ttn->attr)); } fprintf(stdout, "\t}\n"); @@ -805,7 +805,7 @@ main(int argc, char **argv) { */ if (i == 65533U) continue; - fprintf(stdout, "\tcase %u: return " + fprintf(stdout, "\tcase %d: return " "(str_totext(\"%s\", target)); \\\n", i, upper(ttn->typename)); } diff --git a/lib/dns/master.c b/lib/dns/master.c index cbd95555b3..5d494b80cd 100644 --- a/lib/dns/master.c +++ b/lib/dns/master.c @@ -818,7 +818,7 @@ generate(dns_loadctx_t *lctx, char *range, char *lhs, char *gtype, char *rhs, isc_textregion_t r; int i, n, start, stop, step = 0; dns_incctx_t *ictx; - char dummy; + char dummy[2]; ictx = lctx->inc; callbacks = lctx->callbacks; @@ -835,7 +835,7 @@ generate(dns_loadctx_t *lctx, char *range, char *lhs, char *gtype, char *rhs, } isc_buffer_init(&target, target_mem, target_size); - n = sscanf(range, "%d-%d%[/]%d", &start, &stop, &dummy, &step); + n = sscanf(range, "%d-%d%1[/]%d", &start, &stop, dummy, &step); if ((n != 2 && n != 4) || (start < 0) || (stop < 0) || (n == 4 && step < 1) || (stop < start)) { @@ -2282,7 +2282,6 @@ load_raw(dns_loadctx_t *lctx) { unsigned char *target_mem = NULL; dns_decompress_t dctx; - REQUIRE(DNS_LCTX_VALID(lctx)); callbacks = lctx->callbacks; dns_decompress_init(&dctx, -1, DNS_DECOMPRESS_NONE); diff --git a/lib/irs/resconf.c b/lib/irs/resconf.c index 6b7085e469..766c050b72 100644 --- a/lib/irs/resconf.c +++ b/lib/irs/resconf.c @@ -173,11 +173,12 @@ eatwhite(FILE *fp) { static int getword(FILE *fp, char *buffer, size_t size) { int ch; - char *p = buffer; + char *p; REQUIRE(buffer != NULL); REQUIRE(size > 0U); + p = buffer; *p = '\0'; ch = eatwhite(fp); diff --git a/lib/isc/buffer.c b/lib/isc/buffer.c index 2d15e24857..22ddfd518f 100644 --- a/lib/isc/buffer.c +++ b/lib/isc/buffer.c @@ -462,6 +462,8 @@ isc_buffer_allocate(isc_mem_t *mctx, isc_buffer_t **dynbuffer, length); dbuf->mctx = mctx; + ENSURE(ISC_BUFFER_VALID(dbuf)); + *dynbuffer = dbuf; return (ISC_R_SUCCESS); diff --git a/lib/isc/httpd.c b/lib/isc/httpd.c index 9857538a38..09ce8a0fd4 100644 --- a/lib/isc/httpd.c +++ b/lib/isc/httpd.c @@ -838,7 +838,7 @@ isc_httpd_response(isc_httpd_t *httpd) { return (result); } - sprintf(isc_buffer_used(&httpd->headerbuffer), "%s %03d %s\r\n", + sprintf(isc_buffer_used(&httpd->headerbuffer), "%s %03u %s\r\n", httpd->protocol, httpd->retcode, httpd->retmsg); isc_buffer_add(&httpd->headerbuffer, needlen); diff --git a/lib/isc/unix/socket.c b/lib/isc/unix/socket.c index 4cd7ecc24d..e78f12897a 100644 --- a/lib/isc/unix/socket.c +++ b/lib/isc/unix/socket.c @@ -1734,13 +1734,14 @@ build_msghdr_recv(isc__socket_t *sock, isc_socketevent_t *dev, msg->msg_iovlen = iovcount; #ifdef ISC_NET_BSD44MSGHDR - msg->msg_control = NULL; - msg->msg_controllen = 0; - msg->msg_flags = 0; #if defined(USE_CMSG) msg->msg_control = sock->recvcmsgbuf; msg->msg_controllen = sock->recvcmsgbuflen; +#else + msg->msg_control = NULL; + msg->msg_controllen = 0; #endif /* USE_CMSG */ + msg->msg_flags = 0; #else /* ISC_NET_BSD44MSGHDR */ msg->msg_accrights = NULL; msg->msg_accrightslen = 0; @@ -2386,8 +2387,8 @@ static void free_socket(isc__socket_t **socketp) { isc__socket_t *sock = *socketp; - INSIST(sock->references == 0); INSIST(VALID_SOCKET(sock)); + INSIST(sock->references == 0); INSIST(!sock->connecting); INSIST(!sock->pending_recv); INSIST(!sock->pending_send);