Commit Graph

551 Commits

Author SHA1 Message Date
Holger Freyther 7c19f74084 lchan: Handle the abnormal case of channel getting closed
The abnormal case is that lchan_free ist getting called due
a RSL_MT_CHAN_REL_ACK in the RSL but the refcount of this
channel is not zero. This means that some "logical operation"
is still going on that needs to be cancelled.
Instead of always queuing up all operations in the
struct gsm_lchan use the signal framework to inform higher
layers about this abnormal case.

In gsm_04_08.c a signal handler is installed and in the
abnormal case the location updating request operation is
freed.
2009-06-06 13:54:35 +00:00
Holger Freyther c7b86f9011 Revert "[db] Keep track of the current gsm_network"
This was a stupid decision. We will have to assign the
network at some other place. The problem will be a problem
when we have two gsm_networks in one process and the same
subscriber is traveling in both networks.
2009-06-06 13:54:20 +00:00
Harald Welte 9d12ea0e47 fix CONN FAIL and IPAC_DISCONNECT_IND log printing 2009-06-05 20:28:48 +00:00
Harald Welte d2a7f5a7b2 print reject cause of MM STATUS message 2009-06-05 20:08:20 +00:00
Harald Welte 60d68f1974 missing newline in log message about measurement result 2009-06-05 20:07:43 +00:00
Harald Welte 30b66d79cd fix printing of measurement results 2009-06-05 19:57:24 +00:00
Harald Welte 8b697c74c7 BS11: add nm_state for EnveBTES, PA and BBSIG physical objects 2009-06-05 19:18:45 +00:00
Holger Freyther c3d4b2d441 [subscr] Remove the struct gsm_bts pointer from subscriber
The pointer was initially added to support to open a lchan
by using the gsm_subscriber structure. We would have restored
the struct gsm_bts from the db when loading the subscriber.

Instead we will dynamically resolve the gsm_bts and might end
up paging multiple bts in the same (stored/old) location area
until it answers.
2009-06-04 14:27:39 +00:00
Holger Freyther eb443983ae [debug] Move subscr_get_by_tmsi below the debug statement (Andreas Eversberg)
subscr_get_by_tmsi might log as well and then the order of
debugging it not as clear as it could be.
2009-06-04 13:58:42 +00:00
Holger Freyther 2e99605b7e [misc] Search for the crypt symbol to conditionally enable crypt in VTY
It will define -DVTY_CRYPT_PW= if crypt is found. If -lcrypt is
needed, $(LIB_CRYPT) will be -lcrypt.

Compiles on OS X and Linux and reenables crypt.

