networksecurity/ipsec/te_ipsec/scripts/ns-ipsec-multiple-sa-ops.script
changeset 0 af10295192d8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/networksecurity/ipsec/te_ipsec/scripts/ns-ipsec-multiple-sa-ops.script	Tue Jan 26 15:23:49 2010 +0200
@@ -0,0 +1,1030 @@
+//
+// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+/////////////////////////////////////////////////////////////////
+//! @file
+//! @SYMScriptAuthor        divakare
+//! @SYMTestSuiteName       ns-ipsec-multiple-sa
+//! @SYMScriptCreationDate  Fri Nov 14 16:04:14 IST 2008
+/////////////////////////////////////////////////////////////////
+
+PRINT Run test case(s) for suite ns-ipsec-multiple-sa
+
+// ToDo: Remember to load the relevant suite before starting any test case(s)
+LOAD_SUITE	t_ipsec  -SharedData
+RUN_UTILS CopyFile z:\testdata\configs\ethernetced1853.xml c:\ethernetced1853.xml
+RUN_UTILS MakeReadWrite c:\ethernetced1853.xml
+RUN_PROGRAM -1 ced c:\ethernetced1853.xml
+//Create private folder
+RUN_UTILS MkDir c:\private\101f7993\
+
+//copy linux_tunnel.pin file from data folder to private folder - one time job
+RUN_UTILS CopyFile z:\testdata\configs\linux_tunnel.pin c:\private\101f7993\linux_tunnel.pin
+RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pin
+
+//copy epoc2linux.xml file from data folder to c: drive - one time job
+RUN_UTILS CopyFile z:\testdata\configs\epoc2linux.xml c:\epoc2linux.xml
+RUN_UTILS MakeReadWrite c:\epoc2linux.xml
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-001
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-001
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals.
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+//! @SYMTestExpectedResults The most preferred IKE SA proposal is stated in the beginning.
+//!                         
+//!                         The first IKE SA proposal should be negotiated between the peers. This is because the remote host supports the first proposal.
+//!                         
+//!                         There is only one IPSec SA proposal. This is the IPSec SA proposal negotiated between the peers.
+//! @SYMTestActions         The most prefered proposal is always placed in the beginning.
+//!                         
+//!                         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The remote host is configured to support the first IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel13.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-001
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-002
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-002
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals.
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         Remote host does not support the first proposal mentioned.
+//! @SYMTestExpectedResults The most preferred IKE SA proposal is stated in the beginning.
+//!                         
+//!                         The next preferred proposal in the list is negotiated between the peers.
+//!                         
+//!                         There is only one IPSec SA proposal. This is the IPSec SA proposal negotiated between the peers.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The remote host is configured such that it does not support the first IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main Mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel14.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-002
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-003
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-003
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals.
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         This test case is to test if the IKE SA negotiation works for a different combination of algorithms provided.
+//!                         
+//!                         The last IKE SA proposal is the only one supported by the remote host.
+//!                         
+//!                         The last IKE SA proposal in the list is negotiated between the peers.
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults The most preferred IKE SA proposal is stated in the beginning.
+//!                         
+//!                         The last IKE SA proposal should be negotiated between the peers. This is because the remote host supports the first proposal.
+//!                         
+//!                         There is only one IPSec SA proposal. This is the IPSec SA proposal negotiated between the peers.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The remote host is configured to support the last IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Aggressive mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel15.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-003
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-004
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-004
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals. Sompe invalid proposals present. (First proposal is invalid : May be with a wrong Syntax).
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The invalid proposal is ignored and the next preferred proposal in the list is negotiated between the peers.
+//! @SYMTestExpectedResults The first invalid proposal is ignored and a valid SA proposal negotiated between the peers.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         The first invalid proposal is ignored and a valid SA proposal is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel16.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-004
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-005
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-005
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals. Sompe invalid proposals present. (Invalid proposal in the middle : May be with a wrong Syntax)
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The remote machine is configured such that it supports the first IKE SA proposal in the list.
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The first IKE SA proposal is negotiated between the peers ignoring the invalid proposal.
+//! @SYMTestExpectedResults The preferred valid proposal in the list of proposals is negotiated between the peers.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         The preferred valid proposal in the list of proposals is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel17.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-005
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-006
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-006
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposals. Sompe invalid proposals present. (Invalid proposal in the end).
+//!                         Single IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults The preferred valid proposals in the list is negotiated.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         The preferred valid proposal in the list of proposals is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel18.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-006
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-007
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-007
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposals.
+//!                         Multiple IPSec SA proposal.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The first valid IPSec SA proposal is negotiated between the peers.
+//! @SYMTestExpectedResults The most prefered proposal is always placed in the beginning.
+//!                         
+//!                         The first IPSec SA proposal is negotiated between the peers.
+//! @SYMTestActions         There are multiple IPSec SA proposals.
+//!                         
+//!                         There is only one IKE SA proposal.
+//!                         
+//!                         The remote host is configured to support the first IPsec SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel19.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-007
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-008
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-008
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposals.
+//!                         Multiple IPSec SA proposal.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         Remote host does not support the first proposal mentioned.
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The next preferred proposal in the list is negotiated between the peers.
+//! @SYMTestExpectedResults The first valid IPSec SA proposal specified in the list is negotiated between the peers.
+//!                         
+//!                         Here the remote host does not support the first IPSec SA in the list. Hence the next valid IPSec SA is negotiated.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The remote host is configured such that it does not support the first IKE SA proposal.
+//!                         
+//!                         The negotiation may be carried out using 2 combinations of modes. They are,
+//!                         1.) Main mode and Quick mode
+//!                         2.)Aggressive mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel20.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-008
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-009
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-009
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposals.
+//!                         Multiple IPSec SA proposal.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         This test case is to test if the IPsec SA negotiation works for a different combination of algorithms provided.
+//!                         
+//!                         The last IPSec SA proposal is the only one supported by the remote host.
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The last IPSec SA proposal in the list is negotiated between the peers.
+//! @SYMTestExpectedResults The first IPSec SA proposal should be negotiated between the peers.
+//!                         
+//!                         The remote host should support the first IPSec SA.
+//! @SYMTestActions         A valid SA proposal is negotiated between the peers.
+//!                         
+//!                         There are multiple IPSec SA proposals.
+//!                         
+//!                         There is only one IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Aggressive mode and Quick mode
+//!                         
+//!                         The preferred valid proposal in the list of proposals is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel21.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-009
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-010
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-010
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal.
+//!                         Multiple IPSec SA proposal. Sompe invalid proposals present. (First proposal is invalid : May be with a wrong Syntax).
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The invalid proposal is ignored and the next preferred proposal in the list is negotiated between the peers.
+//! @SYMTestExpectedResults The valid SA proposal is negotiated between the peers.
+//! @SYMTestActions         There are multiple IPSec SA proposals.
+//!                         
+//!                         There is only one IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         The first invalid proposal is ignored and a valid SA proposal is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+//! @SYMREQ                 REQ10660
+//!                         REQ10661
+//!                         REQ10967
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel22.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-010
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-011
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-011
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal.
+//!                         Multiple IPSec SA proposal. Sompe invalid proposals present. (Proposals in the middle are invalid)
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The remote host is configured to support only the last IPSec SA proposal in the list.
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         The invalid proposal is ignored and the last preferred proposal is negotiated between the peers.
+//! @SYMTestExpectedResults The valid SA proposal is negotiated between the peers.
+//! @SYMTestActions         There are multiple IPSec SA proposals.
+//!                         
+//!                         There is only one IKE SA proposal.
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Main mode and Quick mode
+//!                         
+//!                         The invalid proposal is ignored and a valid SA proposal is negotiated between the peers.
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel23.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-011
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-012
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-012
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal.
+//!                         Multiple IPSec SA proposal. Sompe invalid proposals present. (Proposals in the end are invalid)
+//!                         
+//!                         The negotiation is carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults The valid SA proposal is negotiated between the peers.
+//! @SYMTestActions         The valid SA proposal is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel24.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-012
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-013
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-013
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the right error code returned for the following.
+//!                         
+//!                         Valid IKE SA proposals.
+//!                         All IPSec SA proposals are invalid.
+//! @SYMTestExpectedResults An error is returned, as none of the IPSec SA proposals are valid.
+//! @SYMTestActions         An error returned.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel25.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-013
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-014
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-014
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the right error code returned for the following.
+//!                         
+//!                         All IKE SA proposals are invalid.
+//!                         Valid IPSec SA proposals.
+//! @SYMTestExpectedResults An error is returned, as none of the IKE SA proposals are valid.
+//! @SYMTestActions         An error is returned.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel26.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-014
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-015
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-015
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal present for a remote machine with which the Epoc communicates.
+//!                         Multiple IPSec SA proposals present. These proposals have different remote machine addresses.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         (Refer IOT test specification. Test case name: windows_tc_113)
+//! @SYMTestExpectedResults The right IPSec SA proposal present for the remote machine with which the Epoc communicates is negotiated between the peers.
+//!                         
+//!                         The single IKE SA present is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel27.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-015
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-016
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-016
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals have different remote machine addresses.
+//!                         Multiple IPSec SA proposals present. These proposals have different remote machine addresses.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         (Refer IOT test specification. Test case name: windows_tc_113)
+//! @SYMTestExpectedResults The most preferred SA proposal with which the Epoc communicates is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel28.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-016
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-017
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-017
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals have different remote machine addresses.
+//!                         Single IPSec SA proposals present. This proposal has a remote machine addresses with which the Epoc communicates with.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         (Refer IOT test specification. Test case name: windows_tc_113)
+//! @SYMTestExpectedResults The right IKE SA proposal with which the Epoc communicates is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel29.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-017
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-018
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-018
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals are for the same remote machine.
+//!                         Multiple IPSec SA proposals present. These proposals are for the same remote machine.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults A most preferred IPSec SA and IKE SA negotaited between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel30.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-018
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-019
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-019
+//! @SYMCreationDate        19-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals have different remote machine addresses.
+//!                         Multiple IPSec SA proposals present. These proposals have different remote machine addresses.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults A most preferred IPSec, IKE SA is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel31.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-019
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-020
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-020
+//! @SYMCreationDate        25-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals are for the same remote machine.
+//!                         Single IPSec SA proposals present. This proposal is for the remote machine with which the Epoc communicates.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Aggressive mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+//! @SYMTestExpectedResults The most preferred IPSec/IKE SA is negotiated between the peers.
+//!                         
+//!                         Here as the remote machine is configured to support thefirst IKE/IPSec SA proposal, this is negotiated between the peers.
+//! @SYMTestActions         There are multiple IKE SA proposals.
+//!                         
+//!                         There is only one IPSec SA proposal.
+//!                         
+//!                         The remote host is configured to support the first IKE SA proposal.
+//!                         
+//!                         The negotiation may be carried out using,
+//!                         1.)Aggressive mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel32.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-020
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-021
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-021
+//! @SYMCreationDate        25-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal present. This proposal is for the remote machine with which the Epoc communicates.
+//!                         Multiple IPSec SA proposals present. These proposals are for the same remote machine.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Aggressive mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+//! @SYMTestActions         There are multiple IPsec SA proposals.
+//!                         
+//!                         There is only one IKE SA proposal.
+//!                         
+//!                         The remote host is configured to support the first IKE SA proposal.
+//!                         
+//!                         The negotiation may be carried out using,
+//!                         1.)Aggressive mode and Quick mode
+//!                         
+//!                         Once the SA proposals are negotiated between the peers both for IKE and IPSec, this SA is compared with the expected result.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel33.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND   !Error=-5197  MultipleSATestWrapperSection  NegativeTestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-021
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-022
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-022
+//! @SYMCreationDate        25-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals are for the same remote machine.
+//!                         Multiple IPSec SA proposals present. These proposals are for the same remote machine.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Aggressive mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - ESP
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol ESP.
+//! @SYMTestExpectedResults The most preferred SA proposal is negotiated between the peers.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel34.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-022
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-023
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-023
+//! @SYMCreationDate        26-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Multiple IKE SA proposal present. These proposals are for the same remote machine.
+//!                         Single IPSec SA proposals present. This proposal is for the remote machine with which the Epoc communicates.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - AH
+//!                         
+//!                         The IPSec SA proposals in the policy file are for the security protocol AH.
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel35.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-023
+
+START_TESTCASE NET-IPSec-Multiple_SA_Proposal-024
+//! @SYMTestCaseID          NET-IPSec-Multiple_SA_Proposal-024
+//! @SYMCreationDate        26-09-2008
+//! @SYMAuthor              DivakarE
+//! @SYMTestCaseDesc        Test to check if the multiple SA proposal functionality works for the following.
+//!                         
+//!                         Single IKE SA proposal present. This proposal is for the remote machine with which the Epoc communicates.
+//!                         Multiple IPSec SA proposals present. These proposals are for the same remote machine.
+//!                         
+//!                         The negotiation carried out using,
+//!                         Phase 1 :Main mode
+//!                         Phase 2 :Quick mode
+//!                         
+//!                         Phase 2 Encapsulation Mode - Tunnel Mode
+//!                         Security Protocol - AH
+//!                         
+//!                         All the IPSec SA proposals in the policy file are for the security protocol AH.
+//!                         
+//!                         Remote host supports the first proposal mentioned.
+	RUN_UTILS DeleteFile c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS CopyFile z:\TestData\configs\linux_tunnel36.pol c:\private\101f7993\linux_tunnel.pol
+	RUN_UTILS MakeReadWrite c:\private\101f7993\linux_tunnel.pol
+	
+	//run batch file to ping the linux machine. Pol file is change, so need ceding again.
+	RUN_PROGRAM -1 ced c:\epoc2linux.xml
+	
+	START_TEST_BLOCK    100     t_ipsec     z:\testdata\scripts\ns-ipsec-multiplesatest-ops.ini
+	        CREATE_OBJECT   IPSecMultipleSATestWrapper    MultipleSATestWrapperSection
+	        COMMAND     MultipleSATestWrapperSection  New
+	        COMMAND     MultipleSATestWrapperSection  TestMultipleSA MultipleSAParamSection
+	END_TEST_BLOCK
+END_TESTCASE NET-IPSec-Multiple_SA_Proposal-024
+
+RUN_UTILS DeleteFile c:\epoc2linux.xml
+RUN_UTILS DeleteFile c:\ethernetced1853.xml
+