Commit Graph

109 Commits

Author SHA1 Message Date
Harald Welte dab0287b3f msgb: fix printing of msgb pointer during MSGB_ABORT() 2010-11-09 13:42:26 +01:00
Harald Welte 46a45a6c4f msgb: don't compare unsigned int with int (fix lcr build) 2010-11-09 13:41:48 +01:00
Harald Welte be6cb17228 msgb_abort(): better formatting 2010-11-05 07:52:22 +01:00
Harald Welte 088e68aff4 generate backtrace in msgb_abort()
This helps us to debug where we encounter insufficient headroom...
2010-11-05 07:52:22 +01:00
Harald Welte 929d8870d2 Change msgb_abort() function in MSGB_ABORT argument with variable arguments
This enables callers to provide format string and arguments to it

Also, put conditionals into the macro, and remove them from the caller
site.
2010-11-05 07:52:22 +01:00
Holger Hans Peter Freyther af270a41e3 gsm0808: Move the clear request from bsc_msc_ip to here
This method should use the msgb_tlv_put routines instead
of the stuff it is doing. This will be cleaned up.
2010-11-04 12:42:50 +01:00
Holger Hans Peter Freyther c25c668106 gsm0808: Add a method to create a new DTAP message with a msgb 2010-11-04 12:27:48 +01:00
Holger Hans Peter Freyther a3f05d8609 gsm0808: Add a method to create a clear command message.
Use the msgb_tv_put functions for putting the data into
the message. Do not support the extended error reports.
2010-10-27 11:53:23 +02:00
Holger Hans Peter Freyther acffb60c1a msgb: Add non-inlined helper functions to ease with language bindings
It is easier from languages that dlopen libosmocore to have a function
to access this data than to poke at the bytes of the struct directly. Add
copyright for this method and the reset method I did earlier this year.
2010-10-18 18:22:31 +02:00
Holger Hans Peter Freyther c64970ede5 gsm0480: Add method create own number response 2010-10-18 17:04:49 +02:00
Holger Hans Peter Freyther daa653fc22 ussd: Add a test case, switch parsing to use a gsm48_hdr and len
The current USSD code is not doing any size checks, add a test
case to find out how easily we access the data out of bounds.
Begin to use the length in some places.
2010-10-11 09:25:14 +02:00
Holger Hans Peter Freyther 00cb5700e6 gsm0480: Move the USSD parsing code to libosmocore
- Change u_int8 to uint8
- Change DEBUGP to LOGP
- Change fprintf(stderr, to LOGP(0, LOGL_DEBUG
- We should define log areas used inside libosmocore
2010-10-09 01:49:11 +08:00
Holger Hans Peter Freyther c87f266522 msgfile: Add a file parser for a simple file format
This file format will be used to store per country code,
per network code messages. This will be used for various
things ranging from access control, to messages...
2010-10-08 19:23:18 +08:00
Holger Hans Peter Freyther 55aea5099c gsm0480: Add USSD format functions to libosmocore
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.
2010-09-30 19:00:58 +08:00
Sylvain Munaut 77b6f6c536 protocol/gsm_04_08: Fix cr field position in gsm48_cip_mode_cmd
Thanks to Dieter for pointing this out.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-09-17 13:56:31 +02:00
Andreas Eversberg fa832012d0 Add handover and frequency redefiniton message headers
This simply add some TS 04.08 related structures for frequency
redefinition and handover.
2010-09-01 23:37:07 +02:00
Harald Welte 5ea4498c28 add header file for osmo_daemonize() 2010-08-25 19:25:37 +02:00
Harald Welte 72d0c536e9 logging: add missing include file changes for last commit (logfile) 2010-08-25 19:24:00 +02:00
Harald Welte 0083cd381c logging: rename tgt_stdout to tgt_file 2010-08-25 18:10:19 +02:00
Harald Welte 1523d7039d Import gsm48_decode_freq_list() from osmocom-bb/layer23
This will enable us to use this function from OpenBSC / ipaccess-config
2010-08-04 11:46:44 +02:00
Harald Welte dee47cd14d add new hexdump_nospc() function 2010-07-30 11:47:50 +02:00
Harald Welte 40481e8954 move hexdump() from logging.c to utils.c 2010-07-30 11:40:32 +02:00
Harald Welte 3eba991b3d Import 'hexparse' function from OpenBSC 2010-07-30 10:37:29 +02:00
Sylvain Munaut 7459d6cfd1 core/msgb: Use the new osmo_panic call to handle errors
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-25 18:09:28 +02:00
Sylvain Munaut ac3e61a7a6 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>
2010-07-25 18:08:54 +02:00
Sylvain Munaut 27af075e1e osmocore: Add utility function rsl_chan_nr_str to RSL
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-25 12:27:44 +02:00
Holger Hans Peter Freyther 5e84a86937 msgb: Avoid warnings that the string might contain %s or such.. 2010-07-23 19:22:23 +08:00
Holger Hans Peter Freyther b60a4b3b97 gsm0808: Why should there be a lchan in the parameter... 2010-07-23 18:35:59 +08:00
Holger Hans Peter Freyther 06f795c56f gsm0808: Import unaligned mem access fix from on-waves/bsc-master 2010-07-23 18:20:02 +08:00
Holger Hans Peter Freyther dd02a47234 gsm_utils: Move the gsm_7bit_alphabet into the impl and make it static 2010-07-23 16:36:05 +08:00
Harald Welte 652a72385c msgb: Check for available headroom/tailroom and abort() if we violate it 2010-07-22 21:56:10 +02:00
Holger Hans Peter Freyther 0d60aa2ad7 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...
2010-07-21 05:02:33 +08:00
Nico Golde 28de05336b * rewrite GSM 7bit default encoding/decoding based on a lookup table as the previous code produced wrong encodings for certain characters. 2010-07-20 02:48:17 +08:00
Ingo Albrecht 383134b5ac Added crc16 from linux kernel. 2010-07-15 22:43:52 +02:00
Harald Welte 6eb7d6c887 [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.
2010-07-13 13:48:13 +02:00
Andreas Eversberg 014cb8725c 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]
2010-07-12 09:11:00 +02:00
Andreas Eversberg cd2a74bd43 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:
2010-07-12 08:55:14 +02:00
Harald Welte b9ce51c5fd Add support for plugins (and specifically GPRS encryption plugins) 2010-06-30 19:43:11 +02:00
Harald Welte e34a940542 [gsmtap] add new gsmtap_makemsg() function
This generates a gsmtap message without actually enqueueing to a
bsc_select style queue.
2010-06-29 22:31:21 +02:00
Harald Welte e779c364ac Add gsmtap utility functions to libosmocore
This is imported from OsmocomBB/Layer23
2010-06-29 21:57:25 +02:00
Andreas Eversberg 816e24cb42 [RSL] Added special RSL message types for mobile side
- suspension DL
    - resume DL
    - re-establish DL
2010-06-25 02:50:56 +02:00
Andreas Eversberg 93364fc8e0 [gsm48] fix typo in struct gsm48_req_ref 2010-06-25 02:50:06 +02:00
Harald Welte 639f74bdf4 [GSM 04.08] add more RR IEIs 2010-06-15 09:32:14 +02:00
Sylvain Munaut d005eabe16 gsm48: Add authentication response message
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-06-10 13:30:50 +02:00
Sylvain Munaut 4f585491b9 gsm_utils: Add a fn to test A5(x) support given a classmark2
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-06-09 13:40:36 +02:00
Harald Welte c226317c9c add new new gprs_tmsi2tlli() function 2010-06-01 10:47:07 +02:00
Holger Hans Peter Freyther 75bd69bc91 rate_ctr: Make the struct rate_ctr_group_desc members const 2010-05-23 21:14:32 +08:00
Andreas.Eversberg 0ebd688746 Added some "get"-functions to bitvec of libosmocore.
- Getting Low or High value from current postion
- Getting unsigned interger from current postion
2010-05-19 18:14:01 +02:00
Holger Hans Peter Freyther 9a3dec0c01 gsm0808: Add API to wrap a GSM48 msg with a BSSMAP/DTAP msg. 2010-05-16 08:15:40 +08:00
Holger Hans Peter Freyther 5dcef3c8b1 gsm48: Add paging response header 2010-05-15 22:35:25 +08:00