aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/configure.ac
AgeCommit message (Collapse)AuthorFilesLines
2015-07-02configure: Do not link all applications against libgsmHolger Hans Peter Freyther1-1/+2
Use the same trick as done by the dlopen check to not have everyone link against the library.
2015-07-02configure: No need to check for crypt hereHolger Hans Peter Freyther1-2/+0
We just link to libosmovty and if it requires crypt internally it needs to link to that (and not us). This looks like a left-over from when we moved the VTY code out of OpenBSC
2015-07-01nat: Use RAND_bytes instead of /dev/urandomHolger Hans Peter Freyther1-0/+1
We don't need to consume all the entropy of the kernel but can use libcrypto (OpenSSL) to generate random data. It is not clear if we need to call RAND_load_file but I think we can assume that our Unices have a /dev/urandom. This takes less CPU time, provides good enough entropy (in theory) and leaves some in the kernel entropy pool.
2015-05-25sgsn: Integrate c-ares with the osmocom event loopHolger Hans Peter Freyther1-0/+5
c-ares is an asynchronous DNS resolver and we need it to resolve the GGSN address. This is integrating the library into our infrastructure. We will create and maintain a list of registered FDs (c-ares is currently only using one of them) and (re-)schedule the timer after events occurred.
2015-05-03filter: Move the gsm 04.08 filter to a common placeHolger Hans Peter Freyther1-0/+1
For customer requirements we want to be able to do filtering on the BSC as well. The same messages need to be scanned and the same access-lists will be looked at. In the future we might even split traffic based on the IMSI. Begin with moving the code to a new top level directory and then renaming and removing the nat dependency.
2015-01-10meas: Unbreak the build once moreHolger Hans Peter Freyther1-0/+5
The code assumes that sqlite3.h is in the standard include path. Maybe sqlite3 wasn't installed or resides in a non standard (/usr/local) location? Fix the build as it has been broken since 1st of January.
2015-01-01build meas_vis only if libcdk is availableHarald Welte1-0/+4
2014-12-05bsc/test: Add tests for gsm_subscriber baseJacob Erlbeck1-0/+1
This commit adds test for the generic part of gsm_subscriber like reference counting and flag usage. Sponsored-by: On-Waves ehf
2014-10-09sgsn: Add boilerplate code for a SGSN testHolger Hans Peter Freyther1-0/+2
2014-09-01configure: fix unrecognized option --enable-external-testsPablo Neira Ayuso1-1/+1
./configure --help indicates: --enable-external-tests Include the VTY/CTRL tests in make check [default=no] but ./configure ... --enable-external-tests configure: WARNING: unrecognized options: --enable-external-tests the name of the option seems to be --enable-ext-tests.
2014-08-22misc: Introduce a more neutral configure option for CTRL/VTYHolger Hans Peter Freyther1-9/+14
We started with only testing the VTY but now test VTY and CTRL interface with this python framework and might even extend this to SMPP. So add and "--enable-external-tests" directive which enables the external interface tests.
2014-08-21configure.ac: Depend on libosmocore 0.7.0Harald Welte1-2/+2
2014-08-21move libctrl from openbsc to libosmoctrl (libosmocore.git)Harald Welte1-1/+1
2014-06-05mgcp: Add RTP audio transcodingJacob Erlbeck1-0/+15
This patch implements audio transcoding between the formats GSM, PCMA, L16, and optionally G.729. The feature needs to be enabled by using the autoconf option '--enable-mgcp-transcoding'. In this case mgcp_transcode.c will be compiled and linked to osmo-bsc_mgcp, and the transcoding functions provided will be registered as processing callbacks. If G.729 support is required, libcg729 needs to be installed and '--with-g729' must be passed to ./configure. Ticket: OW#1111 Sponsored-by: On-Waves ehf
2014-05-22mgcp: add voice muxer supportPablo Neira Ayuso1-0/+1
This patch adds the voice muxer. You can use this to batch RTP traffic to reduce bandwidth comsuption. Basically, osmux transforms RTP flows to a compact batch format, that is later on decompacted to its original form. Port UDP/1984 is used for the muxer traffic between osmo-bsc_nat and osmo-bsc_mgcp (in the BSC side). This feature depends on libosmo-netif, which contains the osmux core support. Osmux is requested on-demand via the MGCP CRCX/MDCX messages (using the vendor-specific extension X-Osmux: on) coming from the BSC-NAT, so you can selectively enable osmux per BSC from one the bsc-nat.cfg file, so we have a centralized point to enable/disable osmux. First thing you need to do is to accept requests to use Osmux, this can be done from VTY interface of osmo-bsc_nat and osmo-bsc_mgcp by adding the following line: mgcp ... osmux on osmux batch-factor 4 This just initializes the osmux engine. You still have to specify what BSC uses osmux from osmo-bsc_nat configuration file: ... bsc 1 osmux on bsc 2 ... bsc 3 osmux on In this case, bsc 1 and 3 should use osmux if possible, bsc 2 does not have osmux enabled. Thus, you can selectively enable osmux depending on the BSC, and we have a centralized point for configuration from the bsc-nat to enable osmux on demand, as suggested by Holger. At this moment, this patch contains heavy debug logging for each RTP packet that can be removed later to save cycles. The RTP ssrc/seqnum/timestamp is randomly allocated for each MDCX that is received to configure an endpoint.
2014-05-15misc: Use the right mailinglist address for OpenBSCHolger Hans Peter Freyther1-1/+1
2014-04-01ipa: Use enhanced ipa_msg_recv_buffered() to cope with partioned IPA messagesJacob Erlbeck1-1/+1
The old ipa_msg_recv() implementation didn't support partial receive, so IPA connections got disconnected when this happened. This patch adds the handling of the temporary message buffers and uses ipa_msg_recv_buffered(). It has been successfully tested by jerlbeck with osmo-nitb and osmo-bsc. Ticket: OW#768 Sponsored-by: On-Waves ehf
2014-01-16si/test: Merge si tests into gsm48 testsJacob Erlbeck1-1/+0
Currently tests covering features of the GSM 04.08 specification are spread over the si and gsm0408 subdirs in tests. This commit merges all tests from 'si' into 'gsm0408' and removes the 'si' test sub-directory. Sponsored-by: On-Waves ehf
2013-12-19Add EFR support to TRAU muxer + test caseAndreas Eversberg1-0/+1
Decoding and encoding of FR and EFR TRAU frames are put into seperate functions. CRC check is done to detect bad EFR TRAU frames. The test case includes FR and EFR transcoding. EFR support was tested with Nokia InSite BTS and Siemens BS11.
2013-10-15gbproxy: Add test program to test gbproxy message handlingJacob Erlbeck1-0/+4
This program tests the gbproxy implementation by passing NS messages to a modified gbproxy that dumps the resulting messages, signals, and state. It focusses on testing abnormal situations like port changes. Ticket: OW#874 Sponsored-by: On-Waves ehf
2013-10-15misc: Require libosmocore 0.6.4 and libosmogb 0.6.4Holger Hans Peter Freyther1-2/+2
2013-09-19bsc/mminfo: Patch timezone and DST in MM Info messagesJacob Erlbeck1-1/+3
This adds in-place patching of the time information in the MM INFORMATION message. The timezone in the 'Local time zone' and the 'Universal time and local time zone' information elements and the offset in the 'Network Daylight Saving Time' information element are optionally set. The new values are determined by the 'timezone' vty command in the config_net_bts node. That command is extended by an optional DST offset parameter. Tests are provided for the vty part and for the plain bsc_scan_msc_msg() function. Sponsored-by: On-Waves ehf Ticket: OW#978
2013-07-31nat: Introduce a prefix lookup tree (trie) for number rewritingHolger Hans Peter Freyther1-0/+1
* It is a trie. The max depth of the trie is the length of the longest prefix. The lookup is O(lookuped_prefix), but as the prefix length is limited, the lookup time is constant. * Each node can hold the entire prefix, has place for the rewrite rule with up to three digits. * A trie with 20k entries will take about 3MB ram. * Filling the trie 100 times takes ~800ms on my i7 laptop * 10.000.000 lookups take 315ms.. (for the same prefix). * 93/99 lines are tested, 6/6 functions are tested, 49 of 54 branches are tested. Only memory allocation failures are not covered * A late addition is to handle the '+' sign and to increase the number of chars in the rewrite prefix. The timing/line coverage has not been updated after this change.
2013-07-27smpp: Move the coding/mode detection into a utils fileHolger Hans Peter Freyther1-1/+3
Make sure to not ever have issues with this code again, move the utility code to a new file and create a basic testcase. The method currently has 100% line and branch coverage. My initial patched missed the smpp_utils.c file and I re-did the copying (and verifying the branch coverage)
2013-06-24Introduced support for external python testsKaterina Barone-Adesi1-0/+15
The test scripts warn about missing documentation, untested configs, check common errors, and stub out testing individual VTY commands. The scripts have been moved to the another osmocom repository, python/osmo-python-tests The features were requested by zecke.
2013-03-13SMPP: Implement SMPP Osmocom Estensions on MO-SMS0.13.0Harald Welte1-1/+1
An ESME can now be configured in the VTY to enable osmocom-extensions, which will add vendor-specific SMPP TLVs for RxLev/RxQual/ARFCN/IMEI and transmit power to the SMPP DELIVER-SM message type.
2012-12-21autoconf: Fix the --disable-* case for the AC_ARG_ENABLE macrosHolger Hans Peter Freyther1-27/+20
--disable-smpp would actually not disable SMPP but enable it. Correct it for all usages of AC_ARG_ENABLE. Move the unconditional invocation of PKG_CHECK_MODULES before the conditional one to make it work as the pkg-config m4 macro appears to expand the first usage differently and searches for the pkg-config exuable. Use "$enableval" to see if the feature should be enabled or disabled and then search for the module afterwards.
2012-12-19abis: Create a routine that can parse all SW Descriptions of a SW ConfigHolger Hans Peter Freyther1-0/+1
Be able to parse the entire SW Config IE. Parse the SW Descruption into a struct provided by the caller.
2012-12-19misc: Fix compilation now that the method is located in libosmocoreHolger Hans Peter Freyther1-1/+1
These TLV helper functions are now located in libosmocore.
2012-11-16SMPP: build the smpp interface only in case of ./configure --enable-smppHarald Welte1-1/+12
2012-11-16Initial support of SMPP interface for MT-SMSHarald Welte1-0/+1
2012-10-22si: Partially implement the range encoding for the SI.Holger Hans Peter Freyther1-0/+1
I saw the old copy of the "Appendix J" code too late and I have discovered some quirks and I am more familar with my implementation. Most noticable 'w' only needs to be as big as the input arfcn but requires the 'w' to be initialized. The power_of_2 implementation differs as well (mine matches the output of wirehsark). The f0 could be chosen in a better way but right now picking the lower bound is the easiest. It is not clear if to use modulo if the range is chosen in the middle. This can be improved in the future. Right now I have no bit fiddling for range128, 256 and 1024 as I was running out of time.
2012-10-04tests: Remove the debug/logging test as it is in libosmocore nowHolger Hans Peter Freyther1-1/+0
2012-08-03gb: suspend_ref was changed to a plain uint8_t, update the codeHolger Hans Peter Freyther1-1/+1
Require a 0.5.2+ libosmogb due the change of the suspend_ref type.
2012-06-17use new external libosmogb (part of libosmocore.git)0.12.0Harald Welte1-4/+1
This removes the libgb (GPRS NS/BSSGP) code from the openbsc.git repository and uses the new version from libosmocore.git instead.
2012-06-17libgb: separate header files related to spec and implementationHarald Welte1-0/+1
like in libosmogsm, we separate between header files that are just reflecting information in the respective specs, and header files that related to our specific implementation.
2012-06-16split libgb into a separate library for outside useHarald Welte1-0/+2
This also removes the dependency to osmo_sock() inside libcommon and replaces it with osmo_sock_* from libosmocore
2012-04-08introduce HAVE_TM_GMTOFF_IN_TMHarald Welte1-0/+24
Not all architectures have the tm.tm_gmtoff member. This fixes cygwin builds.
2012-01-09tests: Use atlocal/atlocal.in to enable/disable the NAT testHolger Hans Peter Freyther1-0/+2
Kill the hacking, use atlocal to remember if the NAT test should be enabled and then skip the test (exit with 77).
2012-01-06gprs: Honor GSM 04.64 8.4.2 Receipt of unacknowledged informationHolger Hans Peter Freyther1-0/+1
GSM 04.64 8.4.2 asks to ignore UI frames if the DLCI is not known, or if the "(V(UR)- 32) <= N(U) < V(UR)". E.g. if we want to have V(UR) == 511 and this frame is dropped, we would ignore N(U)'s 0 to 510. Calculate the delta. The code is based on Jonathan Santos's "LLC UI window" fix but the issue was discovered independly.
2012-01-06tests: Introduce running tests with GNU autotest in OpenBSCHolger Hans Peter Freyther1-0/+1
The quality of the tests is of different value but it is good to get started and improve from here.
2011-10-18build: Update configure.ac to use libgtp.pc rather than manual detectionSylvain Munaut1-4/+4
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-10require new libosmo-abis version0.10.0Harald Welte1-1/+1
2011-08-19src: port openBSC over libosmo-abis0.9.15Pablo Neira Ayuso1-1/+1
This is a big patch that ports openBSC over libosmo-abis. Sorry, the changes that are included here are all dependent of libosmo-abis, splitting them into smaller pieces would leave the repository in some intermediate state, which is not desired. The main changes are: - The directory libabis/ has been removed as it now lives in libosmo-abis. - new configuration file format for nanoBTS and HSL femto, we need to define the virtual e1_line and attach it to the OML link. - all the existing BTS drivers (nanoBTS, hsl femto, Nokia site, BS11 and rbs2000) now use the new libosmo-abis framework. - use r232 input driver available in libosmo-abis for bs11_config. - use ipa_msg_recv instead of old ipaccess_read_msg function. - delete definition of gsm_e1_subslot and input_signal_data. These structures now lives in libosmo-abis. Most of this patch are deletions of libabis/ which has been moved to libosmo-abis. This patch also modifies openBSC to use all the new definitions available in libosmocore and libosmo-abis. In order to do that, we have replaced the following: - DINP, DMI, DMIB and DMUX by their respective DL* correspondences. - SS_GLOBAL by SS_L_GLOBAL - SS_INPUT by SS_L_INPUT - S_GLOBAL_SHUTDOWN by S_L_GLOBAL_SHUTDOWN - SS_INPUT by SS_L_INPUT - S_INP_* by S_L_INP_* sub-signals - E1INP_NODE by L_E1INP_NODE vty node This patch has been tested with: - one nanoBTS - the HSL femto with the examples available under libosmo-abis - BS11 with both dahdi and misdn drivers.
2011-07-13Add libctrl, an SNMP-like control interfaceDaniel Willmann1-0/+1
In contrast to the VTY interface the control interface is meant to be used by programs. This patch adds basic support, no commands are defined.
2011-06-30bsc: Require osmo-sccp 0.0.6 and update the APIHolger Hans Peter Freyther1-1/+1
2011-06-26move gsm0502_calc_paging_group() to libosmocoreHarald Welte1-1/+1
2011-05-24openbsc: rename configure.in -> configure.acAlexander Huemer1-0/+115
rename autoconf input file to align with osmocom-bb host applications, and because that suffix is preferred nowadays.