Age | Commit message (Collapse) | Author | Files | Lines |
|
Patch the sequence number, the SSRC and the timestamp to
allow to mix various voice streams, e.g. toggling the loop
during the call.
|
|
Use a struct to group the rtp state for the up and the down
link of the bts.
|
|
|
|
|
|
|
|
common_vty.c was including bsc_nat.h which tried to
get the sccp/sccp_types.h which is not required to be
installed. Move all structs using/embedding SCCP structures
into the bsc_nat_sccp.h and include. This should fix
the compilation.
|
|
Currently every SAPI release indication will trigger the channel. It
was possible that we had SAPI=3 and SAPI=0 allocated and we tried to
release the channel by sending a RF Channel Release, the BTS answered
with a RF Channel Release ACK but also sent the SAPI Release Indication
which triggered a channel release here. So it was possible that we
would have released a newly allocated channel because of the SAPI
release of the old connection.
This code now works by releasing all SAPIs from highest to lowest,
then sending a SACH Deactivate and finally releasing the channel. This
approach is in use on the on-waves/bsc-master.
|
|
|
|
|
|
This code compares the UDP sequence numbers of two RTP messages
and guesses if packets are missing. It is guessing in two ways:
1.) by default the sequence number is 0, so on the first
value we ignore the jump... we might ignore a real issue
in case of a wrap around which is easily possible as the
sequence should be a random number.
2.) the UDP stream might have been reordered on the network
and we would see the jump...
In any case these two shortcomings are acceptable for the feature
that is meant to provide some basic analysis..
|
|
|
|
DSCP is the more modern information for TOS and the kernel
will set parts of TOS by itself (e.g. for ECN).
|
|
|
|
Allow to specify the level (not the category) of the notification
this provides an easy way to test it on the phones.
|
|
We need to release the USSD unit, otherwise it is staying blocked
and will stop to function (even across LUs on my a1200). This code
should encode the transaction and the direction depending on the
network state but this is omitted right now.
|
|
One should be able to send a USSD Notification to a given
subscriber if we has an active link...
|
|
|
|
Create a unstructuredSS-Notify for a given type.
|
|
|
|
Implement a GSM 04.80 invoke wrapper for a component and an
invoke id.
|
|
|
|
160 charachters is the limit of the subscriber name inside
the notifySS nameIndicator/callingName.
|
|
|
|
* Untested code for sending the SMS BROADCAST COMMAND.
|
|
|
|
|
|
|
|
... while asking the BTS to perform tests for us. The length of the
ARFCN whitelist is the actual length in bytes, not the number of 16bit
ARFCN numbers.
Also, implement a limit, either by rxlevel or by number of ARFCN
that should end up in the whitelist.
|
|
* transition through cycles of NWL tests
|
|
Use libosmocore 'rxlev_stat' module to generate an ordered list
of ARFCN's, sorted by RxLev while performing test nr. 64
|
|
Also, we now re-start the network listen test after it has finished,
so if you run a test from ipaccess-find, the test will get re-started
and re-started all the time.
|
|
Provide the message type and the msgb of the NACK message.
|
|
|
|
* We should create the transaction for SMS, CC on the CM Service Request
but for now we will use a band aid and create a dummy operarion to wait
five seconds for the transaction to be opened.
|
|
|
|
In the future we will have multiple MSC connections so we will
need to figure if any of them is active.
|
|
* Stop using nat->msc_con in the read_cb but use the data.
|
|
In the future we might have multiple MSCs connected
and need to dispatch it to the right one.
|
|
|
|
This adds the bits that call into libosmocore (and its plugins)
to implement GPRS (LLC) encryption.
|
|
|
|
sgsn_rx_sndcp_ud_ind() can no longer make the assumption that msgb_bcid() is
valid, as this is only true for an un-fragmented SN-PDU. So instead,
we now store the RAID in the SNDCP Entity and pass it as an explicit
argument to sgsn_rx_sndcp_ud_ind().
|
|
This adds the unix domain socket rf control protocol into
the new subdirectory.
|
|
The bsc_handover_clear will release an in-progress handover
and free the lchana and the data associated with this handover
|
|
The transaction should not know on which lchan we are operating
as this can change due handover. Add untested code to share the
subscriber connection of the new and old lchan and move the pointer
in case of success/failure. Also on a clear command we will free
any resources allocated...
This code is not tested and needs to be debugged, but it should
have the right structure. I am going to fix a potential memleak
in the next commit.
|
|
A channel will be released in case of
* Errors via the clear_request callback...
* no more transactions and operations are going on.
This means that if we do something without a transaction
the channel might be closed down right away. The bug fix
will be to create a transaction/operation.
|
|
This is a big change to the way we use the subscriber
connection. From now on it is is dynamically allocated
and we will slowly move from a 1:1 lchan to conn to
having more than one lchan per connection.
This is the first commit, the subscr_con* methods will
move to gsm_data once the use_count is removed from the
connection, the freeing of the connection will also change.
|
|
The Channel Activate might be sent to a different TRX than the
Immediate Assignment. So we need to make sure that the channel
is activated before we send the immediate assignment for the RACH.
Another reason for that is according to GSM 08.58 we should take
the frame number from the activate and use it for the starting
time inside the immediate assignment message. We obviously do not
do this yet.
The code assumes that the BTS will either respond with a CHAN ACK
or a CHAN NACK if not the lchan will remain in the request state.
|
|
|
|
|