aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-06-09fib: make sure adj is valid during walkBenoît Ganne1-0/+3
The adj can be deleted during fib_walk_sync(), make sure it can happen only after clearing the SYNC_WALK_ACTIVE flag. Type: fix Change-Id: I68be00e9602e2783d9dced71c51547c38b7e8a00 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 9f10edbb46dc1937ed99469a581723cb1ac1ff45)
2021-06-09ipsec: fix crypto ops in esp decryptBenoît Ganne1-2/+7
When both chained and non-chained buffers are processed in the same vector, make sure the non-chained buffers are processed as non-chained crypto ops. Type: fix Change-Id: I19fc02c25a0d5e2e8a1342e2b88bbae3fe92862f Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit e631ece4aa32b33651ed458200ab551ffb8fbb47)
2021-06-08vppinfra: pool_free_elts() now supports fixed-size poolsDave Barach3-29/+99
Test added to the unittest plugin / test_vlib.py Type: improvement Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I73445e57918347c102ff6f5e8c9ddb9bd96f1407 (cherry picked from commit 4de5f9be88857197ddf17e3bff66318f78f4b6bb)
2021-06-07vcl: avoid multiple reads on peekFlorin Coras1-0/+4
Only try once and return what was found. Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I50b1d26babf1b7431d36f6b7472a1fb01475bb35 (cherry picked from commit 233683180638d1c7f517b713722cbbeb3b4be86e)
2021-06-07vcl: avoid updating errno on ldp init checkFlorin Coras1-71/+43
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7f5887865aa29c9881b5063be1d7d42369a493c1
2021-06-07tls: change picotls plugin crypto module to accommodate new version picotlsSimon Zhang2-3/+3
Type: fix Change-Id: I58931e235535be7d596ca578790f389b64a4fbd2 Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> (cherry picked from commit 778b3186fc911af2aabbbfbf56bc1df5e2373061)
2021-06-07vcl: accept zero length writesFlorin Coras1-7/+8
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I84985f59274e77219a38ea6ac865fc73ac635d72 (cherry picked from commit 0b0d28e9bf1ea078ce1a846d22e499d13eadd464)
2021-06-07vcl: epoll error handling fixes and improvementsFlorin Coras2-6/+22
- return VPPCOM_EEXIST if attempting to re-add a session - return VPPCOM_ENOENT if the session to be removed is not epolled - generate EPOLLIN if adding it through a mod operation on a session that has data and did not have the event previously set. Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I728a06b8cf84af8d8c1dea7406e284de8886dffc (cherry picked from commit 2645f68985df4955fd8a161224595dad9f4ab488)
2021-06-07dpdk: silence coverity warning on use of uninitialized valuepibr1-0/+1
Type: fix Signed-off-by: Piotr Bronowski <piotrx.bronowski@intel.com> Change-Id: I76923ad5035498aae821db4fd42a127617476fbb (cherry picked from commit d838e533f1f8f5335ceadb193fa9554f44d04fbf)
2021-06-07nat: fix broken nat44-ed cliRuslan Babayev2-10/+1
snat_set_frame_queue_nelts has been replaced with nat44_ed_set_frame_queue_nelts. Type: fix Signed-off-by: Ruslan Babayev <ruslan@babayev.com> Change-Id: I8d970be71376fdbb2bfd383d4d5824a8def93bb3
2021-06-03svm: release mem order for fifo chunk list CASFlorin Coras1-6/+9
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: Ifad679f46abd6e9c18a3eaf7e55800a09f3791ab (cherry picked from commit 324d161963025a595a79a10cf953b23250f825a1)
2021-06-03session: avoid ct connects loopFlorin Coras1-1/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I99af136ecab9be1f9e00de6d197b8f1c74ab4b20 (cherry picked from commit 821b5002bf5cd18e1ec7750ff1b6fb379b241869)
2021-06-03session: lcl transport info on acceptFlorin Coras3-2/+5
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia46b0b8afed30f84b244c06f0457303f9e8832cd (cherry picked from commit 67c90a32b7ad0c5a38c483ce849cc7a231e7ba54)
2021-06-03srtp: cleanup build and default to disabledFlorin Coras2-12/+1
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I62fb56257445a05105e556d1ea6cc6280b5eeccc (cherry picked from commit 427feb6fdd8aee373405dbd3a59f69440107b046)
2021-06-01interface: fix vnet_sw_interface_update_unnumberedDave Barach1-6/+13
Unless a software interface is actually unnumbered, do not set ip[46]_main.lookup_main.if_address_pool_index_by_sw_if_index [sw_if_index] to ~0 Fixes this scenario: loop create set int state loop0 up create sub-interface loop0 1 set interface ip addr loop0.1 192.168.1.1/24 delete sub-interface loop0.1 set int ip addr loop0 192.168.1.1/24 Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I46141d862fa57d70b93d7bb0c105403708165264 (cherry picked from commit 64d20e76b9108c9158b2b538cd2312d740f48103)
2021-06-01tls: fix handling of failed acceptsFlorin Coras1-3/+12
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I34b53dcaf4f049157b538ea40a39033d43e525a5 (cherry picked from commit b6fe52f3da79d4c4ea8095b9d36988b0825a9891)
2021-05-29hsa: proxy listener support addition of fifo segmentsFlorin Coras1-0/+1
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I59218f784140ef5ecb8468af6aebfe25fd7703a4 (cherry picked from commit b740fdc8ff7f58637524e999d5fe01b8b010810d)
2021-05-28svm: fix inadequate atomic load for chunk mgrDave Wallace1-3/+3
- Fixes intermittent LDP cut thru iperf3 test failure on AARCH64 Type: fix Change-Id: Id21a078d642e03d974bacacd1f4d0faa42fb6652 Signed-off-by: Dave Wallace <dwallacelf@gmail.com> (cherry picked from commit 5c520919e838bcb645ddd879641d54c620740989)
2021-05-26vppinfra: explicit blocking mode for sock connectsFlorin Coras4-5/+9
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I3a33230de13fef613dc9523cf24a9968d200c2e5 (cherry picked from commit 57e0af924b8b48cf39b1020bf11f10e3c227f22c)
2021-05-26fib: During the mfib lookup set the unicast FIB index in the packet so that ↵Neale Ranns1-26/+28
a uRPF check on a for-us packet is done in the correct VRF Type: fix Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: Iafa6efea0d96962aa9136dccefc148a961f74476
2021-05-26pg: revert exec file fixesRay Kinsella1-6/+1
This reverts commit fd4fd0d1853ae7384e7a64c4cad17a3469720b95. Type: fix Change-Id: I6ef84f646372270ded486eacee81817067e49106 Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
2021-05-26nat: add thread index assertionsKlement Sekera4-0/+11
Add extra assertions to debug build. Type: improvement Signed-off-by: Klement Sekera <ksekera@cisco.com> Change-Id: Ib20130365e8f9dbb556fcbb4321dd184c7eff603
2021-05-26api: socket client connect set to blockingFlorin Coras2-1/+9
Binary api client must otherwise check the returned error and if it was EAGAIN/EINPROGRESS poll for connect completion. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I89845b1a59b9fa2ab0968029435ceb203bfa8f6c
2021-05-26vlib: revert exec cmd handle scripts with blank linesRay Kinsella1-21/+3
This reverts commit 269e1569e1f7798bf7d7f539daf505b2f1997a08. Type: fix Change-Id: I40bd71ae3b5e9dc8345fb2460aae437de8a9a5ba Signed-off-by: Ray Kinsella <mdr@ashroe.eu>
2021-05-26perfmon: revert raw column supportRay Kinsella3-30/+0
Revert raw column from the perfmon plugin. Type: refactor Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: If127f57ee2022cc1c0ea5177f1655a792f195f1d
2021-05-26tests: move vapi C/C++ test files into src/Damjan Marion4-0/+1538
Type: improvement Change-Id: Iaad004661db1e9076e6c27227878f1612fa7289f Signed-off-by: Damjan Marion <damarion@cisco.com> Signed-off-by: Klement Sekera <ksekera@cisco.com>
2021-05-25srtp: basic implementation based on libsrtp2Florin Coras13-4/+1537
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic5e99938a5f130e83de6d590d2f89252d055bceb
2021-05-25linux-cp: A V2 variant of pair create API that returns the hostNeale Ranns5-22/+88
interface created Type: improvement Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: I31a83cd50513078895078bae3ae11372d351ddcd
2021-05-25nat: report correct EI per-user session limitMatthew Smith2-3/+5
Type: fix When enabling the endpoint independent NAT44 plugin, user_sessions determines the maximum number of translations that can be active for a single inside address. If 0 is passed in, a default value is used but 0 is still stored in the field that is used to populate reply messages to nat44_ei_show_running_config, At the time of enabling the plugin, if user_sessions is 0, update the field which is used by nat44_ei_show_running_config to contain the default per-user limit which gets used by the EI nodes. Change-Id: I6b060d85bcd42d91db879b95a8b07c6844bcd2a5 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2021-05-25dpdk: disable DPDK iAVF interrupt supportMohammed Hawari1-2/+3
Change-Id: I665d9d11fcdd9af33e38972a74e51ce3085f3e55 Signed-off-by: Mohammed Hawari <mohammed@hawari.fr> Type: fix
2021-05-25interface: show if tx queue is sharedDamjan Marion1-4/+6
Type: improvement Change-Id: Idb48f835730db6c652c4b0e6ef310c7f36599a72 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-22tls: prealloc chunks for dtls dgram enqFlorin Coras2-3/+5
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ib25598f72f6539c07de1acee1e6049ecd28f35cc
2021-05-21session: improve main thread connects rpcFlorin Coras2-18/+26
Avoid grabbing the worker barrier if there's no work to be done. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ice3de5df41cd1752aba3419ad2e2dd82f30e9bfb
2021-05-21stats: catch stat segment overrun in retry loopOle Troan1-3/+3
Raise IOError so that the blocking code retries not only on optimistic locking failures but also on data segment illegal reads. Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I6bb250e239486b60192004271c1690e790513318
2021-05-21af_xdp: use desc offset on rxBenoît Ganne2-41/+26
Instead of pre-programming the data offset on rx, use offset passed in the descriptor. This is more robust and future-proof. Type: fix Change-Id: I2bd910d92b8b03d17be5be85a24108be711dc7b9 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-05-21af_xdp: refill rx rings when interface goes upBenoît Ganne3-9/+26
If interrupt mode is configured through startup.conf exec script, the input function will not be polled and the rx ring will never be filled. Always refill the ring when interface goes up so it is ready to receive packets. Type: fix Change-Id: I4cf22c8ae00638679f2e8650303a6fe916c1319b Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-05-21bfd: use vnet cryptoKlement Sekera6-106/+49
Type: improvement Change-Id: I873a99c1258a97ed5ed195b9756e8302f865e7f0 Signed-off-by: Klement Sekera <ksekera@cisco.com> Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2021-05-21af_xdp: workaround kernel race between poll() and sendmsg()Benoît Ganne10-86/+213
Prior to Linux 5.6 there is a race condition between poll() and sendmsg() in the kernel. This patch protects the syscalls with a lock to prevent it, unless the NO_SYSCALL_LOCK flag is set at create time. See https://lore.kernel.org/bpf/BYAPR11MB365382C5DB1E5FCC53242609C1549@BYAPR11MB3653.namprd11.prod.outlook.com/ Type: fix Change-Id: Ie7d4f5cb41f697b11a09b6046e54d190430d76df Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-05-21nat: add maximum configured sessions to stat segmentOle Troan3-1/+13
Add /nat44-ed/max-cfg-sessions gauge. Reflects the configured value for configured sessions (per thread). Type: improvement Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I618c8aa0daab0981399cfe9273d191fa1990ef60 Signed-off-by: Ole Troan <ot@cisco.com>
2021-05-21linux-cp: Add delegate to adjacenciesMatthew Smith1-10/+74
Type: improvement When an adjacency is created, add the linux-cp delegate on the new adjacency so we can later deal with modifications & deletions in our cache of adjacency data. Add a pool of hash keys and associate the pool index for a particular key with the adj_delegate_t. If the rewrite on an adjacency is changed, this will allow us to delete the old hash table entry and it will not become orphaned. Signed-off-by: Matthew Smith <mgsmith@netgate.com> Change-Id: I072b960c02cf377d66f7d18b8c0e9e05824a0ca3
2021-05-21quic: add extended vcl testFlorin Coras1-1/+1
Only works with release binaries. Type: test Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iede88713e1dbc4d1c6ae62651ff9150f88953f4d
2021-05-21quic: fix timer updateFlorin Coras1-1/+3
Use ctx timer wheel not current thread since connects are done on main but the ctx is allocated on first worker. Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ibed371bed12970d0d1ae4572f36df0bb1fb70b0f
2021-05-21quic: init crypto context on streamsFlorin Coras1-3/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I901980f1f8ae8eb51c3972537ccac80f620868d0
2021-05-21quic: make sure aead crypto context matches quiclyFlorin Coras1-1/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I8003198c15cd511750dc7eaae025025c733c059c
2021-05-21ipsec: Default the IPSec interface MTU to 9000Neale Ranns1-0/+1
Type: fix The same value is used for other tunnel types. Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: I6593001918993d65f127cc9f716c95e932239842
2021-05-21memif: fix gcc-10 build error on arm platformTianyu Li1-1/+1
In function ‘memcpy’, inlined from ‘memif_device_input_zc_inline’ at src/plugins/memif/node.c:850:7, string_fortified.h:34:10: error: writing 16 bytes into a region of size 0 [-Werror=stringop-overflow=] 34 | return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/plugins/memif/node.c: In function ‘memif_input_node_fn_neoversen1’: src/plugins/memif/memif.h:175:16: note: at offset 0 to object ‘desc’ with size 0 declared here 175 | memif_desc_t desc[0]; | ^~~~ Using C99 way empty brackets for flexible array members Type: fix Signed-off-by: Tianyu Li <tianyu.li@arm.com> Change-Id: I7a6ad89f95e1b5e3f9aac36546a2559dbda9bd6c
2021-05-20memif: fix input node buffer prefetchTianyu Li1-4/+4
Prefetch should be the next group of buffers instead of current buffers Type: fix Signed-off-by: Tianyu Li <tianyu.li@arm.com> Change-Id: If13967e27f74c10856ae48892420d7ade6f0c92c
2021-05-20gre: Walk IPv6 adjacencies during restackMatthew Smith1-2/+4
Type: fix If a GRE tunnel is created and the peer is not resolved yet and an IPv6 route is added which points to the tunnel, packets matching the route will be dropped. When the tunnel peer is resolved, adjacencies on the tunnel interface should be restacked and packets matching the route can be encapsulated and sent.. There is a loop that is intended to do this for both IPv4 and IPv6. The call to walk adjacencies is invoked in a "return" statement though. So the loop is exited and the function returns before IPv6 adjacencies are walked. Remove the return so the loop finishes. Change-Id: Ia4f695681713020209ea490ae4142857cea49c41 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2021-05-20hsa: test server incremental statsFlorin Coras3-35/+71
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ie8ec924ebaf006f1df84a1013050114831144a79
2021-05-20tls svm: prealloc tcp fifo chunks before ssl writeFlorin Coras3-1/+13
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7c47b55ec6f0c83f2d13e0e737d0559a32f7c837