Commit Graph

414 Commits

Author SHA1 Message Date
Harald Welte dd2a34ff2f [USSD] more whitespace fixes 2009-10-26 20:42:55 +01:00
Harald Welte 36ec2be138 [USSD] whitespace fixes
This is a purely cosmetic patch
2009-10-26 20:42:07 +01:00
Mike Haben c0c5079124 [USSD] various USSD improvements
- Improved handling of extension-number string (as per review)
- Guard against a buffer-overflow if mobile sends a too-long USSD
- declare some function-parameters const
- fix gsm_ts_name function to display the right BTS number (bts->nr rather than bts->bts_nr)
2009-10-26 20:39:26 +01:00
Mike Haben 775a1a4c46 [USSD] eliminate static global variables
This patch removes the need of static global variables and introduces a new,
caller-allocated 'struct ussd_request' that needs to be passed to the various
functions.
2009-10-26 20:39:26 +01:00
Harald Welte fb95725942 whitespace fixes for the USSD code
This patch is not changing any actual code, just coding style fixes.
2009-10-26 20:39:26 +01:00
Harald Welte 0311504bd5 Add USDD code from Mike Haben
This is the initial checkin of the USSD code from Mike Haben.  I didn't
put it in the main branch as I think it still needs some cleanup.
2009-10-26 20:39:25 +01:00
Harald Welte 2930bb9b4b add some random thoughts on hopping and the oml interface 2009-10-26 20:38:37 +01:00
Sylvain Munaut 1ebac14b51 [TLV] Split the parser into 'parse loop' and 'parse single value'
This is needed when you need to manually parse TLV blocks
that don't follow the logic supported by tlv_parse but you
still want to rely on working code and not fiddle with details.
2009-10-26 20:19:59 +01:00
Sylvain Munaut 59cd203036 [ip.access] Add an example configuration file 2009-10-26 20:16:27 +01:00
Harald Welte c696d2f22b Fix segfault, use trx->bts rather than bts in patch_nm_tables() 2009-10-26 20:14:33 +01:00
Harald Welte 794059b096 Merge remote branch 'origin/master' 2009-10-26 20:12:07 +01:00
Harald Welte cfb781cd2f ip.access: Use Channel Combination from config file
bsc_init.c still contained a hard-coded channel configuration,
i.e. CCCH_combined on TS0 of C0, and TCH/F on all other channels.

Now it correctly uses the value as specified in the config file.
2009-10-24 10:31:28 +02:00
Harald Welte aed946e21a [GPRS] Add RSL function for ip.access PDCH activation
If we have a dynamic TCH/F / PDCH channel configuration, then
we can either ACTIVATE CHANNEL it for a TCH/F, or we need to send
this vendor-specific PDCH ACTIVATE command to use it as a PDCH.

As opposed to a fixed configuration, this allows an intelligent
BSC channel allocator to use otherwise idle channels as PDCH
as long as no more TCH's are needed.
2009-10-24 10:29:22 +02:00
Harald Welte 37884ed247 [GPRS] introudce PDCH and PDCH/TCH physical channels
GPRS needs PDCH (Packet Data Channels), and we need support in
our data model as well as OML and RSL for it
2009-10-24 10:25:50 +02:00
Harald Welte 0dfc62307b [OML] Add support for ip.access SET ATTRIBUTE message
Since TS 12.21 implements only SET ATTRIBUTE for some object classes,
ip.access had to extend it to be able to set attributes on arbitrary
objects.  We now introduce a function implementing that message.
2009-10-24 10:20:41 +02:00
Harald Welte 439e128ee3 [GPRS] add data structures for OML of NSE,CELL,NSVCE
Supporting GPRS means we have a number of additional OML objects to
deal with.  We need to extend our gsm_bts structure to at least
include the nm_state for each of those objects.
2009-10-24 10:19:14 +02:00
Harald Welte 724ddb8c73 [TLV] extend TLV parser with support for TvLV
Tag-variableLength-Value is an encoding scheme used in the GPRS NS
and BSSGP protocols, where the length value can be 8 or 16 bits,
depending on actual demand.
2009-10-24 10:04:02 +02:00
Holger Hans Peter Freyther f10170e1cb [gsm48] Make method name consistent...
We use rx_rr to indicate that we have received a radio resource
message but one method was using rr_rx. Fix that.
2009-10-23 13:48:54 +02:00
Holger Hans Peter Freyther 161d994b8f Include e1_input.h for the e1inp_line 2009-10-22 15:48:59 +02:00
Holger Hans Peter Freyther 604326fea1 Fix spelling of default 2009-10-22 15:46:16 +02:00
Holger Hans Peter Freyther 460fb3b5c4 Fix compiler warning. 0 does not work on strings 2009-10-22 15:44:30 +02:00
Holger Hans Peter Freyther 6d0c8b4536 Fix compiler warning and cast const away.
TLVP_VAL returns a const u_int8_t* and we assign it
to a non const, cast const away.
2009-10-22 15:43:55 +02:00
Holger Hans Peter Freyther d70da87b22 [rrlp] Fix compiler warnings
The apdu is static const u_int8_t. Change the signature to
have a const in there to make the compiler happy, include
chan_alloc.h for lchan methods.
2009-10-22 15:42:19 +02:00
Holger Hans Peter Freyther 80e5ccc10f Fix warnings by removing unused variables 2009-10-22 15:40:33 +02:00
Holger Hans Peter Freyther bb1e381045 Forward declare methods to fix compiler warnings
Put the used method in the header files or use extern
in the case of a vty method used by token_auth
2009-10-22 15:39:37 +02:00
Holger Hans Peter Freyther eb12526a4a [db] Fix compile warnings in db.c
For the compiler classmark1 is a struct and the compiler is
unaware that it fits into an unsigned int. Use memcpy to
copy it to a u_int8_t (the compiler should inline this).

