9
0
Fork 0
Commit Graph

236 Commits

Author SHA1 Message Date
Holger Hans Peter Freyther 1927e638e1 m2ua: Close a huge memory leak in the m2ua code. 2011-02-17 19:34:27 +01:00
Holger Hans Peter Freyther b187049925 vty; Remove the lac/mnc/mcc option as this was never implemented 2011-02-17 19:34:27 +01:00
Holger Hans Peter Freyther dd32ae5403 msc: The udt_relay could be implemented with the normal cellmgr now
Simplify the code and remove the standalone udt_relay application,
the job can be done with cellmgr_ng. This will happen after we have
settled for a new config file format.
2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther cea4518410 msc: In forward_only mode never ask any of the connection tracking code
For the forward only code we never want to go through the other
cases, make sure to always return.
2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther 7ca2b03aa6 bsc: Remove the m2ua_set pointer from the struct as well 2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther 89fa11af02 bsc: Remove the global link_set pointer from the bsc
Start removing the static names for the linkset
2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther 43b015a8ea bsc: Move the connection tracking code out of main file 2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther bf5eada0aa bsc: Stop using the bsc.link_set directly 2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther e86c02e107 bsc: Move the BSC<->MSC variables to a new struct.
Move the MSC related information out of the bsc_data and update
the code to use this BSC configuration. This is greatly cleaning
up the code and in theory there might now be two BSC and two MSCs
that one application can handle (minus the missing VTY config)
2011-02-10 20:09:09 +01:00
Holger Hans Peter Freyther ee63d7d15e stp: Allow/Disallow to inject messages on the UDP/M2UA interface 2011-02-10 20:09:08 +01:00
Holger Hans Peter Freyther 0452f22a21 stp: Add code that allows to inject messages on any linkset
This can be useful to test out certain messages without having
any of the linksets be fully connected. It is not possible to
get the result. In the future this code should reply with an
M2UA error message if something went wrong.
2011-02-10 20:09:08 +01:00
Holger Hans Peter Freyther 6b71fd6192 vty: Fix the help and the parameters for the trace command 2011-01-31 22:41:03 +01:00
Holger Hans Peter Freyther f603f28488 isup: Make it possible for the STP to handle/not handle ISUP messages
Add an option to decide if we should handle GROUP BLOCK and RESET
messages inside the STP or if we should forward those as well.
2011-01-30 00:24:15 +01:00
Holger Hans Peter Freyther d3f412bbd5 mtp: Turn error messages into full sentences.
Turn the error messages into full sentences that
end with a full stop. Try to put the link set name
and the link number into these messages.
2011-01-28 18:52:16 +01:00
Holger Hans Peter Freyther 309d79f5ed mtp: Forbid link up/failure on blocked links. 2011-01-28 18:26:20 +01:00
Holger Hans Peter Freyther 86a2a53b90 udp: Use link up/down signals from the MIB for the link
The mib was patched to send link up/down in case of failures,
only put a link service when the MIB tells us the link is
up, the failure case should only happen for remote links
failing. We will reset and go through link alignment.
2011-01-28 18:23:07 +01:00
Holger Hans Peter Freyther 122d604838 mgcp: Turn the endpoint-offset into a proper config option 2011-01-26 13:20:32 +01:00
Holger Hans Peter Freyther 1cf3a83780 mgcp: Make it possible to control the offset from Endpoint to CIC 2011-01-26 12:51:22 +01:00
Holger Hans Peter Freyther 38d936a445 mtp: Assign a name to linkset, use this name in the log messages 2011-01-26 12:41:42 +01:00
Holger Hans Peter Freyther c5562bde48 sctp: Close the socket if we get <= 0 as a result for sctp_rcvmsg
The manpage says that -1 is the indication for error but on 2.6.12
we just ended up in a infinite loop as select shows the socket as
readable but a recvmsg does not give any data.
2011-01-26 11:02:42 +01:00
Holger Hans Peter Freyther 44f848b086 mgcp: Merge from master to respond to a RQNT 2011-01-25 23:43:55 +01:00
Holger Hans Peter Freyther fd5d8d2ac1 mtp: Send the TFP/TRA/TFA with the first SLS provided by that link 2011-01-25 13:38:28 +01:00
Holger Hans Peter Freyther 7d336a55ed mtp: Make SCCP tfa/tra/tfp messages work on the linkset
This will be used to send the data with the right SLS from
the right link of the linkset.
2011-01-25 13:38:27 +01:00
Holger Hans Peter Freyther 1ec2a749f0 mtp: Remember the first SLS this link is on 2011-01-25 13:38:27 +01:00
Holger Hans Peter Freyther 4c8ddb356c vty: Fix the up/down of the MSC link 2011-01-25 13:18:59 +01:00
Holger Hans Peter Freyther 8a96e474a2 mtp: Fix the logic... close the socket if we are blocked
Thinko or such.
2011-01-25 09:57:55 +01:00
Holger Hans Peter Freyther 3c2b84c607 vty: Show the SLC mapping of a linkset 2011-01-24 21:20:34 +01:00
Holger Hans Peter Freyther 326a1f7310 stats: Fix counting incoming packets from a link 2011-01-24 20:52:30 +01:00
Holger Hans Peter Freyther 9543f4a356 mtp: Call it mtp_link_submit and use it in mtp_link
Remove the _set from the API, call it from the mtp_link.c. This
will fix the statistics for outgoing packets.
2011-01-24 20:49:58 +01:00
Holger Hans Peter Freyther 3a1c0af868 udp: Create a SNMP session per UDP
We do not have the multiple callbacks from SNMP under control
and we can only save the last request if the SNMP Session is
inside the link. This is mostly a workaround for Net-SNMP and
the missing documentation on the async functionality.
2011-01-24 20:21:11 +01:00
Holger Hans Peter Freyther 4e2e242d70 mtp: Show blocked links as blocked in the vty stat 2011-01-24 16:14:26 +01:00
Holger Hans Peter Freyther 315ec675ba mtp: Implement VTY routines to block,unblock,reset a link
This can help in link management and reconfiguration of a
link at runtime. It is also a good engineering mode for
multiple linksets.
2011-01-24 16:14:25 +01:00
Holger Hans Peter Freyther ea5ce23d72 mtp: Make it possible to block a link.
The semantic of a block is to take the physical
link down, call mtp_link_down and to make sure
that the link remains down and no packets are
forwarded there. The unblock call will reset the
link and this should get it back into operation
again.
2011-01-24 15:35:08 +01:00
Holger Hans Peter Freyther 8ade9b7bc2 pcap: Fix stupid bug and unbreak pcap writing 2011-01-23 16:18:18 +01:00
Holger Hans Peter Freyther fca7b12e0d vty: Install the vty logging commands 2011-01-22 23:19:44 +01:00
Holger Hans Peter Freyther 16b07c645b pcap: Dump each packet in the DCAP category 2011-01-22 23:19:27 +01:00
Holger Hans Peter Freyther 0292127467 debug: Set the right debug area for the M2UA code 2011-01-22 23:05:03 +01:00
Holger Hans Peter Freyther 5c2e458dca debug: Add two categories to be used in the future. 2011-01-22 22:57:42 +01:00
Holger Hans Peter Freyther 1b47ce5b9b stat: Dump a name next to the OPC 2011-01-22 21:33:18 +01:00
Holger Hans Peter Freyther 5b2fe8d45b pcap: Allow to start tracing on a specific linkset after app start
Allow to start to trace on a specific linkset after the application
has been started. This allows to stop tracing on a linkset as well.
2011-01-22 21:33:18 +01:00
Holger Hans Peter Freyther f6375b49d3 pcap: Allow to log on a link or linkset level 2011-01-22 21:33:18 +01:00
Holger Hans Peter Freyther 36260e915a pcap: Classify the direction of such a message 2011-01-22 21:33:18 +01:00
Holger Hans Peter Freyther ddf8eae7da pcap: Run all pcap operations through one method 2011-01-22 21:33:11 +01:00
Holger Hans Peter Freyther c6bfa27b5e udp: Allow to create multiple links via UDP
This is the easiest way to support multiple links over UDP.
Specify the number you want and they will be initiated. All
these links will run via the same UDP port.
2011-01-22 17:24:06 +01:00
Holger Hans Peter Freyther 0b31622482 vty: Print the MSC status on the VTY for relay/cellmgr 2011-01-22 16:43:14 +01:00
Holger Hans Peter Freyther a310e53243 vty: Classify the application that we run and provide different options
The VTY interface is used for three different application and not
every option will make sense for every app. In the long run we will
split the vty interface but for now we just qualify the application.
2011-01-22 16:34:16 +01:00
Holger Hans Peter Freyther 60af5dd57a stats: Print some statistics about the state of the current set 2011-01-22 16:22:18 +01:00
Holger Hans Peter Freyther 51b9e7a396 stats: Implement VTY command to dump the linksets 2011-01-22 16:22:18 +01:00
Holger Hans Peter Freyther 4c1eb0ee43 stats: Count packets on a per link level 2011-01-22 16:22:18 +01:00
Holger Hans Peter Freyther c5d897e847 stats: Collect statistics on the linkset
Collect incoming, in sccp, in isup, out isup, out sccp packets.
This does not yet work for out in total.
2011-01-22 16:22:18 +01:00
Holger Hans Peter Freyther aafa7c788e stats: Add rate_counter for more statistics on the MTP side 2011-01-22 16:22:18 +01:00
Holger Hans Peter Freyther eab20964b2 udp: Make the SNMP code asynchronous
Do not block the application when doing a SNMP request. Work
with the results coming back from the callback. Right now a
link can only be taken down and up.
2011-01-21 19:40:49 +01:00
Holger Hans Peter Freyther 4da421da6f udp: Make two snmp functions internal 2011-01-21 18:01:37 +01:00
Holger Hans Peter Freyther 083a30b9b8 udp: Poll SNMP for timeouts and fd every 100ms
This is the easiest way to integrate net-snmp with the event loop,
every 100ms we are going to check for timeouts or incoming messages
2011-01-21 18:01:36 +01:00
Holger Hans Peter Freyther f38114eee2 udp: Allow to run multiple links through the same socket
The UDP socket will be shared between multiple links, the
snmp session will be also shared between multiple links on
the same hardware.
2011-01-21 18:01:36 +01:00
Holger Hans Peter Freyther e250ac3f4b msc: Fix crash due pong timeout started from a msc reset
This is fixing a crash that is caused by the MTP link going
down/up and the main routines asking to send a reset to the
MSC. The sending of a reset is triggering the ping/pong
timeouts. In case there is no MSC connection we could crash.
2011-01-21 12:58:08 +01:00
Holger Hans Peter Freyther 050577a088 mtp: Return SLTA on the same SLS, send SLTM with a static sls
Derive the SLS from the static link_no we have assigned.
2011-01-20 19:28:15 +01:00
Holger Hans Peter Freyther 95057b9237 mtp: Send the SLTM/SLTA on the link directly
For both the SLTM that the app is sending and the SLTM we
are receiving we don't want to go through the SLC.
2011-01-20 19:07:16 +01:00
Holger Hans Peter Freyther 1cc24561b0 mtp: Count the links in a linkset 2011-01-20 19:07:16 +01:00
Holger Hans Peter Freyther fa8cf2d938 mtp: Create a method for a link failure to restart the link.
Make sure that a failed link will be restarted by calling the
reset method which should take the link down.
2011-01-20 19:07:16 +01:00
Holger Hans Peter Freyther 9b8a4a7f49 mtp: Remove the unused linkset_sccp_down routine as it is not used 2011-01-20 19:07:16 +01:00
Holger Hans Peter Freyther a8ce061d86 mtp: Move the link testing into a new file for mtp_link
The link testing should work under the linkset and if the
SLTM is failing the link should be taken down and it should
be restarted.
2011-01-20 19:07:16 +01:00
Holger Hans Peter Freyther 2d845fca0c mtp: Rename the the_link to set as it is a link set 2011-01-20 15:44:14 +01:00
Holger Hans Peter Freyther b4b747d7f7 mtp: Stop assigning the link_set it will be done in mtpl3 2011-01-20 15:39:40 +01:00
Holger Hans Peter Freyther 1349584c26 mtp: Start the linktest directly
No need for delaying the linktest, start it directly when
the linkset should come up
2011-01-20 15:08:57 +01:00
Holger Hans Peter Freyther 606eae8ece mtp: Send the TFP/TRA once the first link is available
Instead of sending SCCP TFP/TRA as a response to a TRA
the code will now send one as a response to the first
SLTA we receive in the linkset on the first link.
2011-01-20 14:23:10 +01:00
Holger Hans Peter Freyther 157de2a8ab mtp: Only respond to regular maintainenance for our code point 2011-01-20 13:11:29 +01:00
Holger Hans Peter Freyther 69e71e0670 isup: Attempt a short cut in the link bring up by sending a unblock
Attempt to unblock all circuits after the Gateway has blocked them. In
the ISUP spec we would need to go through the continuity test and such.
2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther 8f6eb5e688 isup: Handle a CGB with a CGBA and claim all circuits to be blocked
This is to help the Exchange B to go through the start procedure.
2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther ecd835500e isup: Make status parsing and status response be generic 2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther 6e11bee8cf isup: Attempt to handle a RSC on the exchange 2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther d8a73e24d2 isup: Allow to have a different OPC for ISUP messages. 2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther a4661fb228 isup: Fix the lebgth check in this packet 2011-01-20 11:49:39 +01:00
Holger Hans Peter Freyther cfbe80febb mtp: Send a TFA for the point codes we are routing to. 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther adf7692031 mtp: Send TRA messages on all affected point codes 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther 27c5e2357f mtp: Send the TFP for every POC we want to handle. 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther bee2ed18c7 mtp: Make the input path work on a specific link of the linkset 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther 84899a484c stp: Set the pcap fd properly... WIP merge this 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther efbd8c2e80 stp: Allow to forward all ISUP messages without any modification 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther 1b6901ec4a stp: Forward unhandled ISUP from one end to another 2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther 9cf11bc109 stp: Create a M2UA link by hand and connect the SCCP routines
This is a hacked version that will just forward SCCP from one
linkset to another one. It is missing configuration and ISUP.
2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther a93b83bf99 stp: Begin to implement a signalling transfer point
This is creating a new application that will be a signalling
transfer point. Right now it is a stripped down version of
the udt_relay, which is a stripped down version of cellmgr_ng.
2011-01-20 11:37:50 +01:00
Holger Hans Peter Freyther 92affdad72 mtp: Do not send anything in case the there is no link
If there is no usable link in the linkset we should not try
to send. This assumes that all incoming packages come from
links that are up. We do not check this right now but we
will have to check this.
2011-01-20 11:37:49 +01:00
Holger Hans Peter Freyther 101cd0bc83 mtp: Send the SSA/SSP for the apoc and assn of the request 2011-01-20 11:37:49 +01:00
Holger Hans Peter Freyther df8597aeea mtp: Send the SSA with the affected POC for SCCP. 2011-01-20 11:37:49 +01:00
Holger Hans Peter Freyther c17852ee34 m2ua: Write MTP packets to the pcap file if requested. 2011-01-20 11:37:49 +01:00
Holger Hans Peter Freyther d70a7e8e79 m2ua: Create a MTP Link class using SCTP/M2UA for the transport
This is a MTP Link that can be used with a MTP LinkSet. E.g. with
some config changes one could use cellmgr_ng or udt_relay over a
M2UA link.
2011-01-17 14:45:15 +01:00
Holger Hans Peter Freyther 0e2f9116f8 mtp: Rename link_data to mtp_link and move out the transport specific things
Rename link_data to mtp_link and move it into the mtp_data header
file, also remove the union to ease creating more of the subtypes.