Patch by: Lars Immisch
2009-06-02 04:04:36 +00:00
Holger Freyther 8521e5f050 [l2] Do not always release the layer2 when closing the socket (Andreas Eversberg)
Tells mISDN not to release layer 2 on closing socket, when not
requested. If mISDN was told to release layer 2 once, it will continue
to release layer 2 on every shutdown of OpenBSC.
2009-06-02 03:25:24 +00:00
Holger Freyther b8be6543cd [e1] Correctly initialize the e1link (Andreas Eversberg)
During bootstrap of BS11, the e1links are initialized. This must also be
done when BS11 is already bootstrapped (when restarting OpenBSC). It is
required to correctly multiplex the audio traffic between channels.
Without it, all time slots refer to card 0, slot 0, subslot 0, which
causes crashes when handling TRAU frames..
2009-06-02 03:25:14 +00:00
Holger Freyther 79f4ae6cc3 [debug] Change DEBUGPC statements to contain \n (Andreas Eversberg)
Some debug outputs now correctly use end-of-line characters.
2009-06-02 03:25:04 +00:00
Holger Freyther f7b2a0ec7f [rsl] Change logging of handling reason 0x18 in rsl_rx_conn_fail (Andreas Eversberg)
Release the channel when it is not used, otherwise claim it
is still in use...
2009-06-02 02:55:17 +00:00
Holger Freyther c21cfbc4aa [subcriber] Fix the subscriber use counting in gsm_04_08.c (Andreas Eversberg)
This patch will fix subscriber usage countinig.
It may happen, that the subscriber count will not be 0 after releasing
of a call. (This problem is solved with the application patch (27),
which will replace static call transaction by a dynamic transaction
list, and use subscriber for each transaction created.)
2009-06-02 02:54:57 +00:00
Holger Freyther 3e0ef7ccbe [subscriber] Log changes in the usage of a subscriber (Andreas Eversberg)
Log changes of the use count of a gsm_subscriber.
2009-06-02 02:54:48 +00:00
Holger Freyther 6d5200b217 [subscriber] Update the lac entry in subscr_update (by Andreas Eversberg)
This is coming from patch 16 and is one of the two changes. When
invoking subscr_update update the lac entry as well.
2009-06-02 02:54:38 +00:00
Holger Freyther 3770b763bc debug: Fix the definition on DMM (Andreas Eversberg)
Now MM can be specified on the command line with the debug option.
2009-06-02 02:35:12 +00:00
Harald Welte 7b26bcb1b5 * give Siemens ObjClass reasonable names rather than A3/A5/A6
* add nm_state objects for RACK and CCLK
* add obj_class human-readable printing for all vendor obj_classes
* add human-readable printing of administrative state
* add enum for cell_alloc numbers
2009-05-28 11:39:21 +00:00
Harald Welte fe609d85c3 some more comments on the abis attributes 2009-05-23 18:14:31 +00:00
Harald Welte 060f6dfced make sure even our predefined structures use HARDCODED_BSIC as initial value 2009-05-23 17:50:53 +00:00
Harald Welte 40f828936f show and edit subscribers from the vty interface 2009-05-23 17:31:39 +00:00
Harald Welte be4b730196 mark two functions as static, fix typo in vty message 2009-05-23 16:59:33 +00:00
Harald Welte 78f2f508e6 Add user-configurable BSIC setting 2009-05-23 16:56:52 +00:00
Harald Welte 110c0ab6c5 * replace some more hex bytes in init msgs by #defines
* when using patch_tables(), use the ARFCN of the BTS, not the cmdline argument
2009-05-23 16:27:05 +00:00
Harald Welte 45b407ad25 With this patch, the TRAU muxing code supports not just bridging only.
A new function trau_recv_lchan() is used to link a channel to a call reference
of a transaction. (Transactions are used in later patches.) TRAU frames will
then be forwarded to the application with the given call reference (in later
patches). Also the application can send TRAU frames by using trau_send_lchan().

A new list is introduced in trau_mux.c. (upqueue_entry) All subslots
that must be sent to application are listed here.

Received TRAU frames are written in the upqueue of application
interface, if a call reference is found in the upqueue-list. If an entry
is found the ss_entry list, the TRAU frames are bridged as before. The
frames have a message type (msg_type), a call reference (callref) and a
trau frame (data). The length of trau frame is defined by the content of
the c-bits inside the frame.

There is no support for ip.access yet, as they don't use the traditional
TRAU frame format. Harald must add this in order to use application interface
with ip-access. The bridging with ip-access works as before.
(Andreas Eversberg)
2009-05-23 15:51:12 +00:00
Harald Welte be99149e72 add new function gsm_bts_by_lac() to search for BTS based on location area 2009-05-23 13:56:40 +00:00
Harald Welte c1d2aaecb5 RSL should not be called RSSL in the debug definition (Andreas Eversberg) 2009-05-23 06:43:35 +00:00
Harald Welte c125a680ef A new debug flag is introduced: "DMNCC". MNCC is the Mobile Network Call
Control. This is required for later patches, that extract the call
control from gsm_04_08.c. (Andreas Eversberg)
2009-05-23 06:42:38 +00:00
Harald Welte a4d49e96ab Some messages have one or two length-value information elements. The is
no IE type included in the message. These information elements are
mandatory, so their actual IE type is known. The improved parse_tlv()
function allows to parse zero, one, or two length-value elements.
(Andreas Eversberg)
2009-05-23 06:39:58 +00:00
Harald Welte e7b452a7a0 add FIXME comment about the fact that we're paging in the wrong BTS 2009-05-23 06:34:37 +00:00
Harald Welte f55b49fef3 To slow down transmission of many ABIS frames at a time, a delay timer
is used for the E1's time slot. This timer replaces the "usleep()"
function, so the process will not block the execution of libbsc. The
timer is started after a frame is transmitted. If another frame is in
the transmit queue, the frame will only be queued until the timer times
out. If the timer is not running or times out, the frame is transmitted
and the timer is restarted.

