Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan José Arboleda <soyjuanarbol@gmail.com>2020-08-25 23:31:11 +0300
committerAnna Henningsen <anna@addaleax.net>2020-09-30 18:53:35 +0300
commitff4cf817a3159ddf7c4bf898819f88445c5fee53 (patch)
treeedbca8efc08eec6297be0e3bb088f9bf3e07b1bc /src/cares_wrap.cc
parenta8806535d9e7db7bf20b3b3ef8f911320baf7511 (diff)
src: create helper for reading Uint32BE
Fixes: https://github.com/nodejs/node/issues/34827 PR-URL: https://github.com/nodejs/node/pull/34944 Reviewed-By: Anna Henningsen <anna@addaleax.net>
Diffstat (limited to 'src/cares_wrap.cc')
-rw-r--r--src/cares_wrap.cc18
1 files changed, 6 insertions, 12 deletions
diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
index 73a0ac6b334..defe1ef3749 100644
--- a/src/cares_wrap.cc
+++ b/src/cares_wrap.cc
@@ -22,6 +22,7 @@
#define CARES_STATICLIB
#include "ares.h"
#include "async_wrap-inl.h"
+#include "base64-inl.h"
#include "env-inl.h"
#include "memory_tracker-inl.h"
#include "node.h"
@@ -79,13 +80,6 @@ inline uint16_t cares_get_16bit(const unsigned char* p) {
return static_cast<uint32_t>(p[0] << 8U) | (static_cast<uint32_t>(p[1]));
}
-inline uint32_t cares_get_32bit(const unsigned char* p) {
- return static_cast<uint32_t>(p[0] << 24U) |
- static_cast<uint32_t>(p[1] << 16U) |
- static_cast<uint32_t>(p[2] << 8U) |
- static_cast<uint32_t>(p[3]);
-}
-
const int ns_t_cname_or_a = -1;
#define DNS_ESETSRVPENDING -1000
@@ -1127,11 +1121,11 @@ int ParseSoaReply(Environment* env,
return ARES_EBADRESP;
}
- const unsigned int serial = cares_get_32bit(ptr + 0 * 4);
- const unsigned int refresh = cares_get_32bit(ptr + 1 * 4);
- const unsigned int retry = cares_get_32bit(ptr + 2 * 4);
- const unsigned int expire = cares_get_32bit(ptr + 3 * 4);
- const unsigned int minttl = cares_get_32bit(ptr + 4 * 4);
+ const unsigned int serial = ReadUint32BE(ptr + 0 * 4);
+ const unsigned int refresh = ReadUint32BE(ptr + 1 * 4);
+ const unsigned int retry = ReadUint32BE(ptr + 2 * 4);
+ const unsigned int expire = ReadUint32BE(ptr + 3 * 4);
+ const unsigned int minttl = ReadUint32BE(ptr + 4 * 4);
Local<Object> soa_record = Object::New(env->isolate());
soa_record->Set(context,