File tree Expand file tree Collapse file tree 1 file changed +4
-2
lines changed
source/extensions/filters/listener/kmesh_tlv Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Original file line number Diff line number Diff line change @@ -103,17 +103,19 @@ ReadOrParseState KmeshTlvFilter::parseBuffer(Network::ListenerFilterBuffer& buff
103103 int len;
104104
105105 if (content_length_ == TLV_TYPE_SERVICE_ADDRESS_IPV4_LEN) {
106- addr.ss_family = AF_INET;
107106 len = sizeof (struct sockaddr_in );
108107 auto in4 = reinterpret_cast <struct sockaddr_in *>(&addr);
108+ std::memset (in4, 0 , len);
109+ addr.ss_family = AF_INET;
109110 std::memcpy (&in4->sin_addr , buf + index_, 4 );
110111 uint16_t port = 0 ;
111112 std::memcpy (&port, buf + index_ + 4 , 2 );
112113 in4->sin_port = port;
113114 } else {
114- addr.ss_family = AF_INET6;
115115 len = sizeof (struct sockaddr_in6 );
116116 auto in6 = reinterpret_cast <struct sockaddr_in6 *>(&addr);
117+ std::memset (in6, 0 , len);
118+ addr.ss_family = AF_INET6;
117119 std::memcpy (&in6->sin6_addr , buf + index_, 16 );
118120 uint16_t port = 0 ;
119121 std::memcpy (&port, buf + index_ + 16 , 2 );
You can’t perform that action at this time.
0 commit comments