osmocom-bb.git
12 years agomore changes
Holger Hans Peter Freyther [Wed, 13 Jul 2011 18:49:02 +0000 (20:49 +0200)]
more changes

12 years agodebian: Updates to fix lintian errors
Holger Hans Peter Freyther [Wed, 13 Jul 2011 15:22:57 +0000 (17:22 +0200)]
debian: Updates to fix lintian errors

12 years agodebian: Switch to the 3.0(quilt) format to play with launchpad
Holger Hans Peter Freyther [Wed, 13 Jul 2011 15:16:29 +0000 (17:16 +0200)]
debian: Switch to the 3.0(quilt) format to play with launchpad

12 years agodebian: Add new changelog entry for the shlib:Depends change
Holger Hans Peter Freyther [Wed, 13 Jul 2011 13:08:45 +0000 (15:08 +0200)]
debian: Add new changelog entry for the shlib:Depends change

12 years agodebian: dpkg-buildpackage complains about this here
Holger Hans Peter Freyther [Wed, 13 Jul 2011 12:08:18 +0000 (14:08 +0200)]
debian: dpkg-buildpackage complains about this here

12 years agodebian: Add a new changelog entry
Holger Hans Peter Freyther [Wed, 13 Jul 2011 11:53:23 +0000 (13:53 +0200)]
debian: Add a new changelog entry

12 years agoGSM 08.08: Fix generation of CIPHER MODE REJECT
Harald Welte [Mon, 11 Jul 2011 22:02:09 +0000 (00:02 +0200)]
GSM 08.08: Fix generation of CIPHER MODE REJECT

The message has a total length of 4 octets, so don't allocate only 3 in the
msgb.

12 years agogsm 08.08: add value_strings and gsm0808_msg_name() function
Harald Welte [Mon, 11 Jul 2011 15:43:19 +0000 (17:43 +0200)]
gsm 08.08: add value_strings and gsm0808_msg_name() function

12 years agofix against corrupted output in parallel logging
Harald Welte [Sat, 2 Jul 2011 19:51:32 +0000 (21:51 +0200)]
fix against corrupted output in parallel logging

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 ;)

12 years agolapdm: make sure we flush all queues whenever entering IDLE state
Harald Welte [Wed, 29 Jun 2011 17:22:47 +0000 (19:22 +0200)]
lapdm: make sure we flush all queues whenever entering IDLE state

this fixes a memory leak where the final UA would always remain
in memory after a LAPDm entity has been disconnected.

12 years agoadd msgb_set_talloc_ctx() to set the talloc context for msgb allocations
Harald Welte [Wed, 29 Jun 2011 16:46:10 +0000 (18:46 +0200)]
add msgb_set_talloc_ctx() to set the talloc context for msgb allocations

12 years agomake sure abis_nm <-> osmocom pchan type conversion always works
Harald Welte [Wed, 29 Jun 2011 16:44:06 +0000 (18:44 +0200)]
make sure abis_nm <-> osmocom pchan type conversion always works

12 years agoLAPDm: Uplink SACCH frames use format B, not format B4
Harald Welte [Wed, 29 Jun 2011 10:13:51 +0000 (12:13 +0200)]
LAPDm: Uplink SACCH frames use format B, not format B4

12 years agoLAPDm: When Rx DATA from L1, L1 does not know the SAPI
Harald Welte [Mon, 27 Jun 2011 21:32:14 +0000 (23:32 +0200)]
LAPDm: When Rx DATA from L1, L1 does not know the SAPI

We have to determine the SAPI ourselves inside the LAPDm header.

12 years agoFix the generation of the log_categories string + LAPDM
Harald Welte [Mon, 27 Jun 2011 12:19:16 +0000 (14:19 +0200)]
Fix the generation of the log_categories string + LAPDM

