Nico Golde
4df2ad9ac6
[SMS] avoid mktime on NULL
...
gmtime(NULL) returns NULL at least in glibc and *can not* be used as
time(NULL). Since we compare two time_t values when checking the validity
period this can be replaced by time(NULL)
2010-06-21 13:51:28 +02:00
Holger Hans Peter Freyther
c8bf3c178f
misc: make the compiler happy...
...
The compiler treats uint8_t*[] and uint8_t* differently,
use the address of the first element and assign that.
2010-06-21 18:21:16 +08:00
laforge
cfa4a01c8f
[RSL] hopping: Set correct L2 pseudo-length during IMMediate ASSign
...
Thanks to Sylvain for the hint that lead to this fix.
2010-06-21 12:09:41 +02:00
Holger Hans Peter Freyther
a69d923fd7
bsc_api: Use conn->bts directly...
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
69e8f8285b
bsc_api: Move debug context for subscriber into the bsc_api.c
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
db4ef0d369
bsc_api: Remove the lchan usage from the Paging Response handling.
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
758f4dfa17
silent_call: Use the gsm_subscriber_connection instead of lchan->conn
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
1afbd76155
abis_nm.c: Reading the in_addr can lead to unaligned memory access
...
The value of the in_addr might not be 32 bit aligned and reading
it can generate an alignment error on ARM. Fix it by using memcpy
to copy the data into a local variable.
There are many more potential alignment issues that we will fix
when we hit them.
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
34949ae924
bsc_init: Avoid unaligned access to nanobts_attr_nsvc0
...
nanobts_attr_nsvc0 + 10 is unlikely to be 32 bit aligned
and will trigger an alignment error on ARM..
2010-06-21 16:40:09 +08:00
Holger Hans Peter Freyther
ad98128e65
configure.in: Require a newer libosmocore.
2010-06-21 16:40:09 +08:00
laforge
694a5cfe06
[BSC] RSL: Fix Channel Identification IE in RSL CHAN ACT
...
We now not only include the 04.08 channel description but also
the 04.08 Mobile Allocation nested IEs
2010-06-20 21:55:23 +02:00
Harald Welte
9575fd0732
[BSC] add example hopping config file for BS-11 in 2TRX config
2010-06-20 16:08:36 +02:00
laforge
abeb951426
[BSC] Fix off-by-one error in computing mobile allocation
2010-06-20 15:56:50 +02:00
laforge
f87ebe69d5
[BSC] NM: Correct treatment of ARFCN_LIST for BS-11
...
For Siemens BS-11, the 'length' value of the ARFCN_LIST IE is interpreted in
violation of the spec. The spec says it is a length in octets, while Siemens
treats it as 'count of 16bit ARFCN values'.
2010-06-20 15:20:02 +02:00
laforge
09108bff95
[BSC] RSL: properly include MA in IMM ASS CMD
...
When we build an IMMediate ASSign CoManD for a hopping channel,
we need to include the length of the MA in the total length of
the 04.08 message
2010-06-20 15:18:46 +02:00
Harald Welte
c8794b5977
[BSC] SI: make sure we initialize the data field, not the bitvec structure
2010-06-20 10:44:54 +02:00
Harald Welte
9da921b8b0
add more executables to .gitignore
2010-06-20 10:44:54 +02:00
Harald Welte
29aca17ed0
[BSC] Hopping: Add MA IE to ASS CMD, IMM ASS CMD and HO CMD
...
Also, make sure the bit ordering in the pre-computed MA is correct,
as well as the cell channel description of the target cell being
present in the HO CMD.
2010-06-20 10:44:53 +02:00
Harald Welte
7401ae6a79
[BSC] Keep a SYSTEM INFORMATION cache for each BTS
...
This will later be useful for handover where we need to copy the cell
channel allocation into a normal 04.08 message
2010-06-20 10:44:53 +02:00
Harald Welte
fd3708976a
[BSC] Generate MA for each timeslot that has hopping enabled
...
The MA is used in 04.08 channel assignment related messages
2010-06-20 10:44:53 +02:00
Harald Welte
c2fb3d0c3d
[BSC] Make sure we only enable hopping on BTS that support it
2010-06-20 10:44:53 +02:00
Harald Welte
f3d8e92731
[BSC] introduce the concept of 'BTS features'
...
We can then check if a bts supports a certain feature or not.
2010-06-20 10:44:53 +02:00
Harald Welte
a39b0f2bb7
[BSC] Implement per-timeslot ARFCN lists for frequency hopping
...
We now compute the Cell Channel Description for SI 1 by bit-wise
OR of the ARFCN bitmask of each timeslot on all the TRX of the BTS.
Also, support generating a GSM 04.08 Channel Description IE for
the hopping case (with HSN/MAIO instead of ARFCN).
What's still missing now: Sending the 04.08 Mobile Allocation IE
2010-06-20 10:44:53 +02:00
Harald Welte
6e0cd04725
unfinished support for hopping channels
2010-06-20 10:44:52 +02:00
Harald Welte
b37e5f8a60
[BSC] mISDN: Avoid sending RSL messages to wrong channel number
...
In some cases, we get a DL_INFORMATION_IND with a wrong channel
number, and only in the DL_ESTABLISH_IND we will see the real
channel number that is to be used for this (TEI, SAPI) tuple.
2010-06-20 10:44:15 +02:00
Harald Welte
b88b6d3ea6
[wireshark] Major wireshark OML dissector
...
Now it properly parses message types and IEs that are defined different
depending on the BTS vendor / A-bis implementor. This fixes a lot of
decoding bugs with Siemens BS-11 traces.
2010-06-19 13:52:54 +02:00
Andreas.Eversberg
2db4d46680
AW: Problem compiling OpenBSC on Kubuntu Hardy
2010-06-17 17:40:07 +02:00
Holger Hans Peter Freyther
71d36b3d04
nat: Add spaces to the desc to align it properly on the vty output
2010-06-17 18:31:18 +08:00
Holger Hans Peter Freyther
8330c1c386
nat: Count the number of dropped SCCP and MGCP calls as well.
...
Count the number of dropped calls and lost SCCP connections
due the loss of a connection to the BSC...
2010-06-17 18:29:42 +08:00
Holger Hans Peter Freyther
b2c38ebb1f
nat: Switch per BSC counters to the rate ctr.
...
This is switching the simple statistics to the rate counter
and is updating all users...
2010-06-17 18:18:12 +08:00
Holger Hans Peter Freyther
f6d0e06940
bsc_api: Set the l3h header from within the dtap method
...
This is fixing USSD which broke when the code was
switched to use the BSC API.
2010-06-17 17:48:13 +08:00
Holger Hans Peter Freyther
d42c3f25a6
bsc_api: Remove the lchan from the USSD code...
2010-06-17 17:35:57 +08:00
Holger Hans Peter Freyther
3f122bed1e
bsc_api: Kill &lchan->conn usage, stop msg->lchan too..
2010-06-17 17:14:35 +08:00
Holger Hans Peter Freyther
dad5724eb3
bsc_api: Remove lchan->conn from the RLL code... it was all dead anyway
2010-06-17 16:58:38 +08:00
Holger Hans Peter Freyther
c6bb3c4e33
bsc_api: Fix compile warning in paging code..
2010-06-17 16:43:24 +08:00
Holger Hans Peter Freyther
9764331062
bsc_api: Move gsm48_rcvmsg into the BSC API and dispatch.
...
The next step in the way to the BSC API. We have a clear a
new connection was opened signal now... and the MSC could
use it...
2010-06-17 16:41:25 +08:00
Holger Hans Peter Freyther
86481c29d4
bsc_api: Make paging/silent call work with the subscriber_connection
...
Do not use the lchan for the paging but operate on the
subscriber_connection, change the signals too to not carry
the lchan but the subscriber connection... the silent call
and vty code still assume there is a lchan inside the
subscriber connection.
2010-06-17 15:05:57 +08:00
Holger Hans Peter Freyther
7b4a53d537
nat: Rename BSC_NODE to NAT_BSC_NODE to avoid future issues.
2010-06-17 14:42:20 +08:00
Holger Hans Peter Freyther
9c78697fa2
nat: Add the exit/end command to the NAT config nodes.
2010-06-17 14:39:15 +08:00
Holger Hans Peter Freyther
8cc2a6d62d
Merge branch 'on-waves/mgcp'
2010-06-17 14:37:10 +08:00
Holger Hans Peter Freyther
75492e6e54
[mgcp] Set the IP_TOS/DSCP on RTP/RTCP IP packets.
2010-06-17 14:34:30 +08:00
Holger Hans Peter Freyther
a19bdabf22
[mgcp] Only patch RTP packets when they arrived on the RTP port
...
Do not attempt to patch RTCP packets...
2010-06-17 14:34:17 +08:00
Holger Hans Peter Freyther
57c4decd1d
bsc_api: Pass the subscriber connection to the SMS...
2010-06-16 15:43:01 +08:00
Holger Hans Peter Freyther
0fbb3eca14
bsc_api: Remove the _lchan and make the method static..
2010-06-16 15:42:59 +08:00
Holger Hans Peter Freyther
4f8340939e
bsc_api: Remove some more occurences of the lchan.
2010-06-16 15:42:40 +08:00
Holger Hans Peter Freyther
77008464be
bsc_api: Move BSC API between MSC and RSL code...
...
The lowlevel BSC paging API is a simple wrapper around
the RSL command. The BTS will automatically repeat these
messages but if we end up with two MSC inputs we will
need to count these messages somewhere...
2010-06-16 15:42:40 +08:00
Holger Hans Peter Freyther
bddd152049
bsc_api: Operate on the subscriber connection for subscriber management
2010-06-16 15:42:40 +08:00
Holger Hans Peter Freyther
9ce1b27fbf
bsc_api: Use gsm_subscriber_connection in rrlp.c
2010-06-16 15:42:40 +08:00
Holger Hans Peter Freyther
b2be195b50
bsc_api: Rename lchan_for_subscr to connection_for_subscr and update code
...
With handover and late/early assignment there might be two channels
for one subscriber and only the BSC knows which one to use, so use
the gsm_subscriber_connection everywhere...
2010-06-16 15:42:38 +08:00
Holger Hans Peter Freyther
ea01ca764f
chan_alloc: Make the lchan_find(bts,subscr) private/internal..
2010-06-16 15:42:22 +08:00