Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gsm0480: Add USSD format functions to libosmocore | Holger Hans Peter Freyther | 2010-09-30 | 4 | -2/+204 |
| | | | | | | These routines come from OpenBSC, the msgb_wrap_* functions belong to Mike Haben, the rest is mine. The msgb allocation is compatible to the GSM48 allocation in OpenBSC. | ||||
* | gsm48: Fix gsm48_encode_called - Set no extension bit | Sylvain Munaut | 2010-09-20 | 1 | -1/+2 |
| | | | | | | | | The highest bit must be set as "No extension byte" marker, so that the next byte is considered to be the BCD number and not some more control stuff Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | gsm0808: Fix the TLV definition of CIC and Service Handover | Holger Hans Peter Freyther | 2010-09-20 | 1 | -2/+2 |
| | | | | | | | The nat code stumbled over the CIC bug as it was detecting timeslot 0x1 as a new CIC and we were patching the data outside the actual packet... The TLV parser needs some better size checking too. | ||||
* | Make sure we don't user std{err,in,out} if they don't exist. | Sylvain Munaut | 2010-09-17 | 2 | -4/+8 |
| | | | | | | This is required for target build in libosmocore Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | protocol/gsm_04_08: Fix cr field position in gsm48_cip_mode_cmd | Sylvain Munaut | 2010-09-17 | 1 | -2/+2 |
| | | | | | | Thanks to Dieter for pointing this out. Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | vty: Add functions to access index and node | Holger Hans Peter Freyther | 2010-09-14 | 2 | -0/+11 |
| | | | | | | It is easier to call these two functions from bindings than wrapping the vty structure and figuring out the alignment of the enum on all different ABIs. | ||||
* | vty: Use the copyright string from the app_info. | Holger Hans Peter Freyther | 2010-09-11 | 1 | -3/+6 |
| | |||||
* | vty: Link osmovty to osmocore as it is using the symbols | Holger Hans Peter Freyther | 2010-09-11 | 2 | -1/+2 |
| | | | | | Use SUBDIRS to build src first and the src/vty. We will need to find the right way add the dependencies. | ||||
* | vty: Everything <= CONFIG_NODE is not a child of config | Holger Hans Peter Freyther | 2010-09-04 | 1 | -2/+2 |
| | | | | | | | The method should be renamed to is child of config node as it was comparing if vty->node > CONFIG_NODE. This is fixing an assert in go_to_parent as we tried to find a parent for the CONFIG_NODE. | ||||
* | Add handover and frequency redefiniton message headers | Andreas Eversberg | 2010-09-01 | 1 | -0/+19 |
| | | | | | This simply add some TS 04.08 related structures for frequency redefinition and handover. | ||||
* | plugin: Blind build fix for OSX... | Holger Hans Peter Freyther | 2010-08-31 | 1 | -0/+1 |
| | | | | According to a internet search PATH_MAX is in limits.h on OSX. | ||||
* | vty: Make the talloc ctx extern void* to avoid duplicate symbols | Holger Hans Peter Freyther | 2010-08-31 | 1 | -1/+1 |
| | |||||
* | vty: Handle nodes part of the lib in the lib, for the rest call the callback | Holger Hans Peter Freyther | 2010-08-26 | 1 | -5/+7 |
| | |||||
* | vty: Add a new callback to let code decide if it is a config node or not | Holger Hans Peter Freyther | 2010-08-26 | 2 | -0/+5 |
| | |||||
* | vty: Move the assumption of the config nodes into a function | Holger Hans Peter Freyther | 2010-08-26 | 1 | -3/+9 |
| | | | | | | Move the assumption that something is a child of the CONFIG_NODE into a new function. The next step will be to use something else for that. | ||||
* | add header file for osmo_daemonize() | Harald Welte | 2010-08-25 | 2 | -1/+7 |
| | |||||
* | Add helper function 'osmo_daemonize()' to convert process into daemon | Harald Welte | 2010-08-25 | 2 | -1/+72 |
| | |||||
* | logging: add missing include file changes for last commit (logfile) | Harald Welte | 2010-08-25 | 1 | -0/+5 |
| | |||||
* | logging: add log target logging into text file and log target destroy function | Harald Welte | 2010-08-25 | 1 | -0/+50 |
| | |||||
* | logging: rename tgt_stdout to tgt_file | Harald Welte | 2010-08-25 | 2 | -6/+6 |
| | |||||
* | add debian packaging related information | Harald Welte | 2010-08-24 | 16 | -0/+178 |
| | | | | | Using the debian directory in this commit, it is possible to generate libosmocore and libosmocore-dev packages (dpkgs). | ||||
* | bsc_fd: Add a build option to be able to debug fd list corruption | Holger Hans Peter Freyther | 2010-08-06 | 2 | -0/+23 |
| | | | | | | | bsc_register_fd on an already registered fd can corrupt the list in a heavy way and make the select end in an infinite loop, this code will workaround the issue and provide a way to set a breakpoint at the right position in the code. | ||||
* | gsm0808: Add some more TLV definitions coming from the cellmgr_ng | Holger Hans Peter Freyther | 2010-08-04 | 1 | -0/+2 |
| | |||||
* | Import gsm48_decode_freq_list() from osmocom-bb/layer23 | Harald Welte | 2010-08-04 | 2 | -0/+445 |
| | | | | This will enable us to use this function from OpenBSC / ipaccess-config | ||||
* | vty: Forward delcare the logging command. | Holger Hans Peter Freyther | 2010-08-04 | 1 | -0/+2 |
| | |||||
* | logging: Make sure we don't use "end of color" code if colors are turned off | Harald Welte | 2010-07-30 | 1 | -1/+2 |
| | |||||
* | add new hexdump_nospc() function | Harald Welte | 2010-07-30 | 2 | -2/+13 |
| | |||||
* | move hexdump() from logging.c to utils.c | Harald Welte | 2010-07-30 | 5 | -20/+21 |
| | |||||
* | Import 'hexparse' function from OpenBSC | Harald Welte | 2010-07-30 | 2 | -0/+29 |
| | |||||
* | core/msgb: Use the new osmo_panic call to handle errors | Sylvain Munaut | 2010-07-25 | 1 | -4/+2 |
| | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | core: Add some generic panic handling | Sylvain Munaut | 2010-07-25 | 5 | -2/+95 |
| | | | | | | | | This also includes an option for a minimal 'infinite loop' type panic that could be required for embedded target that don't have abort() or fprintf() Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | build: Use AS_HELP_STRING macro to format the ./configure --help better | Sylvain Munaut | 2010-07-25 | 1 | -4/+16 |
| | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | osmocore: Add utility function rsl_chan_nr_str to RSL | Sylvain Munaut | 2010-07-25 | 2 | -0/+29 |
| | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com> | ||||
* | msgb: Avoid warnings that the string might contain %s or such.. | Holger Hans Peter Freyther | 2010-07-23 | 1 | -1/+1 |
| | |||||
* | gsm0808: Why should there be a lchan in the parameter... | Holger Hans Peter Freyther | 2010-07-23 | 2 | -2/+2 |
| | |||||
* | gsm0808: Import unaligned mem access fix from on-waves/bsc-master | Holger Hans Peter Freyther | 2010-07-23 | 2 | -5/+10 |
| | |||||
* | gsm_utils: Move the gsm_7bit_alphabet into the impl and make it static | Holger Hans Peter Freyther | 2010-07-23 | 2 | -28/+27 |
| | |||||
* | msgb: Check for available headroom/tailroom and abort() if we violate it | Harald Welte | 2010-07-22 | 1 | -4/+31 |
| | |||||
* | gsm_04_12.h: Add beginning of structs for SMS CB | Holger Hans Peter Freyther | 2010-07-21 | 2 | -1/+33 |
| | | | | | I am trying to understand the RSL and GSM 04.12 spec to implement CBS for OpenBSC... | ||||
* | gsm_7bit_decode: rtext does not hold a null byte, reduce the size | Holger Hans Peter Freyther | 2010-07-21 | 1 | -1/+1 |
| | | | | | I have added the + 1 as I thought rtext will hold a terminating null byte but it will not. | ||||
* | tests: don't hardcode length values of expected encoding gsm_7bit_encode: | Nico Golde | 2010-07-21 | 2 | -15/+16 |
| | | | | | | | | | make sure to return the number of actually written bytes gsm_7bit_decode: calculate length of resulting septets from input length before decoding The input length to gsm_7bit_decode reflects the number of encoded bytes to be decoded. As the decoding is done on the input in septetes we need to take this into account and recalculate the length. | ||||
* | gsm_7bit_decode: Handle the case of the last charachter being an escape | Holger Hans Peter Freyther | 2010-07-20 | 1 | -1/+1 |
| | | | | | If i + 1 == length and it is an escape charachter we would try to read rtext[length] which is one after the field we have allocated. | ||||
* | tests: Separate encoding/decoding test to verify them independly | Holger Hans Peter Freyther | 2010-07-20 | 1 | -17/+78 |
| | | | | | | Use the current test result as test data for future regression testing. The encode function appears to add too many zeros to the text. | ||||
* | * rewrite GSM 7bit default encoding/decoding based on a lookup table as the ↵ | Nico Golde | 2010-07-20 | 3 | -21/+123 |
| | | | | previous code produced wrong encodings for certain characters. | ||||
* | Added crc16 from linux kernel. | Ingo Albrecht | 2010-07-15 | 4 | -2/+98 |
| | |||||
* | [VTY] add support for numeric ranges with negative numbers | Andreas Eversberg | 2010-07-13 | 1 | -31/+67 |
| | | | | This enables us to do something like <-128-127> as a numeric range. | ||||
* | [RSL] split rsl_rll_push_l3() L3 LV pushign and rsl_rll_push_hdr() | Harald Welte | 2010-07-13 | 3 | -10/+40 |
| | | | | | This allows us to generate RSLms messages that have some non-standard IEs between the RSL/RLL common header and the L3 INFO IE. | ||||
* | Add 3-digit MNC support to gsm48_generate_lai() | Andreas Eversberg | 2010-07-12 | 1 | -7/+7 |
| | |||||
* | Added new IE definitions to gsm_04_08.h of libosmocore. | Andreas Eversberg | 2010-07-12 | 3 | -21/+554 |
| | | | | | | Also added RR and MM TLV tables to gsm48.c [import from accidential commit to osmocom-bb.git] | ||||
* | Added single octet TV (type + value) to libosmocore. | Andreas Eversberg | 2010-07-12 | 2 | -0/+9 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of a single octet, the upper nibble is the type, the lower nibble carries the value. [import from accidentially committed changes to osmocom-bb.git] diff --git a/src/shared/libosmocore/include/osmocore/tlv.h b/src/shared/libosmocore/include/osmocore/tlv.h index c733dbc..4cfce87 100644 --- a/src/shared/libosmocore/include/osmocore/tlv.h +++ b/src/shared/libosmocore/include/osmocore/tlv.h @@ -212,6 +212,7 @@ enum tlv_type { TLV_TYPE_TLV, TLV_TYPE_TL16V, TLV_TYPE_TvLV, + TLV_TYPE_SINGLE_TV }; struct tlv_def { diff --git a/src/shared/libosmocore/src/tlv_parser.c b/src/shared/libosmocore/src/tlv_parser.c index 407e57a..bbef7a9 100644 --- a/src/shared/libosmocore/src/tlv_parser.c +++ b/src/shared/libosmocore/src/tlv_parser.c @@ -36,6 +36,14 @@ int tlv_parse_one(uint8_t *o_tag, uint16_t *o_len, const uint8_t **o_val, tag = *buf; *o_tag = tag; + /* single octet TV IE */ + if (def->def[tag & 0xf0].type == TLV_TYPE_SINGLE_TV) { + *o_tag = tag & 0xf0; + *o_val = buf; + *o_len = 1; + return 1; + } + /* FIXME: use tables for knwon IEI */ switch (def->def[tag].type) { case TLV_TYPE_T: |