aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include
AgeCommit message (Collapse)AuthorFilesLines
2010-08-04mgcp: Only patch the header if we had a change in SSRCHolger Hans Peter Freyther1-0/+1
2010-08-04mgcp: Allow switching the audio streams, patch the headerHolger Hans Peter Freyther1-0/+5
Patch the sequence number, the SSRC and the timestamp to allow to mix various voice streams, e.g. toggling the loop during the call.
2010-08-04mgcp: Move the rtp state into a structHolger Hans Peter Freyther1-4/+8
Use a struct to group the rtp state for the up and the down link of the bts.
2010-08-03mgcp: Allow to change the receive (the loopback part) via the VTYHolger Hans Peter Freyther1-0/+1
Conflicts: openbsc/src/mgcp/mgcp_vty.c
2010-08-03mgcp: Implement the "loopback" mode for a connection endpoint.Holger Hans Peter Freyther1-0/+9
2010-07-29osmo-grace: Introduce a global trace text to be send to subscribersHolger Hans Peter Freyther1-0/+1
2010-07-29osmo_rf: Keep the current policy inside the RF struct..Holger Hans Peter Freyther1-1/+3
Keep a back pointer to the rf struct inside the connection, resolve the network through the back pointer. Also assume that the RF is on. In case we start with RF locked, the policy is on but we will not see any MS talking to us.
2010-07-29bsc_rf: Embed the rf status inside the GSM Network.Holger Hans Peter Freyther1-0/+2
Right now we have a network-wide RF lock, in the future one BSC might have multiple BTSs at different positions and a global state will not make sense anymore and need to be moved over to the BTS struct..
2010-07-29bsc_grace: Add a new per network check to decide if new connections are allowedHolger Hans Peter Freyther2-1/+31
In case of an ordered RF shutdown we can enter a grace period where no new RF connections are allowed but active connections will stay alive until the RF is switched off.
2010-07-29gsm_04_80: Allow to specify the alert pattern for the notificationHolger Hans Peter Freyther1-2/+2
Allow to specify the level (not the category) of the notification this provides an easy way to test it on the phones. Conflicts: openbsc/src/vty_interface_layer3.c
2010-07-29gsm_04_80: Send a Release Complete otherwise the USSD unit stays BUSYHolger Hans Peter Freyther1-0/+1
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. Conflicts: openbsc/src/vty_interface_layer3.c
2010-07-29gsm_04_80: Add untested code for USSD notification...Holger Hans Peter Freyther1-0/+2
One should be able to send a USSD Notification to a given subscriber if we has an active link... Conflicts: openbsc/src/vty_interface_layer3.c
2010-07-29gsm_04_80: Add code to wrap a facility IE around.Holger Hans Peter Freyther1-0/+2
2010-07-29gsm_04_80: Create a unstructuredSS-Notify messageHolger Hans Peter Freyther1-0/+1
Create a unstructuredSS-Notify for a given type.
2010-07-29gsm_04_80: Fix the style and move the '*' to the functionHolger Hans Peter Freyther1-1/+1
2010-07-29gsm0480: Implement a generic "invoke" wrapping for messages.Holger Hans Peter Freyther1-0/+1
Implement a GSM 04.80 invoke wrapper for a component and an invoke id. Conflicts: openbsc/src/gsm_04_80.c
2010-07-29gsm0480: Attempt to encode a NotifySS-Arg with a username..Holger Hans Peter Freyther1-0/+2
2010-07-29bsc_msc_rf: Add a grace command, send a signalHolger Hans Peter Freyther1-0/+12
2010-07-29mgcp: Attempt to count missing RTP packets with a basic calculationHolger Hans Peter Freyther1-0/+6
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..
2010-07-27bsc_msc_ip: Use ip-dscp and provide the old value as alias.Holger Hans Peter Freyther1-1/+1
2010-07-27mgcp: Rename TOS to DSCPHolger Hans Peter Freyther1-1/+1
DSCP is the more modern information for TOS and the kernel will set parts of TOS by itself (e.g. for ECN).
2010-07-27nat: Remove the nat code from the On-Waves branch... new code is in masterHolger Hans Peter Freyther1-2/+0
2010-07-23abis_nm: Band aid on OML initialisation by queuing messagesHolger Hans Peter Freyther2-0/+7
Instead of sending many messages we will queue the OML messages and wait for the ACK/NACK before sending the next message from the queue. We tag the msgb to remember if we need to wait for an ack or not. We keep the order of all messages, on ACKs and similiar occassions we will drown the queue until we reach a message that needs to be acked and then wait for that ack again. Possible breakage can appear when we send an OML (e.g. BS11 specific message) msg which does not need to be acked through the abis_nm_sendmsg call. The fix will be to use the _direct version of this method. Re-Enable as it might have fixed something... who knows. Conflicts: openbsc/include/openbsc/abis_nm.h openbsc/include/openbsc/gsm_data.h openbsc/src/gsm_data.c openbsc/src/input/ipaccess.c
2010-07-09Revert "abis_nm: Band aid on OML initialisation by queuing messages"Holger Hans Peter Freyther2-7/+0
This has not fixed the init issue and we will need to figure out an alternative to this. This reverts commit a68f139820ea02c05ff64e265084c1dda8c7ea3a.
2010-06-28bsc_init: Allow DTXu and enable DTXd on RSLHolger Hans Peter Freyther1-0/+3
Allow the MS to use uplink discontinous transmission by setting the right bit in the SystemInformation and set DTXd/DTXu on the RSL channel commands. This is configurable via dtx-used (0|1) on the network level..
2010-06-23abis_nm: Band aid on OML initialisation by queuing messagesHolger Hans Peter Freyther2-0/+7
Instead of sending many messages we will queue the OML messages and wait for the ACK/NACK before sending the next message from the queue. We tag the msgb to remember if we need to wait for an ack or not. We keep the order of all messages, on ACKs and similiar occassions we will drown the queue until we reach a message that needs to be acked and then wait for that ack again. Possible breakage can appear when we send an OML (e.g. BS11 specific message) msg which does not need to be acked through the abis_nm_sendmsg call. The fix will be to use the _direct version of this method. Conflicts: openbsc/include/openbsc/abis_nm.h openbsc/include/openbsc/gsm_data.h openbsc/src/gsm_data.c openbsc/src/input/ipaccess.c
2010-06-22abis_rsl: Send the IMMEDIATE Assignment after the Channel Ack.Holger Hans Peter Freyther1-0/+3
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. Conflicts: openbsc/include/openbsc/gsm_data.h openbsc/src/abis_rsl.c openbsc/src/chan_alloc.c
2010-06-14lchan: Introduce a handoff variable...Holger Hans Peter Freyther1-0/+1
This variable can be used by higher levels to declare they were done with lchan...
2010-06-13channel: Keep track on when a channel got allocated.Holger Hans Peter Freyther1-0/+3
This can help to detect 'stale' channels in a network.
2010-06-08nat: Allow to specify multiple entries in the access-list...Holger Hans Peter Freyther1-0/+7
Inside the access-list we have a list of entries that have either one allow or one deny rule... we do not allow to remove a single rule but one has to remove the whole list, in that case talloc will handle cleaning all entries. Right now the matching is O(n*m) as we traverse the list (multiple times) and run the regexp multiple times. One way to make it faster would be to concat all regexps into one.
2010-06-08nat: Shorten the access-list struct and method names (still way too long)Holger Hans Peter Freyther1-4/+4
2010-06-03[nat] Implement the removal of an access-list.Holger Hans Peter Freyther1-0/+1
2010-06-01[nat] Introduce the concept of access-listHolger Hans Peter Freyther1-7/+21
One can set one access-list to one BSC and one access-list to one NAT. The matching of IMSIs remains the same for now, also applying the white/blacklist. Access lists can not be deleted for now and no perf opt is done (e.g. one could cache the result of the last lookup in the bsc struct).
2010-05-31[nat] Add ip-tos option to the nat.Holger Hans Peter Freyther1-0/+1
This is applied to all incoming BSC connections.
2010-05-31[mgcp] Set the IP_TOS/DSCP on RTP/RTCP IP packets.Holger Hans Peter Freyther1-0/+1
2010-05-22[gprs] NS/BSSGP: Make all timers configurable from VTYHarald Welte1-0/+2
2010-05-18msc: Add msc ip-tos NR option for the BSCHolger Hans Peter Freyther2-1/+3
Allow to set the TOS field via the VTY interface. The SO_PRIORITY was not used as it has no effect on the packets being sent (in contrast to the documentation).
2010-05-16[nat] Make the refusal more complicated to support more MSCsHolger Hans Peter Freyther1-0/+1
We will need to confirm the connection, then we can send the GSM48 message, then we need to close the connection... the embedding in the refusal method was way too easy..
2010-05-16[sccp] Add method to create a dt1 packet.Holger Hans Peter Freyther1-0/+1
2010-05-16[sccp] Create a method to create RLSD messages.Holger Hans Peter Freyther1-0/+1
2010-05-16[sccp] Create a SCCP CC creation routine.Holger Hans Peter Freyther1-0/+1
2010-05-16[nat] Make create_sccp_src_ref return the SCCP Connection.Holger Hans Peter Freyther1-1/+1
Right now it was not possible to just find a connection, by returning the connection that is created we will have direct access to it. It will be used by the local connection handling.
2010-05-16[nat] Remove parameter that is never accessed directlyHolger Hans Peter Freyther1-1/+1
The msgb needs to be around when we access the parsed structure but that needs to be guranteed by the caller handing out the parsed structure.
2010-05-16[nat] Add the notion of a "local" connection.Holger Hans Peter Freyther1-0/+1
A local connection is only between the MUX and the real BSC. We will not forward anything to the MSC. This will be needed for the IMSI filtering as sending a CREF is not liked by every BSC...
2010-05-16gsm48: Split LU Reject sending and generation into two.Holger Hans Peter Freyther1-0/+1
2010-05-16gsm48: Separate CM Service Reject sending and creation.Holger Hans Peter Freyther1-0/+1
Split out the msg generation from the sending, this will be used by the nat to send a refusal message.
2010-05-16[nat] Use and print the connection type of a SCCP connection.Holger Hans Peter Freyther1-0/+5
2010-05-16[nat] Set the connection type/reason as out parameterHolger Hans Peter Freyther1-1/+10
We are analyzing each CR message and it is nice to know the reason these connections were created. Change the nat method.
2010-05-16gsm48: Add a generic MI from classmark+mi extraction.Holger Hans Peter Freyther1-0/+1
This is a generic MI extraction for the MI if it is followed after a classmark. For the Phase1 Phones the classmark2 is not four bytes but it might be different. This code can be used by the CM Service Request handling as well.
2010-05-15gsm48: Add size checks to the paging response mi parsing.Holger Hans Peter Freyther1-1/+1
We go from no size checks to some content checking. We should refactor the whole classmark2 + mi parsing that is used throughout the code into one place with proper size checking. This is the start and requires a new libosmocore as well.