aboutsummaryrefslogtreecommitdiffstats
path: root/lib/in46_addr.h
AgeCommit message (Collapse)AuthorFilesLines
2024-02-22Revert "kernel-gtp: support IPv6 on outer layer"Oliver Smith1-1/+0
This reverts commit 0917ce4e2271c0d71dfb8c86eb2d99821a374781, as it breaks building osmo-sgsn. This needs to be reworked to be backwards compatible. Related: OS#6373 Change-Id: I2c2b2ff0875217e041d94c8e2cef030d2a86c2d8
2024-02-21kernel-gtp: support IPv6 on outer layerOliver Smith1-0/+1
Related: OS#1953, OS#6096 Change-Id: I257fff1dcd9d030a7f9ea936b2693a3f13208230
2023-07-24lib/in46_addr: add in46a_from_gsnaOliver Smith1-0/+2
Prepare to use it in gtp-kernel.c in a future patch. Related: OS#6096 Change-Id: I3e76eb7ee89ba338f085c617662d15cffa2a62d5
2019-08-28Introduce in46a_is_v{4,6}() helpersPau Espin Pedrol1-0/+8
It's clearer having size-related checks in one place for a data structure in46_addr, instead of spread around the code. Change-Id: Idc94bf0c8c01bb5a30e36d3c284b99f66b972abb
2017-12-11Add support for IPv4v6 End User AddressesPau Espin Pedrol1-1/+1
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
2017-10-16lib/in46a: Introduce in46a_netmasklen APIPau Espin Pedrol1-0/+1
Change-Id: I06e3e038afd8f7afaec2a3fa67b1616500c8db80
2017-09-05lib/in46_addr: Add 'struct in46_prefix' to represent addr + prefixHarald Welte1-0/+6
Change-Id: I797d105117e81951732bcfc2cc26a8d00fd69443
2017-09-05lib/in46_addr: Add in46a_ntoa() function, similar to inet_ntoa()Harald Welte1-0/+1
Change-Id: I752b7033a106a74dc219047da5c3a7ad3cd3602e
2017-08-09in46_addr: Add new function in46a_prefix_equal()Harald Welte1-0/+1
This function is used to compare an IPv6 address against another, using the smaller of the two prefix lengths. Change-Id: Ic993d8abdc90897cb55276f01ae3b8a5eadf5a0d
2017-08-09IPv6 support for user IPHarald Welte1-0/+5
This patch enables the use of IPv6 PDP contexts. The phone will have to request an IPv6 End-user-Address, and the GGSN will have to be configured for an IPv6 pool. The outer transport-layer IP between SGSN and GGSN must still be IPv4, it is not modified by this patch Change-Id: I22c3bf32a98e5daf99d6eaeac8c9f95cc7574774
2017-08-09ippool: Add IPv6 support to IP pool implementationHarald Welte1-0/+19
Extend the IP pool implementation to be able to manage both pools of 32bit addresses (IPv4) as well as pools of 128bit addresses (IPv6) Change-Id: Ib98cc4bf634d6be9a7bf8c03a24e629455fcafc8