Commit Graph

936 Commits

Author SHA1 Message Date
Harald Welte ca8d0063f9 remove gsm48_mi_to_string() as it is now in libosmocore 0.1.3 2010-03-28 18:28:29 +08:00
Harald Welte c0d83b0647 chan_alloc: Support allocating TCH/F of a dynamic TCH/F + PDCH
This code simply enables the channel allocator to understand the
dynamic TCH/F / PDCH channel type as used by ip.access nanoBTS.

It does not actually try to switch the dynamic mode, but instead
sends signals to a (not yet present) dynamic switching algorithm.
2010-03-28 15:58:03 +08:00
Harald Welte 4563eab30e RSL: keep track of ip.access dynamic TCH/PDCH activation
We use the (currently unusued) flags member of the bts_trx_ts structure
to track if a dynamic TCH/PDCH is currently on PDCH mode or not.
2010-03-28 14:42:09 +08:00
Harald Welte 332442d6c7 debug: ensure no overlap between LOG_FILTER_ALL and FLT_IMSI 2010-03-26 21:40:29 +08:00
Harald Welte dc5062b185 move log/debug codebase to libosmocore
The logging/debugging code is generic enough to move it into libosmocore
while keeping OpenBSC specific definitions in openbsc itself.

This commit uses the logging support present in libosmocore-0.1.2,
you will have to update your library to this version.
2010-03-26 21:31:43 +08:00
Holger Hans Peter Freyther b464fb4a89 db: Fix a bug where no pending SMS were found
The "sms send pending" VTY command did not work due a mismatch
of types. We are specifying a unsigned long long in the query
and provided DBI with a signed integer type. The result was a
failure do find any information.

Change the API to operate on unsigned long long that is matching
the id of the SMS and the Subscriber and the mismatch with the
query string is gone and pending SMS are sent.
2010-03-25 09:59:30 +01:00
Holger Hans Peter Freyther d4c16b1080 sms: Remove some more occurences of the GSM lchan 2010-03-25 09:07:28 +01:00
Holger Hans Peter Freyther 18b63f4b41 Store the GSM BTS in the gsm subscriber connection
Remove further usage of lchan from the gsm 04.11 bits
2010-03-25 09:07:28 +01:00
Holger Hans Peter Freyther ec32b5860e bsc: Start creating 08.08 like API
The 08.08 API will interface with the internal BSC code and it is
the boundary between MSC and BSC. So nothing that calls the BSC
functionality should know about lchan or such.
2010-03-25 09:07:28 +01:00
Holger Hans Peter Freyther 5179c8ef0b sms: First run of removing lchan usage from MSC code paths. 2010-03-25 09:07:28 +01:00
Holger Hans Peter Freyther e95d4825f5 lchan: Change transaction to work on the GSM Subscriber Connection
Change the MSC transaction code to operate on a GSM Subscriber Connection
instead of the lchan. This will help us to separate the two commands properly.
2010-03-25 09:07:28 +01:00
Holger Hans Peter Freyther 68884aa156 lchan: Create a structure for MSC data of the lchan
Prepare to split the BSC and the MSC part by putting the
MSC data for a connection into a "gsm_subscriber_connection"
struct and renaming the macros.
2010-03-25 09:07:28 +01:00
Harald Welte e95daf1925 convert openbsc to use libosmocore-0.1.1 API
the 0.1.1 API is cleaned up and removes all exported global static
arrays (like rlm_cause_strs).  There are now proper accessor functions.
2010-03-25 12:13:02 +08:00
Harald Welte 5e6466780f current version needs exactly 0.1.0 version of libosmocore 2010-03-25 12:02:36 +08:00
Harald Welte 92b1fe4c2d increase the use of 'struct value_string' in abis_nm and gsm_data 2010-03-25 11:45:30 +08:00
Holger Hans Peter Freyther bb7bc1155f debug: Make the global target loglevel overwrite the category level
Together with the previos -e Number option one can easily turn on
debugging without needing to remember the category masks for a quick
check on what is going on.
2010-03-25 02:57:03 +01:00
Holger Hans Peter Freyther 009ad61dab bsc_hack: Add other known options to the list 2010-03-25 02:41:38 +01:00
Holger Hans Peter Freyther 829772d3c4 bsc_hack: Add option to set the global log level. 2010-03-25 02:39:15 +01:00
Holger Hans Peter Freyther 9cc020ab21 rll_establish: When on a TCH always use the SACH for SAPI!=0
When we are on a TCH/H or TCH/F always use the SACH for SAPI!=0
for the establishment otherwise it will never be answered. This
can be tested by starting to page with a traffic channel and then
trying to submit the SMS.
2010-03-24 14:11:39 +01:00
Holger Hans Peter Freyther edee7944a5 ipa: Fix the previous patch and initialize the fds to -1
The code in 354ef81d80 checked
for fd >= 0 but on startup the struct is memset to 0 so this
test is true. Initialize the fds to -1 to make the code work
and be able to handle all ranges of the fd.
2010-03-24 11:20:27 +01:00
Holger Hans Peter Freyther f99f0930fd Move the version/copyright string to a separate file
It didn't really belong into the bsc_init.c... now we could
even easily autogenerate this file.
2010-03-24 10:24:38 +01:00
Holger Hans Peter Freyther 3e57388305 Make the compiler happy and use a puts 2010-03-24 10:21:00 +01:00
Holger Hans Peter Freyther 6552d0b596 Include bscconfig.h without ../ for the srcdir != build dir case 2010-03-24 10:20:27 +01:00
Holger Hans Peter Freyther a21a96f987 Move the copyright and version header to bsc_init.c
The copyright/version will be used from within the VTY code
which might be linked into binaries even when bsc_hack.c is
not linked into it.
2010-03-24 10:19:04 +01:00
Holger Hans Peter Freyther b3121c5b3f ipa: Handle corrupt incoming messages without crashing
Attempt to read the three byte IPA header. If we read 0 then
the socket can be closed otherwise we need to read three bytes, if
we don't we do have a failure.

