[core] sock_addr_set_port()

personal/stbuehler/tests-path
Glenn Strauss 2021-08-17 08:34:50 -04:00
parent d9bac3f423
commit f7018e3d39
2 changed files with 22 additions and 0 deletions

View File

@ -191,6 +191,26 @@ int sock_addr_is_addr_eq_bits(const sock_addr *a, const sock_addr *b, int bits)
}
void sock_addr_set_port (sock_addr * const restrict saddr, const unsigned short port)
{
switch (saddr->plain.sa_family) {
case AF_INET:
saddr->ipv4.sin_port = htons(port);
break;
#ifdef HAVE_IPV6
case AF_INET6:
saddr->ipv6.sin6_port = htons(port);
break;
#endif
#ifdef HAVE_SYS_UN_H
/*case AF_UNIX:*/
#endif
default:
break;
}
}
int sock_addr_assign (sock_addr * const restrict saddr, int family, unsigned short nport, const void * const restrict naddr)
{
switch (family) {

View File

@ -50,6 +50,8 @@ int sock_addr_is_addr_port_eq (const sock_addr *saddr1, const sock_addr *saddr2)
__attribute_pure__
int sock_addr_is_addr_eq_bits(const sock_addr * restrict a, const sock_addr * restrict b, int bits);
void sock_addr_set_port (sock_addr * restrict saddr, unsigned short port);
int sock_addr_assign (sock_addr * restrict saddr, int family, unsigned short nport, const void * restrict naddr);
int sock_addr_inet_pton(sock_addr * restrict saddr, const char * restrict str, int family, unsigned short port);