The problem with partly provisioned TRX (locks show on LMT) is solved.
The adjustment for the inter frame delay of 50 miliseconds is for
further study.
(Andreas Eversberg)
2009-05-23 06:20:41 +00:00
Harald Welte 703af9887d fix some more compiler warnings 2009-05-23 06:14:44 +00:00
Harald Welte 75d34a8b3d fix two compiler warnings 2009-05-23 06:11:13 +00:00
Harald Welte 04d3c9224f An application that has own events and file descriptors, must poll
select function ob libbsc. A "polling" flag is used to enable polling.
In this case select() will not sleep until file descriptor events occurr
or nearest timer expires. Also a return value will indicate if there was
an event that has been handled. If there was an event, the application
decides to poll again and don't wait.

In case for bsc_hack, the polling flag is not set. select will sleep as
usual.

(Andreas Eversberg)
2009-05-23 06:07:04 +00:00
Harald Welte 7d14476a6e Correct handlong of data link status change (Andreas Eversberg) 2009-05-23 05:40:49 +00:00
Harald Welte ff117a8d11 * rename the timer functions to avoid name collisions with libmisdn.
* the return value of bsc_update_timers() is required for applications to find out if a timer was fired
(Andreas Eversberg)
2009-05-23 05:22:08 +00:00
Harald Welte d6cab81175 vty: disable password encryption, remove dependency to lcrypt 2009-05-21 07:31:48 +00:00
Harald Welte 12247c6713 Fix compilation issues on OS X - mainly #include file changes (Lars Immisch) 2009-05-21 07:23:02 +00:00
Harald Welte ef061951e6 dump CCLK accuracy/type as part of bs11_config query 2009-05-17 12:43:42 +00:00
Harald Welte 7a2a71e255 revert commit #481: we actually still need that stupid usleep() to reliably bootstrap nanoBTS :( 2009-05-01 21:54:11 +00:00
Harald Welte c9e0218990 Fix "CM Service Request" parsing for Phase 1 devices. This means MO calls from phase1 should work now. 2009-05-01 19:07:53 +00:00
Harald Welte 440fed08ec implement parsing and printing of RSL measurement results 2009-05-01 18:43:47 +00:00
Harald Welte cf5b3597ed add verbose reporting of RR STATUS cause 2009-05-01 18:28:42 +00:00
Harald Welte 3cf7c3ff89 don't print rf resource indication messages, they clutter up the logs 2009-05-01 18:28:00 +00:00
Harald Welte 0db97b253d abis_nm: print some information about failure event report type / severity 2009-05-01 17:22:47 +00:00
Harald Welte 90f64767c4 print OML bts_nr rather than bts->nr 2009-05-01 17:22:09 +00:00
Harald Welte 6dab055752 print cause for channel activate NACK 2009-05-01 17:21:37 +00:00
Harald Welte e81899cc00 fix printing of ip.access disconnect cause 2009-05-01 16:01:00 +00:00
Harald Welte 70f9b3dcf8 remove any sleeping from the ip.access input code 2009-05-01 16:00:44 +00:00
Harald Welte a994a48635 remove misleading debug messages 2009-05-01 15:54:23 +00:00
Harald Welte cf55978e48 make sure we terminate bsc_hack if the OML/RSL listening sockets cannot be created 2009-05-01 15:43:49 +00:00
Harald Welte b463060db9 Fix long-standing bug: nanoBTS now even works after cold boot (first time after power up).
The problem in the old logic was that we started talking to a given object
(e.g. radio carrier) one we received an administrative state change report.  It
turns out we have to wait for the software activation report instead - and
everything suddenly works.
2009-05-01 15:43:22 +00:00
Harald Welte 6dafb7ba37 bs11_config build fix 2009-05-01 15:40:14 +00:00
Harald Welte f9a8cc3cba send a signal for every software activation or failure event report 2009-05-01 15:39:49 +00:00
Harald Welte 4cc34228d2 add VTY command to set BTS unit ID 2009-05-01 15:12:31 +00:00
Harald Welte 879c85a89c no need to make gsmnet structure non-static (fix from last commit) 2009-05-01 15:00:20 +00:00
Harald Welte edb3778542 * Add support for multiple ip.access nanoBTS at one BSC
* keep track of site_id/bts_id in struct gsm_bts
 * dynamically match incoming OML/RSL over TCP connections by BTS Unit ID
 * introduce new debug category DINP (separate from DMI for hexdumps)
 * remove ia_config() as it is no longer needed
 * 
