Commit Graph

463 Commits

Author SHA1 Message Date
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