Revision: 14862
Author:   adrian.chadd
Date:     Fri Jul  8 21:53:17 2011
Log: Add sqinet_set_sockaddr(), which sets the sqaddr to the relevant family
and address/port.


http://code.google.com/p/lusca-cache/source/detail?r=14862

Modified:
 /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.c
 /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.h

=======================================
--- /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.c Tue Sep  7 22:02:44 2010
+++ /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.c Fri Jul  8 21:53:17 2011
@@ -289,6 +289,22 @@
        v4 = (struct sockaddr_in *) &s->st;
        return v4->sin_addr;
 }
+
+int
+sqinet_set_sockaddr(sqaddr_t *s, const struct sockaddr_storage *sa)
+{
+       switch (sa->ss_family) {
+               case AF_INET:
+                       sqinet_set_v4_sockaddr(s, (struct sockaddr_in *) sa);
+                       break;
+               case AF_INET6:
+                       sqinet_set_v6_sockaddr(s, (struct sockaddr_in6 *) sa);
+                       break;
+               default:
+                       return 0;
+       }
+       return 1;
+}

 struct in6_addr
 sqinet_get_v6_inaddr(const sqaddr_t *s, sqaddr_flags flags)
=======================================
--- /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.h Tue Jul 13 07:06:28 2010
+++ /playpen/LUSCA_HEAD_ipv6/libsqinet/sqinet.h Fri Jul  8 21:53:17 2011
@@ -36,6 +36,7 @@
extern int sqinet_set_v6_sockaddr(sqaddr_t *s, const struct sockaddr_in6 *v6addr);
 extern int sqinet_get_port(const sqaddr_t *s);
extern void sqinet_set_port(const sqaddr_t *s, short port, sqaddr_flags flags); +extern int sqinet_set_sockaddr(sqaddr_t *s, const struct sockaddr_storage *sa); extern struct in_addr sqinet_get_v4_inaddr(const sqaddr_t *s, sqaddr_flags flags); extern struct in6_addr sqinet_get_v6_inaddr(const sqaddr_t *s, sqaddr_flags flags); extern int sqinet_get_v4_sockaddr_ptr(const sqaddr_t *s, struct sockaddr_in *v4, sqaddr_flags flags);

--
You received this message because you are subscribed to the Google Groups 
"lusca-commit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/lusca-commit?hl=en.

Reply via email to