... I should do more testing :(

Conflicts:

src/logging.c

12 years agologging: make sure to add the internal categories, as intended
Harald Welte [Mon, 27 Jun 2011 12:00:03 +0000 (14:00 +0200)]
logging: make sure to add the internal categories, as intended

12 years agoadd LAPDm code from osmocom-bb into libosmocore
Harald Welte [Mon, 27 Jun 2011 08:51:37 +0000 (10:51 +0200)]
add LAPDm code from osmocom-bb into libosmocore

12 years agologging: introduce library-internal logging categories
Harald Welte [Mon, 27 Jun 2011 08:29:17 +0000 (10:29 +0200)]
logging: introduce library-internal logging categories

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.

12 years agoimport gsm0502_calc_paging_group() from openbsc
Harald Welte [Sun, 26 Jun 2011 12:47:16 +0000 (14:47 +0200)]
import gsm0502_calc_paging_group() from openbsc

12 years agoadd some utility functions for paging related calculation (TS 05.02)
Harald Welte [Sun, 26 Jun 2011 12:33:57 +0000 (14:33 +0200)]
add some utility functions for paging related calculation (TS 05.02)

12 years agoadd gsm48_number_of_paging_subchannels() function
Harald Welte [Sun, 26 Jun 2011 12:20:04 +0000 (14:20 +0200)]
add gsm48_number_of_paging_subchannels() function

(from openbsc's rsl_number_of_paging_subchannels)

12 years agoadd MAX() macro as OSMO_MAX
Harald Welte [Sun, 26 Jun 2011 12:19:54 +0000 (14:19 +0200)]
add MAX() macro as OSMO_MAX

12 years agomerge process.[ch] with application.[ch]
Harald Welte [Sun, 26 Jun 2011 11:07:18 +0000 (13:07 +0200)]
merge process.[ch] with application.[ch]

12 years agogsm/utils: Adding conversion of "mobile power class" to dBm
Andreas Eversberg [Sun, 26 Jun 2011 09:41:48 +0000 (11:41 +0200)]
gsm/utils: Adding conversion of "mobile power class" to dBm

Written-by: Andreas Eversberg <jolly@eversberg.eu>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
12 years agosysinfo: add EXTENDED MEASUREMENT ORDER / MEASUREMENT INFO to SI types
Harald Welte [Sat, 25 Jun 2011 19:39:18 +0000 (21:39 +0200)]
sysinfo: add EXTENDED MEASUREMENT ORDER / MEASUREMENT INFO to SI types

those two are used in the RSL SACCH FILLING messages and delivered
like SI5 / SI6.

12 years agoRSL: Fix typo
Harald Welte [Sat, 25 Jun 2011 19:39:01 +0000 (21:39 +0200)]
RSL: Fix typo

12 years agoadd value_string definitions for RSL message types
Harald Welte [Thu, 23 Jun 2011 18:43:13 +0000 (20:43 +0200)]
add value_string definitions for RSL message types

12 years agointroduce GSM primitive definitions
Harald Welte [Thu, 23 Jun 2011 13:04:47 +0000 (15:04 +0200)]
introduce GSM primitive definitions

The idea here is to use the osmocom core primitive code ot abstract out
primitives for inter-layer comunication in GSM.

12 years agoadd new 'prim.h' header file for primitives
Harald Welte [Thu, 23 Jun 2011 12:14:20 +0000 (14:14 +0200)]
add new 'prim.h' header file for primitives

12 years agosocket: add OSMO_SOCK_F_[CONNECT|BIND|NON_BLOCK] flags
Pablo Neira Ayuso [Thu, 9 Jun 2011 13:04:30 +0000 (15:04 +0200)]
socket: add OSMO_SOCK_F_[CONNECT|BIND|NON_BLOCK] flags

This extends the socket infrastructure in libosmocore to allow
to create non-blocking sockets.

Basically, it replaces the connect0_bind1 parameter by one
flags parameter.

12 years agoMerge branch 'master' of git.osmocom.org:libosmocore
Pablo Neira Ayuso [Mon, 13 Jun 2011 17:15:50 +0000 (19:15 +0200)]
Merge branch 'master' of git.osmocom.org:libosmocore

12 years agoadd missing #include file to sysinfo.h
Harald Welte [Sun, 5 Jun 2011 17:53:56 +0000 (19:53 +0200)]
add missing #include file to sysinfo.h

(otherwise 'struct value_string' would not be defined)

12 years agoabis_nm.h: Add include to gsm_utils.h
Harald Welte [Sun, 5 Jun 2011 09:22:59 +0000 (11:22 +0200)]
abis_nm.h: Add include to gsm_utils.h

12 years agosocket: getaddrinfo(): set AI_PASSIVE if we want to bind
Harald Welte [Tue, 31 May 2011 15:47:54 +0000 (17:47 +0200)]
socket: getaddrinfo(): set AI_PASSIVE if we want to bind

This will tell getaddrinfo() that we want a INADDR_ANY style socket

12 years agoabis_nm: Forward declare the used enums
Holger Hans Peter Freyther [Mon, 30 May 2011 22:42:38 +0000 (00:42 +0200)]
abis_nm: Forward declare the used enums

This file is using enums in that might or might not be
known to the compiler. Forward declare them.

12 years agogsmtap_util: Remove msg_free from the wq call back
Sylvain Munaut [Sun, 29 May 2011 17:48:15 +0000 (19:48 +0200)]
gsmtap_util: Remove msg_free from the wq call back

write_queue already frees the message after the callback is called.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
12 years agogsm/sysinfo: Fix rsl2sitype array size
Sylvain Munaut [Sun, 29 May 2011 13:39:04 +0000 (15:39 +0200)]
gsm/sysinfo: Fix rsl2sitype array size

0xff is the maximum value ... so there is 256 elements.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
12 years agogsm/sysinfo: don't include netinet/in.h
Harald Welte [Sun, 29 May 2011 13:37:49 +0000 (15:37 +0200)]
gsm/sysinfo: don't include netinet/in.h

12 years agobitvec: add missing stdint.h
Harald Welte [Sun, 29 May 2011 13:37:38 +0000 (15:37 +0200)]
bitvec: add missing stdint.h

12 years agosocket: remove unused IPv4 related header includes
Harald Welte [Sun, 29 May 2011 13:26:48 +0000 (15:26 +0200)]
socket: remove unused IPv4 related header includes

13 years agosocket: Skip ifa's without ifa->ifa_addr
Harald Welte [Tue, 24 May 2011 19:31:53 +0000 (21:31 +0200)]
socket: Skip ifa's without ifa->ifa_addr

Apparently getifaddrs() returns ifa's without an ifa_addr set.

13 years agoMerge branch 'master' of git.osmocom.org:libosmocore
Pablo Neira Ayuso [Tue, 24 May 2011 16:31:13 +0000 (18:31 +0200)]
Merge branch 'master' of git.osmocom.org:libosmocore

13 years agoImport abis_nm_{chcomb4pchan,pchan4chcomb}() from openbsc
Harald Welte [Tue, 24 May 2011 15:15:12 +0000 (17:15 +0200)]
Import abis_nm_{chcomb4pchan,pchan4chcomb}() from openbsc

13 years agolibosmocore: rename configure.in -> configure.ac
Alexander Huemer [Tue, 24 May 2011 13:16:14 +0000 (15:16 +0200)]
libosmocore: rename configure.in -> configure.ac

rename autoconf input file to align with osmocom-bb host applications,
and because that suffix is preferred nowadays.

13 years agolibosmocore: add missing AC_LANG_SOURCE for current autoconf
Alexander Huemer [Tue, 24 May 2011 13:16:13 +0000 (15:16 +0200)]
libosmocore: add missing AC_LANG_SOURCE for current autoconf

autoconf >=2.68 demands the body of an AC_COMPILE_IFELSE to be wrapped in
an AC_LANG_SOURCE macro, otherwise outputs annoying warnings on the
invocation of `autoreconf -i`. this patch follows that demand.

13 years agoImport sytem information related definitions + code from openbsc
Harald Welte [Tue, 24 May 2011 13:01:53 +0000 (15:01 +0200)]
Import sytem information related definitions + code from openbsc

13 years agoabis_nm: Mark the structs as extern to avoid compiler warning
Holger Hans Peter Freyther [Mon, 23 May 2011 19:41:34 +0000 (21:41 +0200)]
abis_nm: Mark the structs as extern to avoid compiler warning

warning: array ‘abis_nm_obj_class_names’ assumed to have one element

13 years agoabis_nm: remove abis_nm_obj_class_name / abis_nm_adm_state_name
Harald Welte [Mon, 23 May 2011 18:41:31 +0000 (20:41 +0200)]
abis_nm: remove abis_nm_obj_class_name / abis_nm_adm_state_name

and export the underlying raw value_string arrays instead:
abis_nm_obj_class_names / abis_nm_adm_state_names.

This permits the caller to use get_string_value() as well as
get_value_string().

13 years agorename abis_nm_adm_name() to abis_nm_adm_state_name()
Harald Welte [Mon, 23 May 2011 18:30:17 +0000 (20:30 +0200)]
rename abis_nm_adm_name() to abis_nm_adm_state_name()

13 years agoMerge branch 'master' of git.osmocom.org:libosmocore
Pablo Neira Ayuso [Mon, 23 May 2011 17:01:34 +0000 (19:01 +0200)]
Merge branch 'master' of git.osmocom.org:libosmocore

13 years agoabis_nm: import definitions and common code on A-bis OML from OpenBSC
Harald Welte [Sun, 22 May 2011 20:45:16 +0000 (22:45 +0200)]
abis_nm: import definitions and common code on A-bis OML from OpenBSC

13 years agolibosmogsm: add ipaccess related header file
Harald Welte [Sun, 22 May 2011 19:57:15 +0000 (21:57 +0200)]
libosmogsm: add ipaccess related header file

13 years agosocket: use listen() and SO_REUSEADDR, new osmo_sock_init_ofd() function
Harald Welte [Sun, 22 May 2011 19:47:29 +0000 (21:47 +0200)]
socket: use listen() and SO_REUSEADDR, new osmo_sock_init_ofd() function

osmo_sock_init_ofd() is a wrapper around osmo_sock_init() which will
take care of initializing and registering a 'struct osmo_fd' for the
newly-created socket.

13 years agoremove debug printf from socket.c
Harald Welte [Sun, 22 May 2011 18:30:18 +0000 (20:30 +0200)]
remove debug printf from socket.c

13 years agogsmtap: deal with apps that call gsmtap_send*() with NULL gsmtap_inst
Harald Welte [Sun, 22 May 2011 18:06:11 +0000 (20:06 +0200)]
gsmtap: deal with apps that call gsmtap_send*() with NULL gsmtap_inst

13 years agovty: print actual application name rather than always OpenBSC on connect
Harald Welte [Sun, 22 May 2011 17:15:07 +0000 (19:15 +0200)]
vty: print actual application name rather than always OpenBSC on connect

13 years agoGSMTAP/socket code: Check for sys/socket.h and conditionally compile
Harald Welte [Sun, 22 May 2011 10:25:57 +0000 (12:25 +0200)]
GSMTAP/socket code: Check for sys/socket.h and conditionally compile

13 years agogsmtap: rework GSMTAP API to be more future-proof
Harald Welte [Sat, 21 May 2011 16:54:32 +0000 (18:54 +0200)]
gsmtap: rework GSMTAP API to be more future-proof

* use write_queue where applicable
* provide functions that work on raw FD and those with osmo_fd
* add support for multiple gsmtap instances (no global variables)

13 years agologging: fix corrupted output
Pablo Neira Ayuso [Thu, 19 May 2011 06:55:32 +0000 (08:55 +0200)]
logging: fix corrupted output

Harald reported a problem in the logging:
http://lists.osmocom.org/pipermail/openbsc/2011-May/002896.html

Reverting 81e9636454294ae10ef9bc8bf149dd0248afce76 seems to
fix the problem. However, that workaround looks ugly.

Holger gives us another clue on what was wrong:
http://lists.osmocom.org/pipermail/openbsc/2011-May/002905.html

While digging in the manpage, I found this:

"The functions vprintf(), vfprintf(), vsprintf(), vsnprintf()
are equivalent to the functions printf(), fprintf(), sprintf(),
snprintf(), respectively, except that they are called with a
va_list instead of a variable number of arguments. These functions
do not call the va_end macro. Consequently, the value of ap is
undefined after the call. The application should call va_end(ap)
itself afterwards."

13 years agologging: fix corrupted output
Pablo Neira Ayuso [Wed, 18 May 2011 23:40:43 +0000 (01:40 +0200)]
logging: fix corrupted output

Harald reported a problem in the logging:
http://lists.osmocom.org/pipermail/openbsc/2011-May/002896.html

Reverting 81e9636454294ae10ef9bc8bf149dd0248afce76 seems to
fix the problem. However, that workaround looks ugly.

Holger gives us another clue on what was wrong:
http://lists.osmocom.org/pipermail/openbsc/2011-May/002905.html

While digging in the manpage, I found this:

"The functions vprintf(), vfprintf(), vsprintf(), vsnprintf()
are equivalent to the functions printf(), fprintf(), sprintf(),
snprintf(), respectively, except that they are called with a
va_list instead of a variable number of arguments. These functions
do not call the va_end macro. Consequently, the value of ap is
undefined after the call. The application should call va_end(ap)
itself afterwards."

13 years agoapp: Introduce some routines to help with application startup
Holger Hans Peter Freyther [Thu, 12 May 2011 11:46:33 +0000 (13:46 +0200)]
app: Introduce some routines to help with application startup

The plan is to collect structs and routines for application
setup and remove many copies of the boilerplate code we have
right now. This starts with routines to ignore certain signals
and the stderr init code.

Increment the age of the library because a new interface was added.

13 years agoupdate debian changelog to 0.3.0
Harald Welte [Tue, 10 May 2011 15:29:01 +0000 (17:29 +0200)]
update debian changelog to 0.3.0

13 years agoupdate include paths in debian packaging spec
Harald Welte [Tue, 10 May 2011 09:28:02 +0000 (11:28 +0200)]
update include paths in debian packaging spec

13 years agolibosmocore: bump library interface version to '1' for new osmo_ names
Harald Welte [Sun, 8 May 2011 12:35:40 +0000 (14:35 +0200)]
libosmocore: bump library interface version to '1' for new osmo_ names

13 years agomsgfile: use namespace prefix osmo_* and use more descriptive names
Pablo Neira Ayuso [Sat, 7 May 2011 11:01:41 +0000 (13:01 +0200)]
msgfile: use namespace prefix osmo_* and use more descriptive names

Summary of changes:

s/msg_entry/osmo_config_entry/g
s/msg_entries/osmo_config_list/g
s/msg_entry_parse/osmo_config_list_parse/g

minor glitch included in this patch while I was at it:

-#include "linuxlist.h"
+#include <osmocom/core/linuxlist.h>

13 years agoplugin: use namespace prefix osmo_*
Pablo Neira Ayuso [Sat, 7 May 2011 10:50:08 +0000 (12:50 +0200)]
plugin: use namespace prefix osmo_*

Summary of changes:

s/plugin_load_all/osmo_plugin_load_all/g

13 years agobacktrace: use namespace prefix osmo_*
Pablo Neira Ayuso [Sat, 7 May 2011 10:45:47 +0000 (12:45 +0200)]
backtrace: use namespace prefix osmo_*

Summary of changes:

s/backtrace/osmo_backtrace/g

13 years agocrc: use namespace prefix osmo_*
Pablo Neira Ayuso [Sat, 7 May 2011 10:43:12 +0000 (12:43 +0200)]
crc: use namespace prefix osmo_*

Summary of changes:

s/crc16_table/osmo_crc16_table/g
s/crc16/osmo_crc16/g
s/crc16_byte/osmo_crc16_byte/g

13 years agoutils: use namespace prefix osmo_*
Pablo Neira Ayuso [Sat, 7 May 2011 10:43:08 +0000 (12:43 +0200)]
utils: use namespace prefix osmo_*

Summary of changes:

s/bcd2char/osmo_bcd2char/g
s/char2bcd/osmo_char2bcd/g
s/hexparse/osmo_hexparse/g
s/hexdump/osmo_hexdump/g
s/hexdump_nospc/osmo_hexdump_nospc/g
s/ubit_dump/osmo_ubit_dump/g
s/static_assert/osmo_static_assert/g

13 years agostatistics: use namespace prefix osmo_counter*
Pablo Neira Ayuso [Sat, 7 May 2011 10:43:04 +0000 (12:43 +0200)]
statistics: use namespace prefix osmo_counter*

Summary of changes:

s/struct counter/struct osmo_counter/g
s/counter_inc/osmo_counter_inc/g
s/counter_get/osmo_counter_get/g
s/counter_reset/osmo_counter_reset/g
s/counter_alloc/osmo_counter_alloc/g
s/counter_free/osmo_counter_free/g
s/counters_for_each/osmo_counters_for_each/g

13 years agowrite-queue: use namespace prefix osmo_wqueue*
Pablo Neira Ayuso [Sat, 7 May 2011 10:42:51 +0000 (12:42 +0200)]
write-queue: use namespace prefix osmo_wqueue*

Summary of changes:

s/struct write_queue/struct osmo_wqueue/g
s/write_queue_init/osmo_wqueue_init/g
s/void write_queue_clear/osmo_wqueue_clear/g
s/write_queue_enqueue/osmo_wqueue_enqueue/g
s/write_queue_bfd_cb/osmo_wqueue_bfd_cb/g

13 years agosignal: use namespace prefix osmo_signal*
Pablo Neira Ayuso [Sat, 7 May 2011 10:42:45 +0000 (12:42 +0200)]
signal: use namespace prefix osmo_signal*

Summary of changes:

s/signal_cbfn/osmo_signal_cbfn/g
s/register_signal_handler/osmo_signal_register_handler/g
s/unregister_signal_handler/osmo_signal_unregister_handler/g
s/dispatch_signal/osmo_signal_dispatch/g

13 years agoselect: use namespace prefix osmo_fd* and osmo_select*
Pablo Neira Ayuso [Sat, 7 May 2011 10:42:40 +0000 (12:42 +0200)]
select: use namespace prefix osmo_fd* and osmo_select*

Summary of changes:

s/struct bsc_fd/struct osmo_fd/g
s/bsc_register_fd/osmo_fd_register/g
s/bsc_unregister_fd/osmo_fd_unregister/g
s/bsc_select_main/osmo_select_main/g

13 years agotimer: use namespace prefix osmo_timer*
Pablo Neira Ayuso [Sat, 7 May 2011 10:42:28 +0000 (12:42 +0200)]
timer: use namespace prefix osmo_timer*

Summary of changes:

s/struct timer_list/struct osmo_timer_list/g
s/bsc_add_timer/osmo_timer_add/g
s/bsc_schedule_timer/osmo_timer_schedule/g
s/bsc_del_timer/osmo_timer_del/g
s/bsc_timer_pending/osmo_timer_pending/g
s/bsc_nearest_timer/osmo_timers_nearest/g
s/bsc_prepare_timers/osmo_timers_prepare/g
s/bsc_update_timers/osmo_timers_update/g
s/bsc_timer_check/osmo_timers_check/g

13 years agoGSMTAP: add function to create a 'sink' for gsmtap packets
Harald Welte [Wed, 27 Apr 2011 08:57:49 +0000 (10:57 +0200)]
GSMTAP: add function to create a 'sink' for gsmtap packets

This can be helpful where we send GSMTAP messages to the loopback
device (localhost, 127.0.0.1) from where the kernel would then
send ICMP reject packets as nobody is listening on that port.

13 years agologging: make sure the output is null-terminated
Pablo Neira Ayuso [Tue, 3 May 2011 20:32:48 +0000 (22:32 +0200)]
logging: make sure the output is null-terminated

If we reach the buffer size or snprintf fails, we want to make sure
that the output is null-terminated.

13 years agologging: remove workaround now that _output() has been reworked
Pablo Neira Ayuso [Tue, 3 May 2011 20:32:48 +0000 (22:32 +0200)]
logging: remove workaround now that _output() has been reworked

This patch removes a workaround to fix some strange memory corruption
now that _output() has been completely reworked and we make use of
snprintf appropriately.

13 years agologging: rework _output() function
Pablo Neira Ayuso [Tue, 3 May 2011 20:32:43 +0000 (22:32 +0200)]
logging: rework _output() function

This patch reworks _output() to handle snprintf() return value
appropriately and to use one single buffer to build the logging
string, instead of four.

13 years agologging: several memory allocation belong to tall_log_ctx context
Pablo Neira Ayuso [Tue, 3 May 2011 20:32:42 +0000 (22:32 +0200)]
logging: several memory allocation belong to tall_log_ctx context

Several talloc_zero in logging use NULL context, use tall_log_ctx
instead.

13 years agologging: fix missing description of global loglevel
Pablo Neira Ayuso [Tue, 3 May 2011 20:32:32 +0000 (22:32 +0200)]
logging: fix missing description of global loglevel

OpenBSC> logging level
  all    Global setting for all subsystems <----- this description was missing
  rll    A-bis Radio Link Layer (RLL)
[...]

This problem was introduced by myself in:
"vty: integration with logging framework"
04139f14b6197e3ec996133a945af3fa8a68fb7a

13 years agocore/conv: Only consider error for non-zero soft values
Sylvain Munaut [Thu, 28 Apr 2011 20:30:30 +0000 (22:30 +0200)]
core/conv: Only consider error for non-zero soft values

If the input value is '0' it should not really affect the error
since it's just an indecisive bit. We accept this either an internal
'0' (generated via puncture) or as an external '0' (generated via an
external puncturing scheme). A real received bit should never be '0',
it's always gonna be closer to 1 or the other value ...

(thanks to mad@auth.se on the ML for the idea)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
13 years agocore/conv: Add some generic code for convolutional coding/decoding
Sylvain Munaut [Sat, 23 Apr 2011 14:09:19 +0000 (16:09 +0200)]
core/conv: Add some generic code for convolutional coding/decoding

Far from perfect but suits our need thus far.

The viterbi with softbit input is quite cpu-intensive. Since
most received bursts are often mostly error free, you could
use a less cpu intensive algorithm (Fano ?) and with hard bit
input. Then only switch to viterbi soft bit input if the channel
is bad enough to justify it.

Soft output is not implemented as its usefulness for the block
coding is limited.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
13 years agogsm/a5: Add a A5 1&2 implementation
Sylvain Munaut [Sat, 23 Apr 2011 13:34:11 +0000 (15:34 +0200)]
gsm/a5: Add a A5 1&2 implementation

It's always useful to have around

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
13 years agoinclude: fix missing extern in osmo_panic* declarations
Pablo Neira Ayuso [Tue, 26 Apr 2011 01:07:46 +0000 (03:07 +0200)]
include: fix missing extern in osmo_panic* declarations

This patch adds the missing extern to osmo_panic* declarations.

13 years agomisc: Remove the sys/types.h include from various files
Holger Hans Peter Freyther [Mon, 18 Apr 2011 14:52:55 +0000 (16:52 +0200)]
misc: Remove the sys/types.h include from various files

We used this include for the u_int{8,16,32}_t types but we do
not need this anymore.

13 years agostats: Fix the compiler warnings
Holger Hans Peter Freyther [Mon, 18 Apr 2011 14:45:45 +0000 (16:45 +0200)]
stats: Fix the compiler warnings

Do not remove the const, include strings.h for strcmp

13 years agoAdd a function to search for a counter by name
Daniel Willmann [Fri, 8 Apr 2011 08:46:19 +0000 (10:46 +0200)]
Add a function to search for a counter by name

13 years agoAdd functions to search for rate counters by name
Daniel Willmann [Fri, 8 Apr 2011 08:46:18 +0000 (10:46 +0200)]
Add functions to search for rate counters by name

* rate_ctr_get_group_by_name_idx, rate_ctr_get_by_name

13 years agologging: Add the 'all' category back to the log level command
Holger Hans Peter Freyther [Tue, 29 Mar 2011 15:03:56 +0000 (17:03 +0200)]
logging: Add the 'all' category back to the log level command

This is required to be able to set a global log level. The all
command is emitted by the VTY logging code.

13 years agovty: Fix a memory leak in the vty description command
Holger Hans Peter Freyther [Thu, 24 Feb 2011 13:20:41 +0000 (14:20 +0100)]
vty: Fix a memory leak in the vty description command

Before assigning a new string, free the previous one. This
assume that it was allocated with talloc which should be true
for the osmocom users.

13 years agoutils: move OSMO_SNPRINT_RET() macro definition to osmocom/core/utils.h
Pablo Neira Ayuso [Mon, 28 Mar 2011 17:24:22 +0000 (19:24 +0200)]
utils: move OSMO_SNPRINT_RET() macro definition to osmocom/core/utils.h

This is used by the logging to vty conversion functions by now, but it
may be of help for other functions that plan to use snprintf().

13 years agovty: move vty_out_rate_ctr_group prototype to osmocom/vty/misc.h
Pablo Neira Ayuso [Mon, 28 Mar 2011 17:24:21 +0000 (19:24 +0200)]
vty: move vty_out_rate_ctr_group prototype to osmocom/vty/misc.h

Before this patch, it was in osmocom/core/rate_ctr.h

13 years agowrite_queue: use full path of includes in osmocom/core/write_queue.h
Pablo Neira Ayuso [Mon, 28 Mar 2011 17:24:20 +0000 (19:24 +0200)]
write_queue: use full path of includes in osmocom/core/write_queue.h

13 years agobitvec: add bitvec_find_first_bit_pos() from gsm/rxlev_stat.c
Pablo Neira Ayuso [Mon, 28 Mar 2011 17:24:19 +0000 (19:24 +0200)]
bitvec: add bitvec_find_first_bit_pos() from gsm/rxlev_stat.c

This patch adds bitvec_find_bit_pos() to bitvec.c where it really
belongs to. Before this patch used to be part of gsm/rxlev_stat.c

13 years agocore/bits: Make sbit_t a signed type (so that the math works)
Sylvain Munaut [Sun, 27 Mar 2011 09:35:40 +0000 (11:35 +0200)]
core/bits: Make sbit_t a signed type (so that the math works)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
13 years agoinclude: reorganize headers file to include/osmocom/[gsm|core]
Pablo Neira Ayuso [Tue, 22 Mar 2011 15:36:13 +0000 (16:36 +0100)]
include: reorganize headers file to include/osmocom/[gsm|core]

This patch moves all GSM-specific definitions to include/osmocom/gsm.
Moreover, the headers in include/osmocore/ have been moved to
include/osmocom/core.

This has been proposed by Harald Welte and Sylvain Munaunt.

Tested with `make distcheck'.

Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
13 years agoThis patch moves the GSM-specific functions to the new library
Pablo Neira Ayuso [Wed, 23 Mar 2011 17:08:08 +0000 (18:08 +0100)]
This patch moves the GSM-specific functions to the new library
libosmogsm which is provided by libosmocore.

I have also moved generate_backtrace() to backtrace.c instead
of gsm_utils.c, otherwise the timer and msgfile tests depend on
libosmogsm.

Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
13 years agovty: integration with logging framework
Pablo Neira Ayuso [Wed, 9 Mar 2011 12:05:08 +0000 (13:05 +0100)]
vty: integration with logging framework

The logging categories are registered by the applications, like
osmo-nitb, during startup. Thus, the VTY have to provide the logging
commands according to the logging categories that the application
has registered.

Before this patch, the VTY contained the logging categories
hardcoded. Thus, any change in the logging categories by the
application would not be shown by the VTY.

So far, this was not a problem because all applications used the
same logging categories. However, according to what Harald told
me, this may be a problem in the future.

This patch resolve the lack of integration between the logging
framework and the VTY by generating the VTY logging commands
from the logging categories registered.

Since this patch changes one function of the libosmocore API,
it follows another patch for the openbsc application to get in
sync with the new function layout.

I have reworked and renamed the functions:

 * log_vty_category_string()
 * log_vty_level_string()

to provide the new ones that generate the exact output that VTY
requires.

This patch does not release the memory allocated by
talloc_zero_size() to store the VTY strings for the commands
and the description. I found no exit function that can clean
up resources that were allocated.

13 years agoTLV: Add tv_fixed_put() and msgb_tv_fixed_put()
Harald Welte [Sat, 5 Mar 2011 13:32:50 +0000 (14:32 +0100)]
TLV: Add tv_fixed_put() and msgb_tv_fixed_put()

This is for a Tag-Value type with fixed-length value (len > 1)

13 years agoMerge branch 'master' of git.osmocom.org:libosmocore
Harald Welte [Wed, 2 Mar 2011 23:27:15 +0000 (00:27 +0100)]
Merge branch 'master' of git.osmocom.org:libosmocore