This is done in preparation to the linkset knowing more about the
link (e.g. having a link test per link instead of per link).
2011-01-17 14:11:26 +01:00
Holger Hans Peter Freyther d91f94024e mtp: Create the SLC with all links 2011-01-17 11:27:32 +01:00
Holger Hans Peter Freyther 0f833b084b mtp: take the linkset down when the last link is failing 2011-01-17 11:27:01 +01:00
Holger Hans Peter Freyther 85e17d1224 mtp: Remove the forced_down as it is never read in that application 2011-01-17 11:27:00 +01:00
Holger Hans Peter Freyther fe72c160e2 mtp: Turn the MTPl2 link into a list of links. 2011-01-17 11:27:00 +01:00
Holger Hans Peter Freyther 069e635413 mtp: Keep an array for the SLS -> SLC mapping for active links. 2011-01-17 11:21:12 +01:00
Holger Hans Peter Freyther 644aafbc94 mtp: Make the link_data be a child of the link_set
Change the order of the link and linkset. The link will be
below the linkset. This change should make it more easy to
introduce multiple linksets.
2011-01-17 11:21:11 +01:00
Holger Hans Peter Freyther c8405692b3 mtp: Propagate link and linkset failures in two stages
Handle a single link failure in links.c and if all the
links have failed propagate it up. This is preparing the
multiple links support.
2011-01-17 11:21:11 +01:00
Holger Hans Peter Freyther 569f1e171d mtp: Rename mtp_link to mtp_link_set as this is the linkset
The link_udp is actually below the linkset. We need to get this
right now and then can have multiple links.
2011-01-17 11:21:11 +01:00
Holger Hans Peter Freyther 346e1c4bc4 mtp: Attempt to select the sls properly in the round robin fashion
When we call the submit method with a SLS of -1 we will try
to find the next SLS to do things in a round robin way.
2011-01-17 11:21:10 +01:00
Holger Hans Peter Freyther 45738887be mtp: Kill the link variable from the mtp link. 2011-01-17 11:21:10 +01:00
Holger Hans Peter Freyther b6edf97481 linkset: Prepare the UDP support to support multiple links. 2011-01-17 11:21:10 +01:00
Holger Hans Peter Freyther 016ba29ec2 msc: Remove the msc_clear_queue now that it is not needed 2011-01-17 11:21:10 +01:00