Skip to content
Success

Changes

Summary

  1. ggsn: use libosmocore tundev API to create apn tun device (details)
Commit 38b607ece3ad248c7c864a50255f2a06ca383e19 by Pau Espin Pedrol
ggsn: use libosmocore tundev API to create apn tun device

This way we can start dropping old osmo-ggsn specific API, avoiding
duplication of code.
Moreover, the osmo-ggsn code is using older ioctl APIs, which are
discouraged nowadays in favour of netlink, which osmo_tundev/osmo_netdev
from libosmocore is used.
Even better, we win for free non-blocking write behavior in the tundev
when switching to the new API, since it already has its own internal
wqueue.

While doing this, BSD code is dropped since anyway it's not been
maintained for a long time.
If needed, the BSD support can be added to libosmocore
osmo_tundev/osmo_netdev API.

This is a first step (already working). Follow-up commits will replace
the APIs to set up routes and addresses, and later on osmo-ggsn will win
support to set MTU on the interface.

Furthermore, this will allow easily adding netns support to osmo-ggsn
later on if ever needed.

Depends: libosmocore.git Change-Id Ia8a7e7ec6d96c7aebc80528236a0e0d035e7f38d
Change-Id: I4d99ba147ac0f3b414d2efef0068b6b8d6cf0014
The file was modifiedggsn/ggsn.h
The file was modifiedggsn/ggsn.c
The file was modifiedTODO-RELEASE
The file was modifiedlib/tun.h
The file was modifiedlib/tun.c
The file was modifiedsgsnemu/sgsnemu.c