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
path: root/src
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2020-08-12 22:34:42 +0300
committerJames M Snell <jasnell@gmail.com>2020-08-21 19:18:44 +0300
commitc6e1edcc2802224cb9b312e9051e6bcdfc7935e4 (patch)
tree3bd3ab7c96ce1ac0142eb756f1c798febbcebd3f /src
parent757bac671117f8fbb68f808d4bbbe83035e4940d (diff)
src: add Update(const sockaddr*) variant
Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/34752 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
Diffstat (limited to 'src')
-rw-r--r--src/node_sockaddr-inl.h5
-rw-r--r--src/node_sockaddr.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/node_sockaddr-inl.h b/src/node_sockaddr-inl.h
index e5d8985771e..b5ae5acb5fd 100644
--- a/src/node_sockaddr-inl.h
+++ b/src/node_sockaddr-inl.h
@@ -152,6 +152,11 @@ void SocketAddress::Update(uint8_t* data, size_t len) {
memcpy(&address_, data, len);
}
+void SocketAddress::Update(const sockaddr* data, size_t len) {
+ CHECK_LE(len, sizeof(address_));
+ memcpy(&address_, data, len);
+}
+
v8::Local<v8::Object> SocketAddress::ToJS(
Environment* env,
v8::Local<v8::Object> info) const {
diff --git a/src/node_sockaddr.h b/src/node_sockaddr.h
index 69a370afa32..f05b58d3551 100644
--- a/src/node_sockaddr.h
+++ b/src/node_sockaddr.h
@@ -123,6 +123,7 @@ class SocketAddress : public MemoryRetainer {
inline void set_flow_label(uint32_t label = 0);
inline void Update(uint8_t* data, size_t len);
+ inline void Update(const sockaddr* data, size_t len);
static SocketAddress FromSockName(const uv_udp_t& handle);
static SocketAddress FromSockName(const uv_tcp_t& handle);