aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gsm_subscriber_base.c
AgeCommit message (Collapse)AuthorFilesLines
2011-03-03re-structure the OpenBSC directory layoutHarald Welte1-149/+0
The new structure divides the code into a number of libraries for the BSC core functionality, MSC core functionality, Abis transport, TRAU and other bits. This doesn't introduce any functional code change but simply moves around files and alters Makefile.am accordingly. Next step would be to disentangle a lot of the inter-library dependencies and make the individual bits of code more independent.
2011-01-01License change: We are now AGPLv3+ instead of GPLv2+Harald Welte1-6/+5
The reason for this is quite simple: We want to make sure anyone running a customized version of OpenBSC to operate a network will have to release all custom modifiations to the source code.
2010-12-24subscr: Introduce subscr_purge_inactive to free unused subscribersHolger Hans Peter Freyther1-0/+15
Introduce a method that will remove all subscribers that have a zero use count. This is useful if someone wants to purge subscribers from memory or wants to disable the everything in RAM feature.
2010-12-24subscr: Make it possible to keep subscribers in RAM.Holger Hans Peter Freyther1-1/+1
This is implemented by not freeing the subscriber when the reference count becomes smaller than zero. We hope that this will save many database accesses during the congres.
2010-12-01gsm_subscriber: Move the get_channel/put_channel logic in MSC partSylvain Munaut1-128/+0
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-11-15subscr: Add method to find an active subscriberHolger Hans Peter Freyther1-0/+24
This is used by the paging code of the osmo_bsc. When we get a paging response there should be an active subscriber with the TMSI or IMSI and we can stop paging. There is no need to allocate a new subscriber.
2010-11-15subscr: Add the subscr_get_or_create from the on-waves/bsc-master branchHolger Hans Peter Freyther1-0/+18
Create a subscriber based on a known IMSI, search the list of active subscribers if there is already someone like this.
2010-10-06misc: Once again go from "On Waves" to "On-Waves"..Holger Hans Peter Freyther1-1/+1
Try to get the company name of our sponsor right...
2010-06-30misc: Move handover_logic.c into the libbsc.aHolger Hans Peter Freyther1-0/+8
We are implementing the intra BSC handover so we should have the code in the BSC as well.
2010-06-30gsm_subscriber_base: Take a ref on the subscriber to avoid use after freeHolger Hans Peter Freyther1-2/+4
On expired paging we might access a GSM Subscriber that has already been deleted. To avoid this we will add a subscr_get/subscr_put for the subscriber to the allocation and release path of the request. Reported-by: Richard Zahoransky
2010-06-28bsc_msc: Remove use_count from the subscriber connectionHolger Hans Peter Freyther1-2/+0
A channel will be released in case of * Errors via the clear_request callback... * no more transactions and operations are going on. This means that if we do something without a transaction the channel might be closed down right away. The bug fix will be to create a transaction/operation.
2010-06-16bsc_api: Operate on the subscriber connection for subscriber managementHolger Hans Peter Freyther1-4/+3
2010-06-16gsm_subscriber_base: Pass the subscriber as param to avoid crash.Holger Hans Peter Freyther1-1/+1
The function we call will take the item from the list and do the right thing.
2010-03-25lchan: Create a structure for MSC data of the lchanHolger Hans Peter Freyther1-3/+4
Prepare to split the BSC and the MSC part by putting the MSC data for a connection into a "gsm_subscriber_connection" struct and renaming the macros.
2010-02-20split 'libosmocore' from openbsc codebaseHarald Welte1-2/+1
This library is intended to collect all generic/common funcitionality of all Osmocom.org projects, including OpenBSC but also OsmocomBB The library currently includes the following modules: bitvec, comp128, gsm_utils, msgb, select, signal, statistics, talloc, timer, tlv_parse, linuxlist msgb allocation error debugging had to be temporarily disabled as it depends on 'debug.c' functionality which at the moment remains in OpenBSC
2009-12-24[debug] Introduce DREF debug category for reference countingHarald Welte1-2/+2
2009-10-29[misc] Use talloc_zero instead of talloc and later memsetHolger Hans Peter Freyther1-2/+1
2009-09-28[subscr] subscr_paging_cb is called for expire and successHolger Hans Peter Freyther1-1/+3
Gracefully handle a case where success and expire could fire... I'm only hitting this when doing something evil to simulate network code but it seems appropriate to handle this gracefully.
2009-09-28[subscr] When paging fails to start, send an expired eventHolger Hans Peter Freyther1-2/+10
2009-09-28[tmsi] Make the tmsi a 4 octet numberHolger Hans Peter Freyther1-0/+1
tmsi is four octets long, there is no need to make it a string and then jump through hoops to convert it to a number. Keep the database using it as a string to benefit from the NULL handling of the db. Introduce the reserved tmsi which has all bits set to 1 according to GSM 03.03 ยง2.4 and start checking for it and make sure the db code will never allocate such a tmsi.
2009-08-20[subscr] Change the signature... the gsm_network is in the subscrHolger Hans Peter Freyther1-7/+2
Remove the extra parameter from the method, the network can be taken from the subscriber.
2009-08-17[subscr] Split gsm_subscriber.c in BSC and MSC partHolger Hans Peter Freyther1-0/+209
For the BSC part we still assign a gsm_subscriber to lchan but it might only contain the TMSI of this subscriber. For the MSC part we will need the HLR/VLR feature of the gsm_subscriber, specially the lookup's by number... So if libbsc.a/libmsc.a are compiled in one app and used the subscribers will be shared, and if only libbsc.a gets used we will have more empty gsm_subscriber.c..