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