Commit Graph

103 Commits

Author SHA1 Message Date
Harald Welte ec19c10829 [gprs] Ensure msgb->l3h points to Layer3 (04.08)
In the old code
	l3h = BSSGP, l4h = LLC, cb[gmmh] = 04.08
Now, this has been changed to
	cb[bssgph] = BSSGP, cb[llch] = LLC, l3h = 04.08

This way, GSM general 04.08 and GPRS 04.08 code can expect a
GSM 04.08 header at msgb->l3h
2010-05-04 07:20:43 +02:00
Harald Welte 2577d41526 [gprs] convert ns_cause_str to value_string 2010-05-04 07:20:43 +02:00
Harald Welte 290671d683 [gprs] BSSGP: convert cause strings to value_string 2010-05-04 07:20:43 +02:00
Harald Welte 6752fa43b6 [gprs] introduce BSSGP concept of BTS contextx
A BTS context represents the mapping betewen (RA-ID, Cell-ID) and
(BVCI, NSEI) as well as the per-BVC local state.
2010-05-04 07:20:43 +02:00
Harald Welte 3fddf3c4ef [gprs] Build the SGSN stand-alone and not as part of bsc_hack
Instead of continuing to add more and more functionality to the
bsc_hack binary, we should have the new SGSN code run as a separate
executable.

After this commit we now build a 'osmo_sgsn' executable, using its
own osmo_sgsn.cfg config file.

However, the SGSN is not yet functional, mainly due to the fact that
the BSSGP and GMM code are written with the assumption that there
is a msgb->trx->bts and the according 'sturct gsm_bts' data model
around - which clearly is no longer the case outside of bsc_hack.
2010-05-04 07:20:43 +02:00
Harald Welte 1203de3993 [gprs] fully integrate VTY configuration into Gb proxy
The Gb-proxy is now fully configured by config file / VTY
2010-05-04 07:20:42 +02:00
Harald Welte 3771d09ec0 GPRS: Introduce a GPRS Gb Proxy
The ida of the Gb proxy is to aggregate Gb links with a number of BSS
and then present all the BSSGP-VC's together inside one NS-VC to the
actual SGSN.

The code is not yet expected to be complete.
2010-05-04 07:20:42 +02:00
Harald Welte 24a655f140 gprs: remove msgb->nsvc pointer and replace it with NSEI and BVCI
According to TS 08.16, the BSSGP layer needs to specify NSEI and BVCI when
executing the NS UNITDATA REQUEST primitive of the underlying NS layer.

Rather than passing around a pointer to the 'struct gprs_nsvc', we now
have NSEI and BVCI as members of 'struct obsc_msgb_cb' and set them
when BSSGP hands a message down to NS.

NS then does a lookup of the 'gprs_nsvc' based on the NSEI parameter.
2010-05-04 07:20:42 +02:00
Harald Welte 645609ddc8 gprs: Use new msgb->cb[] for storing a pointer to the NS-VC through which it was received 2010-05-04 07:20:42 +02:00
Harald Welte f030b210e8 GPRS: Modularize the NS implementation
* move UDP listener code for NSIP from input/ipaccess.c and into gprs_ns.c
* add PDU type, IE and CAUSE values for later IP based 3GPP TS 48.016
* support multiple NS-VCs and their lookup based on NSVC and sockaddr_in
* maintain the remote_state (blocked/alive) for each NSVC
* introduce the concept of GPRS_NS instances, move all global vars to instance
* remove hardcoded calls to gprs_bssgp_rcvmsg() and replace it by callback

