aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-10-14mactime: add the "mactime.json" builtin URLDave Barach5-1/+181
If the http static server plugin is enabled, register the name "mactime.json" with the server. Visiting <web-root>/mactime.json produces a json brain-dump of the mactime table. Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: Ie39b0c776675864a85251b8c07fbf719d399f6de
2019-10-14tests: make pg_start() wait until pg completesAndrew Yourtchenko1-19/+13
A sizable number of tests call pg_start() to get the packets flowing and then immediately expect to have the entirety of the packets gone through. This works on powerful and unstressed hardware, but fails in beautifully random ways under load. This also necessitates the complicated logic of remembering the "zombie captures", then sleeping for some time before cleaning them up.... The solution is simple: in pg_start(), start the generators, wait till they all finish, clean up, done. Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Change-Id: I930e51b7aae39c9841d22dd905a4d13a465a672b Type: test
2019-10-14tests: log error which happens during connect and wait longer for stats socketAndrew Yourtchenko1-2/+3
Intermittently, a test would start VPP, but no testcases would execute. This would be more probable apparent during the high load or if there is another testcase dumping the core at that moment. Adding the logging to the connection revealed it was the stats socket connection erroring with error -2. Increasing the deadline from 3 seconds to 5 minutes has eliminated this error. Change-Id: I40bd7e642abb9e2aef0238c612e4c34781de5db2 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Type: test
2019-10-14papi: fix socket sendall callsVratko Polak1-4/+6
No point in checking the return value, as .sendall() raises on error (and the previous check was missing "not"). Type: fix Change-Id: I9e07709ddd7093f91ffef87808abbab264b8aa5a Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-14gbp: use correct dst mac for RD-UU forwardBenoît Ganne1-1/+1
Type: fix Change-Id: Ifdd193fab24796346b11a5df81740880f9a50ee8 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-10-13mactime: pass context in reply to mactime_dumpKeith Burns1-0/+1
Type: fix mactime_dump API didn't copy context to _details reply, causing subscription issues. Change-Id: Ida9f28b437847fba67a7e0832baa2b25a46882a9 Signed-off-by: Keith Burns <alagalah@gmail.com>
2019-10-12tls: allow disconnects from main threadFlorin Coras1-1/+4
Type: fix Use api with explicit thread index to retrieve tls contex on close. Change-Id: Ibdc4338747300b7fc8f91ef3e10bcd48ce7ae366 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-11hsa: vpp_echo refactor quic nclients argDave Wallace2-4/+3
Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: If8471d98053ae44cae07cdca6d269aa3c7df9887
2019-10-11hsa: vpp_echo clean up results comparisonDave Wallace2-20/+20
Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I021dfe4a59ecda1ed77b656a81f4c935903854ea
2019-10-11hsa: vpp_echo remove redundant unformat functionDave Wallace3-31/+9
Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: Ifae49981458cd3ef9e2c79d64040b2076ad93869
2019-10-11papi: harden socket handlingVratko Polak2-19/+24
In the previous implementation of socket transport for PAPI, socket methods .send and .recv_into were used. But they are not guaranteed to send/receive all the data for the full message. The receive part contained a loop, but it handled only the main message, not the header. This patch replaces .send with .sendall and uses newly defined _read_fixed method. Also, removed Paul from maintainers, as he is not active much, lately. Type: fix Change-Id: Iae1a68bf8f9e666856b7c7d62ebfe22defc5dfe1 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-11lisp: fix dangling references to bihash tablesDave Barach1-6/+26
gid_ip4_table_t's and gid_ip6_table_t's are allocated from pools. They MUST NOT be listed on the clib_all_bihash list to avoid dangling references. Switch to the clib_bihash_init2 API, which has the required knob. Type: fix Ticket: VPP-1788 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I49a17e937922c3af2e1c46b24e20883af51584a8
2019-10-11tcp: refactor flags into cfg and conn flagsFlorin Coras4-31/+89
Type: refactor Change-Id: Ib5e2ecf55732599e1322736e3662178c9da49c7d Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-11tests: explicitly wait for the PG to finish before looking for capture fileAndrew Yourtchenko1-0/+15
Rather than only using time-based method of periodically checking whether the pcap file appeared, first check that the packet generator has stopped. To make this change fail-safe, have a 5-minute timeout on this activity, just in case the things go terribly wrong. Type: test Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Change-Id: Id16b2802b2de8a4cafb5d9f0a8c9ba62ec89dc32
2019-10-11vppinfra: fix page boundary crossing bug in hash_memory64Dave Barach2-4/+109
Fix a day-1 bug, possibly dating back as far as 2002. The zap64() game involves fetching 8 byte chunks, and clearing octets not to be included in the key. That's fine *unless* the 8-byte fetch happens to cross a page boundary into unmapped or no-access space. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I4607e9840032257c96ba7387f86c931c0921749d
2019-10-11ip: reassembly: trace ip headers over worker handoffsKlement Sekera5-27/+87
This change adds tracing of IP headers when doing a handoff between worker threads. This eases debugging. Type: feature Change-Id: I2195b070a364cba13a658ec1cee5154fc4c3a8b0 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-10-11tests: extra logging in reassembly testsKlement Sekera1-0/+10
Type: test Change-Id: Ia09c3149490e47e49e59544ab1680a8160e60ac8 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-10-11ip: RD-CP API incorrect reply codeNeale Ranns1-1/+1
Type: fix Change-Id: Ie436d51999dc1384a0db492f28a7e66620e14551 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-10-11bonding: feature arc may not be enabled for the slave interfaceSteven Luong1-2/+2
vnet_feature_enable_disable takes sw_if_index, not hw_if_index. If there is a subinterface created prior to the slave interface is created, sw_if_index and hw_if_index start to diverge and the problem will happen. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I11e1f099378832f83b748526c6cbeb56960fad3c
2019-10-10tcp: improve pacing after idle send periodsFlorin Coras6-76/+124
Rest pacer on ack reception if we haven't recently sent anything. Type: feature Change-Id: I820bacd81b65130052dfafbfcbe6ca4553069fbc Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-10http_static: add .json contentDave Barach2-2/+55
Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: Ibf8583175c181dc12a589b3e6c11a10ee77fc160
2019-10-10tcp: retry lost retransmitsFlorin Coras7-155/+205
Add heuristic that detects lost retransmitted segments and retries sending them. Type: feature Change-Id: I34d1bb16799e1993779222eb2bfad4b40704159e Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-10-10ip: fix clang debug compilationBenoît Ganne1-3/+1
The non-extern declaration confuses clang linker in debug mode. The function is defined as inline above anyway. Type: fix Fixes: c6215d902f Change-Id: Ic7e4477631cf0bcfb31ab3f81effe3642dd4223e Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-10-10session: fix typos & cert_key store initNathan Skrzypczak2-6/+4
Type: fix Change-Id: I865534de9f16bff586106e0850f131de1e9cbf24 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-10-10tcp: custom checksum calculations for Ipv4/Ipv6Srikanth A6-122/+194
Type: feature Based on the configuration, we can disable checksum offload capability and calculate checksum while pushing the TCP & IP header. This saves some cycles when VPP stack is used in legacy hardware devices. Signed-off-by: Srikanth A <srakula@cisco.com> Change-Id: Ic1b3fcf3040917e47ee65263694ebf7437ac5668 (cherry picked from commit 3642782a2748503f5b5ccf89d1575c1d489948ef)
2019-10-10tcp: fix tso not work in single buffer issueSimon Zhang2-6/+9
Type: fix Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> Change-Id: Iddb6fd41812e8c97af58859ef43279cfc0f9d1df Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
2019-10-10tests: add cli_return_response to vpp_papi_providerDave Barach2-3/+19
To improve gcov/lcov code coverage stats, it's necessary to send incorrect debug CLI commands; to force vpp into debug CLI error paths. cli_return_response() sends commands and returns the response object, so test vectors can handle failures. Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I4fab591c9d2e30c996f016e18e4fd69b9c5bed06
2019-10-10sr: fix deleting an SR l2 steering policyAhmed Abdelsalam1-3/+7
Type: fix Signed-off-by: Ahmed Abdelsalam <ahabdels@cisco.com> Change-Id: I9e98b1622785e58484bf316ef491e44cfb06bcb7
2019-10-10acl: remove api boilerplateOle Troan6-172/+47
Type: refactor Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Idc9c508eb0e3d4b0c3908360fb0771012a8e2bc0
2019-10-10mactime: fix undefined symbol in mactime_testOle Troan1-1/+2
undefined symbol format_macaddress Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I5549173ef758e965cf7d9d4f6aa9457d135318f5
2019-10-10geneve: API cleanupJakub Grajciar6-63/+78
Use consistent API types. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: I1964e4f0afe6f030ae9c8e28fcba5fd81aa1f130
2019-10-10memif: remove api boilerplateOle Troan7-252/+17
Type: refactor Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Icab769607c4a5890dc80b8f2661faa7e297c2a27
2019-10-09ikev2: fix dangling pointerFilip Tehlar2-14/+28
Type: fix Change-Id: I8aa9029e0a5cf21aa24a90b39eb2787653f65abb Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-10-09session: avoid old io dispatch if no slots left to sendRyujiro Shibuya1-2/+3
Type: fix Signed-off-by: Ryujiro Shibuya <Ryujiro.Shibuya@owmobility.com> Change-Id: I8e1f6cbd905ad5c21aed1b2e358540d0fbd7fc47
2019-10-09docs: Add macos build documentationNathan Skrzypczak5-0/+152
Type: docs Change-Id: Iee03aacab2cfcb4e87190302dc641e8273b7f096 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-10-09map: use ip6-full-reassembly instead of own codeKlement Sekera10-978/+100
Remove map's implementation of reassembly and use common ip6-full-reassembly functionality. This makes it easier to maintain by removing duplicate code/functionality. Type: refactor Change-Id: I430e888b704e28c100a9ce075d1460cb529e4676 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-10-09dhcp: dhcp6_pd_client_cp API cleanupJakub Grajciar5-63/+53
Use consistent API types. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: If6c102a53d074cba7eca6b6af9855aa4486f38cc
2019-10-09interface: dump the interface device typeMohsin Kazmi4-3/+14
Type: feature Change-Id: I22e2ef34631c9432311ff6457504e0649e0512b4 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-10-09ip: fix coverity warningKlement Sekera1-3/+7
Type: fix Fixes: 0eb75d0e9c7624a4e8ac69fea7dbe12d39b75096 Change-Id: I8bcdc06b33bf4e12752b90dc3445fa51af552a46 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-10-09build: clean up make help outputDave Wallace2-52/+52
This change is designed to help the uninformed find the right way to run extended tests by using the test-all[-debug] targets. 'make test EXTENDED_TESTS=y' fails to build as it has a dependency on 'vom-install' which is conveniently included in test-all[-debug]. - clarify test-all[-debug] description and make test-help description - Also align indentation of make help output Type: style Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: Ief54cc8a5af68c052aacb0d660237c5eb63451b5
2019-10-09interface: callback to manage extra MAC addressesMatthew Smith7-1/+308
Type: feature New callback vnet_hw_interface_add_del_mac_address(). Add or delete secondary MAC addresses on a hardware interface. This will allow packets to be processed which have a destination MAC address other than the primary programmed MAC address without needing to put the device into promiscuous mode. Change-Id: I6beecbcb8932fc1fe45b567f76fa3706feefae2c Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2019-10-09api: comment, simplify and fix api socket readVratko Polak1-48/+80
The function vl_socket_read_ready did contain some comments already, but as they stated, the logic has to be tricky to cover multiple cases. Comment: + Add function-level comment + Add comments to describe some of local variables + Add many comments to describe internal state at particular lines. Simplify: + Remov mbp_set as it is never needed. + Replace msg_len with msgbuf_len to save "+ sizeof (msgbuf_t)". Improve: + Early exit on EAGAIN. Fix: + "n" now only tracks input_buffer. Previously, it was entering the detection of additional messages even for unprocessed_input. + Set up msg_buffer (including appending to unprocessed_input) outside full-message-detection loop now, so it cannot be executed multiple times as before. Type: fix Ticket: VPP-1785 Change-Id: I256e34b435be06844458744a13ea37a0e86a96f9 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-09papi: introduce read_blockingVratko Polak1-3/+29
Previously, self.transport.q got the messages (at least for socket transport), stored in the encoded (packed) form. In order to avoid accessing internals for async reads, a new method is introduced, to perform blocking reads of decoded (unpacked) messages. The method is also used in _call_vpp(), so sync and async reads are kept compatible. Type: feature Change-Id: Id49792dfa57c00b1a14a198031c5398d09a9ba20 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-09mpls: support fragmentation of mpls output packetRajesh Goel7-16/+176
Type: fix Signed-off-by: Rajesh Goel <rajegoel@cisco.com> Change-Id: Ie4372c5cf58ab215cdec5ce56f8a994daaba2844
2019-10-09ioam: remove api boilerplateOle Troan29-974/+80
Note: The VAT _test.c plugins need some more adjustments. Type: refactor Change-Id: Ifa150683d7d68db7950f66ef85eea73c8281ba14 Signed-off-by: Ole Troan <ot@cisco.com>
2019-10-09api: autogenerate event handler functions for *_test.cOle Troan2-106/+67
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: If75f63244f37ae3312832ca015f738c51ee7da1f Signed-off-by: Ole Troan <ot@cisco.com>
2019-10-09ip: only install IPv6 prefixes in FIB when the interface is upNeale Ranns1-39/+36
otherwise they get installed twice and the reference counting means they are not removed. This is the same behaviour as IPv4. Type: fix Change-Id: I9266e04ccff6ff06a577e85973a2ddbeb9dfc52b Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-10-09fib: P2P interfaces do not need specific multicast adjacenciesNeale Ranns1-3/+18
they can use the 'auto' adj for all traffic Type: fix Change-Id: Id2b9557683252a94badc8f9dfab5f7b2ae26f1ee Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-10-09hsa: use crypto_engine_type_t for TLSNathan Skrzypczak14-36/+36
Type: refactor This patch does the following conversions TLS_ENGINE_X -> CRYPTO_ENGINE_X tls_engine_type_t -> crypto_engine_t It does not change numbering of engines Change-Id: I872dfaec3a6713bf4229c84d1ffd98b8b2419995 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-10-09session: Add certificate storeNathan Skrzypczak13-84/+330
Type: feature This changes the behavior of both API calls APPLICATION_TLS_CERT_ADD & APPLICATION_TLS_KEY_ADD certificates and keys aren't bound to an app, they are passed to it via connect / listen using the message queue. This should be followed by a per protocol (QUIC/TLS) crypto_context store to save devrived structs Change-Id: I36873bc8b63b5c72776c69e8cd9febc9cae31882 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>