dbi_conn_quote_binary_copy works on unsigned char* change
q_apdu to be unsigned char.
2009-10-22 15:34:37 +02:00
Harald Welte 240ce76be6 [ipaccess] revert commit 9bd7bc1b4c4a3ba42da46931df650837c1a7e889
Commit 9bd7bc1b4c4a3ba42da46931df650837c1a7e889 caused the RSL
initialization to happen too early, resulting in the BTS
bootstrapping but missing [some of?] the system information
types.
2009-10-21 21:16:00 +02:00
Harald Welte 93ff0eeab3 Merge remote branch 'origin/master' 2009-10-21 20:24:09 +02:00
Holger Hans Peter Freyther 9fec932a3a [debug] Use gcc attribute to enable printf checking
Inform the compiler that the same rules as printf apply
to the debugp method. This will check if the arguments
match the format string.
2009-10-21 16:38:19 +02:00
Holger Hans Peter Freyther eff0b65875 [timer] Initialize i with zero
In case no timers were registered the result was not defined.
2009-10-21 16:38:19 +02:00
Holger Hans Peter Freyther ae780bb46e [msgb] Add msgb_reset to reset an existing msgb* to the initial state
The reset is useful if one msgb is supposed to be used over and
over again and is avoiding to use msgb_free,msgb_alloc in the
application code.
2009-10-21 16:38:13 +02:00
Harald Welte 847a33569a [ipaccess] fix ipaccess-config (we now use TEI as stream ID) 2009-10-20 21:54:06 +02:00
Harald Welte 9c913c47c1 [nanoBTS] move nanoBTS initialization completely into state event handler 2009-10-20 17:31:00 +02:00
Harald Welte b7284a938e [abis_nm] introduce debugp_foh() function for object class printing 2009-10-20 09:56:18 +02:00
Harald Welte 9970928117 ip.access: use correct stream identifier when connecting RSL 2009-10-20 00:51:01 +02:00
Harald Welte e9a095e224 input/ipaccess: remove one more static variable 2009-10-20 00:50:03 +02:00
Harald Welte 25572877e9 ip.access: Support multi-TRX / RSL stream ID
In order to support multi-TRX configurations, we need to be able
to cope with multiple RSL streams (each with their own stream identifier)
inside one ip.access TCP connection.

Since this is very similar to using the TEI on a E1 line, we simply
recycle the logic and data fields that are used for the TEI.
2009-10-20 00:22:00 +02:00
Harald Welte 6947c8802c [abis_nm] print ip.access TCP port in correct byte order 2009-10-19 22:50:30 +02:00
Harald Welte 0eccfd0aaf [abis_nm] print ip.access stream_id in RSL connect ack 2009-10-19 22:49:33 +02:00
Harald Welte 5aeedd4f85 [abis_nm] introduce and use abis_nm_ipaccess_rsl_connect() 2009-10-19 22:11:11 +02:00
Harald Welte f509340ae7 ip.access / multi-TRX: correctly identify TRX number on SW ACT REP 2009-10-19 21:47:54 +02:00
Harald Welte 97be68a7b8 ip.access maximum output power depends on GSM band 2009-10-19 21:47:31 +02:00
Harald Welte fd579d57c7 [abis_nm]: Print Object Class of ip.access messages 2009-10-19 21:46:54 +02:00
Harald Welte e7d1f95f23 add ipaccess specific attribute set message
Partially apply 9ba65525eaa06a1768aaf35bdee98afcf8026e0a to get
rid of a compile problem. The other part of the mentioned commit
is still in the gprs branch.

Signed-off-by: Holger Hans Peter Freyther <zecke@selfish.org>
2009-10-09 05:26:46 +02:00
Harald Welte 608a30ba68 [bsc_init] use new NM_AVSTATE_* enum instead of hard-coded numbers 2009-10-08 20:53:42 +02:00
Harald Welte ab89616c16 add availability state abis_nm enum 2009-10-08 20:52:35 +02:00
Harald Welte 935d10beb0 [abis_nm] print object class/instance for NACK 2009-10-08 20:49:51 +02:00
Harald Welte c76a21782b [abis_nm]: print ip.access SET ATTR [N]ACK 2009-10-08 20:49:44 +02:00
Andreas Eversberg dd36b0b0f4 use tx delay timer instead of usleep() in ip.access input driver
this fixes the delay of audio caused by stalling of the openbsc process.
the use of 'usleep(100000)' for slowing down transmission to nanoBTS is
replaced by the tx-delay timer. i did this on bs11 code, so i did it the
same way. it actually queues frames for transmission not nanoBTS. on
transmission a timer is started and when this timer expires, the next
frame in the queue is transmitted (timer restarted) until the queue is
empty.
2009-10-08 12:53:16 +02:00
Holger Hans Peter Freyther b94719d513 [gsm0408] Add parameter to gsm48_send_rr_ciph_mode for controling the response
This parameter controls if the response should include the
IMEISV or not. This will be set by the MSC and this is why
this parameter was added.
2009-10-06 04:34:25 +02:00