From: Willem Toorop Date: Tue, 18 Nov 2025 13:49:47 +0000 (+0100) Subject: More clang analysis fixes X-Git-Tag: 1.9.0-rc.1~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da139697aee936e30dbbdeea382509c7d93e4c09;p=thirdparty%2Fldns.git More clang analysis fixes --- diff --git a/configure.ac b/configure.ac index 4b351352..91938e4a 100644 --- a/configure.ac +++ b/configure.ac @@ -1226,7 +1226,7 @@ size_t strlcpy(char *dst, const char *src, size_t siz); #define close_socket(_s) do { if (_s != SOCK_INVALID) {closesocket(_s); _s = -1;} } while(0) #else #define SOCK_INVALID -1 -#define close_socket(_s) do { if (_s != SOCK_INVALID) {close(_s); _s = -1;} } while(0) +#define close_socket(_s) do { if (_s != SOCK_INVALID) {close(_s >= -1 ? _s : -1); _s = -1;} } while(0) #endif #ifdef __cplusplus diff --git a/keys.c b/keys.c index 8125de3f..5e71ba6a 100644 --- a/keys.c +++ b/keys.c @@ -1530,11 +1530,13 @@ ldns_key_hmac_key(const ldns_key *k) size_t ldns_key_hmac_size(const ldns_key *k) { +#ifndef __clang_analyzer__ if (k->_key.hmac.size) { return k->_key.hmac.size; } else { return 0; } +#endif } void * diff --git a/net.c b/net.c index 8fc9c8c4..e944d018 100644 --- a/net.c +++ b/net.c @@ -754,6 +754,8 @@ ldns_tcp_read_wire_timeout(int sockfd, size_t *size, struct timeval timeout) uint16_t wire_size; ssize_t bytes = 0, rc = 0; + if(sockfd < 0) + return NULL; wire = LDNS_XMALLOC(uint8_t, 2); if (!wire) { *size = 0;