]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
More clang analysis fixes
authorWillem Toorop <willem@nlnetlabs.nl>
Tue, 18 Nov 2025 13:49:47 +0000 (14:49 +0100)
committerWillem Toorop <willem@nlnetlabs.nl>
Tue, 18 Nov 2025 13:49:47 +0000 (14:49 +0100)
configure.ac
keys.c
net.c

index 4b3513526a885e88dbafe4834d5c6cc0dfa84567..91938e4a343090b474ac58981e60cc658cb41838 100644 (file)
@@ -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 8125de3f6b9fd0e77d1f2c4f3c4b205a7f98dd0d..5e71ba6ad6b5cec0bd20e88643cf04839fdf5fdb 100644 (file)
--- 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 8fc9c8c48d872fbd5096653c237585995b8361a9..e944d018b3577cf30a65674e499c014feab5ffd2 100644 (file)
--- 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;