aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
2019-05-20reassembly: prevent long chain attackKlement Sekera3-0/+95
limit max # of fragments to 3 per packet by default add API option to configure the limit at runtime Change-Id: Ie4b9507bf5c6095b9a5925972b37fe0032f4f9e8 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-05-17Tests: Refactor. Remove copies of enums.Paul Vinciguerra4-62/+69
Use the enums provided from the api definitions instead. Change-Id: I43b7591df920c984e439efc4b3ec3c4121c539d8 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-17make test: Add QUIC serial transfer testDave Wallace1-2/+38
Change-Id: I7ed68dd199daa31269d45d67e0a4fa632e1a08d1 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-05-17Tests: Raise exception if API cli_inband command fails.Paul Vinciguerra7-18/+29
* Configure tests to raise exception if cli_inband fails. * Fix failing tests. * Add filename detail to pcap.stat clib_error_return for debugging. Note: this change identifies spurious issues with packet-generator such as: CliFailedCommandError: packet-generator capture: pcap file '/tmp/vpp-unittest-Test6RD-v09RPA/pg0_out.pcap' does not exist. These issues resolve themselves on remaining test passes. Change-Id: Iecbd09daee954d892306d11baff3864a43c5b603 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-17gbp: Add unit tests for contractsMohsin Kazmi1-1/+224
Change-Id: Ib6615739b1db44b7788f462196cd477b6e23d67e Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-05-16tests: refactor. Replace literal constant w/ named constant.Paul Vinciguerra14-216/+257
* change literal packet count vlaues from 65 to a named constant of 67. (This value was recommended to exercise single, dual, and quad loops) Change-Id: Ieb1738dddacb8b6ea7fa25883032ac01a98399e1 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-15vpp_papi: remove dependency on environment var. VPP_API_DIR.Paul Vinciguerra1-10/+9
Change-Id: I9e3af8674e8aae27079fd03f6286f165d777814f Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-14tests: test_pipe.py. Fix missing import.Paul Vinciguerra1-4/+5
* Fix missing import (does not impact 'make test', fixes issue running under 'make test-shell') Change-Id: I634378a8809df5c5b9671555932e797d04a2abbb Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-14tests: fix TestMPLSPIC tests in test_mpls.py.Paul Vinciguerra1-28/+82
* Corrected stray ARP/ND packets in captures interfering with test results. * Added tests to match counts of recv'd pkts against sent. * Changes the number of packets to 67 for exercising single, dual, and quad-loops. Change-Id: I9147b8578988607ea4444741d10854e4d8683191 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-14make test: vcl fix OSError exception handlingDave Wallace1-1/+1
Change-Id: I4bf7da6752d85e384a8e8f3110964c4b142edcb5 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-05-14make test: Add QUIC external echo transfer testDave Wallace1-8/+104
- Add namespace configuration to echo_client - Add external echo transfer testcase - Refactor quic test class to reduce unnecessary method args - Increase default fifo size to 64 and data transfer to 10 mbytes - Remove sleep() between starting internal server & client apps Change-Id: Ia9de46a314d58e7809f005f6a5211760e63789bf Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-05-10cli: Add return value in cli_inbandOle Troan1-0/+36
Even when a CLI command called through the cli_inband API failed the API would return 0 (SUCCESS). This patch fixes that, but since most CLI handlers return error->code == 0, in most failure cases it will return -1 (UNSPECIFIED ERROR). Type: fix Change-Id: Ic83f3b23e8e8954bb8aa211301baba24e8c20ef6 Signed-off-by: Ole Troan <ot@cisco.com>
2019-05-10tests: test/vpp_papi_provider.py Specify exception to catch.Paul Vinciguerra1-1/+1
Change-Id: If936b198bcac7a317d52f958561c3e19d158450a Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-09add mactime plugin unit / code coverage testsDave Barach3-0/+160
The unit and code coverage tests are boring. The rest of the patch involves test and packet-generator infra cleanups. Teach the "make test-xxx" family of targets to set the api test plugin path correctly, to make "binary-api <api-message-name> <args>" debug CLI commands work correctly in the "make test" environment. Unfortunately involves both the top-level and test Makefiles. Add a minor pg cli feature, a CLI to manually set s->sw_if_index[VLIB_TX]. Consider the case where one configures an interface with both a device-input and an output feature. To test the output feature using the pg, it's necessary to inject packets into the interface output node with both b->sw_if_index[VLIB_TX] and b->sw_if_index[VLIB_RX] set correctly. For example: packet-generator new { name tx limit 15 size 128-128 interface local0 # rx: device input feature not configured on local0 tx-interface loop0 # tx: output node requires b->sw_if_index[VLIB_TX] node loop0-output data { hex 0x01005e7ffffa000dead0000008000102030405060708090a0b0c0d0e0f0102030405 } } Fix a longstanding bug in the packet generator stream setup. Remove kludges which set b->sw_if_index[VLIB_TX] to ~0 [in multiple places] instead of using the stream value s->sw_if_index[VLIB_TX], and setting THAT datum correctly. Change-Id: I1097a18e8db73661ded6b822c1d718f7e5cf36ed Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-09make test: add quic multistream test caseDave Wallace1-40/+118
- Also refactor test_quic.py to prepare for external echo tests & ipv6 tests Change-Id: I7dff60b375ed67d920e73294e0bf491cd3206d56 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-05-08make test: introduce COREDUMP_COMPRESS optionKlement Sekera2-13/+17
setting COREDUMP_COMPRESS=y (or =1) indicates that any core file is to be compressed by the test framework unless DEBUG=core is set. Change-Id: Ib0d6d30a7398dbeb6ab5e5dbb411bf5c641b5206 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-05-08VPP-1508: Fix zip() under python3.Paul Vinciguerra1-4/+4
Under py3, zip() returns an iterator. Fix so no longer needed in a list contex. Change-Id: I64b4560d990686cc87fd26d703030f9fb2494f12 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-05-07Improve lcov reported code coverage statsDave Barach1-2/+23
Remove unused code from the vppinfra build Add a bihash test case Change-Id: Ia930309efa28620dd1c0d69aaec432e2d8bd962c Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-07make test: add python3 compatibility in extend_packetAlexandre Poirrier1-2/+2
Change-Id: I342ff8e44e0d1ebd9f2c8cc386372b2f5a731080 Signed-off-by: Alexandre Poirrier <apoirrie@cisco.com>
2019-05-06make test: Fix truncated core fileDave Wallace1-0/+23
- Wait for coredump to complete before killing VPP. Change-Id: Ib7b96b339f796f9ef7e0eadff81d181464b8a03a Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-05-06gcov / test framework: sigterm not sigkillDave Barach2-2/+2
Otherwise, gcov data vanishes without a trace. Add a __gcov_flush() call to the unix signal handler, under #ifdef CLIB_GCOV. Add -DCLIB_GCOV to vpp_gcov_TAG_CFLAGS. Change-Id: I2726e671b26dfbe7fae88f46a8207bb2b5106884 Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-06NAT: VPP-1646 test case assertsFilip Varga1-0/+1
Change-Id: I466cea5cbe82a34d4b0b20a76bf5df4d529670e4 Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-05-02NAT: VPP-1661 - test case cleanup and refactoringFilip Varga3-1333/+1304
Change-Id: I0eb85252d4b489ba25dcf59252e2bcf3b0cd5c6a Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-05-02vpp_papi_provider.py: update defautmapping.Paul Vinciguerra1-0/+2
Add missing create_bvi/delete_bvi to defaultmapping. Correct typo in interface.api documentation. Change-Id: I8aa187f3b33c21fb2fcd55311ef79777c81d94d4 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-04-25crypto_ipsecmb: use pre-expanded keysDamjan Marion1-1/+1
Change-Id: Ie1d34b7e71554516595e0cd228e2cd54a3b8d629 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-25ipsec: drop runts in esp-decryptDamjan Marion1-2/+22
Change-Id: Id7fcaf8590f9f2dcccdebea0ad31c7ecd1cbc8af Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-24l2: Add support for arp unicast forwardingMohsin Kazmi1-2/+6
Change-Id: I79fc55f36a9b83957f84619bdf8cef08acc8ec24 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-24NAT: VPP-1531 api cleanup & updateFilip Varga3-777/+787
Change-Id: I2492400a67b39a3adbc24ab7cf1ba17a409e95a8 Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-04-23API: Python and Unix domain socket improvementOle Troan3-3/+16
Handle the case where buffer overflows. Then SOCK_SEQPACKET assumption that multiple API messages are not returned by recv() is broken. Use SOCK_STREAM for API exchanges instead. Add support for running tests over sockets. make test SOCKET=1 Change-Id: Ibe5fd69b1bf617de4c7ba6cce0a7c2b3f97a2821 Signed-off-by: Ole Troan <ot@cisco.com>
2019-04-23Revert "NAT: VPP-1531 api cleanup & update"Ole Trøan3-787/+777
This reverts commit bed1421b9f1b3643d93384084972337b596aec73. /vpp/master3/src/plugins/nat/nat_api.c: In function ‘send_nat_worker_details’: /vpp/master3/src/vppinfra/clib.h:62:33: error: division ‘sizeof (u8 * {aka unsigned char *}) / sizeof (u8 {aka unsigned char})’ does not compute the number of array elements [-Werror=sizeof-pointer-div] #define ARRAY_LEN(x) (sizeof (x)/sizeof (x[0])) ^ /vpp/master3/src/plugins/nat/nat_api.c:205:43: note: in expansion of macro ‘ARRAY_LEN’ rmp = vl_msg_api_alloc (sizeof (*rmp) + ARRAY_LEN (w->name) - 1); ^~~~~~~~~ Change-Id: Ie82672c145fb2f6580827f95e535435307bc7a23 Signed-off-by: Ole Troan <ot@cisco.com>
2019-04-23NAT: VPP-1531 api cleanup & updateFilip Varga3-777/+787
Change-Id: I519d7efc8ee3c86381d96be2e2a46017cd948895 Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-04-19IPSEC: IPv6 ESP transport mode incorrect packet length and checksum (VPP-1654)Neale Ranns1-0/+4
Change-Id: Ia3474e5bfea5764eae9b2987bf78296535df6778 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-19svm: move fifo tests to a separate fileFlorin Coras1-0/+26
Change-Id: Iac9ac9f5a6873aae1882316af4f6c919788a0cef Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-19IPSEC: ESP IPv6 transport mode payload length incorrect (VPP-1653)Neale Ranns1-0/+4
Change-Id: I8977100d7a22b50260858bd1ea9db419b53284ff Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-18GRE: API updateNeale Ranns5-81/+47
Change-Id: I5010cd34123c6498230dedac6ba8dd774a1085f9 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-18tls: allow engines to customize closeFlorin Coras1-2/+0
Change-Id: I11ac3e4f59206902e5dfc326f815c877c5dd6643 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-18IPSEC: tunnel rekey fix and test (VPP-1652)Neale Ranns1-0/+57
Change-Id: I1c2b3e40c689bedcdcea7887792b6b6b6aeb48d5 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-17vcl/session: tx notifications for cut-thru sessionsFlorin Coras1-2/+3
Change-Id: I076c753e419bbb177d2d28609190715e9895b398 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-17api: Add to interface crud - read by sw_if_index.Paul Vinciguerra2-0/+34
Change-Id: I02c857da4cf6da5e0e55c1e48b63716af7ade0a9 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-04-17IPSEC: Pass the algorithm salt (used in GCM) over the APINeale Ranns6-32/+64
Change-Id: Ia8cea13f7b937294e6a080a55fb2ceff30063acf Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-17crypto-ipsecmb: enable GCMNeale Ranns1-1/+0
Change-Id: I670d7899bcc63a419daf481167dc445a6386cce8 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-16gbp: Add support for allow sclass/dclass 1Mohsin Kazmi1-0/+40
Change-Id: I51f61a399e3eace93011f9431cbd7968e9be627c Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-16IPSEC: support GCM in ESPNeale Ranns4-33/+216
Change-Id: Id2ddb77b4ec3dd543d6e638bc882923f2bac011d Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-11IPSEC: ESP with ESN tests and fixesNeale Ranns2-23/+33
Change-Id: Ie42b26e6d5cdb7b23f370ea2933c65079e8d1089 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-11IPSEC-MB: Use random & non-repeating IV (VPP-1642)Neale Ranns2-2/+2
hard code IV and key lengths based on cipher. Init IV from random data, use AES instruction to rotate. Change-Id: I13a6507d12267b823c528660a903787baeba47a0 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-11Tests: Refactor tearDown show command logging, add lifecycle markers.Paul Vinciguerra35-204/+278
This change adds a consistent interface for adding test-specific show commands to log.txt. It also adds log markers for the execution of setUp[Class], tearDown[Class] in the logs. Change-Id: I7d42e396e594a59e866a7d55dac0af25548e657a Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-04-10make test: fix redundant setUp() in template_ipsec.pyDave Wallace1-3/+0
Change-Id: I81b3888816b064bd6bf0f38f5380dae93d7bb349 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-04-10crypto: Intel IPSEC-MB engineNeale Ranns2-41/+49
A plugin to use Intel IPSec MB library as a VPP crypto engine This changes uses concepts from: https://gerrit.fd.io/r/#/c/17301/ hence that author's work is acknowledge below Change-Id: I2bf3beeb10f3c9706fa5efbdc9bc023e310f5a92 Signed-off-by: Neale Ranns <nranns@cisco.com> Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-04-10make test: Initial QUIC testDave Wallace1-0/+89
- QUIC echo client/server transfer test Change-Id: I69874975c9789fe9b4e85c5993bf09b7255d87d0 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-04-10IPSEC: for each engine and algorithm testsNeale Ranns3-408/+600
refactor the IPSEC tests a bit so we can parameterise the setup. Change-Id: I777e5eb8f29ca1dce3dd273ebd05dae5846790af Signed-off-by: Neale Ranns <nranns@cisco.com>