Osmocom Serving GPRS Support Node for 2G(GPRS) and 3G(UMTS) https://osmocom.org/projects/osmosgsn
Go to file
Pau Espin 5ce54ba1e6 Fix crash rx DeactPdpReq while waiting for DeactPdpAck after gtp side is freed
Scenario:
1- For an unknwon reason, sgsn sends DeletePdpCtxReq on GTP towards GGSN.
2- GGSN answers with Error Indication to that pdp ctx which calls
   gtp_freepdp()
3- gtp_freepdp() calls libgtp callback cb_delete_context() before freeing the
   pointer, in osmo-sgsn callback points to cb_delete_context(), which
   removes pctx->ggsn and tries to drop the pdp on the NS side by sending a
   DeactPdpReq.
4- While waiting for DeactPdpAck, the MS/PCU sends a DeactPdpReq, and
   code was unconditionalyl trying to release the gtp side without checking
   if it was alreay released, using pctx->ggsn==NULL and crashing.

This is basically the same logic already in place in regular path
gsm48_rx_gsm_deact_pdp_ack.

Related: OS#4817
Change-Id: I02587a3dc812823d893fc00b904142b75fd190b9
2020-10-19 15:06:55 +00:00
contrib contrib/jenkins: Enable parallel make in make distcheck 2020-10-12 19:34:04 +02:00
debian Support setting rt-prio and cpu-affinity mask through VTY 2020-08-18 13:50:00 +02:00
doc gbproxy-usermanual: Explain BSSGP/BVC handling 2020-09-25 09:54:26 +02:00
include gtphub: rename sgsn's oww osmo_sockaddr into sgsn_sockaddr 2020-07-18 21:43:49 +00:00
m4 move openbsc/* to repos root 2017-08-27 17:40:52 +02:00
src Fix crash rx DeactPdpReq while waiting for DeactPdpAck after gtp side is freed 2020-10-19 15:06:55 +00:00
tests gtphub_test: fix compilation error on gcc 10.2.0 2020-10-02 20:44:34 +00:00
.gitignore contrib: integrate RPM spec 2020-05-19 16:49:33 +02:00
.gitreview .gitreview: update repo url to new location 2017-08-08 17:28:24 +02:00
.mailmap add .mailmap file for mapping git author name/mail in shortlog 2016-08-08 17:40:28 +00:00
AUTHORS move openbsc/* to repos root 2017-08-27 17:40:52 +02:00
COPYING move openbsc/* to repos root 2017-08-27 17:40:52 +02:00
Makefile.am Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in 2020-05-22 13:45:48 +02:00
README rewrite README 2017-09-06 16:47:47 +02:00
README.vty-tests Remove obsolete ./configure option 2017-12-28 13:00:51 +01:00
TODO-RELEASE Support setting rt-prio and cpu-affinity mask through VTY 2020-08-18 13:50:00 +02:00
configure.ac Support setting rt-prio and cpu-affinity mask through VTY 2020-08-18 13:50:00 +02:00
git-version-gen git-version-gen: Don't check for .git directory 2018-07-25 07:03:14 +00:00
osmoappdesc.py osmoappdesc.py, tests: switch to python 3 2019-12-11 09:41:27 +01:00

README

About OsmoSGSN
==============

OsmoSGSN originated from the OpenBSC project, as a separate program within
openbsc.git. In 2017, OpenBSC was split in separate repositories, and hence
OsmoSGSN was given its own separate git repository.

OsmoSGSN exposes
- GSUP towards OsmoHLR (or a MAP proxy);
- GTP towards a GGSN (e.g. OsmoGGSN);
- Gb towards a BSS (e.g. OsmoPCU);
- IuPS towards an RNC or HNB-GW (e.g. OsmoHNBGW) for 3G data;
- The Osmocom typical telnet VTY and CTRL interfaces.

Find OsmoSGSN issue tracker and wiki online at
https://osmocom.org/projects/osmosgsn
https://osmocom.org/projects/osmosgsn/wiki