diff -up ./crypto/CryptoAuth.c.warnings ./crypto/CryptoAuth.c --- ./crypto/CryptoAuth.c.warnings 2016-01-27 03:07:49.000000000 -0500 +++ ./crypto/CryptoAuth.c 2016-05-03 22:06:45.842528947 -0400 @@ -77,6 +77,8 @@ static inline void getSharedSecret(uint8 uint8_t passwordHash[32], struct Log* logger) { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-result" if (passwordHash == NULL) { crypto_box_curve25519xsalsa20poly1305_beforenm(outputSecret, herPublicKey, myPrivateKey); } else { @@ -92,6 +94,7 @@ static inline void getSharedSecret(uint8 Bits_memcpy(buff.components.passwd, passwordHash, 32); crypto_hash_sha256(outputSecret, buff.bytes, 64); } +#pragma GCC diagnostic pop if (Defined(Log_KEYS)) { uint8_t myPublicKeyHex[65]; printHexPubKey(myPublicKeyHex, myPrivateKey); diff -up ./dht/CJDHTConstants.h.warnings ./dht/CJDHTConstants.h --- ./dht/CJDHTConstants.h.warnings 2016-01-27 03:07:49.000000000 -0500 +++ ./dht/CJDHTConstants.h 2016-05-03 22:06:45.842528947 -0400 @@ -17,7 +17,9 @@ #include "benc/String.h" #include "util/version/Version.h" - +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpragmas" +#pragma GCC diagnostic ignored "-Wunused-const-variable" // Signifying that this message is a query and defining the query type. static String* const CJDHTConstants_QUERY = String_CONST_SO("q"); @@ -61,5 +63,5 @@ static String* const CJDHTConstants_ENC_ // Encoding scheme and index for the closest peer along the path. static String* const CJDHTConstants_PEER_ENC_SCHEME = String_CONST_SO("pes"); static String* const CJDHTConstants_PEER_ENC_INDEX = String_CONST_SO("pei"); - +#pragma GCC diagnostic pop #endif diff -up ./node_build/dependencies/libuv/test/test-getsockname.c.warnings ./node_build/dependencies/libuv/test/test-getsockname.c --- ./node_build/dependencies/libuv/test/test-getsockname.c.warnings 2016-01-27 03:07:49.000000000 -0500 +++ ./node_build/dependencies/libuv/test/test-getsockname.c 2016-05-03 22:06:45.842528947 -0400 @@ -18,7 +18,7 @@ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * IN THE SOFTWARE. */ - +#pragma GCC diagnostic ignored "-Wstrict-aliasing" #include "uv.h" #include "task.h" diff -up ./util/Constant.js.warnings ./util/Constant.js --- ./util/Constant.js.warnings 2016-05-09 16:26:54.865933415 -0400 +++ ./util/Constant.js 2016-05-09 16:30:00.541056943 -0400 @@ -62,20 +62,23 @@ var base2 = module.exports.base2 = funct return '((' + type + ') 0x' + base2ToHex(numStr) + ((type === 'uint64_t') ? 'ull' : 'ul') + ')'; }; +var randomHex = function (bytes) { + var hex = ''; + var len = Number(bytes * 2); // One byte is two hex digits + while (hex.length < len) { hex += Math.random().toString(16).substring(2); } + return hex.substring(0,len); +}; + var rand64 = module.exports.rand64 = function () { - return '((uint64_t) 0x' + - (Math.random().toString(16) + Math.random().toString(16)).replace(/0\./g, '') + 'ull)'; + return '((uint64_t) 0x' + randomHex(64 / 8) + 'ull)'; }; var rand32 = module.exports.rand32 = function () { - return '((uint32_t) 0x' + Math.random().toString(16).replace(/0\./g, '') + 'ul)'; + return '((uint32_t) 0x' + randomHex(32 / 8) + 'ul)'; }; var randHexString = module.exports.randHexString = function (lenStr) { - var hex = ''; - var len = Number(lenStr); - while (hex.length < len) { hex += Math.random().toString(16).substring(2); } - return '"' + hex.substring(0,len) + '"'; + return '"' + randomHex(lenStr / 2) + '"'; }; var log2 = module.exports.log2 = function (val) { diff -up ./util/platform/netdev/NetPlatform_linux.c.warnings ./util/platform/netdev/NetPlatform_linux.c --- ./util/platform/netdev/NetPlatform_linux.c.warnings 2016-01-27 03:07:49.000000000 -0500 +++ ./util/platform/netdev/NetPlatform_linux.c 2016-05-03 22:06:45.842528947 -0400 @@ -142,7 +142,7 @@ void NetPlatform_addAddress(const char* Except_throw(eh, "ioctl(SIOCSIFADDR) failed: [%s]", strerror(err)); } - uint32_t x = ~0 << (32 - prefixLen); + uint32_t x = ~0U << (32 - prefixLen); x = Endian_hostToBigEndian32(x); memcpy(&sin.sin_addr, &x, 4); memcpy(&ifRequest.ifr_addr, &sin, sizeof(struct sockaddr_in)); @@ -213,7 +213,7 @@ void NetPlatform_addRoute(const char* in struct sockaddr_in sin = { .sin_family = AF_INET, .sin_port = 0 }; memcpy(&sin.sin_addr.s_addr, address, 4); memcpy(&rt.rt_dst, &sin, sizeof(struct sockaddr)); - sin.sin_addr.s_addr = Endian_hostToBigEndian32(~0 << (32 - prefixLen)); + sin.sin_addr.s_addr = Endian_hostToBigEndian32(~0U << (32 - prefixLen)); memcpy(&rt.rt_genmask, &sin, sizeof(struct sockaddr)); rt.rt_dev = (char *) interfaceName; diff -up ./util/platform/Sockaddr.c.warnings ./util/platform/Sockaddr.c --- ./util/platform/Sockaddr.c.warnings 2016-01-27 03:07:49.000000000 -0500 +++ ./util/platform/Sockaddr.c 2016-05-03 22:06:45.842528947 -0400 @@ -12,6 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ +#pragma GCC diagnostic ignored "-Wstrict-aliasing" #include "util/events/libuv/UvWrapper.h" #include "benc/String.h" #include "memory/Allocator.h"