* ensure that signalling links / E1 line information is correctly printed
* when bootstrapping RSL or OML, tell us for which BTS it is being doen
* separate bootstrap_bts() out from bootstrap_network()
* statically configure two ip.access BTS, one with unit id's 1800/0/0 and 1801/0/0
2009-05-01 14:59:07 +00:00
Harald Welte 4593ff3ace ensure the tag parsing function is the same as used in input/ipaccess.c
FIXME: remove this copy of the code
2009-05-01 14:53:36 +00:00
Harald Welte 23897662c7 make sure all REPORT type messages have debug statements printing object class and instance 2009-05-01 14:52:51 +00:00
Harald Welte 191280d04b abis_nm wants to use bts->bts_nr (the number of the BTS in the OML link) rather
than bts->nr (the number of the BTS in the BSC).
2009-05-01 13:20:04 +00:00
Harald Welte aeedeb41dd fix compiler warnings in abis_nm.c 2009-05-01 13:08:14 +00:00
Harald Welte 6c96ba5e4f abis_nm: print the NACK cause in human readable form 2009-05-01 13:03:40 +00:00
Holger Freyther acb688bc9b [misc] Sanity check and error messages in misdn.c
Add some sanity checks, add some error checks, print
the __func__ in the error message too.

Patch from Andreas Eversberg
2009-05-01 04:59:55 +00:00
Harald Welte 4802b88890 fix printing of OML IP 2009-04-30 16:23:45 +00:00
Harald Welte 9de2bf884b fix missing \n at end of debug statement 2009-04-30 15:59:55 +00:00
Harald Welte 25de99170f add new 'ipaccess-config' program to set Unit ID and primary OML NVRAM parameters of ip.access BTS 2009-04-30 15:53:07 +00:00
Harald Welte 193fefc683 functionality to set nanoBTS NVRAM attributes and to restart BTS 2009-04-30 15:16:27 +00:00
Harald Welte 3788196026 more pretty-printing of ipaccess-find output 2009-04-30 15:15:37 +00:00
Harald Welte 3bfbb84021 Add some more ip.access specific OML attributes/messages. In this case it is
about configuring the primary OML link IP address in the NVRAM of the device.
2009-04-29 22:58:38 +00:00
Harald Welte a7cfa03cb2 bs11_config: print PLL 'work' and 'set' values during query 2009-04-29 22:33:02 +00:00
Harald Welte c50ea84804 add missing newline in debug statement for RS232 TX 2009-04-29 22:32:10 +00:00
Harald Welte d47a4beff8 activate subchannel muxer/demuxer on E1 TS 3 2009-04-29 16:21:34 +00:00
Harald Welte 360f06cba3 Fix order of subchannel bits (Andreas Eversberg) 2009-04-29 16:21:18 +00:00
Harald Welte 70128d03df remove extra whitespace in output of 'query' command 2009-04-29 13:27:56 +00:00
Harald Welte aaf02d9e01 read the PLL config as part of the bs11_config 'query' command 2009-04-29 13:25:57 +00:00
Harald Welte a432cd3930 make "PLL mode" setting actually work rather than segfault 2009-04-29 13:01:50 +00:00
Harald Welte e69f5fb411 Add bs11_config commands to set the PLL mode from E1_LOCKED to STANDALONE
and vice-versa.  This has not yet been tested yet.
2009-04-28 16:31:38 +00:00
Holger Freyther b5c00f5587 [misdn] Add option to automatically release layer2 on exit
Patch by Andreas Eversberg to automatically release
layer2 on exit of the application. Made the naming of
the variables consistent (only release_l2 and not both
release_l2 and l2_release).
2009-04-22 22:08:07 +00:00
Holger Freyther dda22c18b5 [bsc_hack] Allow to select the cardnr defaulting to number 0
Patch from Andreas Eversberg to allow to select the ISDN
card number. The default remains the same.
2009-04-22 22:07:31 +00:00
Holger Freyther 0a173bfe28 [bsc_hack] Allow to set the location area code
Patch by Andreas Eversberg to allow to set the
location area code from the command line.
2009-04-22 22:07:07 +00:00
Holger Freyther bcdebbfcab [bsc_hack] House keeping, remove dead code
This callback is not used from within the paging layer. We do
have a different set of callbacks in place. Remove it here.
2009-04-19 06:39:29 +00:00
Holger Freyther c2995ea741 [db] Introduce a VLR database here
This is not a proper VLR yet, specially the (subscriber_)id
used might not be the proper one in a real network.
2009-04-19 06:35:23 +00:00
Holger Freyther 1d506c8a54 [db] Make the db connection static 2009-04-19 06:35:20 +00:00
Holger Freyther 36650b872f [db] Keep track of the current gsm_network 2009-04-19 06:35:16 +00:00
Holger Freyther ef7f7ce452 [bsc_hack] Initialize db as part of the network
Let us establish the rule that there is one DB
per network. This will allow to assign a BTS of
the network to a subscriber that is loaded from
the db across restarts.
2009-04-19 06:35:12 +00:00
Holger Freyther d4cb79f90d [db] Remove FIXME as it is fixed... 2009-04-19 06:35:05 +00:00
Holger Freyther a1f92f0a43 [subscriber] Introduce subscr_put_channel
Introduce subscr_put_channel to release a channel and to
allow gsm_subscriber.c to hand this channel to any suitable
pending requests.
2009-04-12 05:37:52 +00:00
Holger Freyther 4a49e77ff4 [subscriber] Update the current_bts field on imsi detach and LOC accept
When sending LOCATION UPDATING REQUEST Accept or when getting
a IMSI Detach update the gsm_bts of the gsm_subscriber.
2009-04-12 05:37:29 +00:00
Holger Freyther 3190a89e38 [calls] Remove a tautology from gsm48_cc_rx_disconnect
We directly assign the call->state and then check for something
that will never be true, and then immediately put the lchan and
schedule it's disconnect... and then directly after having closed
it down we send a message...

