aboutsummaryrefslogtreecommitdiffstats
path: root/sgsnemu
AgeCommit message (Collapse)AuthorFilesLines
2017-10-10sgsnemu: Add IPv6 support via tun device and "-t v6 --createif"Harald Welte1-12/+61
The idea is to only implement the GTP-C plane and configure the right link-local source address on the tun-device and let the regular (Linux) kernel take care of sending router solicitations and accepting/processing the related router advertisement. This avoids a lot of complexity in sgsnemu. For this to work, you must have /proc/sys/net/ipv6/conf/$tun/accept_ra set to either 1 (works only if no IPv6 forwarding/routing configured on your sgsnemu-running system) or 2 (works even if forwarding/routing is configured). Change-Id: I57e4c53ee648e1efecfba3eea592d1129849557c Closes: OS#2518
2017-10-01sgsnemu: Allow specification of PDP (EUA) Type IPv4 or IPv6Harald Welte4-2/+44
This just adds the capability to sgsnemu to request a certain PDP EUA type. It doesn't mean it actually handles anything beyond the existing IPv4 yet. Change-Id: I157f9157a7ff2ea56c37a4a902d4706de4c7d35d
2017-09-24sgsnemu: Add --no-tx-gpdu-seq option to suppress transmission of G-PDU ↵Harald Welte4-1/+39
sequence numbers Related: OS#2519 Change-Id: Idc650d896f0f72329090b56a37d9c16359294860
2017-09-24sgsnemu: Fix gengetopt package nameHarald Welte3-8/+5
gengetopt by default picks the program name from PACKAGE (autotools), which is osmo-ggsn and is obviously wrong in case of sgsnemu. After this patch, "sgsnemu --help" no longer shows "osmo-ggsn" but "sgsnemu" at the top of the help text. Change-Id: Ifabc2435a503ef71aa5a002ca46833f329068b37
2017-09-24sgsnemu: Re-generate cmdline.[ch] using gengetoptHarald Welte4-1400/+1419
This will replace the manual additions to cmdline.[ch] with auto-generated code from gengetopt. We need to fix-up the RAT Type in sgsnemu.c as the manually-added code diverged from what gengetopt generates. Change-Id: Ia687e13d5cec1655a57078a767d2123aa022842c
2017-09-24sgsnemu: Fix up gengetopt file for --norecoveryHarald Welte1-0/+1
In commit 3a4c67b4bf0067c4949a60bc750d01e0576c5e08 we introduced the --norecovery command line option, but this was apparently done by manually editing the C source code rather than adding it to the .ggo and letting gengetopt do its magic. Let's fix this up. Change-Id: I1698280a699b17cea65651c3736ef149aba7e432
2017-09-24sgsnemu: Fix up gengetopt file for RAIHarald Welte1-0/+1
In commit 41af5691ef08fb70e2c65aba03c8b9e6c20983a6 we introduced the --rai command line options, but this was apparently done by manually editing the C source code rather than adding it to the .ggo and letting gengetopt do its magic. Let's fix this up. Change-Id: Iaab404c3bcfc0c3943764f6616763f4f407d5644
2017-09-24sgsnemu: Fix up gengetopt file for rattype, userloc, mstz, imeisvHarald Welte1-0/+4
In commit 944dce3e66f3bc5b74f24dfbbee2370a231a39a9 we introduced various command line options, but this was apparently done by manually editing the C source code rather than adding it to the .ggo and letting gengetopt do its magic. Let's fix this up. Change-Id: Ib8e7ef1cad5fc4423a1a4af628950aa93a4e073a
2017-09-24sgsnemu: Fix up gengetopt file for QoS Extensions of 24.008Harald Welte1-1/+5
In commit 11a398fbc3ad9b655d8ba947bea7012f7ce81604 we introduced the --qose{1,2,3,4} command line options, but this was apparently done by manually editing the C source code rather than adding it to the .ggo and letting gengetopt do its magic. Let's fix this up. Change-Id: I4cd827a96ac17f6eb9f824342f195727426d0e20
2017-09-24sgsnemu/cmdline.ggo: Remove 'unsigned' which is no longer supportedHarald Welte1-3/+3
It seems like modern gengetopt no longer supports 'unsigned int' argument types, and we need to use 'int' instead. tested with 2.22.6 Change-Id: I34ca86cb3cc482400a7c4b3bf77c8668aaef562e
2017-09-06Rename OpenGGSN to OsmoGGSNHarald Welte2-2/+2
Osmocom has maintained this program since about 7 years now, while the original author / copyright holder has completely disappeared. With the introduction of Osmocom-style CTRL and VTY interfaces, the way how the program is used and configured has substantially changed. In order to avoid confusion in terms of configuration file format etc, let's rename it to OsmoGGSN. Change-Id: I2da30f7d4828e185bfac1a4e2d8414b01cbe4f9d
2017-09-06Introduce a VTY, factually turning OpenGGSN into an Osmocom programHarald Welte1-1/+1
Change-Id: I9613ca3436e77ea132c47f0096df7c5050d7e826
2017-09-05Remove __sun__ code that is unmaintainedHarald Welte1-5/+0
We haven nobody maintaining this platform, let's remove it. In fact, only Linux and FreeBSD are part of the jenkins build tests, so even Apple/MacOS is up for disposal. However, as it's more popular, let's keep the code. Change-Id: Id6b8179259bacade52c39f96e688f828eff164ac
2017-08-09IPv6 support for user IPHarald Welte1-1/+1
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-09lib/tun.h: Remove non-endian-safe redefinition of IP headerHarald Welte1-2/+3
We can simply use 'struct iphdr' from netinet/ip.h to achieve the same goal (and be portable). Change-Id: Ieece22e127dc14a7ffdc3b05656628989ad00b32
2017-08-09ippool: Add IPv6 support to IP pool implementationHarald Welte1-22/+27
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
2017-02-27Code formatted to be in line with formatting rules.bjovan1-13/+32
Change-Id: I546dc0a8d814527b9a96943a52f2f6b700285167
2016-05-24Description: Fix some typos in the man pages and in the binaryRuben Undheim1-4/+4
2015-11-13convert literal APN name to protocol encoded version before useAndreas Schultz1-4/+14
The definition of the APN field format in GTPv1 is hidden in a chain of documents. 3GPP TS 29.060 (the GTPv1-C specification) Section 7.7.30: > The Access Point Name contains a logical name (see 3GPP TS 23.060 [4]). > It is coded as in the value part defined in 3GPP TS 24.008 3GPP TS 24.008 Section 10.5.6.1: > The value part is defined in 3GPP TS 23.003. 3GPP TS 23.003 Section 9.1: > The APN consists of one or more labels. Each label is coded as a one > octet length field followed by that number of octets coded as 8 bit > ASCII characters This converts a literal APN (e.g. Label1.Label2.Label3) to a structured field (e.g. \006Label1\006Label2\006Label3) Signed-off-by: Andreas Schultz <aschultz@tpip.net>
2015-11-02sgsnemu: improve an error messageNeels Hofmeyr1-1/+2
2014-12-04logging: Switch to using libosmocore logging for all the codeHolger Hans Peter Freyther2-28/+21
2012-11-06build: Remove subdir-objects as it breaks make distcleanHolger Hans Peter Freyther1-3/+1
We are not using this option in any of our projects and it is breaking make distclean. Remove the option for now. make[2]: Entering directory `/openggsn-0.91/_build/ggsn' Makefile:307: ../lib/.deps/getopt.Po: No such file or directory Makefile:308: ../lib/.deps/getopt1.Po: No such file or directory make[2]: *** No rule to make target `../lib/.deps/getopt1.Po'. Stop.
2011-11-02Convert all code to Linux coding styleHarald Welte3-3292/+3532
After so many years of silence, we don't expect the original author to return to the project. To make things a bit simpler for us, we convert the coding style to what we are used to (Linux style). The conversion was made using the 'Lindent' script which is part of the Linux kernel.
2011-10-07optionally do not send recovery with sgsnemuHarald Welte3-0/+33
According to 3GPP TS 29.060 recovery is optional, add command line option --norecovery to remove this field in sgsnemu Signed-off-by: Yann BONNAMY <yann_bonnamy@yahoo.fr> Signed-off-by: Harald Welte <laforge@gnumonks.org>
2011-10-07Add optional RAI FieldHarald Welte3-0/+104
Routing Area Information is an optional Field described in 3GPP TS 29.060 7.7.3 it can be added with command line option rai, in the dot separated format MCC.MNC.LAC.RAC example : --rai 208.10.65535.255 Signed-off-by: Yann BONNAMY <yann_bonnamy@yahoo.fr> Signed-off-by: Harald Welte <laforge@gnumonks.org>
2011-10-07sgsnemu support for QoS as defined in 3GPP TS 24.008Yann BONNAMY3-17/+160
this patch allows to tweak any bit of the QoS field of the Create PDP context generated by sgsnemu , aligned with 10.5.6.5 of 3GPP TS 24.008 V10.0.0 (2010-09) QoS field can be extended to "lenght 12" with option --qose1, as seen in real life on UMTS networks. extension to lenght 13, 15 and 17 can be done with option --qose2, --qose3, --qose4, never seen IRL but allows to test 3GPP compliance of GGSN. Signed-off-by: Yann BONNAMY <yann_bonnamy@yahoo.fr>
2011-05-10properly build a library for the content of the lib directoryHarald Welte1-6/+3
2010-10-29Add support for GTP IE's from 3GPP R7Yann BONNAMY3-0/+294
This adds support for the followng new GTP Information Elements: RAT_TYPE, USER_LOC, MS_TZ, IMEI_SV Furthermore, it allows to specify those fields as sgsnemu command line arguments.
2010-10-20Move common sgsnemu/ggsn files to directory "lib"Emmanuel Bretelle13-3226/+7
Some files like in sgsnemu and ggsn directory where exactly the same. They are now moved to the same directory for easier maintenance Signed-off-by: Emmanuel Bretelle <chantra@debuntu.org>
2010-10-20Fixe compilation warningEmmanuel Bretelle1-1/+1
Relevant output of make: sgsnemu.c: In function ‘process_options’: sgsnemu.c:443: warning: pointer targets in passing argument 1 of ‘strncpy’ differ in signedness /usr/include/bits/string3.h:120: note: expected ‘char * __restrict__’ but argument is of type ‘unsigned char *’ Signed-off-by: Emmanuel Bretelle <chantra@debuntu.org>
2010-05-24fix 'make distcheck': add lookup.h to Makefile.amHarald Welte1-1/+1
2010-05-04Use newer gengetopt which also frees memoryHarald Welte3-762/+1290
Taken from http://sourceforge.net/tracker/index.php?func=detail&aid=1811521&group_id=68956&atid=522957
2010-05-04Fix various compiler warnings throughout the codeHarald Welte7-20/+20
Mostly signed/unsigned and typecasting issues Taken from http://sourceforge.net/tracker/index.php?func=detail&aid=1811517&group_id=68956&atid=522957
2010-05-04remove autotools-generated filesHarald Welte1-466/+0
All those will be re-generated by "autoreconf -i" anyway, so there's no point in keeping them in the repository. Also, the 'bootstrap' script is no longer working with recent autotools versions anyway.
2005-03-14Fixed APN bugjjako1-3/+3
2005-03-14Added new version of autotoolsjjako2-141/+235
2004-12-300.84 releasejjako2-4/+6
2004-12-300.84jjako2-5/+8
2004-12-30Added lookup.cjjako2-0/+105
2004-12-30QA on ippooljjako4-107/+41
2004-12-30Minor fixjjako2-2/+1
2004-12-30Fixed delete route on freebsd et. al.jjako2-16/+57
2004-09-17qos length bugfix and apple support plus header cleanupjjako7-44/+22
2004-09-10Improved configure script under Solarisjjako2-8/+8
2004-09-09Hash table bugfix and improved loggingjjako2-51/+79
2004-07-20Added selmodejjako4-2/+45
2004-05-27Charging optionjjako4-10/+48
2004-05-27Fix on PPP PCO length and charging characteristics required flag.jjako1-1/+8
2004-04-28Solaris tun interfacejjako4-40/+114
2004-02-05Added IP address alias capability for FreeBSDjjako1-8/+37