summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* libctrl: Move bulk of control node lookup inti libosmoctrlHarald Welte2014-08-212-7/+134
| | | | | | The control interface user now only has to register a very short node lookup function callback. This function is optional, and only required if hierarchical command lookup should be supported.
* libctrl: remove 'struct gsm_network' referencesHarald Welte2014-08-212-9/+6
| | | | | libctrl doesn't need any knowledge about the type of the user-private data that it gets passed upon setup time and includes on callbacks.
* libctrl: remove bsc-specific declarationHarald Welte2014-08-211-1/+0
| | | | this was moved by accident when importing the code from openbsc.
* libctrl: adopt to recent ipaccess/ipa naming changeHarald Welte2014-08-211-2/+3
|
* libctrl: autotools build system integrationHarald Welte2014-08-215-7/+27
| | | | Now we actually build the recently-imported libctrl
* libctrl: Add DLCTRL as logging context for the control interfaceHarald Welte2014-08-214-29/+35
| | | | ... and make libctrl code use it
* libctrl: remove reference to bsc_replace_string()Harald Welte2014-08-212-1/+8
| | | | | ... and rather introduce a general osmo_talloc_replace_string() to libosmocore.
* libctrl: Avoid using external tall_bsc_ctxHarald Welte2014-08-211-6/+6
| | | | | | Instead of using one flat talloc context (and one that is specific to openbsc), we should attach the objects to whatever parent context they are being used in.
* libctrl: remove openbsc headers, convert from make_sock to libosmocoreHarald Welte2014-08-214-23/+14
|
* libctrl: Remove reference to 'DNAT' in favor of 'DCTRL'Harald Welte2014-08-211-1/+1
|
* libctr: rename/move control interface to libosmocore naming schemeHarald Welte2014-08-215-0/+0
|
* ctrl: Allow the value to contain spaces. No need to split the stringHolger Hans Peter Freyther2014-08-211-1/+1
|
* ctrl: Use CTRL_CMD_DEFINE_STRUCT in CTRL_CMD_DEFINE_RANGEHolger Hans Peter Freyther2014-08-211-6/+1
| | | | | Jacob pointed out that I didn't convert CTRL_CMD_DEFINE_RANGE. This patch is doing it now.
* ctrl: Reduce code duplication and add a define to create the structHolger Hans Peter Freyther2014-08-211-13/+10
| | | | | | This has been pointed out by Jacob and removes two more duplicates of the struct. For the unused CTRL_CMD_DEFINE_STRING macro there will be no verify command.
* ctrl: Remove the param parameter as it was never used/implementedHolger Hans Peter Freyther2014-08-212-6/+0
|
* ctrl: Introduce a macro for read-only attributes and use itHolger Hans Peter Freyther2014-08-211-0/+14
| | | | | Certain attributes are read-only. Add a macro to make it more easy to define those.
* ipa: Use enhanced ipa_msg_recv_buffered() to cope with partioned IPA messagesJacob Erlbeck2014-08-212-1/+7
| | | | | | | | | | | | | | 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
* ctrl: Move the lookup into a separate file in preparation for GPRSHolger Hans Peter Freyther2014-08-213-152/+14
| | | | | | For GPRS the look-up via bts/trx does not make any sense and would introduce bad depdencies for the SGSN. Move the look-up code to a new file and introduce new setup methods.
* ctrl: Make it possible to re-use the string get and set routineHolger Hans Peter Freyther2014-08-211-3/+7
| | | | | This can be used for the description field that requires some special handling for newlines.
* ctrl: Make the int range set, get and verify methods availableHolger Hans Peter Freyther2014-08-211-4/+12
| | | | | | For the max power reduction we will need to have a different range method. It will need to check if the value is even. Make the set, get and verify methods available through a macro.
* ctrl: Set a generic reply when it hasn'n been setJacob Erlbeck2014-08-211-1/+9
| | | | | | | | | | | When verification failed and the reply string was not updated, the message "Someone forgot to fill in the reply." was shown instead of the default "Value failed verification." message. This patch changes the default reply handling in ctrl_cmd_handle() by setting the reply to NULL initially and then checking it at the end. If it hasn't been set, a generic message is assigned and an error is logged.
* ctrlif: Flush/Clear write_queue when closing the control socketHarald Welte2014-08-211-0/+1
|
* Makefile.am: Use AM_CPPFLAGSAlexander Huemer2014-08-211-1/+1
| | | | Since automake 1.13 INCLUDES is depricates and causes a warning
* ctrl: Provide a reply in case the range check failedHolger Hans Peter Freyther2014-08-211-0/+1
|
* ctrl: Make the commands static to not pollute the namespaceHolger Hans Peter Freyther2014-08-211-3/+3
| | | | | We do not need to access these commands from another compilation unit and can just make it static.
* ctrl: Work on the cmd->node instead of the data pointer passedHolger Hans Peter Freyther2014-08-211-9/+9
| | | | | | Make the macros use the cmd->node instead of the data pointer. The naming of the variable inside the macro already indicates that it should use the nodes data structure.
* ctrl: Fix the signature of the string control commandsHolger Hans Peter Freyther2014-08-211-2/+7
| | | | | | | | Like with all type unsafe callbacks we will need to cast from void to the dtype. This addresses some compiler warnings. Make it possible to only include the control_cmd.h to use the macros defined in this file.
* libctrl, osmo-bsc: Get rid of net prefixDaniel Willmann2014-08-212-11/+3
| | | | net is now implicit in the root node
* ctrl: Use strtol instead of atoi to detect conversion errorsDaniel Willmann2014-08-211-10/+27
|
* ctrl: Improve error messages in ctrl_cmd_handleDaniel Willmann2014-08-211-12/+28
|
* ctrl: Change the paths to bts.%i. instead of bts%iDaniel Willmann2014-08-211-6/+18
|
* ctrl: Improve error handling if controlif setup failsDaniel Willmann2014-08-211-12/+16
|
* libctrl: Add function ctrl_cmd_send_to_allDaniel Willmann2014-08-212-0/+18
| | | | | Sends a command to all ctrl connections except the one it originated from.
* libctrl: Add trap helper functionDaniel Willmann2014-08-212-0/+14
|
* libctrl: Change controlif_setup so it returns the ctrl handleDaniel Willmann2014-08-213-16/+20
| | | | | | | nat: Catch up with controlif_setup API change We now save a control handle reference in the nat osmo-bsc: Catch up with controlif_setup API change We now save a control handle reference in the gsm network
* libctrl: Keep track of connections in struct ctrl_handleDaniel Willmann2014-08-211-1/+11
|
* misc: Use other size modifiers to fix compiler warningsHolger Hans Peter Freyther2014-08-211-1/+1
| | | | | | control_if.c:521:2: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64_t’ [-Wformat] osmo_bsc_bssap.c:473:3: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘unsigned int’ [-Wformat] mgcp_main.c:162:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘unsigned int’ [-Wformatt]
* libctrl: only free() msgb if it was alloc()edAlexander Huemer2014-08-211-1/+1
| | | | | | Before this patch a SIGABRT was caused when doing e.g.: $ ncat 127.0.0.1 4249 ^C
* fix some "implicit declaration" warnings in osmo-nitbAlexander Huemer2014-08-211-0/+13
|
* libctrl: Add a function to create the cmdHolger Hans Peter Freyther2014-08-212-0/+13
|
* libctrl: Don't overwrite error reply if the verify function sets oneDaniel Willmann2014-08-211-1/+3
|
* libctrl: Mark the cmd set/get/verify functions staticDaniel Willmann2014-08-212-14/+14
|
* libctrl: Bind control interface to localhostDaniel Willmann2014-08-211-1/+1
|
* libctrl: Use DCTRL as logging destination in libctrlHolger Hans Peter Freyther2014-08-212-28/+28
|
* src: port openBSC over libosmo-abisPablo Neira Ayuso2014-08-213-37/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* libctrl: Use inttypes.h macros to make uint64_t printfs portable.Daniel Willmann2014-08-211-1/+2
|
* controlif: declare controlif_setup() in control_cmd.hHarald Welte2014-08-211-0/+3
| | | | | this avoids us to copy+paste external declarations over all 'main' files.
* libctrl: Add ctrl_cmd_cpy() to copy a commandDaniel Willmann2014-08-212-0/+37
|
* libctrl: Add commands to query counters and rate_cntrDaniel Willmann2014-08-211-0/+258
| | | | | | | | | | | | These commands are installed in controlif_setup. Query them like this: "rate_ctr.<interval>.<counter group>.<index>.<counter name>" for rate counters and "counter.<counter name>" for regular counters. <interval> may be either "abs" for absolute values or one or "per_{sec,min,hour,day}". It is possible to query all rate counters in a group (regardless of index) or all counters in a group and with a certain index if you omit <counter name> and <index> or just <counter name>.
* libctrl: Add macros to help define commandsDaniel Willmann2014-08-211-0/+69
|