Change this to uncondtionally put down the lchan after having
changed the last(?) command.
2009-04-12 04:36:16 +00:00
Holger Freyther 0469cf608b [e1] Enable dumping of LAPD frames again
Kill mi_set_pcap_fd from the header, introduce e1_set_pcap_fd
and call it from bsc_hack.c. Hook into abis_rsl_sendmsg and
_abis_nm_sendmsg for sending and e1inp_rx_ts for reading. It compiles
and should not cause a regression.
2009-03-31 12:14:16 +00:00
Holger Freyther 66e092bbd6 [e1input] Do not redefine PF_ISDN if it is already defined
Fix compile warning in e1_input.c
2009-03-31 12:13:50 +00:00
Harald Welte 7e310b12ff Store incoming SMS into SQL database
* gsm_util now uses caller-allocated data (rather than callee-allocated)
* correctly parse destination address
* parse (but not transcode) non-default encodings of SMS
* reject SMS to unknown destination number
* resolve target subscriber id and store incoming SMS (without header) in 'sms' table

What we're now missing is the sending part, i.e. a regular task iterating over
all pending SMS and trying to deliver them.  Also, check for pending SMS once
we get a LOCATION UPDATE.
2009-03-30 20:56:32 +00:00
Harald Welte 93d9303331 check for malloc fails 2009-03-30 09:11:45 +00:00
Harald Welte 5258fc4974 add stubs for enable/configure terminal/bts/trx/ts commands in VTY interface 2009-03-28 19:07:53 +00:00
Harald Welte f5025b6bae add 'show paging' for BTS to telnet interface 2009-03-28 16:55:11 +00:00
Harald Welte 273feca77f Fix 'delete-trx1' command of bs11_config (we can now delete TRX1) 2009-03-28 16:53:25 +00:00
Holger Freyther 1047940dce [misc] Make distcheck work again 2009-03-11 03:29:43 +00:00
Harald Welte 1bc7735ad5 * more human-readable strings instead of values
* vty printout of e1 driver/line/timeslot items
2009-03-10 19:47:51 +00:00
Harald Welte c63e51daac * correctly handle VTY_READ/VTY_WRITE events and select loop integration of VTY 2009-03-10 19:46:16 +00:00
Harald Welte d256d4f19c * make sure we can obtain signalling type and timslot type names
* make sure every e1 timeslot has a valid backpointer to its line
2009-03-10 19:44:48 +00:00
Harald Welte 4d87f24e6f export nm_*_name() functions to get operational and availability state to strings 2009-03-10 19:43:44 +00:00
Harald Welte 44d542eba5 export list of e1 drivers and e1 lines 2009-03-10 18:24:35 +00:00
Harald Welte ef235b547b * don't print lchan's of type NONE
* better formating of VTY printing of some objects
2009-03-10 12:34:02 +00:00
Harald Welte 404cdd8951 make telnet interface use VTY code 2009-03-10 12:21:45 +00:00
Harald Welte 68628e8479 add VTY dumping functions for OpenBSC 2009-03-10 12:17:57 +00:00
Harald Welte 955049f191 import VTY code from zebra/quagga (from my cardshell project) 2009-03-10 12:16:51 +00:00
Harald Welte 32201c1aea move is_ipaccess_bts() and parse_btstype9) to gsm_data.c 2009-03-10 12:15:10 +00:00
Harald Welte a30b1cad9f more verbose attribute ack/nack 2009-03-10 11:46:02 +00:00
Holger Freyther ff9592fa10 [misc] Fix compile warnings... 2009-03-09 16:17:14 +00:00
Harald Welte 015b9ad9db actually request the IMEI not IMEISV, since Phase 1 doesn't have IMEISV 2009-02-28 18:22:03 +00:00
Harald Welte ddab3c78c5 introduce new 'mode' parameter to RSL ACTIVATE CHANNEL 2009-02-28 13:19:15 +00:00
Harald Welte 4a543e81cf * more RSL and 04.08 constant defines
* initialize some data structures before using them in RSL
* DATA_REQ is a transparent message
* more elaborate DEBUGP statements here and there
* don't call 04.08 with zero-length RSL DATA INDICATION
* reject 04.08 CC HOLD and RETRIEVE, as we don't support them yet
2009-02-28 13:17:55 +00:00
Harald Welte 02b0e093a1 make sure all channels in one BTS use the same TSC (training sequence code) 2009-02-28 13:11:07 +00:00
Harald Welte 3cc4bf517f make hexdump return a 'char *' rather than printing by itself 2009-02-28 13:08:01 +00:00
Harald Welte 51f38457e5 add missing header include 2009-02-24 22:36:40 +00:00
Harald Welte 65ccf88feb fix non-randomness of TMSI by seeding the PRNG. Later we should use openssl 2009-02-24 22:36:20 +00:00
Harald Welte 41fbf443a0 enable IMSI ATTACH/DETACH
* this tells us whenever a MS is switched off
* also ensures that we get LOCATION UPDATe every time MS is switched on, even if it already has TMSI
2009-02-24 22:34:22 +00:00
Holger Freyther 0d4df32044 [sms] Fix the length of the of the outgoing data...
The returned length should be right now. The test case
is passing.
2009-02-23 04:03:33 +00:00
Holger Freyther 77217de8a5 [sms] Fix memory leak 2009-02-23 04:03:27 +00:00
Holger Freyther 3b1f3d0798 [sms] Fix two bugs regarding 7 bit coding...
- Fix the length (almost)
    - Move the second part by 8 - b_off
      e.g. with (ba) 0x62 0x61 the first bit of
      0x61 goes to the highest on the first byte and
      the second word contains 0x110000...

    - The simple test case is almost passed... just a missing
      character at the end.
