MCPcopy Create free account
hub / github.com/bitcoinxt/bitcoinxt / GetSockAddr

Method GetSockAddr

src/netbase.cpp:1169–1196  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1167}
1168
1169bool CService::GetSockAddr(struct sockaddr* paddr, socklen_t *addrlen) const
1170{
1171 if (IsIPv4()) {
1172 if (*addrlen < (socklen_t)sizeof(struct sockaddr_in))
1173 return false;
1174 *addrlen = sizeof(struct sockaddr_in);
1175 struct sockaddr_in *paddrin = (struct sockaddr_in*)paddr;
1176 memset(paddrin, 0, *addrlen);
1177 if (!GetInAddr(&paddrin->sin_addr))
1178 return false;
1179 paddrin->sin_family = AF_INET;
1180 paddrin->sin_port = htons(port);
1181 return true;
1182 }
1183 if (IsIPv6()) {
1184 if (*addrlen < (socklen_t)sizeof(struct sockaddr_in6))
1185 return false;
1186 *addrlen = sizeof(struct sockaddr_in6);
1187 struct sockaddr_in6 *paddrin6 = (struct sockaddr_in6*)paddr;
1188 memset(paddrin6, 0, *addrlen);
1189 if (!GetIn6Addr(&paddrin6->sin6_addr))
1190 return false;
1191 paddrin6->sin6_family = AF_INET6;
1192 paddrin6->sin6_port = htons(port);
1193 return true;
1194 }
1195 return false;
1196}
1197
1198std::vector<unsigned char> CService::GetKey() const
1199{

Callers 3

ConnectSocketDirectlyFunction · 0.80
ToStringIPMethod · 0.80
BindListenPortFunction · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected