MCPcopy Create free account
hub / github.com/F-Stack/f-stack / key_sockaddrcmp_withmask

Function key_sockaddrcmp_withmask

freebsd/netipsec/key.c:4347–4370  ·  view source on GitHub ↗

returns 0 on match */

Source from the content-addressed store, hash-verified

4345
4346/* returns 0 on match */
4347int
4348key_sockaddrcmp_withmask(const struct sockaddr *sa1,
4349 const struct sockaddr *sa2, size_t mask)
4350{
4351 if (sa1->sa_family != sa2->sa_family || sa1->sa_len != sa2->sa_len)
4352 return (1);
4353
4354 switch (sa1->sa_family) {
4355#ifdef INET
4356 case AF_INET:
4357 return (!key_bbcmp(&satosin(sa1)->sin_addr,
4358 &satosin(sa2)->sin_addr, mask));
4359#endif
4360#ifdef INET6
4361 case AF_INET6:
4362 if (satosin6(sa1)->sin6_scope_id !=
4363 satosin6(sa2)->sin6_scope_id)
4364 return (1);
4365 return (!key_bbcmp(&satosin6(sa1)->sin6_addr,
4366 &satosin6(sa2)->sin6_addr, mask));
4367#endif
4368 }
4369 return (1);
4370}
4371#undef satosin
4372#undef satosin6
4373

Callers 1

ipsec_check_historyFunction · 0.85

Calls 1

key_bbcmpFunction · 0.85

Tested by

no test coverage detected