aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gprs_bssgp.h
AgeCommit message (Collapse)AuthorFilesLines
2012-06-16split libgb into a separate library for outside useHarald Welte1-250/+0
This also removes the dependency to osmo_sock() inside libcommon and replaces it with osmo_sock_* from libosmocore
2011-11-25BSSGP: Add functions required for true BSS-side BSSGP implementationHarald Welte1-1/+15
The BSS-side of BSSGP requires quite a number of additional functions for sending unidirectional messages that a SGSN never sends. This is a first step into completing the BSSGP implementation and making it ready to be used from osmo-bts and other BTS-side GPRS implementations.
2011-11-25BSSGP: add more doxygen commentsHarald Welte1-25/+29
2011-03-23src: use new library libosmogsm and new path to headers in libosmocorePablo Neira Ayuso1-1/+1
libosmogsm is a new library that is distributed in the libosmocore. Now, openbsc depends on it. This patch gets openbsc with this change. This patch also rewrites all include path to the new osmocom/[gsm|core] Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
2010-06-10[GPRS] BSSGP/SGSN: Implement Gb-Interface PagingHarald Welte1-0/+27
We now have a function that generates BSSGP PS and CS paging request. It is called from the libgtp code when we receive a GTP packet from the GGSN for a MM context that is in SUSPEND state. We then issue a PS paging request to the Cell with the BVCI where the last RA update was being performed. TODO: We still don't enqueue the GTP packet (and transmit it on paging complete), and we don't rate-limit the paging requests, i.e. every GTP packet will trigger another paging request. We probably also need some kind of logic that marks the phone as UNREGISTERED if it doesn't respond to paging requests for some time.
2010-05-31[GPRS] Include IMSI and DRX params in BSSGP DL-UDHarald Welte1-1/+2
When we send a downlink unit-data request via BSSGP, there is a lot of information that needs to be copied from the mm context, such as the IMSI, DRX parametes, MS radio access parameters, ... This is a quite strange layering violation, since we now need to pass a pointer to the MM ctx from GMM through LLC into BSSGP :(
2010-05-18[GPRS] BSSGP: Use correct values for SIGNALLING and PTM BVCIHarald Welte1-0/+4
2010-05-18[GPRS] SGSN: Activate BSSGP VTY functionsHarald Welte1-0/+3
2010-05-17[GPRS] BSSGP: expose more internal structures / APIHarald Welte1-0/+29
2010-05-13[GPRS] BSSGP: add function declarationHarald Welte1-1/+6
2010-05-11[gprs] gb_proxy: Send proper BSSGP STATUS msg in error caseHarald Welte1-0/+12
In order to reuse the existing bssgp_tx_* functions without pulling in the dependencies of gprs_bssgp.c, we have to move those functions to gprs_bssgp_util.c Furthermore, we can remove gbprox_nsi and replace it with bssgp_nsi, and we can do proper processing of BVC-RESET messages coming from the SGSN on the signalling BVC. In that case we need to send RESET messages to all the BSS.
2010-05-04[gprs] pass BSSGP UL-UNITDATA Cell ID up into GMM layerHarald Welte1-0/+1
BSSGP stores a pointer to the Cell Identifier IE in msgb->cb, which is later used by the GMM layer to identify the cell that has sent a given message. This now also means that the gsm_04_08_gprs.c code is free of any legacy references to msg->trx or struct gsm_bts.
2010-05-04[gprs] Use stdint.h types (uintXX_t instead of u_intXX_t)Harald Welte1-7/+9
libosmocore already uses them, it's time (at least for new code) in openbsc to do the same.
2010-05-04[gprs] SGSN: Expect all Identifiers to be stored at highest levelHarald Welte1-1/+1
We now expect the highest level (actual SGSN GMM code) to know all identifiers for every element in the protocol stack, i.e. TLLI, SAPI, BVCI and NSEI. The layer-inetrnal state is looked up based on those identifiers. The reason for this is to ensure only the highest level state needs to be persistent, while everything else can be regenerated dynamically (e.g. in a SGSN restart)
2010-05-04GPRS: Introduce a GPRS Gb ProxyHarald Welte1-0/+10
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-04Create new 'gprs-sgsn' branch on top of 'gprs-conf'Harald Welte1-0/+138
This branch contains the partial SGSN/GGSN implementation that was originally developed as part of the gprs branch.