Holger Hans Peter Freyther
18fe88933c
nitb: Listen for incoming MNCC connections only once
...
There is no point in creating the MNCC socket twice. Only
create it if the user requested this when starting the nitb.
2011-04-12 19:16:48 +02:00
Holger Hans Peter Freyther
0e8facca42
ipaccess-config: Allow to invoke tests by names.
...
Allow to invoke tests by name.
2011-04-11 20:39:16 +02:00
Holger Hans Peter Freyther
390ba3faa0
ipaccess-config: Add option to list possible NVRAM settings
...
We can handle NVRAM settings via names but there is no way
to discover these names. This commits adds the unusual -H
option to show these values.
2011-04-11 20:39:16 +02:00
Holger Hans Peter Freyther
cfccedd74a
ipaccess-config: Allow to automatically loop a test
...
This makes the commented out code an option that might
or might not work reliable.
2011-04-11 20:39:12 +02:00
Holger Hans Peter Freyther
0d93fb4127
nat: Fix a crash due the refactoring and pass the nat again.
2011-04-11 20:30:56 +02:00
Holger Hans Peter Freyther
b326100b12
misc: Fix compiler warnings in the code
2011-04-07 23:34:54 +02:00
Holger Hans Peter Freyther
5d7b65b407
ipaccess: Add a function to prepend the osmocom ext header
...
* include/openbsc/ipaccess.h: Reserve a protocol number for control
commands
* input/ipaccess.c: New function ipaccess_prepend_header_ext prepends
the extension header
2011-04-07 23:31:58 +02:00
Pablo Neira Ayuso
9f1294d623
ipaccess-proxy: remove hardcoded IP for options `-l' and `-b'
...
This patch removes the hardcoded IP addresses for options `-l'
and `-b'.
2011-04-07 23:28:00 +02:00
Pablo Neira Ayuso
c281b4e85a
libabis: ipaccess: export ipaccess_parse_unitid
...
Now this is used by ipaccess-proxy, remove redundant implementation in it.
2011-04-07 23:28:00 +02:00
Pablo Neira Ayuso
625295b14f
ipaccess-proxy: get rid of ipac_idtag_parse()
...
Use ipaccess_idtag_parse() available in libabis instead.
2011-04-07 23:28:00 +02:00
Pablo Neira Ayuso
66add64b71
libabis: ipaccess: export ipaccess_idtag_name()
...
Now this is used by ipaccess-proxy, remove redundant implemention in it.
2011-04-07 23:28:00 +02:00
Pablo Neira Ayuso
22f58a9a58
libabis: ipaccess: conclude new ipaccess_send_*() functions and use them
...
This patch finishes the new ipaccess_send_*() functions and use them
in the ipaccess-proxy code.
I have also cleanup the definition of the PONG, ID_ACK and ID_REQ
messages (including some minor documentation about them).
I had to rename ipaccess_recvmsg() in ipaccess-proxy to avoid clashing
with the one defined in libabis.
2011-04-07 23:28:00 +02:00
Pablo Neira Ayuso
3ab864a860
ipaccess-proxy: get rid of make_listen_sock() and use make_sock() instead
...
This patch replaces make_listen_sock() by the generic make_sock()
available in libcommon/socket.
2011-04-07 23:28:00 +02:00
Holger Hans Peter Freyther
55ef5fb7ef
bsc: Add the bsc-rf-socket command to master as well
...
Make it possible to specify the rf-socket path via the
vty configuration as well. The command line setting will
override it though.
2011-04-07 23:26:13 +02:00
Holger Hans Peter Freyther
4b41746ce3
bsc: Include openbsc/ipaccess.h for the drop_oml command
...
Fix a compiler warning about the drop_oml command.
2011-04-07 23:10:10 +02:00
Holger Hans Peter Freyther
7d73642d0e
nat: Fix the call to make_sock and pass a 0 priv_nr and the nat as data
2011-04-07 22:14:58 +02:00
Holger Hans Peter Freyther
ef38e85542
nat: Remember if the MSC accepted the connection on principle
...
For the USSD module we only want to handle requests that are
legitimate. This is achieved by looking for the CM Service Accept
or the BSSAP CIPHER MODE COMMAND.
2011-04-06 11:29:46 +02:00
Pablo Neira Ayuso
da2f769681
ipaccess: proxy: get rid of internal make_sock() implementation
...
With this patch, we use the implementation available in libcommon.
2011-04-05 18:33:28 +02:00
Pablo Neira Ayuso
165fe56260
libcommon: socket: extend make_sock() prototype
...
This patch extends the make_sock() prototype so you can fully set
the fields priv_nr and data of the bsc_fd structure.
This is the first step to get rid of the internal make_sock()
implementation that ipaccess-proxy uses.
This patch includes a minor cleanup to pass INADDR_ANY instead
of zero, if you do not want to bind the socket to one specific
address.
2011-04-05 18:33:24 +02:00
Pablo Neira Ayuso
f22e348287
ipaccess-config: exit if no network interface is specified
...
ipaccess-config has to exit if no network interface is specified,
otherwise it uses argv[1] which has a uninitialized value.
2011-04-05 18:33:17 +02:00
Holger Hans Peter Freyther
4c9557ef24
nat: Bail out if the regexp fails to compile and avoid a crash
...
If the regexp fails to compile the internal dfa is NULL and a
regexec will crash nicely. Fail and free the string if the regexp
fails to compile.
2011-04-04 19:19:26 +02:00
Holger Hans Peter Freyther
13673749ff
lapd: NULL pointer derefence possible here
...
The idiom seems to be to allocate the lapd_tei if it does not
exist and use it then. This was found by clang --analyze.
2011-04-04 19:17:58 +02:00
Holger Hans Peter Freyther
a18b11602c
nat: Make the USSD number matching a regexp
...
This allows to match multiple numbers and multiple patterns
2011-04-01 17:32:21 +02:00
Holger Hans Peter Freyther
9e7e55f164
nat: Fix the return to return CMD_SUCCESS;
2011-04-01 16:23:17 +02:00
Holger Hans Peter Freyther
6a7babd658
nat: Add commands to remove access-list from NAT and BSC config
2011-03-29 17:50:49 +02:00
Holger Hans Peter Freyther
d000c27d3b
nat: Improve the error message for the failing bind call
...
Print the IP and port that was used for the address to bind to.
2011-03-29 17:50:49 +02:00
Holger Hans Peter Freyther
06f4fc79a2
bsc: Make the MSC node a child of CONFIG_NODE
...
The VTY code calls the write function for nodes in the order of
registration of the node and not in terms of hierachy of nodes. This
means that the e1_input code is written before the MSC node that
was the child of the network. Make the MSC_NODE a direct descendant
of the CONFIG_NODE and avoid this issue.
2011-03-29 17:50:49 +02:00
Holger Hans Peter Freyther
fcac2911cf
bsc: Fix the generation of the config file, fix indention
...
Fix the indention of codec-list, bsc-welcome-text, mid-call-text
and the mid-call-timeout. Fix the name of the codec-list in the
write method.
2011-03-29 17:08:27 +02:00
Pablo Neira Ayuso
6110a3f3fa
src: include new file osmocom/vty/misc.h for vty_out_rate_ctr_group()
...
This uses the new include file for vty_out_rate_ctr_group() which
available in libosmocore.
2011-03-28 20:01:03 +02:00
Pablo Neira Ayuso
3c409c249d
ipaccess-proxy: fix segfault in handle_dead_socket
...
This patch fixes a segfault if we or one BTS start a TCP connection
and close it before any IPAC_MSGT_ID_RESP message is sent.
2011-03-27 22:21:08 +02:00
Pablo Neira Ayuso
928cb33eb4
tests: fix bsc-nat test
...
In 136f453dd2
, I forgot to update
the new header path in the test/bsc-nat files (this happened to
me because I forgot to configured openBSC without --enable-nat).
2011-03-26 23:57:53 +01:00
Harald Welte
d36ff76f9d
Fix build of bsc-nat and GPRS code after include path change
...
The last patch changed the osmocore include paths, this fixes some build
problems caused by it
2011-03-23 18:33:26 +01:00
Pablo Neira Ayuso
136f453dd2
src: use new library libosmogsm and new path to headers in libosmocore
...
libosmogsm is a new library that is distributed in the libosmocore.
Now, openbsc depends on it. This patch gets openbsc with this
change.
This patch also rewrites all include path to the new
osmocom/[gsm|core]
Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
2011-03-23 18:17:56 +01:00
Pablo Neira Ayuso
3848770669
src: fix use of logging_vty_add_cmds() without log_info parameter
...
This patch fixes:
CC gb_proxy_main.o
gb_proxy_main.c: In function ‘main’:
gb_proxy_main.c:224: warning: implicit declaration of function ‘logging_vty_add_cmds’
And a similar problem in osmo-bsc_nat.
This was introduced in by myself in patch:
"bsc: change bsc_vty_init to take logging categories as parameter"
Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
2011-03-23 09:04:10 +01:00
Harald Welte
50e529d44e
Depend on libosmocore 0.1.31 due to VTY / logging change
2011-03-20 10:37:06 +01:00
Harald Welte
c76fb5dd10
[RBS2000] Enable TRAU frame handling/muxing similar to BS11
...
Based on original patch by Gus Bourg <gus@bourg.net>
2011-03-20 06:27:31 -03:00
Pablo Neira Ayuso
739a566961
bsc: change bsc_vty_init to take logging categories as parameter
...
This change is required to finish the integration of the VTY and
the per-application logging categories that provides:
"vty: integration with logging framework"
in libosmocore.
It has been tested with osmo-nitb. The other just compiled tested.
2011-03-19 18:50:38 -03:00
Pablo Neira Ayuso
5d7ad47386
misc: check for libdbi, mandatory library dependency
...
Otherwise, openbsc fails to compile:
CC db.o
db.c:29:21: error: dbi/dbi.h: File does not exists
2011-03-08 15:41:36 +01:00
Pablo Neira Ayuso
682587748f
vty: fix segfault if rf_ctl is not set
...
This is the case of osmo-nitb, since it does not call
osmo_bsc_rf_create().
term1: $ ./osmo-nitb -c ../openbsc.cfg.nanobts
term2: $ telnet localhost 4242
term2: OpenBSC> show network
term1: Segmentation fault
2011-03-08 15:35:34 +01:00
Holger Hans Peter Freyther
16b7f5c4ef
mgcp: Remove some duplicate header files from the list.
2011-03-08 15:33:52 +01:00
Harald Welte
40d1c3fef1
RBS2000: Automatically connect/start/configure/enable most MOs
2011-03-06 23:20:28 +01:00
Harald Welte
8b277ac381
OM2000: Make sure we fill the nsd->bts member for NM state events
2011-03-06 23:00:32 +01:00
Harald Welte
1484d88d7a
OM2000: First attempt in automatically configuring most MOs
...
TS objects are not part yet
2011-03-06 22:12:24 +01:00
Harald Welte
f38ca9aec7
OML: Include a pointer to the BTS in NM STATE CHANGE signals
...
... this allows the BTS driver to decide if it should handle the event at all
2011-03-06 22:11:32 +01:00
Harald Welte
d529db6e50
OM2000: Move IS conn group list generation out of VTY code
2011-03-06 21:49:21 +01:00
Harald Welte
af9b810419
OM2000: Track the Operational Info and MO state
2011-03-06 21:20:38 +01:00
Harald Welte
217c6b6ad2
OM2000: Remove "is-conf-req" from VTY, use "configuration-request"
...
This unifies the syntax a bit
2011-03-06 19:46:15 +01:00
Harald Welte
e898ecc57b
OM2000: Process MO STATE and ACCORDANCE INFO
2011-03-06 19:26:11 +01:00
Harald Welte
1edc2b4c85
OM2000: Fix configuration of TCH timeslots
2011-03-06 19:01:54 +01:00
Harald Welte
ba9adbb951
OM2000: Fix configuration of Timing Function (missing timing src)
2011-03-06 19:01:16 +01:00
Harald Welte
75755c5d87
OM2000: More work on the TS configuration request
...
It seems the differences for the various channel combinations are big
2011-03-05 20:38:35 +01:00
Harald Welte
8aeac19dbd
OM2000: Route TS config requests to the right TRX
...
The TRX number is encoded in mo.assoc_so, whereas the TS number
is in mo.inst!
2011-03-05 20:15:09 +01:00
Harald Welte
f6d6b21ec2
OM2000: TLV parser definitions for more DEI's
2011-03-05 20:13:52 +01:00
Harald Welte
aff63bc089
OM2000: Consider OP_INFO_REJ and TEST_REQ_REJ as NACK
2011-03-05 19:46:49 +01:00
Harald Welte
1164dce679
OM2000: Add channel combination specific DIEs for TS config request
...
... and in order to do this reasonably well, we have to get rid of
the pre-computed message length field in the OML header. Instead,
we now simply compute it at abis_om2k_sendmsg() time based on the
msgb_l2len().
2011-03-05 19:21:26 +01:00
Harald Welte
3ede723cb4
OM2000: Handle (Dis)Connect Reject in NACK handler
2011-03-05 17:58:13 +01:00
Harald Welte
e6e8383a92
OM2000: Print result/reason code when receiving a reject
2011-03-05 17:52:09 +01:00
Harald Welte
5748c20be1
OM2000: fix generation of frequency list DIE
2011-03-05 17:30:07 +01:00
Harald Welte
d4571f41a3
HSL: Make sure not to send HSL specific OML init on non-HSL BTS
2011-03-05 16:24:20 +01:00
Harald Welte
53492c86e8
OM2000: Make sure to set the Associated SO to 255 in case of RX/TX
2011-03-05 16:21:01 +01:00
Harald Welte
52af3aee5a
OM2000 VTY: Don't send RX configuration request to TX
2011-03-05 16:14:34 +01:00
Harald Welte
bab983764e
Fix Makefile.am for builddir != srcdir
2011-03-05 15:20:18 +01:00
Harald Welte
366d215dbd
Makefile: Add libmsc subdirectory to fix 'distcheck'
2011-03-05 15:18:25 +01:00
Harald Welte
f9cf961a66
OM2000: Add support for configuring the TF (Timing Function)
2011-03-05 14:36:47 +01:00
Harald Welte
a0ce349f0c
OM2000: Add support for sending TX, RX and TS configuration requests
...
They can be triggered from the VTY
2011-03-05 14:13:14 +01:00
Harald Welte
c08e8be4ee
fix path of bscconfig.h include file
2011-03-04 13:53:51 +01:00
Harald Welte
c1b2cfafd4
Fix build of bsc-nat test
2011-03-04 13:49:02 +01:00
Harald Welte
388cbbfc41
Some more SR1.0.1 related fixes
...
somehow all the 0x81 in OML became 0x80, and the 0x80 of RSL became
0x80.
2011-03-04 13:45:03 +01:00
Harald Welte
17a7634043
fix erroneous modification of DTX parameter introduced in previous HSL commit
2011-03-04 13:44:49 +01:00
Harald Welte
63467e8f28
Make sure not to feed BSSGP messages into RSL
2011-03-04 13:44:30 +01:00
Harald Welte
26d7907b02
Implement the HSL SR1.0.1 protocol
...
It seems HSL has fixed most of their obvious issues in the SR1.0.1
release. However, this creates quite an incompatibility of the
protocol, and we have to adapt accordingly
2011-03-04 13:44:12 +01:00
Harald Welte
fd355a3c6f
[HSL] initial support for the HSL 2.75G Femtocell
...
The HSL Femtocell seems to be a poor man implementation of the
ip.access Abis/IP protocol, but cutting corners wherever possible.
We try to workaround those corners wherever possible...
2011-03-04 13:44:07 +01:00
Harald Welte
89579b4317
prefix sub-directories containing libraries with 'lib'
...
... and make sure tests work again after restructuring
2011-03-04 13:23:09 +01:00
Harald Welte
5a6b68f416
really delete a3a8 code
2011-03-04 09:24:31 +01:00
Harald Welte
bd34be0a96
bsc_mgcp: use top_builddir instead of top_srcdir
2011-03-03 23:46:55 +01:00
Harald Welte
e5e36af8ae
Move 'Gb' protocol stack into its own src/gb subdirectory
2011-03-03 23:45:28 +01:00
Harald Welte
a17faf8512
Rename bsc_nat -> osmo-bsc_nat and bsc_mgcp -> osmo-bsc_mgcp
...
This now enforces a unique structure: All of our main daemon
programs start with an "osmo-" prefix.
2011-03-03 23:36:48 +01:00
Harald Welte
31c00f7d6f
re-structure the OpenBSC directory layout
...
The new structure divides the code into a number of libraries
for the BSC core functionality, MSC core functionality, Abis transport,
TRAU and other bits.
This doesn't introduce any functional code change but simply moves
around files and alters Makefile.am accordingly.
Next step would be to disentangle a lot of the inter-library
dependencies and make the individual bits of code more independent.
2011-03-03 23:29:05 +01:00
Harald Welte
9349d7ff7c
remove a3a8 file that is not used
2011-03-03 23:25:31 +01:00
Holger Hans Peter Freyther
955c3d1894
misc: Fix the make distcheck of the sources.
2011-02-28 20:49:47 +01:00
Holger Hans Peter Freyther
afb883956d
mgcp: Fix make distcheck due a copy 'n pasted Makefile.am
2011-02-28 20:45:55 +01:00
Holger Hans Peter Freyther
6990687f4c
mgcp: Only allow transcoding on the virtual trunk
2011-02-28 19:40:54 +01:00
Holger Hans Peter Freyther
44016fee14
mgcp: Fix the static allocation of E1 trunks for the BTS/NET side
2011-02-28 19:40:54 +01:00
Holger Hans Peter Freyther
1f0c5b4742
mgcp: Allocate the endpoints for the E1 trunks as well.
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
74e61110e5
mgcp: Look up the E1 trunks through the trunk configuration
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
6ea7e777f5
mgcp: Implement find_trunk to find the E1 trunks as well.
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
cdba04978d
mgcp: Make show mgcp print the new trunks we have.
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
0e939fec42
mgcp: Introduce a trunk config for multiple trunks.
...
A trunk will always have 32 endpoints to be used and we allow
a sparse allocation of endpoints.
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
ab3bb9d444
mgcp: Update the commands to work on more than the virtual trunk
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
d011c91512
mgcp: Prepare the show mgcp command to work on multiple trunks
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
88ad7723b4
mgcp: Introduce a mgcp_trunk_config enum for endpoint configs
...
We want to support real trunks in the MGCP code and we need to
have some better book keeping for those. Move the code around.
2011-02-28 19:40:53 +01:00
Holger Hans Peter Freyther
dfdf8d929a
nat: For debugging make it possible to set the last used endpoint
...
This will influence the allocator from where to search for the
next free endpoint. This can be used to force it to allocate a
specific endpoint next.
2011-02-28 19:40:46 +01:00
Holger Hans Peter Freyther
9212d9d636
nat: Fix some corruption in the test case
2011-02-27 11:18:41 +01:00
Holger Hans Peter Freyther
9ec030d32d
nat: Change number of multiplexes to the max-endpoints
2011-02-27 11:05:18 +01:00
Holger Hans Peter Freyther
a9e9331285
nat: Allocate endpoints from multiple multiplexes.
...
This code allocates endpoints from multiple multiplexes but
will always leave 0x0 and 0x1f unassigned in the multiplex.
2011-02-26 11:38:00 +01:00
Holger Hans Peter Freyther
7b07b2dcff
nat: Start making the number of multiplexes configurable
...
Introduce a VTY setting that right now needs to be set to
one. To make updating this setting possible we will now store
the number of endpoints in the bsc connection as well.
2011-02-26 10:42:01 +01:00
Holger Hans Peter Freyther
86c1db6338
nat: Verify that we are not assigning 0x1f as endpoint.
...
On a classic BSC we have 32 channels but one is reserved for
signalling. Make sure that we are not assigning 0x1f as we
assume that this is the signalling channel. This means that
from 32 possible voice channels we are only going to use 30
as we are already not using the 0x0.
2011-02-26 10:38:52 +01:00
Holger Hans Peter Freyther
ed500e3877
nat: Allocate the endpoint status dynamically
...
Allocate the status for an endpoint dynamically. We will support
BSCs with different amount of multiplexes and need to have this
flexibility in the future. Add the proper null checks to the
current users of this code.
2011-02-26 10:35:33 +01:00
Holger Hans Peter Freyther
7e0cc50e44
nat: Update the tests to make them going again
...
We now need to have access to a mgcp_cfg and the change to the
setup number patching needs new data. We now set the number to
international type.
2011-02-25 17:30:48 +01:00
Holger Hans Peter Freyther
867d69bbcb
configure: Require a new libosmovty due to the syslog/logging changes
2011-02-25 17:30:48 +01:00