After having parsed the header we need to evaluate the length,
if the length is bigger than would fit into our buffer we will
ignore that and print an error.

This is fixing a crash when the BTS is crashing...
2010-03-24 08:40:55 +01:00
Holger Hans Peter Freyther f5284ae1cf ipa: Reduce the throttling of the IPA msges
This code used to be a sleep, it was changed to be a timer by Andreas
but this timer does not seem to have any use. When doing the sw load
this timer is increasing the upload time dramatically, reduce it to
make it work faster.
2010-03-24 08:33:22 +01:00
Holger Hans Peter Freyther ff9d8b42e6 ipa: Make it possible to specify -w and -f in any order
Currently one has to put -w in front of -f to really write the
firmware file to disk. Change the config handling to first take
all parameters and then execute on them. This means -f can now
be used with any other parameter.
2010-03-24 05:27:58 +01:00
Holger Hans Peter Freyther dc6af631e5 ipa: Use two defines instead of magic numbers
We spearate OML/RSL by putting a magic number into the priv_nr. Use
a define instead of ordinary integers.
2010-03-24 05:07:50 +01:00
Holger Hans Peter Freyther 354ef81d80 ipaccess: Handle the case of replacing RSL connections
Fix a infinite loop when establishing a new RSL connection and the
BSC is identifying itself with a unit id of an already established
RSL connection. The infinite loops happens because we are corrupting
the the linuxlist inside the bsc_fd when registering the bfd twice.

