aboutsummaryrefslogtreecommitdiffstats
path: root/lib/in46_addr.h
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2017-12-06 19:26:25 +0100
committerPau Espin Pedrol <pespin@sysmocom.de>2017-12-11 11:39:18 +0100
commit2d6a69e69a4b4cb2b8cc63c4810dae44e5a4d8f6 (patch)
treeb0484aa531ce9f9973f467c3720be4406d4d8518 /lib/in46_addr.h
parent4f0343233b83337afa1e1dfb4bcf9d076ecd4be2 (diff)
Add support for IPv4v6 End User Addresses
Before this commit, when an MS requested an ipv4v6 context osmo-ggsn returned an error stating the type was unknown, and this text was printed in the log: Processing create PDP context request for APN 'ims' Cannot decode EUA from MS/SGSN: f1 8d This patch has been tested with an MS running the 3 types of addresses: - IPv4 and IPv6: no regressions observed, the context is activated and packets are sent to the ggsn. - IPv4v6: Wireshark correctly parses request and reponse, and then ICMPv6 traffic from both sides. Finally I see the MS using the IPv4 and IPv6 DNS addresses advertised and TCP traffic over IPv4 (because probably my IPv6 network setup is not correct). I also checked I can disable/enable data (pdp ctx delete and activate) several times without any issue. Change-Id: Ic820759167fd3bdf329cb11d4b942e903fe50af5
Diffstat (limited to 'lib/in46_addr.h')
-rw-r--r--lib/in46_addr.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/in46_addr.h b/lib/in46_addr.h
index ff26521..e4654cc 100644
--- a/lib/in46_addr.h
+++ b/lib/in46_addr.h
@@ -29,5 +29,5 @@ extern int in46a_prefix_equal(const struct in46_addr *a, const struct in46_addr
extern int in46a_within_mask(const struct in46_addr *addr, const struct in46_addr *net, size_t prefixlen);
unsigned int in46a_netmasklen(const struct in46_addr *netmask);
-int in46a_to_eua(const struct in46_addr *src, struct ul66_t *eua);
+int in46a_to_eua(const struct in46_addr *src, unsigned int size, struct ul66_t *eua);
int in46a_from_eua(const struct ul66_t *eua, struct in46_addr *dst);