summaryrefslogtreecommitdiffstats
path: root/include/osmocom
Commit message (Collapse)AuthorAgeFilesLines
* vty: Change API to have node installation be done by intHolger Hans Peter Freyther2015-08-052-6/+6
| | | | | | | | | | | | | | | | We are mixing enums and hope that no short-enums are used. This is leading to a lot compiler warnings generated by clang. Change the API to work with integers. Porting: The go_parent_cb implementations in the applications need to be fixed. The API change leads to a compile time warning. Fixes: abis_om2000_vty.c:46:2: warning: implicit conversion from enumeration type 'enum bsc_vty_node' to different enumeration type 'enum node_type' [-Wenum-conversion] OM2K_NODE, ^~~~~~~~~
* ipa: Properly parse LV stream of a ID_GET requestHolger Hans Peter Freyther2015-06-021-0/+3
| | | | | | | | For some reason the structure is closer to be a LV (length and value). The value is actually a tag but it is counted inside the length. Introduce an overload of the parse function to provide an offset for the length. This will be taken from the returned length.
* Add APN utility function to libosmogsmHarald Welte2015-05-251-0/+13
| | | | | | The current functions are used to 'qualify' an APN from the user-supplied APN name (name identifier) towards the fully-qualified APN name which is used in the .grps DNS zone.
* bssgp: Fix bssgp_tx_fc_bvc parameter typeJacob Erlbeck2015-05-061-1/+1
| | | | | | | | | | | | Currently large values for Bmax default MS get sliced since a uint16_t is used as the type of the corresponding parameter of bssgp_tx_fc_bvc. GSM 48.018, 11.3.2 which in turn refers to 11.3.5 specifies a maximum of 6MB (0xffff * 100). This commit changes the type to uint32_t to cover the full value range. Sponsored-by: On-Waves ehf
* linuxlist: Remove casting of ptr from container_of macroHolger Hans Peter Freyther2015-05-021-1/+1
| | | | | | | | | | | The cast is not present in the original macro and was added in OpenBSC with commit (be68f6fc6cde1367a4481d2e774a64e2cd657267) to help using the header with C++. Due the recent issue in the bssgp flow control code, let's remove the cast to see wrong pointer usage. In case C++ code doesn't compile anymore we can see how to add a cast back to it. Change was proposed by Michael McTernan
* osmo_static_assert: Put back the typedef in the codeHolger Hans Peter Freyther2015-04-131-1/+1
| | | | | | | | In OSX the int declares linkage and for libosmo-abis we have two static asserts with the same name in two different compilation units. When adding the "unused" attribute I removed the typedef. I verified with a gcc 4.9.2 that no new warnings will be shown when compiling libosmo-abis.
* sim: Use extern for these structs to generate a linkageHolger Hans Peter Freyther2015-04-111-1/+1
| | | | | | | | | | Fixes: duplicate symbol _ts102221_fcp_vals in: .libs/core.o .libs/card_fs_usim.o duplicate symbol _pcsc_reader_ops in: .libs/reader.o .libs/card_fs_usim.o
* ns: Log when sending fails (Coverity)Jacob Erlbeck2015-04-071-6/+4
| | | | | | | | | | | | | | | | Currently the return value of the gprs_ns_tx family of functions is often ignored. This is not a serious issue, since the successful delivery of the messages is neither guaranteed nor acknowledged by the network layer anyway. Nevertheless this commit adds logging (level INFO) to gprs_ns_tx and gprs_ns_msgb_alloc. The definition of the latter has been moved from the header file to gprs_ns.c. Fixes: Coverity CID 1040678, 1040679, 1040680, 1040681, 1040682, 1040683, 1040684, 1040686, 1040687, 1040688, 1111545, 1240203, 1240204 Sponsored-by: On-Waves ehf
* gsm: Add A5/3-4 cipher supportMax2015-03-281-1/+1
| | | | | Signed-off-by: Max <max.suraev@fairwaves.co> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* endian: Be able to detect endian on GNU and BSDHolger Hans Peter Freyther2015-03-221-0/+38
| | | | | | | | | | | | | | | | | | On GNU __BYTE_ORDER and __LITTLE_ENDIAN is defined and the include is "endian.h" on FreeBSD it is "sys/endian.h" and LITTLE_ENDIAN/_LITTLE_ENDIAN and BYTE_ORDER/_BYTE_ORDER is defined. Create a header file that defines OSMO_IS_LITTLE_ENDIAN and OSMO_IS_BIG_ENDIAN and can be used as #if OSMO_IS_LITTLE_ENDIAN do_little_endian #elif OSMO_IS_BIG_ENDIAN do_big_endian #else #error "Unknown endian" #endif
* bssgp: Handle BSSGP STATUS messagesJacob Erlbeck2015-03-181-0/+2
| | | | | | | | | | | | | | | | | | | Currently incoming BSSGP STATUS messages are just logged and no other action is taken. This makes it impossible for higher layers to react to failures which are indicated by corresponding STATUS messages unless a timeout is triggered as a result of that failure later on. This commit adds a bssgp_rx_status() function and calls it on incoming STATUS messages. That function logs a message, increments the new BSSGP_CTR_STATUS counter if the bctx context exists and invokes an NM_STATUS status indication. The latter will allow the application to handle failures immediately. Since all STATUS messages should be handled, the function is already called in bssgp_rcvmsg and the message is no longer handled in (and will not reach) bssgp_rx_sign and bssgp_rx_ptp. Ticket: OW#1414 Sponsored-by: On-Waves ehf
* core/gsmtap: LTE RRC message types and LTE MAC definealtaf2015-01-181-0/+15
| | | | | Submitted-by: altaf <altaf329@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* Supplementary Services (de)activation, interrogation addedTobias Engel2015-01-012-1/+152
| | | | | | | | | | | | | These patches enhance the Supplementary Service (SS) processing from only being able to handle USSD to other SS, specifically activation, deactivation and interrogation of those SS. Registration is not yet implemented. include/osmocom/gsm/protocol/gsm_09_02.h has been added with needed values for SS. Modified by Harald Welte to keep the old ussd-only functiosn for API/ABI stability.
* SMS-CB: introduce and use GSM341_7BIT_PADDINGHarald Welte2014-12-301-0/+1
|
* SMS-CB: Add #defines for maximum block/msg size and payload charsHarald Welte2014-12-302-0/+8
|
* add missing gsm0341.hHarald Welte2014-12-301-0/+9
|
* Add Cell Broadcast MSGIDs from TS 23.041 v12.6.0 Release 12Harald Welte2014-12-291-0/+38
|
* bitvec: Fix typo in the csn1 encoding codeHolger Hans Peter Freyther2014-12-281-1/+1
| | | | | We can curse about CSN.1 and 3GPP but I think we want to call it cursor here.
* libosmo-gsm: Add PCHAN/LCHAN types for CBCHHarald Welte2014-12-281-0/+3
|
* ipa: Add forward declaration of struct osmo_fdJacob Erlbeck2014-12-221-0/+2
| | | | | | | | | | | A pointer to struct osmo_fd is used in a few prototypes declared in gsm/ipa.h, but is neither declared explicitly nor is such a declaration reachable via the given include directives. This patch adds a forward declaration of this type to ensure proper compilation. Sponsored-by: On-Waves ehf
* ipa: Make a reservation for the GSUP protocolHolger Hans Peter Freyther2014-12-141-0/+1
| | | | | GSUP is a protocol to have the OpenBSC SGSN talk to an exterbal system for 3GPP MAP connectivity.
* logging: Make it possible to print category/subsys and timestampsHolger Hans Peter Freyther2014-12-051-0/+6
| | | | | | | | | | | | We want to see from which category/subsystem a certain log message is coming from and use a different timestamp format as well. Add two new bitfields. This doesn't change the size of the structure and on 32bit we still have 27bits left. The extended timestamp will take preference over the current and default timestamp format. Fixes: SYS#602
* gtp: Add a global region for the gtp library of OpenGGSNHolger Hans Peter Freyther2014-12-041-1/+2
| | | | | We want to use libosmocore/libosmovty in the GGSN sourcecode and reserve a global region here.
* vty: Check with the application before writing the configHolger Hans Peter Freyther2014-12-041-0/+2
| | | | | | | | | For the BSC/NITB application we see that people modify the band without modifying the ARFCN. This creates an unbootable config. Using the new hook the BSC/NITB can check if the config is consistent and prevent the config file being written. Related: SYS#739
* remove references to u_char type, use 'unsigned char' insteadHarald Welte2014-11-142-2/+2
| | | | ... u_char not being defined on Nuttx.
* sttrb / loggingrb: Use GPLv2+ as license, not AGPLv3+Harald Welte2014-10-262-2/+2
| | | | | according to Holger, using AGPLv3+ at the time was a mistake and the license should always have indicated GPLv2+.
* Change license of libosmogb from AGPLv3+ to GPLv2+Harald Welte2014-10-261-4/+4
| | | | | | | | | | | The copyright holders Harald Welte, Holger Freyther, Andreas Eversberg and sysmocom - s.f.m.c. GmbH (represented by Holger and Harald) agree that the license of libosmogb should be GPLv2+ and not AGPLv3+. The reason the source files stated AGPLv3+ is due to the history, as they were moved from OpenBSC to libosmocore at the time we needed to use them from osmo-pcu. It was an oversight back then to not re-license them accordingly.
* make sure to register DF.TELECOM and DF.GSM for SIM, USIM + TSIMHarald Welte2014-10-261-2/+2
| | | | | before we only did it partially, and by exporting data from sim, rather than the new osim_int_cprof_add_{gsm,telecom}() functions.
* sim: add missing const to reader_ops member of reader_handleHarald Welte2014-10-261-1/+1
|
* sim: Prepare infrastructure for protocols != T=0 and other driversHarald Welte2014-10-261-2/+17
|
* sim: More comments in sim.hHarald Welte2014-10-261-12/+44
|
* sim: Make TETRA SIM (TSIM) support compileHarald Welte2014-10-261-0/+9
|
* sim: mark osim_msgb_cb as __may_alias__ to avoid gcc warningsHarald Welte2014-10-261-1/+1
|
* sim: Add sfi to EF_*() macrosHarald Welte2014-10-261-11/+14
|
* sim: Add minimal/recommended size of file / recordHarald Welte2014-10-261-15/+29
|
* sim: further updates/fixesHarald Welte2014-10-261-1/+3
|
* sim: add decoding of status wordsHarald Welte2014-10-261-2/+8
|
* sim: replaced function/structure comments with doxygen commentsKevin Redon2014-10-261-19/+39
| | | | | affected files: sim.h, sim/core.c affected funtions/strucutres: osim_new_apdumsg, osim_apdu_case,osim_apdu_cmd_hdr, osim_msgb_cb
* sim: add comment/explaination for structure osim_msgb_cbKevin Redon2014-10-261-4/+5
|
* sim: add comment/explaination for structure osim_apdu_cmd_hdrKevin Redon2014-10-261-5/+6
|
* sim: renamed case to the one defined in ISO7816-3Kevin Redon2014-10-261-6/+6
| | | | | | | | | APDU_CASE_2 becomes APDU_CASE_2S APDU_CASE_2_EXT becmoes APDU_CASE_2E APDU_CASE_3 becomes APDU_CASE_3S APDU_CASE_3_EXT becmoes APDU_CASE_3E APDU_CASE_4 becomes APDU_CASE_4S APDU_CASE_4_EXT becmoes APDU_CASE_4E
* sim: add comment/explaination for structure osim_apdu_caseKevin Redon2014-10-261-8/+8
|
* initial checkin of 'libosmosim'Harald Welte2014-10-261-0/+268
|
* msgb: make msgb_get() finally work as expectedHarald Welte2014-10-261-1/+1
|
* gprs-ns: Let gprs_nsvc_reset return a valueJacob Erlbeck2014-10-091-1/+1
| | | | | | | | | | Currently gprs_nsvc_reset does not return any value. This patch changes the function to return an integer, where a value less than zero indicates an error. The value is taken from the gprs_ns_tx_reset function. In case of failure, an error message is logged. Sponsored-by: On-Waves ehf
* logging: Add ability to save/print current log filtersHarald Welte2014-08-251-0/+16
| | | | | | This enables the persistent configuration of let's say 'log filter imsi 012345678' for a given log file in the config file.
* gsm48.h: define the reserved TMSI in libosmocore, not openbscHarald Welte2014-08-241-0/+3
|
* add port number 4238 for BTS control interfaceHarald Welte2014-08-242-0/+2
|
* libctrl: Add support for 'deferred control commands'Harald Welte2014-08-241-0/+15
| | | | | | | | | | | | | | Sometimes a control interface command cannot be processed and responded immediately, but we need to process it asynchronously. In order to support this, we introduce the 'ctrl_cmd_def', which represents such a deferred command. It is created by the service implementing the command using ctrl_cmd_def_make(), and a response is later sent using ctrl_cmd_def_send(). ctrl_cmd_def_is_zombie() must be called to handle the case where the control connection has disconnected/died between receiving the command and sending the response.
* Convert recently-introduced header files to #pragma onceHarald Welte2014-08-213-13/+3
|