WARNING: This is not finished code.  While it will compile, it will not work
yet, as BSSGP needs to be converted to properly indicate the NSVC to which it
needs to send data.
2010-05-04 07:20:42 +02:00
Harald Welte 510c3920c8 gprs: Update gprs-sgsn branch to use new msgb->cb layout
The explicit 'tlli, gmmh' members of struct msgb are gone from
current libosmocore and have been replaced by the more generic
'control buffer' mechanism.
2010-05-04 07:20:41 +02:00
Harald Welte c547848ead GPRS: remove hard-coded IP address for NSIP responses from SGSN->BTS 2010-05-04 07:20:41 +02:00
Harald Welte 9ba500559a Create new 'gprs-sgsn' branch on top of 'gprs-conf'
This branch contains the partial SGSN/GGSN implementation that
was originally developed as part of the gprs branch.
2010-05-04 07:20:41 +02:00
Harald Welte 20488d4881 Merge commit '35a939463eee58492c88cbe7531288237cdcf454' 2010-05-01 14:27:23 +02:00
Harald Welte 3c73dda6ca Merge commit 'debf95507461965aa82be2fa2bf34119343cfb0e' 2010-05-01 12:07:56 +02:00
Harald Welte 871774ee89 Merge commit '074c9f904cb5e4f6ab014d76e4abc079c16fc5d7' 2010-04-30 14:29:56 +02:00
Holger Hans Peter Freyther c646345647 Merge branch 'on-waves/sccp' 2010-04-25 23:07:24 +08:00
Holger Hans Peter Freyther f3e25ed7ae Merge branch 'on-waves/mgcp' 2010-04-25 23:03:30 +08:00
Holger Hans Peter Freyther 17c3712dae Merge branch 'on-waves/mgcp' 2010-04-17 06:46:06 +02:00
Holger Hans Peter Freyther 428f2301eb Merge branch 'master' into on-waves/mgcp 2010-04-07 23:03:27 +02:00
Holger Hans Peter Freyther e1d67ecc43 Merge branch 'on-waves/sccp' 2010-04-07 22:54:12 +02:00
Holger Hans Peter Freyther 8975522b84 Merge branch 'on-waves/mgcp' 2010-04-07 22:54:07 +02:00
Holger Hans Peter Freyther ca2c31c765 Merge remote branch 'origin/master' into on-waves/mgcp 2010-03-30 15:35:26 +02:00
Harald Welte 9a3b6b8a2f Merge commit '3ae2758fba1dc9b364238c6e1e7d591b12c3d878' 2010-03-26 21:35:28 +08:00
Harald Welte 21d3e7aaa2 Merge commit '52b4abdcb351830f5493a50c4181ef3947f3feab' 2010-03-26 05:15:27 +01:00
Holger Hans Peter Freyther a985bdbc2e Merge branch 'holger/bsc-msc-separation' 2010-03-25 09:08:53 +01:00
Harald Welte c578069493 Merge commit '52b4abdcb351830f5493a50c4181ef3947f3feab' 2010-03-25 12:15:24 +08:00
Harald Welte fdcf65b91c Merge commit '4cd3d8a2c7982ba11d05d2500b1bfca44f440d1e' 2010-03-23 00:37:52 +08:00
Harald Welte e69210857f Add 'libosmocore/' from commit '045cc22baeb7f12dcb0022b79a1984d86e922870'
git-subtree-dir: libosmocore
git-subtree-mainline: e164d29e7f6c86d1f6f047bbf58159e46a11425f
git-subtree-split: 045cc22bae
2010-03-22 22:25:13 +08:00
Holger Hans Peter Freyther edc37630da Merge remote branch 'origin/on-waves/sccp' 2010-02-26 20:21:21 +01:00
Holger Hans Peter Freyther a358b48311 Merge remote branch 'origin/on-waves/mgcp' 2010-02-26 20:20:17 +01:00
Holger Hans Peter Freyther 8716bb6ebd Merge remote branch 'origin/master' into on-waves/sccp 2010-02-26 20:18:24 +01:00
Holger Hans Peter Freyther 3af86269a9 Merge remote branch 'origin/master' into on-waves/mgcp
Conflicts:
	openbsc/include/openbsc/Makefile.am
	openbsc/src/Makefile.am
2010-02-26 20:16:45 +01:00
Harald Welte 2b6322cde1 Merge remote branch 'origin/master' 2010-02-24 22:52:58 +01:00
Harald Welte f704c3e633 intial checkin of the libosmocore project 2010-02-20 20:34:29 +01:00
Holger Hans Peter Freyther ffecf66fc1 Merge branch 'on-waves/sccp' 2010-02-20 00:38:20 +01:00
Holger Hans Peter Freyther 771d47f8ad Merge branch 'on-waves/sccp' 2010-02-14 19:27:52 +01:00
Holger Hans Peter Freyther 5a678ed5b5 Merge branch 'on-waves/sccp' 2010-02-12 22:52:12 +01:00
Holger Hans Peter Freyther c2fd90985c Merge branch 'master' into on-waves/sccp 2010-02-03 18:15:05 +01:00
Holger Hans Peter Freyther 56c5d2b39c Merge branch 'on-waves/mgcp' 2010-02-03 18:11:22 +01:00
Harald Welte 8b6140c4d3 Merge remote branch 'goeller/master' 2010-01-12 10:46:03 +01:00
Holger Hans Peter Freyther 99e7208f6d Merge branch 'on-waves/mgcp' 2010-01-11 17:10:19 +01:00
Harald Welte 3c4794d067 Merge remote branch 'origin/master' 2009-12-24 09:38:38 +01:00
Harald Welte 4e9ad43e58 Merge remote branch 'origin/master' 2009-12-12 14:11:09 +01:00
Holger Hans Peter Freyther d299ed6d0e Merge branch 'on-waves/mgcp' 2009-11-20 14:12:12 +01:00
Holger Hans Peter Freyther ba8c295f00 Merge branch 'on-waves/sccp' 2009-11-20 13:14:54 +01:00
Harald Welte 50f37b1237 Merge remote branch 'origin/master' 2009-11-18 09:23:11 +01:00
Harald Welte 871cf89a8e Merge remote branch 'origin/master' 2009-10-30 09:18:31 +01:00
Holger Hans Peter Freyther e097d2087b Merge branch 'holger/merge-on-waves-msc' 2009-10-30 08:20:16 +01:00
Holger Hans Peter Freyther 4194ae2684 Merge branch 'holger/merge-on-waves-msc' 2009-10-27 09:41:24 +01:00