summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fixed broken gsmmap.Andreas Eversberg2011-07-312-1/+11
|
* Merge commit '1a99df84e12315c63f2e96a2972864e4c311712d'Sylvain Munaut2011-07-303-6/+6
|\
| * gsm/gsm48_ie: Fix frequency list decodingAndreas.Eversberg2011-07-301-1/+1
| | | | | | | | | | Fix-by: Andreas.Eversberg <jolly@eversberg.eu> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
| * use the 'L' prefix in debug names (DLINP instead of DINP)Harald Welte2011-07-291-4/+4
| |
* | layer23: Add mobile support for sending / receiving voice frame through MNCCAndreas.Eversberg2011-07-2815-39/+333
| | | | | | | | | | | | | | Support GSM FR codec only so far. Written-by: Andreas Eversberg <jolly@eversberg.eu> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | fw/prim_tch: Add support for sending frame from l23 (TRAFFIC_REQ/CONF)Sylvain Munaut2011-07-281-3/+73
| | | | | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | fw/prim_tch: Add support for sending traffic frames to l23 (TRAFFIC_IND)Sylvain Munaut2011-07-281-2/+28
| | | | | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | fw/layer1/l23_api: Add processing of the new audio_modeSylvain Munaut2011-07-284-10/+33
| | | | | | | | | | | | This currently just stores it into the l1 sync state struct Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | l23/l1ctl: Add default values for audio_modeSylvain Munaut2011-07-281-0/+3
| | | | | | | | | | | | Theses value should simulate the old behavior Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | fw/l1: Add a queue for traffic frame to send to network (TRAFFIC_REQ)Sylvain Munaut2011-07-282-0/+28
| | | | | | | | | | | | | | | | Also hard limit to maximum 4 pending frames (should not happen !), the upstream is supposed to do its own flow control. Written-by: Andreas Eversberg <jolly@eversberg.eu> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | l1ctl: Add definition for TRAFFIC_{REQ,CONF,IND}Sylvain Munaut2011-07-281-1/+1
| | | | | | | | | | | | Also adapt packet creation length in L1 Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | layer23: Adapt to new logging API: fix calls to log_initAndreas.Eversberg2011-07-282-2/+2
| | | | | | | | Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | Merge commit '430be849945688ae107b079db1e216329b1a1f06'Andreas.Eversberg2011-07-2841-194/+3509
|\|
| * sms: Fix style issues with the code, add spaces after keywordsHolger Hans Peter Freyther2011-07-241-5/+5
| |
| * sms: SMS where cropped (from VTY), concatenation of SMS where not possibleDennis Wehrle2011-07-241-29/+89
| | | | | | | | | | | | | | | | | | | | | | | | Additionally it wasn't possible to send concatenated sms from the vty. To send multiple sms, it is necessary to use padding bits and add a user_data_header. Therefore the gsm_7bit_encode function was splitted to gsm_7bit_encode and gsm_septets2octets. gsm_septets2octets: this is the old gsm_7bit_encode function + additional padding parameter Additionally the gsm_7bit_decode function was modified to take account for the user_data_header. With the new gsm_get_octet_len function you can get the octet length for a given septet length. I also added several sms tests.
| * remove DLRSL and DLNM, we don't need themHarald Welte2011-07-211-12/+0Star
| | | | | | | | | | They are not used anywhere in our libraries, so they should be defined by the respective applications
| * make sure we don't have namespace clashes between libraries and appsHarald Welte2011-07-191-6/+6
| | | | | | | | | | | | | | | | * All loging prefixes in libraries should be DL like DLINP * All signals / subsystems should be called S_L_* SS_L_* * All command nodes should be called L_*_NODE This makes sure existinc code still compiles as expected
| * logging: add libosmo-abis logging subsystemsPablo Neira Ayuso2011-07-181-0/+34
| | | | | | | | | | | | This adds the libosmo-abis logging subsystems to libosmocore, it uses the new change that harald proposed based on negative numbers for library logging subsystems.
| * lapdm: fix memory leak due to unreachable codeHarald Welte2011-07-161-1/+0Star
| | | | | | | | detected by Smatch
| * gsm 08.08: use ANSI function definition with (void)Harald Welte2011-07-161-1/+1
| |
| * tlv: Make tlv parser arrays 256 entries wide to prevent overflow on 0xffHarald Welte2011-07-161-1/+1
| | | | | | | | | | | | | | If we encounter a tag with 0xFF, we overflow our existing tlv_parse array definitions. Warning: this breaks ABI
| * gprs_cipher_core: Fix potential buffer overflowsHarald Welte2011-07-161-3/+3
| | | | | | | | detected by Smatch
| * telnet_interface: if we don't check for the return value, don't use retHarald Welte2011-07-161-5/+4Star
| |
| * telnet_interface: get rid of 'const' warningHarald Welte2011-07-161-1/+1
| |
| * get rid of non-ANSI function declarations missing (void)Harald Welte2011-07-163-6/+6
| | | | | | | | Detected by Smatch
| * timer: use (void) for functions that take no argumentsHarald Welte2011-07-161-3/+3
| | | | | | | | This has been detected by http://smatch.sourceforge.net/
| * osmo_hexdump: Fix segfault when input is too long.Holger Hans Peter Freyther2011-07-151-0/+2
| | | | | | | | | | | | | | | | | | | | In snprinftf the size is a size_t (unsigned) in case we want to write more than we have available, len_remain will be < 0. This was spotted while removing hexdump from simtrace and comparing it to our implementation. int snprintf(char *str, size_t size, const char *format, ...);
| * GSM 08.08: Fix generation of CIPHER MODE REJECTHarald Welte2011-07-121-1/+1
| | | | | | | | | | The message has a total length of 4 octets, so don't allocate only 3 in the msgb.
| * gsm 08.08: add value_strings and gsm0808_msg_name() functionHarald Welte2011-07-111-0/+86
| |
| * fix against corrupted output in parallel loggingHarald Welte2011-07-021-1/+1
| | | | | | | | | | | | | | | | | | In 825607672215b7a12ea6e201a89cd5209f6d657f it was attempted to fix a bug previously introduced by logging related changes. The problem is that a va_list can be corrupted after it has been used once, so we need to va_copy before each successive use. And if we copy it, we also need to use the copy, and not the original ;)
| * lapdm: make sure we flush all queues whenever entering IDLE stateHarald Welte2011-06-291-0/+11
| | | | | | | | | | this fixes a memory leak where the final UA would always remain in memory after a LAPDm entity has been disconnected.
| * add msgb_set_talloc_ctx() to set the talloc context for msgb allocationsHarald Welte2011-06-291-0/+5
| |
| * make sure abis_nm <-> osmocom pchan type conversion always worksHarald Welte2011-06-291-0/+2
| |
| * LAPDm: Uplink SACCH frames use format B, not format B4Harald Welte2011-06-291-5/+12
| |
| * LAPDm: When Rx DATA from L1, L1 does not know the SAPIHarald Welte2011-06-271-13/+14
| | | | | | | | We have to determine the SAPI ourselves inside the LAPDm header.
| * Fix the generation of the log_categories string + LAPDMHarald Welte2011-06-271-4/+7
| | | | | | | | | | | | | | | | ... I should do more testing :( Conflicts: src/logging.c
| * logging: make sure to add the internal categories, as intendedHarald Welte2011-06-271-0/+6
| |
| * add LAPDm code from osmocom-bb into libosmocoreHarald Welte2011-06-273-1/+2518
| |
| * logging: introduce library-internal logging categoriesHarald Welte2011-06-272-21/+93
| | | | | | | | | | | | | | | | | | | | We do this by using a trick: library-internal log categories use negative subsystem numbers, which are converted into positive array indexes at the time of logging. library-internal log categories need to be knwo at compile-time, while application-specified categories now are of unlimited number, as they are dynamically allocated.
| * import gsm0502_calc_paging_group() from openbscHarald Welte2011-06-262-1/+44
| |
| * add some utility functions for paging related calculation (TS 05.02)Harald Welte2011-06-261-7/+7
| |
| * add gsm48_number_of_paging_subchannels() functionHarald Welte2011-06-261-0/+13
| | | | | | | | (from openbsc's rsl_number_of_paging_subchannels)
| * merge process.[ch] with application.[ch]Harald Welte2011-06-264-74/+63Star
| |
* | [mobile] Added missing curly braces, as proposed by HaraldAndreas Eversberg2011-07-171-1/+2
| |
* | [layer23] Added special return value for invalid MCC/MNC inputAndreas Eversberg2011-07-173-16/+21
| | | | | | | | This way an MNC of 000 can be entered.
* | [layer23] Correctly report to restart mobile instance after band changeAndreas Eversberg2011-07-171-11/+11
| | | | | | | | | | Mobile instance must be restarted (shutdown / no shutdown) in order to apply changes to the available ARFCNs.
* | [layer23] Fixes and improvements of system information decodingAndreas Eversberg2011-07-172-33/+57
| |
* | fw/apps: Remove manual gain control with keyboardSylvain Munaut2011-07-172-54/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | - It's broken by the use of compute_gain - Since there is now an AGC loop, manually setting the register as no effect. If someone needs manual gain control for testing, he'll have to re-implement a proper AGC override. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
* | [layer23/mobile] Improvement and fixes of idle mode processAndreas Eversberg2011-07-1713-773/+2626
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces cell re-relection. When camping on a cell, it scanns neighbour cells. If a 'better' cell is found, the cell is selected. If the cell is in a different location area, a location upating is performed under certain conditions. The 'better' cell depends on various informations that are broadcasted on the BCCH of a neihbour cell and of course the RX level. Most operators don't set these informations, so the 'better' cell depend on a better RX level for the same location area, or a much better RX level (6 dBm) at a different location area. There were many issues at the idle mode process that has been fixed. Expecially when moving, the state machines got stuck, so no more cell search was possible, or no further calls / location updating was possible. In order to see the process of cell selection, enter the VTY interface and enable the network monitor: enable monitor network 1 (where '1' is the instance of the MS) In order to see the current state of the processes, enter: show ms
* | [mobile] Corrected output value of PCS power classAndreas Eversberg2011-07-171-1/+1
| |