diff --git a/include/opendht/dht.h b/include/opendht/dht.h
index 8fed6bcc2eecf0836b6c709e0f2f2c3f20d30fbe..87fb3fdbb73b380ad633e169eaa55a895ed0a725 100644
--- a/include/opendht/dht.h
+++ b/include/opendht/dht.h
@@ -69,7 +69,7 @@ struct Node {
     Node(const InfoHash& id, const sockaddr* sa, socklen_t salen)
         : id(id), ss(), sslen(salen) {
         std::copy_n((const uint8_t*)sa, salen, (uint8_t*)&ss);
-        if (salen < sizeof(ss))
+        if ((unsigned)salen < sizeof(ss))
             std::fill_n((uint8_t*)&ss+salen, sizeof(ss)-salen, 0);
     }
     InfoHash getId() const {