Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
right now we use 901-70 based IMSIs for testing - but this of course
needs to become vty configurable soon.
|
|
|
|
As Dieter points out, the structure was not properly zero-initialized...
|
|
As Dieter correctly points out, MCC an MNC can very well be lager than
255 ;)
|
|
... there is a separate IP address IE that should be used for this.
Otherwise, devices may treat 1.2.3.4 as a hostname and make forward dns
lookups on it ;)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Extend the ul/dl counting to count the usual messages on the
Gb interface. Add counters for the attach, routing area update,
pdp context activation and deactivation procedures. Update the
test result with the new counters.
|
|
|
|
RPM post-build-checks found some issue and marks these as error:
[ 38s] I: Program returns random data in a function
[ 38s] E: openbsc no-return-in-nonvoid-function meas_vis.c:118
|
|
There are currently no reate counters but this will hopefully
change in the near future.
|
|
This commit adds the class_id initialiser to all rate_ctr_group_desc
definitions.
Sponsored-by: On-Waves ehf
|
|
This commit initialises and enables the stats subsystem for the given
binaries.
Sponsored-by: On-Waves ehf
|
|
Holger reports that the bitmap that accounts for available Osmux circuit
IDs is limited to 128, when the maximum number of circuit IDs are
determined by the uint8_t field in the header (ie. 256 circuits).
[hfreyther: Update the testcase now that we have more ids to allocate]
|
|
Sponsored-by: On-Waves ehf
|
|
Trigger an OAP registration upon IPA connect. Feed incoming OAP messages to
oap_handle() and send replies returned by it.
Add oap_config to sgsn_config (todo: vty).
Sponsored-by: On-Waves ehf
[hfreyther: Fix coding style]
|
|
Sponsored-by: On-Waves ehf
|
|
Sponsored-by: On-Waves ehf
|
|
Add oap.[hc] and oap_messages.[hc].
Sponsored-by: On-Waves ehf
|
|
Add new kitchen sink openbsc/utils.h and libcommon/utils.c to make three so far
static functions public (so I can use them in the upcoming OAP code).
A place to put them could have been the gprs_utils.h, but all general functions
in there have a gprs_ prefix, and todo markings to move them away. All other
libcommon headers are too specific, so I opened up this kitchen sink header.
Replace the implementation of encode_big_endian() with a call to
osmo_store64be_ext(). See comments.
Apply the change in Makefiles and C files.
|
|
The documentation needs to end with a \n and T3316
needs to have some text. I think it is the T3316
timer that has no action on the network side.
<command id='timer t3312 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3322 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3350 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3360 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3370 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3313 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3314 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3316 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3385 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3386 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3395 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
Documentation error (missing docs):
<command id='timer t3397 <0-65535>'>
<param name='<0-65535>' doc='(null)' />
|
|
It mentioned AGPLv3+ and refers to the hyperlink of v3, but still
stated "Version 2 or later". That was a typo at the time.
|
|
This change has some implications for the test case. It manipulated
bss_ptmsi_state and sgsn_tlli_state variables to make the output of
rand_r() and thus the TLLI/TMSI used predictable.
This possibility is gone when using RAND_bytes() so instead it is
overridden by a function that returns a deterministic sequence of values
(0x00dead00, 0x00dead01, ...). The test cases are adapted to expect
these values instead of the pseudo random values before.
The gbproxy_test stdout file changes as well, but only where the
TLLI/TMSI is displayed (in the hex dumps as well as the TLLI cache
entries). All other output is the same.
|
|
This (currently empty) function is meant to contain code that cleans
up the left-overs of the test functions. This is needed by the next
commit to reset the RAND_bytes sequence.
|
|
[hfreyther: Link to libcrypto, include header, add uint8_t* cast]
|
|
Currently just the number of intercepted downlink messages is counted
and eventually checked. The contents of the messages is lost. The
PTMSI contained in ATTACH/RAU Accept messages is just 'guessed' by
resetting the random number generator after reference PTMSIs have
been generated. While this works with rand_r, RAND_bytes cannot be
forced to recreate a certain number sequence this way (unless the
backend is replaced).
This commit changes that behaviour so that the last received msgb is
kept and decoded. The PTMSI that has been assigned by the SGSN is
then taken in the affected test cases and used instead of a 'guessed'
one. This is similar to how a real MS would react to the Accept
message.
Sponsored-by: On-Waves ehf
|
|
This (currently empty) function is meant to contain code that cleans
up the left-overs of the test functions. This will be needed by the
next commit that will store the last received msgb for later inspection.
Sponsored-by: On-Waves ehf
|
|
For a setup with multiple network interfaces be able to pick
the one that osmux should be used/visible.
|
|
We don't care how many bytes the length has but the
destination we want to copy to.
Fixes: CID#1296813
|
|
The commit not compiling/linking should have been a strong
indicator that it has not been tested either.
This reverts commit 6cf0249dacc4ae46eb0857c007906c9a3f128a3e.
|
|
This API is a bit unfortunate as the caller will also
access the endpoint directly. E.g. like this:
output = bsc_mgcp_rewrite(...,
mgcp_net_src_addr(endp),
endp->net_end.local_port, -1,
In terms of "terminology" the "net" was meant to be bad
internet and the "bts" is the local and trusted network
segment. With this terminology the "bts" would be the
call-agent/MGW and "net" where the BSCs will send data
to but that is not the case and terminology actuallys
refers to:
* net: The addresses exposed to the entity that
made the MGCP call
* bts: The system where we get our data for the
local audio flow.
Fix the method but leave the API as it is. Use the net_end
in the net_src method and the bts_end in the bts_src method.
|
|
We put a signed integer into this string but did not account
for the newline and for the terminating NUL of the string. Add
the newline to the string and add one for NUL. Spotted while
accidently having a CID of 255.
|
|
There appears to be a leak of CIDs:
<000b> mgcp_osmux.c:544 All Osmux circuits are in use!
There are paths that a CID had been requested and never released
of the NAT. Remember the allocated CID inside the endpoint so it
can always be released. It is using a new variable as the behavior
for the NAT and MGCP MGW is different.
The allocated_cid must be signed so that we can assign outside
of the 0-255 range of it.
Fixes: OW#1493
|
|
Extend the osmux only setting from the MGCP MGW to the NAT. This
is applied when an endpoint is allocated and/or when the allocation
is confirmed by the remote system.
Not tested. The impact should only be when the new option is
being used.
Fixes: OW#1492
|
|
Some systems only want to use Osmux. In case only Osmux
should be used fail if it has not be offered/acked.
Client:
Verified On, Off and Only with X-Osmux: 3 and without this field.
<000b> mgcp_protocol.c:823 Osmux only and no osmux offered on 0x14
<000b> mgcp_protocol.c:884 Resource error on 0x14
NAT:
Not tested and implemented
Fixes: OW#1492
|
|
* Print number of used CIDs for the system
* Hopefully this is just the beginning
|
|
sizeof(uint8_t) == 1 and there is no need to create an array
with 16 bytes and then only use the first two of them. This
means the CID range is from 0 to 127 and we should be able
to extend this to 256 by changing the array size to 32. Update
the testcase now that we can have more than 16 calls with Osmux.
|
|
* Test that one can get an id
* That they are assigned predicatble right now
* That returning them will make the number of used ones go down
* That allocating more will fail
|
|
[hfreyther: Add cast to uint8_t to fix compiler warning]
|
|
[hfreyther: Fix compiler warning about unused variable]
|
|
[hfreyther: Link to libcrypto, include header, add uint8_t* cast]
|