2009-02-23 01:47:15 +00:00
Holger Freyther 59da07bd0e [sms] Add test case for the 7-bit coding/decoding...
we don't pass it yet.
2009-02-23 00:50:38 +00:00
Holger Freyther b4064bca6e [db] Introduce a table for SMS
- created for the creation of the SMS
    - sent the time the message was submitted
    - sender_id the subscriber for the return path/report
    - receiver_id the subscriber
    - header the (optional) SMS PDU header
    - payload the payload (utf8), raw data
2009-02-23 00:50:31 +00:00
Harald Welte ba59bafc8e remove subchan_demux debug statements, add DMUX commandline parsing 2009-02-23 00:04:04 +00:00
Harald Welte 7f93ceafef Ignore CONNECTION FAIL INDICATION cause 0x18 to make sure our phone calls survive on BS11.
Apparently the BS-11 sends soem undocumented cause 0x18 as part of a CONN FAIL IND message
shortly after we establish the call.  If we close the channel, the voice call
is aborted. If we ignore the message, everything just continues to work.
2009-02-23 00:02:59 +00:00
Harald Welte b49fe96ad6 reduce lag in voice calls by reducing the subchannel muxer tx queue depth to
effectively three entries.  In the future we should probably think of only
having a one-frame deep queue.
2009-02-22 22:28:19 +00:00
Harald Welte ee670478e5 Add LMT event parsing 2009-02-22 21:58:49 +00:00
Harald Welte 6154898753 fix paging response parsing for phase1 phones (classmar2 can be less than 4 bytes in length) 2009-02-22 21:26:29 +00:00
Harald Welte 2a1393758d add parsing of IMSI DETACH 2009-02-22 21:14:55 +00:00
Harald Welte fe18d8fd89 PAGING RESPONSE could contain non-TMSI mobile identity such as IMSI 2009-02-22 21:14:24 +00:00
Harald Welte 5a065dfe2d don't allow calls of a subscriber to himself 2009-02-22 21:13:18 +00:00
Holger Freyther 1ef983b076 [db] Print the type and id of the not found provider 2009-02-22 20:33:09 +00:00
Harald Welte c1697105cf use RSL debug prefix in RSL code 2009-02-22 18:18:12 +00:00
Harald Welte 074d873df9 correct E1 timeslot / TEI attribute parsing 2009-02-21 20:41:12 +00:00
Harald Welte 0558f547c7 only perform oml-tei once 2009-02-21 20:17:12 +00:00
Harald Welte b6c92ae782 * set OML TEI and E1 timeslot in one command
* introduce new 'oml-tei' command of bs11_config
2009-02-21 20:15:32 +00:00
Harald Welte fd2fb458ac 25C3 is over, so call our network OpenBSC 2009-02-21 13:00:57 +00:00
Harald Welte 099d6100e6 fix various compiler warnings while building bs11_config 2009-02-21 12:59:58 +00:00
Harald Welte 7bc4cbc45c tlv_parser now operates on 'const' input buffer 2009-02-21 12:59:22 +00:00
Holger Freyther 3281f6e233 [build] Create a libbsc.a as noinst_LIBRARY, link bsc_hack and tests against it
Link the tests against the libbsc.a to avoid most of the breakage
when creating new symbols.
2009-02-20 18:33:00 +00:00
Harald Welte 11fa29c169 implement dynamic TRAU frame mapping 2009-02-19 17:24:39 +00:00
Harald Welte f325eb4e9f use new gsm_ts_name() funciton from debug statemens everywhere 2009-02-19 17:07:39 +00:00
Harald Welte dbd2ea8708 add debug statement when setting up trau mapping 2009-02-19 17:07:01 +00:00
Harald Welte 23a686347d add gst_ts_name() function to obtain human-readable channel name 2009-02-19 17:06:42 +00:00
Harald Welte f1e6f96654 don't pass subchannel data to the TRAU decoder if we're not synchronized yet 2009-02-19 17:05:13 +00:00
Harald Welte 26aa6a1166 trau mux updates
* add function to map two lchans to each other
* make sure to evic old trau mux mappings before creating a new one
2009-02-19 15:14:23 +00:00
Harald Welte ad2a12a4c3 we need tlv_parse.c in bs11_config now 2009-02-19 03:11:48 +00:00
Harald Welte f80b7d347c bs11_config: makes sure we disconnect properly before exiting 2009-02-19 03:11:13 +00:00
Harald Welte fb81ae9da2 restructure and enhance bs11_config
* add the concept of commands in addition to options
* add commands for querying essential configuration
* add command for explicit create/delete of TRX1
* software download is now an explicit operation
2009-02-19 02:59:17 +00:00
Harald Welte 78fc0d40a6 add various BS11 management related abis_nm functions 2009-02-19 02:50:57 +00:00