SCTP: fix connection memory corruption

A bug was found when multiple SCTP connections were being opened to the
same SCTP server. This patch addresses that problem, removing the use of
the 'parent' pointer approach for sub-connection and saving instead
within the sub-connection itself the ID representing its position. That
facilitates pointer-arithmetic to be computed in the
get_connection_from_transport().

Change-Id: Iaa1f4efc501590be1c93e42fd6fe3d6e02f635eb
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
This commit is contained in:
Marco Varlese
2018-02-23 17:43:06 +01:00
committed by Florin Coras
parent 3473e49387
commit 04e5d64c45
5 changed files with 26 additions and 16 deletions

View File

@ -68,9 +68,10 @@ class TestSCTP(VppTestCase):
self.logger.critical(error)
self.assertEqual(error.find("failed"), -1)
error = self.vapi.cli("test echo client mbytes 10 appns 1" +
error = self.vapi.cli("test echo client nclients 2 mbytes 100" +
" appns 1" +
" fifo-size 4" +
" no-output test-bytes syn-timeout 20 " +
" no-output test-bytes syn-timeout 3" +
" uri " + uri)
if error:
self.logger.critical(error)