Commit Graph

856 Commits

Author SHA1 Message Date
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 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 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 55c8f35e53 move large parts of mncc.h and gsm48 encode/decode into libosmocore 2010-03-07 23:40:35 +01:00
Harald Welte afedeabd91 move some gsm48 utility functions to libosmocore
* gsm48_generate_lai() gsm48_generate_mid_from_tmsi() gsm48_generate_mid_from_imsi()
* gsm48_cc_msg_names[]
2010-03-04 10:55:40 +01:00
Harald Welte fbc5ca080b move gsm_band_name() and gsm_band_parse() to libosmocore 2010-03-04 10:39:50 +01:00
Harald Welte 3c9c5f941d rsl: use the rsl_rll_push_l3() and rsl_rll_simple() functions of libosmocore 2010-03-04 10:33:10 +01:00
Harald Welte 474d19f5c0 remove gsm04.08 utility code that has been moved to libosmocore 2010-03-02 23:18:30 +01:00
Harald Welte 2e411c7b0d value_string functions and some RSL related stuff has moved to libosmocore 2010-03-01 21:59:06 +01:00
Holger Hans Peter Freyther 8b0079909d Merge remote branch 'origin/on-waves/sccp' 2010-02-26 20:21:21 +01:00
Holger Hans Peter Freyther 10ca3799e7 Merge remote branch 'origin/master' into on-waves/sccp 2010-02-26 20:18:24 +01:00
Holger Hans Peter Freyther 1ebad74377 Merge remote branch 'origin/master' into on-waves/mgcp
Conflicts:
	openbsc/include/openbsc/Makefile.am
	openbsc/src/Makefile.am
2010-02-26 20:16:45 +01:00
Holger Hans Peter Freyther e1d5067789 [sccp] Implement parsing the rather easy IT messages. 2010-02-26 19:26:35 +01:00
Holger Hans Peter Freyther 36ed8cc4c3 [mgcp] Patch the rtp payload depending on the direction.
The RTP header code is taken from the rtp_proxy, we will need
to figure out how to unite these properly in the long run.
2010-02-26 13:42:58 +01:00