X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fnetutl.h;h=3218122975bc5591562dc984da21cd4299af8b61;hb=d93d4f9dbd09bc5e53a9b5eeb1cc94939fee32bc;hp=a86a859d9db764a135e6241e23576bd926ac0377;hpb=6075fb8c185d0461070a9f16288e9d3673708735;p=tinc diff --git a/src/netutl.h b/src/netutl.h index a86a859d..32181229 100644 --- a/src/netutl.h +++ b/src/netutl.h @@ -25,7 +25,9 @@ extern bool hostnames; -extern struct addrinfo *str2addrinfo(const char *address, const char *service, int socktype) ATTR_MALLOC; +// Converts service name (as listed in /etc/services) to port number. Returns 0 on error. +extern uint16_t service_to_port(const char *service); +extern struct addrinfo *str2addrinfo(const char *address, const char *service, int socktype) ATTR_DEALLOCATOR(freeaddrinfo); extern sockaddr_t str2sockaddr(const char *address, const char *port); extern void sockaddr2str(const sockaddr_t *sa, char **address, char **port); extern char *sockaddr2hostname(const sockaddr_t *sa) ATTR_MALLOC; @@ -35,5 +37,6 @@ extern void sockaddrunmap(sockaddr_t *sa); extern void sockaddrfree(sockaddr_t *sa); extern void sockaddrcpy(sockaddr_t *dest, const sockaddr_t *src); extern void sockaddr_setport(sockaddr_t *sa, const char *port); +extern uint16_t get_bound_port(int sockfd); #endif