]> git.meshlink.io Git - catta/blobdiff - address.c
some preliminary work for adding legacy unicast and unicast response support
[catta] / address.c
index dffd3ee4a44a29aa33c5a69fbce71465c20a6ea5..d0fc10134ad98f7ab319f8eaff50ce084881c030 100644 (file)
--- a/address.c
+++ b/address.c
@@ -113,3 +113,14 @@ flxAddress *flx_address_from_sockaddr(const struct sockaddr* sa, flxAddress *ret
 
     return ret_addr;
 }
+
+guint16 flx_port_from_sockaddr(const struct sockaddr* sa) {
+    g_assert(sa);
+
+    g_assert(sa->sa_family == AF_INET || sa->sa_family == AF_INET6);
+
+    if (sa->sa_family == AF_INET)
+        return ntohs(((struct sockaddr_in*) sa)->sin_port);
+    else
+        return ntohs(((struct sockaddr_in6*) sa)->sin6_port);
+}