path: root/openbsc
AgeCommit message (Collapse)AuthorFilesLines
2012-01-27osmo-bsc: Add configurable option to spawn + respawn osmo-bsc_mgcplaforge/mgcp-reworkHarald Welte4-3/+115
If it is configured in the config file or on the VTY, osmo-bsc will fork+exec osmo-bsc_mgcp. Furthermore, if osmo-bsc_mgcp dies, osmo-bsc will re-spawn it. This also means that we can now send a SIGHUP to osmo-bsc_mgcp in the event of a Msc (re)connect, causing it to send RSIP, which in turn is required by certain call agents that forget to send a AUEP on startup to determine the endpoint state of the media gateway[s].
2012-01-27bsc_mgcp: Send RSIP for all endpoints when SIGHUP is receivedHarald Welte2-0/+17
this will be used as quick work-around so osmo-bsc kan trigger RSIP after a re-connect to a MSC requiring RSIP from the MGW. In the ideal world, the MSC (call agent) would comply with the MGCP spec and send AUEP, but well...
2012-01-27MGCP: accept the SDP in CRCX, not only in MDCXHarald Welte1-73/+104
Some call agents send teh SDP inside the CRCX and don't actually send a MDCX later on.
2012-01-27MGCP: implement a more tolerant parser based on strtok_r()Harald Welte3-261/+183
Instead of building complex manual byte-wise parsers, we simply use two strtok_r loops: one iterating over all the lines, the next one iterating over the invididual space-separated elements in the first line. The benefit is that we now accept \r, \n or \r\n, or any multiple of them as line ending. This works around incompliant MGCP implementations like that of Zynetix MSC.
2012-01-27bsc_mgcp: make sure all command line options are documentedHarald Welte1-0/+2
2012-01-27consistently name bsc_mgcp osmo-bsc_mgcpHarald Welte1-3/+3
2012-01-27test case for the zynetix MCGP: use \n instead of \rHarald Welte1-7/+7
2012-01-27mgcp: add missing prototypes for send_mgcp_reset_*Harald Welte1-0/+3
2012-01-27osmo-bsc: Remove hard-coded check for codec preferecne in ASS CMDHarald Welte1-5/+0
When we get an assignment command from the MSC, we no longer have to check statically for certain codecs, as we have a vty-configured list of codecs that is checked just below.
2012-01-27MGCP: Add VTY commands to reset (RSIP) one or all endpointsHarald Welte2-0/+86
2012-01-27bsc_mgcp: optionally connect the MGCP socket to the MGWHarald Welte1-0/+11
This allows the use of the existing "call-agent ip A.B.C.D" command in libmgcp in order to set a default destination address of the call agent. This is required as a pre-condition for certain call agents (like the zynetix MSC) that require a RSIP from the BSC to the MSC as the initial MGCP message.
2012-01-27MGCP: Add CRCX test casesHarald Welte1-0/+29
The second test case (CRCX_ZYN) fails as the message is not compliant with the spec. However, our parer should be more tolerant, just in case...
2012-01-27further generalize mgcp testing codeHarald Welte1-19/+30
use a data-structure driven approach
2012-01-27mgcp_test: remove duplicate codeHarald Welte1-13/+6
2012-01-23Move the bulk of RR processing from MSC into BSCHarald Welte4-118/+107
RR Messages like STATUS, GPRS SUSPEND, HANDOVER COMPLETE/FAIL, ... should be processed on the BSC side of things, not on the MSC side. This is among other things required in preparation of intra-BSC hand-over support in osmo-bsc.
2012-01-23Move processing of CLASSMARK CHANGE behind bsc_apiHarald Welte5-50/+81
This prevents osmo-bsc from sending RR messages to the MSC and rather process them inside the BSC and turn them into BSSAP CM UPDATE.
2012-01-20osmo-bsc: correctly parse the TMSI in BSSAP paging from MSCHarald Welte1-5/+3
the TMSI is a uint32_t big-endian value and not a gsm 04.08 mobile identity like the IMSI.
2012-01-18nat: Add VTY command for the TP-DA rewriting.Holger Hans Peter Freyther1-0/+27
2012-01-18nat: Fix the no sms-clear-tp-srr commandHolger Hans Peter Freyther1-1/+1
2012-01-18nat: Internationalize the TP-DA if it starts with a 00Holger Hans Peter Freyther2-5/+8
Internationalize the number like we do it for Call Control. Update the test result to match this new behavior.
2012-01-18nat: Prepare to rewrite the TP-DA number of a SMS submit.Holger Hans Peter Freyther5-37/+172
Introduce number rewriting of SMS-SUBMIT. Introduce a new list, move code around to help with finding a new number, somehow the number encoding for TP-DA is borked, 03.40 references 04.11 but the length appears to be strlen(number) without taken the type field into account.
2012-01-18nat: Print the sizes and the offending data in case of a failureHolger Hans Peter Freyther1-1/+5
2012-01-17rsl: This is provided by libosmo-abis, remove it hereHolger Hans Peter Freyther1-1/+0
2012-01-17mgcp: Fix warning about unused variableHolger Hans Peter Freyther1-2/+0
mgcp_network.c:335:22: warning: variable ‘cfg’ set but not used [-Wunused-but-set-variable]
2012-01-17mgcp: Provide documentation for the method, check sscanf returnHolger Hans Peter Freyther1-0/+8
2012-01-17bts: Convert the rsl_link to be a struct ipabis_linkHolger Hans Peter Freyther1-0/+4
2012-01-17lchan: Close a possible still open RTP SocketHolger Hans Peter Freyther1-0/+12
In case of a reset (loss of the BTS) close down all remaining RTP Proxy sockets. In case of a lchan_free shout if the rtp proxy is still open. I would prefer if the proxy code sits inside the gsm subscriber connection.
2012-01-17ho: Remove rtp_proxy.h include, no proxy code in hereHolger Hans Peter Freyther1-1/+0
2012-01-15nat: Add the bsc_data.c file to the EXTRA_DISTHolger Hans Peter Freyther1-1/+1
2012-01-15abis: gsm_data_shared.h includes libosmo-abis header, add abis to cflagsHolger Hans Peter Freyther9-15/+15
gsm_data_shared.h includes e1_input.h of libosmo-abis, add the LIBOSMOABIS_CFLAGS to Makefile.am, remove AM_LDFLAGS at the same time as we only build .a archives.
2012-01-15mncc: Include size and offsets of struct gsm_mncc in the helloHolger Hans Peter Freyther2-1/+18
Increase the version number and send the sizeof of the gsm_mncc and the gsm_data_frame structure. Include the offsets of some members as well to maybe identify ABI problems. The reason we go through this is that we want to benefit from the native ABI and don't want to force packed structs.
2012-01-15channel: Review lchan_free calls and the state the channel is inHolger Hans Peter Freyther1-1/+1
In case of a memory allocation failure in rsl_rx_chan_rqd we would have left the channel in the LCHAN_S_ACT_REQ state. Move the state change below the allocation.
2012-01-15lchan: Rename release_reason to release_modeHolger Hans Peter Freyther3-7/+9
Use the name of GSM 08.58 for the release mode.
2012-01-15channel: Fix a typo in the lchan state documentationHolger Hans Peter Freyther1-1/+1
2012-01-15channel: The error timer and the lchan_deact_tmr are both runningHolger Hans Peter Freyther1-1/+2
In case a BTS does not send the RF Channel Release ACK and we are closing the channel because of an error two timers are running to set the state back to none. Make lchan_deact_tmr_cb and rsl_rx_rf_chan_rel_ack behave the same in regard to changing the state of the lchan. For the other direction we are save, the error path will set the state to NONE and the timeout will call lchan_free to set the channel type back to NONE, only then the lchan may be allocated again. The channel release procedure requires some more tweaking, some part was started in the zecke/28c3 branch and needs to be tested/integrated with the goal of having one common release path.
2012-01-15Revert "libbsc: Log if a channel is freed with lchan->state != LCHAN_S_NONE"Holger Hans Peter Freyther1-4/+0
In case of a failed channel we still want the channel to not be re-allocated right away but keep it closed/unused for (T3109 + T311). rsl_rx_rf_chan_rel_ack has a check to not set the channel to S_NONE in case the channel is in the error state. Add the camp Harald added a timer to set the channel back to the none state in case the RF Channel Release is not acked. This reverts commit fc462dd59ee4772f06c9f2477b36b3f166a8e74b.
2012-01-15bsc: Fix "show lchan" for partially provided informationHolger Hans Peter Freyther1-13/+53
show lchan should be capable of showing all allocated lchans, all of a given bts, a given trx, a given ts. This feature was broken when I added the ability to show a more simple summary. Restore the initial behavior by splitting out the for loops for the bts/trx/ts and check if we have parsed all parameters and then call and return the subroutine.
2012-01-11nat: Add the line break after the '.0.10.1Holger Hans Peter Freyther1-1/+1
2012-01-10nat: Implement clearing of TP-SRR flags from TPDUsHolger Hans Peter Freyther6-7/+136
Match IMSI and destination address against a set of entries, if it is matching the header will be modified and no sender report will be requested. Change the test case to request the sender report and then verify that this bit is reset to 0.
2012-01-10nat: Reduce copy and paste in the test, create a verify_msgHolger Hans Peter Freyther1-50/+23
2012-01-10nat: Use the link_id from the original message in the new DTAP messageHolger Hans Peter Freyther2-2/+4
SMS went from SAPI=3 to SAPI=0 and nobody notices on the NAT->MSC direction.
2012-01-10nat: Compare the DTAP L3 size with the size of the msgb - dtap headerHolger Hans Peter Freyther1-2/+4
2012-01-10nat: Fix comment and mask for looking at TP-MTIHolger Hans Peter Freyther1-2/+3
2012-01-10nat: SMS rewrite matching, empty list means match everythingHolger Hans Peter Freyther1-1/+1
2012-01-10nat: SMS comment updatesHolger Hans Peter Freyther1-1/+2
2012-01-10nat: Move SMS creation into a new method, no functional changeHolger Hans Peter Freyther1-34/+49
2012-01-10nat: Access data_ptr after we have checked the lengthHolger Hans Peter Freyther1-4/+4
2012-01-10nat: Move the finding of the number to a new methodHolger Hans Peter Freyther1-44/+62
2012-01-09tests: Use atlocal/atlocal.in to enable/disable the NAT testHolger Hans Peter Freyther5-7/+7
Kill the hacking, use atlocal to remember if the NAT test should be enabled and then skip the test (exit with 77).
2012-01-09Revert "tests: Make the test setup more abusive to fix the build"Holger Hans Peter Freyther1-7/+5
This reverts commit 41b42c72294d181217bae59e37ddf50c490df17f.