aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/mgcp/mgcp_network.c
AgeCommit message (Collapse)AuthorFilesLines
2011-03-04prefix sub-directories containing libraries with 'lib'Harald Welte1-579/+0
... and make sure tests work again after restructuring
2011-02-28mgcp: Introduce a mgcp_trunk_config enum for endpoint configsHolger Hans Peter Freyther1-4/+4
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-01-01License change: We are now AGPLv3+ instead of GPLv2+Harald Welte1-6/+5
The reason for this is quite simple: We want to make sure anyone running a customized version of OpenBSC to operate a network will have to release all custom modifiations to the source code.
2010-11-02mgcp: Send data from the network to the transcoder tooHolger Hans Peter Freyther1-14/+10
We now should be able to transcode in both directions.
2010-11-02mgcp: Use the calculated remote port from the mgcp_rtp_endHolger Hans Peter Freyther1-4/+2
2010-11-02mgcp: Make the transcoding forwarding work for BTS/NETHolger Hans Peter Freyther1-19/+33
Share the implementation for the transcoded packets and forward them to the network and the bts.
2010-11-02mgcp: Refactor the network binding routinesHolger Hans Peter Freyther1-47/+26
Create another wrapper function that takes most of the arguments from the caller.
2010-11-02mgcp: Introduce trans_bts and send BTS packets from this portHolger Hans Peter Freyther1-3/+19
Introduce the trans_bts. Right now only a port is allocated and the packets from the BTS are sent from this socket.
2010-11-01mgcp: Rename transcoder_end to trans_netHolger Hans Peter Freyther1-13/+13
Packets arriving for trans_net will be send out to the networking. We will introduce a trans_bts in a second.
2010-11-01mgcp: Make transcoding a per Endpoint configurationHolger Hans Peter Freyther1-1/+1
This allows to switch off transcoding on the fly, or only enable it for certain vessels with known problems.
2010-10-12misc: Attempt to determine byte order in a cross-platform wayHolger Hans Peter Freyther1-1/+9
OSX does not provide an endian.h, use the other header files that should define/include what we need. Also check that the byteorder define is available.
2010-09-20mgcp: Count the packets that arrive on the transcoderHolger Hans Peter Freyther1-0/+1
2010-09-20mgcp: Make the base port of the transcoder configurableHolger Hans Peter Freyther1-1/+1
The code assumes a static mapping from endpoint to RTP port, be able to configure the start of such a mapping.
2010-09-20mgcp: Forward data from the BTS-in to the transcoderHolger Hans Peter Freyther1-0/+97
Bind a new port for the transcoder, forward data from the BTS to the transcoder, and from the transcoder to the network. Leave BTS-IN where it is, BTS-OUT can now be after the transcoding took place. We send the data from the BTS RTP port. This whole route will be guarded by the transcoder_ip and if it is NULL (current default) it will not go through the transcoder.
2010-08-06mgcp: Remember if the endpoint was allocated...Holger Hans Peter Freyther1-1/+1
Do not use the CI_UNUSED to decide if an endpoint is allocated but introduce a new flag. This way only the CRCX and free_endp play with the allocated field.
2010-08-06mgcp: Fix discovering the RTCP port with the more strict check.Holger Hans Peter Freyther1-13/+27
If we have found the BTS and we receive data on the RTCP port from the IP of the BTS we will set our RTCP port and forward it to the network and hope it will be useful.
2010-08-06mgcp: Determine the proto properly...Holger Hans Peter Freyther1-1/+1
2010-08-06mgcp: Add instrumentation code to find a possible port leak/bsc-fd corruptionHolger Hans Peter Freyther1-5/+12
2010-08-06mgcp: Fix a filedescriptor leak in case the bind is failing.Holger Hans Peter Freyther1-0/+2
2010-08-06mgcp: Add a call tap feature to forward audio to another forward portHolger Hans Peter Freyther1-0/+15
For debugging it is useful to forward (tee) UDP packets to another system and use gstreamer to inspect the rtp stream. This is untested code and might contain bugs.... and of course only tap your own calls.
2010-08-05mgcp: Patch RTP packets again if that is allowed.0.9.3Holger Hans Peter Freyther1-1/+1
2010-08-05mgcp: Be more strict on the source addr/source port of the btsHolger Hans Peter Freyther1-0/+15
Once we have discovered the bts we will not accept data from anything else. The call will drop if the BTS is changing the ip address of the nat anyway.
2010-08-05mgcp: Only discover the bts once, the extra check got lostHolger Hans Peter Freyther1-3/+3
2010-08-05mgcp: Allow to dynamically allocate ports from a range..Holger Hans Peter Freyther1-0/+22
Allow to switch to a dynamic port allocator and not reuse the ports for a long time... This should help with a crazy network sending two streams at the same time.
2010-08-05mgcp: Separate recv from net/bts and remove autodetectionHolger Hans Peter Freyther1-41/+64
This allows a more strict check on the source of RTP messages and we can more easily reject those. For the BTS without an ip address we will also update the ip address.
2010-08-05mgcp: Move the loopback code into the common send as well.Holger Hans Peter Freyther1-8/+9
2010-08-05mgcp: Remove the receive code into a new method.Holger Hans Peter Freyther1-11/+25
2010-08-05mgcp: Move the selection of the right source port to a new methodHolger Hans Peter Freyther1-31/+31
2010-08-05mgcp: Allocate a different port for the networking...Holger Hans Peter Freyther1-33/+47
Use the right source port when sending the message.
2010-08-05mgcp: Move the bfd for rtp/rtcp into the portHolger Hans Peter Freyther1-20/+20
Stop using the memset in the mgcp_rtp_end_reset as we will reset the list pointers and then have a mess..
2010-08-05mgcp: Rename the bind method to show it is only binding for the bts portHolger Hans Peter Freyther1-2/+1
2010-08-05mgcp: Attempt to separate the RTP/RTCP port for the Network and for the BTSHolger Hans Peter Freyther1-7/+8
We plan to have two different ports for the network and for the BTS to avoid detecting the BTS and to dynamically allocate the port to have old data not go to a new socket.
2010-08-05mgcp: Group the state for bts/net into a struct and have two instancesHolger Hans Peter Freyther1-18/+18
Group the data that each end (network/bts) have into a struct and use this struct throughout the sourcecode.
2010-08-05mgcp: Remove the forwarding mode as it was not used.Holger Hans Peter Freyther1-1/+1
2010-08-05mgcp: Fix the payload_type... it broke in ↵Holger Hans Peter Freyther1-2/+2
7cdc62c01223570441e60ec6d0dd7a92e622677b
2010-08-04mgcp: Fix the reversed net/bts... which has not cause any issue..Holger Hans Peter Freyther1-2/+2
2010-08-04mgcp: Pass the whole endpoint to the patch method.Holger Hans Peter Freyther1-12/+10
2010-08-04mgcp: Fix the order of the arguments...Holger Hans Peter Freyther1-3/+3
2010-08-04mgcp: Print the conn mode as wellHolger Hans Peter Freyther1-5/+5
2010-08-04mgcp: Disable the actual patching... this is a temporary hackHolger Hans Peter Freyther1-1/+1
2010-08-04mgcp: Print the system for the duplicate SSRC...Holger Hans Peter Freyther1-5/+12
2010-08-03mgcp: Only patch the header if we had a change in SSRC0.9.1Holger Hans Peter Freyther1-5/+8
2010-08-03mgcp: Allow switching the audio streams, patch the headerHolger Hans Peter Freyther1-3/+25
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-03mgcp: Move the rtp state into a structHolger Hans Peter Freyther1-10/+9
Use a struct to group the rtp state for the up and the down link of the bts.
2010-08-03mgcp: Implement the "loopback" mode for a connection endpoint.Holger Hans Peter Freyther1-0/+4
2010-07-29mgcp: Attempt to count lost packets better...Holger Hans Peter Freyther1-1/+1
2010-07-29mgcp: Attempt to count missing RTP packets with a basic calculationHolger Hans Peter Freyther1-4/+18
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-27mgcp: Rename TOS to DSCPHolger Hans Peter Freyther1-2/+2
DSCP is the more modern information for TOS and the kernel will set parts of TOS by itself (e.g. for ECN).
2010-07-23mgcp: u_int8_t -> uint8_tHolger Hans Peter Freyther1-4/+4
2010-07-23mgcp: u_int16_t -> uint16_tHolger Hans Peter Freyther1-1/+1