Harald Welte [Wed, 25 Aug 2010 17:25:37 +0000 (19:25 +0200)]
add header file for osmo_daemonize()
Harald Welte [Wed, 25 Aug 2010 17:24:26 +0000 (19:24 +0200)]
Add helper function 'osmo_daemonize()' to convert process into daemon
Harald Welte [Wed, 25 Aug 2010 17:24:00 +0000 (19:24 +0200)]
logging: add missing include file changes for last commit (logfile)
Harald Welte [Wed, 25 Aug 2010 17:10:50 +0000 (19:10 +0200)]
logging: add log target logging into text file and log target destroy function
Harald Welte [Wed, 25 Aug 2010 12:55:44 +0000 (14:55 +0200)]
logging: rename tgt_stdout to tgt_file
Harald Welte [Tue, 24 Aug 2010 13:17:13 +0000 (15:17 +0200)]
add debian packaging related information
Using the debian directory in this commit, it is possible to generate
libosmocore and libosmocore-dev packages (dpkgs).
Holger Hans Peter Freyther [Thu, 5 Aug 2010 22:48:43 +0000 (06:48 +0800)]
bsc_fd: Add a build option to be able to debug fd list corruption
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.
Holger Hans Peter Freyther [Wed, 4 Aug 2010 10:50:43 +0000 (18:50 +0800)]
gsm0808: Add some more TLV definitions coming from the cellmgr_ng
Harald Welte [Wed, 4 Aug 2010 09:46:44 +0000 (11:46 +0200)]
Import gsm48_decode_freq_list() from osmocom-bb/layer23
This will enable us to use this function from OpenBSC / ipaccess-config
Holger Hans Peter Freyther [Tue, 3 Aug 2010 22:27:08 +0000 (06:27 +0800)]
vty: Forward delcare the logging command.
Harald Welte [Fri, 30 Jul 2010 19:01:54 +0000 (21:01 +0200)]
logging: Make sure we don't use "end of color" code if colors are turned off
Harald Welte [Fri, 30 Jul 2010 09:43:30 +0000 (11:43 +0200)]
add new hexdump_nospc() function
Harald Welte [Fri, 30 Jul 2010 09:40:32 +0000 (11:40 +0200)]
move hexdump() from logging.c to utils.c
Harald Welte [Fri, 30 Jul 2010 08:37:29 +0000 (10:37 +0200)]
Import 'hexparse' function from OpenBSC
Sylvain Munaut [Sun, 25 Jul 2010 16:09:28 +0000 (18:09 +0200)]
core/msgb: Use the new osmo_panic call to handle errors
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Sylvain Munaut [Sun, 25 Jul 2010 16:08:54 +0000 (18:08 +0200)]
core: Add some generic panic handling
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>
Sylvain Munaut [Sun, 25 Jul 2010 14:16:42 +0000 (16:16 +0200)]
build: Use AS_HELP_STRING macro to format the ./configure --help better
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Sylvain Munaut [Sun, 25 Jul 2010 10:25:17 +0000 (12:25 +0200)]
osmocore: Add utility function rsl_chan_nr_str to RSL
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Holger Hans Peter Freyther [Fri, 23 Jul 2010 11:22:23 +0000 (19:22 +0800)]
msgb: Avoid warnings that the string might contain %s or such..
Holger Hans Peter Freyther [Fri, 23 Jul 2010 10:35:59 +0000 (18:35 +0800)]
gsm0808: Why should there be a lchan in the parameter...
Holger Hans Peter Freyther [Fri, 23 Jul 2010 10:20:02 +0000 (18:20 +0800)]
gsm0808: Import unaligned mem access fix from on-waves/bsc-master
Holger Hans Peter Freyther [Fri, 23 Jul 2010 08:35:00 +0000 (16:35 +0800)]
gsm_utils: Move the gsm_7bit_alphabet into the impl and make it static
Harald Welte [Thu, 22 Jul 2010 19:55:24 +0000 (21:55 +0200)]
msgb: Check for available headroom/tailroom and abort() if we violate it
Holger Hans Peter Freyther [Tue, 20 Jul 2010 21:02:33 +0000 (05:02 +0800)]
gsm_04_12.h: Add beginning of structs for SMS CB
I am trying to understand the RSL and GSM 04.12
spec to implement CBS for OpenBSC...
Holger Hans Peter Freyther [Tue, 20 Jul 2010 19:14:01 +0000 (03:14 +0800)]
gsm_7bit_decode: rtext does not hold a null byte, reduce the size
I have added the + 1 as I thought rtext will hold a terminating
null byte but it will not.
Nico Golde [Tue, 20 Jul 2010 13:43:58 +0000 (15:43 +0200)]
tests: don't hardcode length values of expected encoding gsm_7bit_encode:
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.
Holger Hans Peter Freyther [Mon, 19 Jul 2010 18:54:54 +0000 (02:54 +0800)]
gsm_7bit_decode: Handle the case of the last charachter being an escape
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.
Holger Hans Peter Freyther [Mon, 19 Jul 2010 18:46:56 +0000 (02:46 +0800)]
tests: Separate encoding/decoding test to verify them independly
Use the current test result as test data for future
regression testing. The encode function appears to
add too many zeros to the text.
Nico Golde [Fri, 9 Jul 2010 15:19:12 +0000 (17:19 +0200)]
* rewrite GSM 7bit default encoding/decoding based on a lookup table as the previous code produced wrong encodings for certain characters.
Ingo Albrecht [Thu, 15 Jul 2010 20:43:52 +0000 (22:43 +0200)]
Added crc16 from linux kernel.
Andreas Eversberg [Tue, 13 Jul 2010 11:50:39 +0000 (13:50 +0200)]
[VTY] add support for numeric ranges with negative numbers
This enables us to do something like <-128-127> as a numeric range.
Harald Welte [Tue, 13 Jul 2010 11:48:13 +0000 (13:48 +0200)]
[RSL] split rsl_rll_push_l3() L3 LV pushign and rsl_rll_push_hdr()
This allows us to generate RSLms messages that have some non-standard
IEs between the RSL/RLL common header and the L3 INFO IE.
Andreas Eversberg [Mon, 12 Jul 2010 07:12:46 +0000 (09:12 +0200)]
Add 3-digit MNC support to gsm48_generate_lai()
Andreas Eversberg [Mon, 12 Jul 2010 07:11:00 +0000 (09:11 +0200)]
Added new IE definitions to gsm_04_08.h of libosmocore.
Also added RR and MM TLV tables to gsm48.c
[import from accidential commit to osmocom-bb.git]
Andreas Eversberg [Mon, 12 Jul 2010 06:55:14 +0000 (08:55 +0200)]
Added single octet TV (type + value) to libosmocore.
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:
Sylvain Munaut [Sun, 4 Jul 2010 09:41:36 +0000 (11:41 +0200)]
gsm_utils: Fix typo in gsm band name
thanks to horizon for noticing :p
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Harald Welte [Wed, 30 Jun 2010 17:50:14 +0000 (19:50 +0200)]
GPRS: Add 'input' generator functions for GPRS cipher algorithm
Harald Welte [Wed, 30 Jun 2010 17:43:11 +0000 (19:43 +0200)]
Add support for plugins (and specifically GPRS encryption plugins)
Harald Welte [Tue, 29 Jun 2010 20:31:21 +0000 (22:31 +0200)]
[gsmtap] add new gsmtap_makemsg() function
This generates a gsmtap message without actually enqueueing to a
bsc_select style queue.
Harald Welte [Tue, 29 Jun 2010 18:51:13 +0000 (20:51 +0200)]
Add gsmtap utility functions to libosmocore
This is imported from OsmocomBB/Layer23
Harald Welte [Fri, 25 Jun 2010 01:00:58 +0000 (03:00 +0200)]
Fix typo in configure script regarding --disable-vty
Andreas Eversberg [Fri, 25 Jun 2010 00:50:56 +0000 (02:50 +0200)]
[RSL] Added special RSL message types for mobile side
- suspension DL
- resume DL
- re-establish DL
Andreas Eversberg [Fri, 25 Jun 2010 00:50:06 +0000 (02:50 +0200)]
[gsm48] fix typo in struct gsm48_req_ref
Harald Welte [Tue, 15 Jun 2010 07:32:14 +0000 (09:32 +0200)]
[GSM 04.08] add more RR IEIs
Sylvain Munaut [Thu, 10 Jun 2010 11:30:50 +0000 (13:30 +0200)]
gsm48: Add authentication response message
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Sylvain Munaut [Wed, 9 Jun 2010 11:38:56 +0000 (13:38 +0200)]
gsm_utils: Add a fn to test A5(x) support given a classmark2
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Holger Hans Peter Freyther [Tue, 8 Jun 2010 08:12:58 +0000 (16:12 +0800)]
vty: Mark app info strings as const char*.
Harald Welte [Tue, 1 Jun 2010 19:21:20 +0000 (21:21 +0200)]
Merge remote branch 'origin/master'
Harald Welte [Tue, 1 Jun 2010 08:47:07 +0000 (10:47 +0200)]
add new new gprs_tmsi2tlli() function
Harald Welte [Mon, 31 May 2010 14:01:59 +0000 (16:01 +0200)]
[VTY] Remove all application specific VTY node definitions from enum
Harald Welte [Sat, 29 May 2010 09:49:51 +0000 (11:49 +0200)]
add configure option '--disable-vty' to prevent building libosmovty
Harald Welte [Tue, 25 May 2010 21:00:45 +0000 (23:00 +0200)]
[VTY] Introduce "struct vty_app_info" for vty_init() function
Harald Welte [Wed, 19 May 2010 17:54:00 +0000 (19:54 +0200)]
rename log_info to osmo_log_info to avoid namespace clash with app
Harald Welte [Wed, 19 May 2010 17:44:57 +0000 (19:44 +0200)]
fix typo resultin in dist/distcheck problem
Harald Welte [Wed, 19 May 2010 17:42:32 +0000 (19:42 +0200)]
Add pkgconfig for libosmovty
Harald Welte [Wed, 19 May 2010 17:25:40 +0000 (19:25 +0200)]
make sure we actually install the vty headers
Harald Welte [Wed, 19 May 2010 17:02:52 +0000 (19:02 +0200)]
Create libosmovty as library from OpenBSC VTY functions
Holger Hans Peter Freyther [Sun, 23 May 2010 13:14:32 +0000 (21:14 +0800)]
rate_ctr: Make the struct rate_ctr_group_desc members const
Andreas.Eversberg [Sun, 9 May 2010 09:36:54 +0000 (09:36 +0000)]
Added some "get"-functions to bitvec of libosmocore.
- Getting Low or High value from current postion
- Getting unsigned interger from current postion
Holger Hans Peter Freyther [Sun, 16 May 2010 00:15:40 +0000 (08:15 +0800)]
gsm0808: Add API to wrap a GSM48 msg with a BSSMAP/DTAP msg.
Holger Hans Peter Freyther [Sat, 15 May 2010 14:35:25 +0000 (22:35 +0800)]
gsm48: Add paging response header
Holger Hans Peter Freyther [Thu, 13 May 2010 23:25:01 +0000 (07:25 +0800)]
gsm0808: Add TLV entries for types used by the Compl Layer3 Information
Harald Welte [Thu, 13 May 2010 11:28:12 +0000 (13:28 +0200)]
[rate_ctr] always 'overflow' in next larger inetrval when interval ends
If a second ends, we add the number of events in that just-ended second
to the number of events in the currently running minute. The same happens
at the end of a minute: We add the number of events in that just-ended
minute into the number of events of the still-running hour, etc.
This gives a much more meaningful numbers and we don't end up with
"12 events per second, but 0 events per minute" kind of situations
anymore.
Harald Welte [Thu, 13 May 2010 10:53:35 +0000 (12:53 +0200)]
[rate_ctr] Rename group_prefix_fmt to group_name_prefix
Harald Welte [Thu, 13 May 2010 10:50:44 +0000 (12:50 +0200)]
rate_counters: Remove group-name-sprintf-with-idx string
Harald Welte [Thu, 13 May 2010 10:16:17 +0000 (12:16 +0200)]
rate_ctr: Store the numeric index as part of 'rate_ctr_group'
Harald Welte [Thu, 13 May 2010 09:35:30 +0000 (11:35 +0200)]
Add new 'rate counter' implementation to libosmocore
A 'rate counter' is a counter that counts events but also keeps
track of the rate of events (per second, minute, hour and day).
'rate counters' are generally abstracted in 'rate counter groups',
which are instances of a 'rate counter group description'. This
way we can have e.g. a description describing what kind of counters
a BTS (or TRX) has - and we can then create one instance of that
group for every BTS or TRX that exists.
Harald Welte [Tue, 11 May 2010 14:39:22 +0000 (16:39 +0200)]
logging: add log_vty_{level,category}_string()
Harald Welte [Tue, 11 May 2010 09:19:40 +0000 (11:19 +0200)]
logging: introuduce log_level_str() to obtain the name of a log level
Harald Welte [Sat, 1 May 2010 21:53:26 +0000 (23:53 +0200)]
msgb: initialize cb[] to zero during msgb_reset()
Harald Welte [Sat, 1 May 2010 12:25:22 +0000 (14:25 +0200)]
Import gsm48_construct_ra() from openbsc
Harald Welte [Sat, 1 May 2010 10:06:48 +0000 (12:06 +0200)]
gsm48.h: Prevent accidental re-inclusion of same header file
Harald Welte [Sat, 1 May 2010 09:59:42 +0000 (11:59 +0200)]
import gsm48_parse_ra() and gprs_tlli_type() from openbsc
Holger Hans Peter Freyther [Sat, 1 May 2010 07:09:48 +0000 (15:09 +0800)]
Add missing file.
Harald Welte [Fri, 30 Apr 2010 12:29:11 +0000 (14:29 +0200)]
msgb: introduce msgb->cb (the control buffer)
Harald Welte [Fri, 30 Apr 2010 12:26:12 +0000 (14:26 +0200)]
msgb: remove smsh, llch, tlli and gmmh
This is a lot of GSM/GPRS specific stuff in struct msgb which we want
to avoid. The 'control buffer' will replace them.
Harald Welte [Fri, 30 Apr 2010 12:19:48 +0000 (14:19 +0200)]
remove the unneeded bts_link pointer from msgb
Sylvain Munaut [Wed, 28 Apr 2010 08:10:47 +0000 (10:10 +0200)]
Update .gitignore
m4/*.m4 -> autoreconf adds stuff there
tests -> Build product
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Sylvain Munaut [Wed, 28 Apr 2010 08:05:29 +0000 (10:05 +0200)]
gsm 08.08: Fix some u_int8_t -> uint8_t
This breaks the ARM build in osmocom-bb. Besides uint??_t seems to
be the preferred type in osmocore. (coming from stdint.h vs sys/types.h)
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Sylvain Munaut [Tue, 27 Apr 2010 19:48:40 +0000 (21:48 +0200)]
gsm_utils: Just add some constant and timekeeping utils
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Holger Hans Peter Freyther [Sat, 17 Apr 2010 04:21:49 +0000 (06:21 +0200)]
gsm0808: Port asiggnment_complete msg creation to libosmocore.
Holger Hans Peter Freyther [Sat, 17 Apr 2010 04:16:35 +0000 (06:16 +0200)]
gsm0808: Port cipher_complete to be part of libosmocore.
Holger Hans Peter Freyther [Sat, 17 Apr 2010 03:14:36 +0000 (05:14 +0200)]
gsm0808: Add the TLV definition for some of the 0808 IEs
Holger Hans Peter Freyther [Thu, 15 Apr 2010 08:10:39 +0000 (10:10 +0200)]
Add GSM0808 utilities to Osmocore.
The code is coming from the on-waves/bsc-master branch.
Holger Hans Peter Freyther [Thu, 15 Apr 2010 08:01:39 +0000 (10:01 +0200)]
gsm_08_08.h: Remove OpenBSC include file from the header.
Holger Hans Peter Freyther [Thu, 15 Apr 2010 01:14:51 +0000 (03:14 +0200)]
Add GSM08.08 protocol header.
This header is copied from bssap.h of the on-waves/bsc-master
branch and only contains the protocol specific information.
Holger Hans Peter Freyther [Sun, 11 Apr 2010 15:33:19 +0000 (17:33 +0200)]
select.c: Make the ugly hacker uglier...
Right now I'm seeing crashes when removing a link and deleting
it and I need this hack to make it not crash. We will have to
understand if llist_for_each_entry_safe has a bug or if we are
doing something bad with the list (anchors not properly initialized).
Harald Welte [Fri, 9 Apr 2010 05:57:40 +0000 (07:57 +0200)]
remove references to u_int*_t and use uint*_t instead
Andreas Eversberg [Fri, 9 Apr 2010 05:52:12 +0000 (07:52 +0200)]
gsm48: introduce MM_CONNECTION_PEND state
Harald Welte [Fri, 9 Apr 2010 05:50:18 +0000 (07:50 +0200)]
gsm48-ie.c: Fix year in copyright message
Holger Hans Peter Freyther [Thu, 8 Apr 2010 08:58:20 +0000 (10:58 +0200)]
write_queue: Add callback for exceptions as well.
Harald Welte [Sun, 28 Mar 2010 10:14:50 +0000 (18:14 +0800)]
import gsm48_mi_to_string() from OpenBSC
Harald Welte [Fri, 26 Mar 2010 16:04:40 +0000 (00:04 +0800)]
logging: only compile stderr target if we actualy have stderr
Harald Welte [Fri, 26 Mar 2010 15:51:31 +0000 (23:51 +0800)]
only include strings.h if it is actually preent
Harald Welte [Fri, 26 Mar 2010 14:04:03 +0000 (22:04 +0800)]
logging: fix default initialization of per-category loglevels
Before this patch, there was a bug in the code caused by a memcpy
from one data structure to another. unfortuantely the data structures
were not the same, so we have to explicitly iterate over the array
and assign the structure members manually.
Harald Welte [Fri, 26 Mar 2010 13:24:24 +0000 (21:24 +0800)]
rename 'debug' interface to 'logging' interface
It's not really about debugging, but about generic logging...
Harald Welte [Fri, 26 Mar 2010 13:05:43 +0000 (21:05 +0800)]
debug: remove unneeded 'number' member of 'struct debug_info_cat'
As the debug subsystem number is used as index into the debug_info_cat
array, there is no need to store the number explicitly inside the
structure again.
Harald Welte [Fri, 26 Mar 2010 01:45:03 +0000 (09:45 +0800)]
debug.c: fix no-color-printing in case .color = NULL
Harald Welte [Fri, 26 Mar 2010 01:33:40 +0000 (09:33 +0800)]
Import 'debug' support from OpenBSC into libosmocore
Holger Hans Peter Freyther [Fri, 26 Mar 2010 08:20:22 +0000 (09:20 +0100)]
write_queue: Add a method to clear the queue.