Due the lack of proper authentication favor the new RSL connection
as the real one and close the previous one.
2010-03-24 04:44:50 +01:00
Harald Welte 7f0f8b92ce depend on libosmocore 0.1.0
this creates a hard dependency to a certain base version of the library
2010-03-23 00:38:32 +08:00
Harald Welte 5a29c7fa89 automatically include program version and print it from vty and --version 2010-03-23 00:09:32 +08:00
Harald Welte e164d29e7f gprs: remove (the already unused) si13_template
system_information.c and rest_octets.c don't need a template...
2010-03-22 19:04:46 +08:00
Harald Welte a5731cffc4 GPRS: make NSEI configurable from VTY 2010-03-22 19:02:04 +08:00
Harald Welte 94036700c1 GPRS: don't allow VTY configuration of GPRS parameters if GPRS inactive 2010-03-22 19:02:04 +08:00
Harald Welte 84c6f310ed GPRS: remove outdated FIXME about patching CGI 2010-03-22 19:02:04 +08:00
Harald Welte 1f89329f45 GPRS: set SI3 GPRS indicator dependent on bts->gprs.enabled 2010-03-22 19:02:04 +08:00
Harald Welte fa58625e3b GPRS: remove "#define GPRS" compile-time define
It is now possible to enable/disable GPRS support purely based on
the vty / config file.
2010-03-22 19:02:04 +08:00
Harald Welte af387633db GPRS: make NSVC parameters VTY-configurable 2010-03-22 19:02:04 +08:00
Harald Welte 97a282b037 Create new gprs-conf branch with the non-SGSN part of the gprs branch
This new gprs-conf branch is intended to contain everything needed
to configure GPRS in the nanoBTS, but without implementing the SGSN/GGSN
functionality.

The SGSN/GGSN development will happen in a branch based on this branch
called "gprs-sgsn"
2010-03-22 19:02:04 +08:00
Holger Hans Peter Freyther d859a24f7d ipa-firmware: Fix the write out of the firmware parts
Use the start address inside the header entry, the start is relative
to the surrounding SDP record which is located in our base offset, when
writing it out also ignore four bytes of something (crc?).
2010-03-22 11:50:30 +01:00
Holger Hans Peter Freyther 38722cca48 ipa-firmware: Write the firmware parts to a file
The first non working version to dump the content of the sdp
to the terminal..
2010-03-22 11:22:54 +01:00
Holger Hans Peter Freyther f63bf4d8f1 ipa-firmware: Add the entry first and then seek
The sub entry might not be a SDP file so it is best to add the
read entry, add it to the list and then attempt to recursively
parse this one.
2010-03-22 10:14:46 +01:00
Holger Hans Peter Freyther e6678dcedb ipa-firmware: Lift the requirement of having a table_offset of zero
Make the code work/skip the other table and find the entries
at the given offset. This appears to work.
2010-03-22 10:05:26 +01:00
Holger Hans Peter Freyther 57e9300142 ipa-firmware: Remove the part_length from the struct sdp_firmware
* The length of the table is not at a fixed position. We will need
  to read the offset, seek there, read the data, convert it to the
  host endianes.
* Prepare the code to work with offsets of 0...
2010-03-22 09:59:57 +01:00
Holger Hans Peter Freyther c88181a7df ipa-firmware: Look at the table offset
* The two dummy bytes appear to be an offset, check that
  they are zero and refuse to work when they are not.
2010-03-22 09:51:43 +01:00
Holger Hans Peter Freyther 6e79b54d7b ipa-firmware: Warn/Exit when the required ids can not be found. 2010-03-22 09:50:56 +01:00
Holger Hans Peter Freyther 622ab49311 ipa-firmware: Remove dummy check...
We have derefenced that way before and would have crashed already.
2010-03-22 09:28:50 +01:00
Holger Hans Peter Freyther 91ed1f75c4 ipa-firmware: The more_more_magic is to indicate the payload
* Ignore the value of the field there is no sematnic change
  to the content of the file..
2010-03-22 09:27:43 +01:00
Holger Hans Peter Freyther 8e9559d2e1 debug: Use the right enum value for the ref counting group. 2010-03-22 07:49:12 +01:00
Harald Welte 61b4232c63 update README with information about nanoBTS and libosmocore 2010-03-09 12:38:31 +01:00