aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src
AgeCommit message (Collapse)AuthorFilesLines
2011-08-11E1 Input: Add VTY command to specify the name of a LineHarald Welte1-1/+28
So far, there was no way to set the line->name field at all.
2011-08-10libbsc: Don't free secondary lchan if it is NULL.Daniel Willmann1-1/+5
2011-08-10trau: fix wrong message size for GSM_TCHF_FRAME passed to MNCCPablo Neira Ayuso1-0/+1
During the GSM deployment in the CCC Camp, Daniel Willmann noticed that the LCR and the MNCC were closing the local connection over unix sockets communication quite so often. After some debugging, Peter Stuge noticed that openBSC was closing the connection since write was returning 0. Then, I suggested that it could be a malformed message with zero length. By skipping empty messages, Peter confirmed that the connection between the LCR and the MNCC was not closing anymore. However, there was no voice in the calls that went over MNCC. After some more debugging I found that we were not building GSM_TCHF_FRAME over MNCC appropriately in the TRAU multiplexer code, since we forgot to msgb_put() the message.
2011-08-10NOKIA: Resend SABM on unknown TEI from LAPDPablo Neira Ayuso1-1/+8
2011-08-10LAPD: Propagate lapd_receive() errors to the E1 driverPablo Neira Ayuso4-8/+43
Scenario: BTS are configured and working, then the BSC stops working for some reason (crash or administrative stop). If the BSC comes back to life, LAPD among other things does not know about the previous existing TEIs. Instead of ignoring these frames, we notify the driver that we are seeing frames with unknown TEIs, so it can try to recover, e.g. by resending the SABM message.
2011-08-10Fix MNCC for the NOKIA BTS typeHarald Welte1-0/+2
(thanks to Gus Bourg)
2011-08-10NOKIA: use 'struct value_string' whenever possibleHarald Welte1-472/+243
2011-08-10NOKIA: use 'value_string' for severity and bts_typeHarald Welte1-48/+31
2011-08-10NOKIA: Move more static variables into 'struct gsm_bts'Harald Welte1-14/+9
2011-08-10NOKIA: move 'conf' and 'bts_type' into 'struct gsm_bts'Harald Welte1-12/+10
This is one step in the direction of supporting multiple Nokia BTS
2011-08-10NOKIA: Some more whitespace changesHarald Welte1-20/+11
2011-08-10Nokia: Coding styleHarald Welte1-1633/+1666
Running the entire bts_nokia_site.c through the 'Lindent' script to match indent/coding style with remainder of project. There are still lots of other cleanups pending, but this one is a purely cosmetic one.
2011-08-10Initial version of Support for Nokia *Site BTSDieter Spaar8-1/+2036
This includes the MetroSite, but also other Nokia BTS models.
2011-08-0904.08 / MNCC: elevate error messages to LOGL_ERRORHarald Welte1-5/+5
this way you can actually see them...
2011-08-09LAPD: Use proper log levels and prefix all messages with LAPDHarald Welte1-24/+27
2011-08-09LAPD: Remove all calls to 'assert' from the codeHarald Welte1-4/+11
For a system-level daemon, no protocol parser error should ever call assert, which would take down the entire process.
2011-08-09DAHDI: Fix case where we have multiple E1 ports/cards (spans)Harald Welte1-1/+7
DAHDI creates one device node for every E1 timeslot, starting from '1', and keeps incrementing that number even for additional ports/cards. Thus, we have to use the e1inp_line number multiplied by 31 as a base.
2011-08-05GPRS: Fix the parsing/interpretation of the PDP CTX status IEHarald Welte1-8/+16
The byte ordering is a bit odd: The least significant byte is ahead of the most significant byte, different from everything else in GSM that seems to be big-endian. Thanks to Seungju Kim <admin@manateeshome.com> for repoerting the bug.
2011-07-27TRAU: Properly initialize idle framesDieter Spaar1-3/+29
This is particularly important in case of the Nokia BTS, as they seem to drop the RF/signalling channel if they don't get proper TRAU frames.
2011-07-27BSC VTY: Accept MNC of 0-999, as 0 is a valid MNCDieter Spaar1-1/+1
2011-07-27RSL: Fix erroneous GSM48_IE_CHANDESC_2 in rsl_chan_activate_lchan()Dieter Spaar1-1/+1
This fixes a bug introduced more than one year ago in commit e38bd6caa34005816a9336f021fd17d328d5c901: The RSL_IE_CHAN_IDENT is a TLV, but the GSM48_IE_CHANDESC_2 contained in it, is a mere TV type IE with fixed length. The problem specifically has caused problems on Nokia MetroSite BTS, which apparently read the TSC out of this Layer3 IE.
2011-07-27LLC: Fix format stringDieter Spaar1-1/+1
2011-07-27GPRS: Fix buffer overflow in case of very long MS RA CAP IEHarald Welte1-3/+9
The MS Radio Access Capability IE can be _very_ long in some recent high-end mobile phones, way beyond the old 14-byte limit. We increase our array to 52 bytes, and make sure not to overflow that buffer.
2011-07-25smsqueue: There was a race/bug with a booting phone, paging and LUHolger Hans Peter Freyther1-10/+44
It was possible to set the LAC=0 on a subscriber that just has done a LU because it did not respond to a paging request. E.g. when a phone is rebooting, a SMS being delivered, the phone is doing the LU, sub_ready_for_sm will try to send a SMS (but the phone is not ready yet and it will timeout), then the paging code will send us an expiration note and we might set the LAC=0 for this subscriber. Ideally we would be able to stop the paging request once the subscriber is authenticated and then hand this to the SMS layer, right now the best thing to do is to detect that we will run into this problem and not send the SMS, not try to set the LAC=0.
2011-07-23fix some header file related issues preventing lcr from compilingHarald Welte1-1/+1
2011-07-19osmo-bsc: Only keep the newest of subsequent invalid positionsDaniel Willmann1-1/+12
2011-07-19osmo_bsc: Track the last three locations.Daniel Willmann1-7/+47
2011-07-19osmo-bsc: Add valid field to location commandDaniel Willmann1-6/+13
2011-07-19osmo-bsc: Improve return handling in verify_net_locDaniel Willmann1-3/+2
2011-07-19osmo-bsc: Compare char * with NULL instead of 0Daniel Willmann1-1/+2
2011-07-19libcommon: Add DCTRL logging destination for libctrl related messagesDaniel Willmann1-0/+5
2011-07-19libctrl: Use inttypes.h macros to make uint64_t printfs portable.Daniel Willmann1-1/+2
2011-07-19paging: Add method to find the paging data for a given subscriberHolger Hans Peter Freyther1-0/+14
2011-07-19bsc: Correct the cast for the signal dataHolger Hans Peter Freyther1-3/+3
There is a dedicated msc_signal_data cast the signal_data to this type and enjoy working connection closing on a per MSC base.
2011-07-19mgcp: Implement RSIP based on a trunk levelHolger Hans Peter Freyther2-7/+23
Implement the RSIP spec extension to work on the specified trunk instead of hardcoding it to the virtual trunk.
2011-07-19bsc: Fix a memory leak when the BSC is not allowed to open a connectionHolger Hans Peter Freyther1-0/+4
When the BSC is refusing to open an outgoing connection the SCCP connection was leaked. Use the normal free as the socket should be either closed or disconnected.
2011-07-19bsc: Call the RF Control interface ctrl all the wayHolger Hans Peter Freyther4-12/+12
We had the rf_ctrl_name and the rf_ctl pointer, make both use the word ctrl.
2011-07-18bts-init: Initialize the BTS like it will look after a resetHolger Hans Peter Freyther2-1/+3
Reset the BTS MO State on BTS bootstrap. This way we will always test the BTS disconnect/reconnect case of the BTS. Do not reset the administrative state of objects. The BSC might have set these and wants to maintain them across disconnect/ reconnect. Right now this is true for the TRX state.
2011-07-18misc: Remove the osmocom/core/process.h includeHolger Hans Peter Freyther5-5/+0
The osmo_daemonize moved from process.h to application.h (that is already included), remove the process.h include.
2011-07-16ipaccess-firmware: Fix dumping the wrong header fieldsHolger Hans Peter Freyther1-2/+2
We want to compare the file more_magic[0] and more_magic[1] with the static more_magic array to see where the difference is. src/ipaccess/ipaccess-firmware.c +64 ipaccess_analyze_file(26) warn: buffer overflow 'firmware_header->more_magic' 2 <= 2 src/ipaccess/ipaccess-firmware.c +64 ipaccess_analyze_file(26) warn: buffer overflow 'firmware_header->more_magic' 2 <= 3
2011-07-16sgsn_libgtp: remove bogus unreached second return statementHarald Welte1-2/+0
found by Smatch
2011-07-16sgsn_main: add comment about exit statement never reachedHarald Welte1-0/+1
2011-07-16gprs_gmm: ctx cannot be null, so remove checkHarald Welte1-1/+1
Detected by Smatch: /home/laforge/projects/git/openbsc/openbsc/src/gprs/gprs_gmm.c +757 gsm48_rx_gmm_att_req(133) warn: variable dereferenced before check 'ctx'
2011-07-16gprs_bssgp_util.c: orig_msg == NULL is not supportedHarald Welte1-3/+2
we need it for deriving the NSEI anyway. Detected by Smatch
2011-07-16ipaccess-proxy: use ANSI function declarations (void)Harald Welte1-2/+2
2011-07-16ipaccess-proxy: fix array bounds problemHarald Welte1-2/+2
detected by Smatch: /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +173 store_idtags(14) error: buffer overflow 'ipbc->id_tags' 255 <= 255 /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +173 store_idtags(14) error: buffer overflow 'ipbc->id_tags' 255 <= 255 /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +175 store_idtags(16) error: buffer overflow 'ipbc->id_tags' 255 <= 255 /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +178 store_idtags(19) error: buffer overflow 'ipbc->id_tags' 255 <= 255 /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +500 ipaccess_rcvmsg(66) error: buffer overflow 'ipbc->rsl_conn' 4 <= 4 /home/laforge/projects/git/openbsc/openbsc/src/ipaccess/ipaccess-proxy.c +504 ipaccess_rcvmsg(70) error: buffer overflow 'ipbc->bsc_rsl_conn' 4 <= 4
2011-07-16bs11_config: fix array bounds problem by using value_stringHarald Welte1-20/+18
Detected by Smatch: /home/laforge/projects/git/openbsc/openbsc/src/utils/bs11_config.c +223 linkstate_name(5) error: buffer overflow 'bs11_link_state' 3 <= 3 /home/laforge/projects/git/openbsc/openbsc/src/utils/bs11_config.c +240 mbccu_load_name(5) error: buffer overflow 'mbccu_load' 6 <= 6 /home/laforge/projects/git/openbsc/openbsc/src/utils/bs11_config.c +905 main(34) info: ignoring unreachable code.
2011-07-16gsm_04_11: use 'unsigned int sms_alphabet' to include 0xffffffffHarald Welte1-1/+2
Detected by Smatch
2011-07-16db: use ANSI (void) function declarationsHarald Welte1-2/+2
2011-07-16db: fix Smatch warningsHarald Welte1-5/+3
/home/laforge/projects/git/openbsc/openbsc/src/libmsc/db.c +254 db_fini(6) info: redundant null check on db_dirname calling free() /home/laforge/projects/git/openbsc/openbsc/src/libmsc/db.c +256 db_fini(8) info: redundant null check on db_basename calling free() /home/laforge/projects/git/openbsc/openbsc/src/libmsc/db.c +280 db_create_subscriber(20) warn: variable dereferenced before check 'subscr'