aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2011-09-14mgcp: Fix the naming of the various audio volume/gain parametersHolger Hans Peter Freyther1-2/+2
The problem has been here for a while, fix the parsing of the generated config file
2011-09-14mgcp: Introduce multiple virtual trunksHolger Hans Peter Freyther4-282/+231
A virtual trunk is identified by a virtual domain name.
2011-09-14mgcp: Generate the ConnId per trunk baseHolger Hans Peter Freyther1-9/+9
MGCP RFC 3435 does not specify that the Connection Id must be generated with any kind of random. It must uniquely identify the connection of an endpoint. So we can make it per trunk group or could even have it per endpoint. The code does not support multiple connections on the same endpoint right now but the spec allows it.
2011-09-14mgcp: Introduce a command that will just block the default portsHolger Hans Peter Freyther1-0/+19
It can be difficult to find the Timeslot/Multiplex for a higher number virtual trunk. This would be used by default, but normally the endpoint would be blocked on the switch already.
2011-09-14mgcp: Add VTY commands to block endpoints instead of having this hardcodedHolger Hans Peter Freyther3-49/+89
Instead of assuming which endpoints are blocked there is now a VTY command to block those. Clean up the init of the trunks, the only difference between Virtual and E1 is in the way to calculate the start port. Reduce the number of endpoints to 32, 31 is the last one that can be used on the E1 trunk, otherwise we move into TS 0 of the following trunk.
2011-09-14mgcp: Split creation of endpoints and static port allocationHolger Hans Peter Freyther2-9/+38
Create the endpoints as soon as possible, configure static ports after we are through with the parsing of the VTY config.
2011-09-13mgcp: Remove the endp_offset that was introduced due coding stupidityHolger Hans Peter Freyther3-17/+9
The endpoint offset is needed for two reasons, first the API is 0 based here while we are normally 1 based, second because of the trunks the first usable endpoint would be '2' (0 is CRC, 1 is signalling), but this endpoint offset falls apart when we would block timeslots inside this range. Remove the endpoint offset, in each endpoint we will store the HW DSP Port (1 based API) and then subtract one to get to the 0 based API for the Simple API. Print a warning when someone is using the endpoint offset.
2011-09-13vty: Add a config to enable MGCP command rewritingHolger Hans Peter Freyther2-1/+54
2011-08-10sctp: Really apply the MSC workaroundHolger Hans Peter Freyther1-16/+9
The MSC workaround was added in 5960ba387aa84574fc8b9df20ea98ca1594d1658 but it has never worked as in 8fd28dbbe64cb32e5f296bd2679cebf03b5d14c0 (earlier) we were checking for link->conn != conn in the dispatch method. Move the code over to the generic dispatch and check for NULL.
2011-08-10sctp: Add VTY command to print details about active SCTP connectionsHolger Hans Peter Freyther1-4/+22
This will print details about each SCTP connection including the FD and pointer of it.
2011-08-10sctp: Check if there is any other connection with the ASP identHolger Hans Peter Freyther1-0/+15
When we get an ASP UP check if there is any other ASP that is using the same identifier and then complain.
2011-08-10m2ua: Print information about number of SCTP connectionsHolger Hans Peter Freyther3-1/+32
It appears that it is possible to have a stale SCTP connection and this added LOGL_NOTICE and the VTY interface might help to identify this situation in the future (the mean time of failure is about five month).
2011-07-22misc: Update code to compil with libosmocore 0.3.2Holger Hans Peter Freyther3-35/+23
The DSCCP/DM2UA code still needs to be updated to deal with the new way to handle these regions in libraries.
2011-05-08Adopt to recent libosmocore namespace changes and libosmogsmHarald Welte28-148/+155
2011-04-26mgw: Attempt to set the CMR to 5.9kbit/sHolger Hans Peter Freyther1-0/+4
This will hopefully make the MTN4200 always use the 5.9kbit change mode.
2011-03-25mgcp: Fix the comment in the configurationHolger Hans Peter Freyther1-1/+1
2011-03-21mgcp: Check if the endpoint is blocked and then reject itHolger Hans Peter Freyther1-7/+6
Instead of hardcoding which timeslot is blocked we will just use the blocked flag in an endpoint. This should fix call handling for CIC on the trunk config.
2011-03-05isup: Handle CGUs and respond with a CGUAHolger Hans Peter Freyther1-0/+31
We don't let CGUAs pass when handling circuit blocking and unblocking locally. But we did let a CGU go through and then we never sent the response back to the sender. Respond to a CGU with the same content.
2011-03-05vty: Remember if isup should be passed through or not.Holger Hans Peter Freyther1-0/+2
2011-03-03mgcp: Fix the initialisation set trunk_type in the callerHolger Hans Peter Freyther1-1/+1
2011-03-03isup: Print the linkset nr and name like in other commands.Holger Hans Peter Freyther1-1/+2
2011-03-03ss7: Drop the input of packages as wellzecke/test-forward-failureHolger Hans Peter Freyther2-1/+14
We don't want the input change any state on the linkset and will drop them if we think our application is not reachable.
2011-03-03ss7: Move the blocking of outgoing messages into the SS7 appHolger Hans Peter Freyther2-18/+17
We are using knowledge of the SS7 application to drop outgoing packages to force failures on the link and should move this into the ss7 application.
2011-03-03ss7: Do not send anything until both linksets in an app are upHolger Hans Peter Freyther2-5/+30
We need some way to forward the failure of one link to another but they are not normally routed so we can not send a TFP. Right now we will simply stop responding until both links are up. This should make the SLTM fail and trigger a re-alignment on both sides. The key here is that the 2 * SLTM timeout needs to be higher than it takes to re-align the link. I'm not sure this code will work.
2011-03-03sctp: Mention the link index that got releasedHolger Hans Peter Freyther1-1/+1
2011-03-02mtp: Consider the linkset be ready for SCTP after having collected routing dataHolger Hans Peter Freyther1-1/+1
After the expiry of T18 we should have collected the routing data from the adjacent links and should be able to send SCCP packages to remote endpoints.
2011-03-02mgcp: Add a go to parent to allow multiple trunksHolger Hans Peter Freyther2-3/+10
2011-03-02mgcp: Use the blocked attribute to figure out if an endpoint is blockedHolger Hans Peter Freyther1-2/+2
2011-03-02sctp: Use the right link index when sending messagesHolger Hans Peter Freyther1-1/+1
Stop using the hardcoded link index and use the link index of the link.
2011-03-02sctp: Handle establish request for a wrong ASPHolger Hans Peter Freyther1-4/+13
The MSC we test is not sending an ASP Active when the link is unblocked. If the m2ua_link has no connection associated we will forgive the MSC and active it.
2011-03-02mgcp: Respect the blocked indication fo an endpoint.Holger Hans Peter Freyther1-4/+14
2011-03-02mgcp: Mark certain endpoints as blocked.Holger Hans Peter Freyther1-2/+6
Right now for the virtual trunk 0x0 and 0x1F is blocked, for the E1 like interface we have 0x0 and 0x1 blocked. This should start to be configurable in the future.
2011-03-02snmp: Fix the configuration and point it to the right thing.Holger Hans Peter Freyther1-1/+1
2011-03-01mgcp: Use the 'i' as type for SNMP to help with the code.zecke/wip-mgcpHolger Hans Peter Freyther1-1/+1
2011-03-01mgcp: Configure the HSCOMM routing based on the information we haveHolger Hans Peter Freyther3-3/+45
Configure the routing of audio ports if mgcp_mgw is configured to do this. This allows to have multiple trunks, make virtual ports go to a specific trunk as well.
2011-03-01mgcp: Calculate which dsp resource should be used by the trunksHolger Hans Peter Freyther1-0/+25
2011-03-01mgcp: Calculate the right Audio Processor resource for high endpointsHolger Hans Peter Freyther1-5/+24
With this commit we can have more than 30 endpoints that will work. We ignore the blocked endpoints 0x1 and 0x1f for each trunk and calculate everything from the right start point.
2011-03-01mgcp: Merge OpenBSC MGCP code and update the structure to match itHolger Hans Peter Freyther6-616/+1835
* Upstream has a separation of BTS and NET side for RTP ports and can allocate them dynamically. * Upstream has gained the concept of trunks. We will now have various trunks to connect audio things. * We will now be able to utilize multiple trunks and have the endpoints used properly.
2011-02-28mgcp: Attempt to get the endpoint configuration rightHolger Hans Peter Freyther1-4/+4
number_endpoints is always one bigger than it needs to be, subtract the one in the show command, start counting at one.
2011-02-28mgcp: Add code that will attempt to configure the TDM switchHolger Hans Peter Freyther1-0/+161
2011-02-25sctp: Fix a memory leak on connection failures.Holger Hans Peter Freyther1-0/+1
2011-02-25sctp: Only handle traffic with the payload type of M2UAHolger Hans Peter Freyther1-1/+9
2011-02-25sctp: Fail if we fail to enable SCTP events on this socketHolger Hans Peter Freyther1-5/+10
Without events we don't have access to the SCTP sndrcvinfo and the ppid in it and we will do bad things like sending M2UA on PPID 0.
2011-02-25links: Fix the init code for the old cellmgr_ng codeHolger Hans Peter Freyther1-1/+1
2011-02-23counter: Fix the wrong counter size.Holger Hans Peter Freyther1-2/+2
2011-02-23vty: Allow to specify 14 bits for the CPC.Holger Hans Peter Freyther1-2/+2
2011-02-23mtp: Call the mtp_link_set always set otherwise things get confusingHolger Hans Peter Freyther3-107/+107
In a backtrace it is confusing to see variables called link and link and one is a mtp_link and the other is a mtp_link_set.
2011-02-23msc: Remove unused method from the codeHolger Hans Peter Freyther1-7/+0
2011-02-23sccp: The link attribute was never used leading to a crashHolger Hans Peter Freyther1-1/+9
Right now we assume that the source of an application with SCCP state tracking is a linkset. Send the message to that linkset.
2011-02-23mtp: Attempt to implement the MTP Restart properlyHolger Hans Peter Freyther2-20/+99
For the SSP functionatilty we will need to have the timers T18 and T20. In the period of T18 we will collect TFP/TFR/TFA for the reachable nodes of the system. Each of this node will send us a TRA when it is finished. Right now we assume to only have one node and stop the T18 after the TRA of this node. Then we would need to send the TFP/TFR we have collected. On the expiry of the T20 timer we will need to send our TRA and notify local users. For more complex routing we will need to have a shared routing cache and remember which SSNs and OPCs are reachable and have inter linkset notifications.