openggsn.git branch laforge/ipv6 updated. 0.93-22-g69ba8a6

gitosis at gitosis at
Wed Aug 9 20:16:03 UTC 2017

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The OpenGGSN project".

The branch, laforge/ipv6 has been updated
  discards  02058a0ee72f0d2a226f976957f28d7e2dce614d (commit)
  discards  7e50d6003e2835eee1d889befe0ad712bc551104 (commit)
  discards  19d4de336def51b6968f968088634c15a0b933dc (commit)
  discards  56cbbae2724d8babc8cb6ee92b1d58980495725d (commit)
  discards  4d2e4485ee9c5a9c8419ead4fd52821d6a1508bf (commit)
  discards  9dfd2d84e5539e7e7468c410ff50328e875b1eae (commit)
  discards  5a0f66a434bc519383896633004f008292183e4b (commit)
  discards  6a2019bd92acd18fd13eab03fcfd93e2a0c4f3d6 (commit)
  discards  178fd5d3550b27260b13ff60de8cd8b025103cd9 (commit)
  discards  baacf9e139aae66dbb737bb6e4e305e3c2a73f64 (commit)
  discards  990af295af29f0cb115a8ac0bc7fd19ae13dbd12 (commit)
  discards  0483ee86e2e5cc3581bdb952ce85235386c8f4f2 (commit)
       via  69ba8a611a6e4bf5e92cb84d56f147732e9b2d89 (commit)
       via  c2897ac13f6b289e74c001a5cad6b068bf2ca1df (commit)
       via  84c2d0f286cf74c8dd42133241df5ca51dfbb0b8 (commit)
       via  949e50e02bb1af911dca820f21a11232f615e106 (commit)
       via  714a41bf66932bb6b383cd4573d1eff51aaf50dd (commit)
       via  365f8fa4628b371551d6f5b20651ac06239f905d (commit)
       via  d1bf1e11ba72a5e46c0d85b845110bd56d8d6e20 (commit)
       via  a0d281db1cd2f122fb8f0adfd9e4a82e60efbd2f (commit)
       via  53165ede24b106326d3762232435e0a28c10e1bb (commit)
       via  63ebccdfe350d7e75bbb8e5511bcde26a7e300ad (commit)
       via  d12eab9c4e375e1669637dd34674c8b8208cf867 (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (02058a0ee72f0d2a226f976957f28d7e2dce614d)
             N -- N -- N (69ba8a611a6e4bf5e92cb84d56f147732e9b2d89)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------

commit 69ba8a611a6e4bf5e92cb84d56f147732e9b2d89
Author: Harald Welte <laforge at>
Date:   Thu Aug 3 00:47:03 2017 +0200

    Support setting TUN device IPv6 address + prefix
    As we can now have PDP contexts with IPv6 user IP payload,
    it is useful to extend the TUN related code to be able to
    configure the tun device IPv6 address + prefix length
    Change-Id: I899d21e52d02e0b8384af29ddd489ff19c8f2cf6

commit c2897ac13f6b289e74c001a5cad6b068bf2ca1df
Author: Harald Welte <laforge at>
Date:   Wed Aug 9 21:58:12 2017 +0200

    IPv6: in46_addr: OSMO_ASSERT() in case of unsupported calls
    There's a bit of trickery with the ip_pool and it's "lengty=8" IPv6
    prefix handling, let's make sure we don't accidentially call any
    support functions with addresses of wrong length.
    Change-Id: I444c190bdcd18780344e1f0dad4faf3bcf9da5a5

commit 84c2d0f286cf74c8dd42133241df5ca51dfbb0b8
Author: Harald Welte <laforge at>
Date:   Wed Aug 9 20:28:52 2017 +0200

    IPv6: Support PCO for IPv6 DNS addresses
    In IPv6, DNS server information is not passed along as IPCP6 like
    in IPv5 with IPCP.  The reason is that IPCP6 (for PPP) doesn't
    support passing DNS server information.  Rather, the relevant RFCs
    indicate DHCPv6 should be used even over point-to-point links.
    3GPP decided to avoid DHCPv6 dependency for stateless autoconfiguration
    (the only mandatory IPv6 configuration mechanism) and added some new
    non-PPP-style PCO information elements ("containers") which can among
    other things inform a MS about IPV6 DNS servers.
    That same mechanism can also be used to inform the MS about IPv4 DNS
    servers, so for IPv4 there are now two competing mechanisms: IPCP and
    the new "native" PCO container.  With this patch, we support both
    for IPv4.
    Change-Id: I21499afd61def8c925f7838bde76f34d28214b56

commit 949e50e02bb1af911dca820f21a11232f615e106
Author: Harald Welte <laforge at>
Date:   Tue Aug 8 23:27:22 2017 +0200

    IPv6: Implement IPv6 prefix assignment via ICMPv6 router advertisement
    The 3GPP specs are quite strange when it comes to how an IPv6 address
    or rather prefix is assigned to an IPv6 PDP context.  The designated
    method for allocating the IPv6 address via the PDP EUA (End User
    Address) Information Element in the GTP signalling plane is *not*
    used to allocate the address/prefix.  Instead, the EUA is used to
    allocate an "interface identifier" to the MS, which it the uses
    to derive its link-local source address to send a router solicitation.
    The GGSN subsequently answers witha router advertisement, advertising
    a single/64 prefix, whihcthe MS then uses to generate it's real IPv6
    source address for subsequent communication.
    Change-Id: Icddf7d30e01d76a4784bcef5787b36f52f703a9f

commit 714a41bf66932bb6b383cd4573d1eff51aaf50dd
Author: Harald Welte <laforge at>
Date:   Tue Aug 8 18:10:43 2017 +0200

    ippool: Extend pool to work with /64 prefixes
    In IPv6 GPRS, we actually don't want to allocate an individual v6
    address (like in IPv4), but we want to allocate a prefix.  The
    standard prefix lengh is 8 bytes, i.e. a /64 prefix.  This patch
    extends the pool to be able to work with such v6 prefixes.
    Change-Id: I0cf700b6baf195a2e5fbea000531f801acaaa443

commit 365f8fa4628b371551d6f5b20651ac06239f905d
Author: Harald Welte <laforge at>
Date:   Tue Aug 8 18:09:36 2017 +0200

    in46_addr: Add new function in46a_prefix_equal()
    This function is used to compare an IPv6 address against another,
    using the smaller of the two prefix lengths.
    Change-Id: Ic993d8abdc90897cb55276f01ae3b8a5eadf5a0d

commit d1bf1e11ba72a5e46c0d85b845110bd56d8d6e20
Author: Harald Welte <laforge at>
Date:   Thu Aug 3 00:00:23 2017 +0200

    ggsn: Send proper errors in create_context_ind()
    When we receive PDP context requests for unknown PDP types or if
    we run out of dynamic addresses, we need to inform the SGSN that
    PDP context creation failed.
    Change-Id: Ibf199c1726130d27c8f80230b30ee51101c93b06

commit a0d281db1cd2f122fb8f0adfd9e4a82e60efbd2f
Author: Harald Welte <laforge at>
Date:   Wed Aug 2 21:48:16 2017 +0200

    IPv6 support for user IP
    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

commit 53165ede24b106326d3762232435e0a28c10e1bb
Author: Harald Welte <laforge at>
Date:   Wed Aug 2 22:58:54 2017 +0200

    ippool_new(): const-ify input arguments
    Change-Id: If3e53584e8c9c1f06bba4c183c9fd65fae913904

commit 63ebccdfe350d7e75bbb8e5511bcde26a7e300ad
Author: Harald Welte <laforge at>
Date:   Wed Aug 2 21:10:09 2017 +0200

    lib/tun.h: Remove non-endian-safe redefinition of IP header
    We can simply use 'struct iphdr' from netinet/ip.h to achieve
    the same goal (and be portable).
    Change-Id: Ieece22e127dc14a7ffdc3b05656628989ad00b32

commit d12eab9c4e375e1669637dd34674c8b8208cf867
Author: Harald Welte <laforge at>
Date:   Wed Aug 2 19:49:47 2017 +0200

    ippool: Add IPv6 support to IP pool implementation
    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


Summary of changes:
 ggsn/ggsn.c     | 17 ++++++-----------
 ggsn/icmpv6.c   |  6 +++---
 ggsn/icmpv6.h   |  6 ++++++
 lib/in46_addr.c |  6 ++++++
 4 files changed, 21 insertions(+), 14 deletions(-)
 create mode 100644 ggsn/icmpv6.h

The OpenGGSN project

More information about the osmocom-commitlog mailing list