vpp.git
4 years agodhcp: Move to plugin 74/22574/3
Neale Ranns [Mon, 7 Oct 2019 07:39:28 +0000 (00:39 -0700)]
dhcp: Move to plugin

Type: feature

Change-Id: I3fe27a8ef577741d9a5c4f090ec91cf68fb44fe3
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agomactime: add a "top" command to watch device stats 91/22591/2
Dave Barach [Mon, 7 Oct 2019 16:04:31 +0000 (12:04 -0400)]
mactime: add a "top" command to watch device stats

Include a binary API change NOT suitable for cherry-picking into 19.08

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Id369514a3085f5e4bcee34819c55c4636df9b518

4 years agoip: add tracing for ipv6 frag headers 73/22573/2
Klement Sekera [Mon, 7 Oct 2019 12:20:39 +0000 (12:20 +0000)]
ip: add tracing for ipv6 frag headers

Type: feature

Change-Id: I0e049b28d8c21b67ea4545e865eda4e88f10e485
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agoquic: fix wrong condition in update_fifo_size 90/22590/1
MathiasRaoul [Mon, 7 Oct 2019 15:41:37 +0000 (15:41 +0000)]
quic: fix wrong condition in update_fifo_size

Type: fix

Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: If371cde9412be29634164830c58634da248ad0ae

4 years agomactime: remove unnecessary function declaration 69/22569/3
Neale Ranns [Mon, 7 Oct 2019 10:31:50 +0000 (10:31 +0000)]
mactime: remove unnecessary function declaration

Type: fix

Change-Id: I80cb666d9eae9d0f780d51fb95454d97ed320454
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agovlib: move thread barrier around mod of global node next data 69/22369/3
Christian E. Hopps [Sun, 29 Sep 2019 01:36:36 +0000 (21:36 -0400)]
vlib: move thread barrier around mod of global node next data

The old code modified the node next array prior to obtaining the thread
barrier. Then it updated the runtime node data, and upon barrier release
caused reforking of each worker thread. The reforking clones the main
thread nodes and reconstructs the runtime node structure. This cloning
is not 100% "deep" in the sense that the node next array is
shared (i.e., only the pointer is copied). So prior to the barrier being
obtained the node's next array is being changed while workers are
actively using it (bad). Treating the node next array as read-only in
the workers and sharing it is a decent optimization so instead of trying
to fix that just move the barrier a little earlier in the process to
protect the node next array as well.

This was tripping an assert in next frame ownership change by way of the
ip4-arp node. The assert verifies that the node's next array length is
equal to the runtime next node count. The race above was lost and the
node next array data was updated in the main thread while the arp code
was still executing in a worker.

This was being hit when many arp requests were being sent from both ends
of a tunnel during which the add next node function was called, which
often led to an assert b/c the next node array was out of sync with the
runtime next node count.

- PS#2 update - move barrier sync to just above code that modifies state.

Ticket: VPP-1783
Type: fix

Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I868784e28f994ee0922aaaae11c4894a3f4f1fe7
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
4 years agoquic: Refactor naming & clibs 41/22441/4
Nathan Skrzypczak [Tue, 1 Oct 2019 11:04:59 +0000 (13:04 +0200)]
quic: Refactor naming & clibs

Type: refactor

Change-Id: I067fc7dbcc0985277df01384d9dcdb0bdf62fba5
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agodocs: grammar police raid 57/22557/2
Dave Barach [Sun, 6 Oct 2019 13:19:29 +0000 (09:19 -0400)]
docs: grammar police raid

Edit the front-page intro text. Fix egregious grammar errors,
including an "it's" vs. "its" blunder.

Type: docs

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: If9d7d07899c402cd49bbae988110a15216035b02

4 years agoip: reassembly add missing goto 68/22568/2
Klement Sekera [Mon, 7 Oct 2019 09:48:06 +0000 (09:48 +0000)]
ip: reassembly add missing goto

Type: fix
Fixes: de34c35fc73226943538149fae9dbc5cfbdc6e75

Change-Id: I256ef153b3b27a1f7ab7daa45015a2ec4bc84076
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agoip: reassembly remove dead code 66/22566/2
Klement Sekera [Mon, 7 Oct 2019 09:34:44 +0000 (09:34 +0000)]
ip: reassembly remove dead code

Type: fix
Fixes: de34c35fc73226943538149fae9dbc5cfbdc6e75

Change-Id: I79589f648f4c75762e5277fb94636a91fa36ccdd
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agobuild: add env variable to pass extra cmake args 70/22070/3
Nathan Skrzypczak [Mon, 16 Sep 2019 14:26:58 +0000 (16:26 +0200)]
build: add env variable to pass extra cmake args

If VPP_EXTRA_CMAKE_ARGS is set, its content will be
appended to the vpp cmake command cli

Type: feature

Change-Id: I825d4239e62b0a2fb70a652f0671f6c559630aad
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agodhcp: API return code fix 63/22563/2
Neale Ranns [Mon, 7 Oct 2019 08:13:44 +0000 (08:13 +0000)]
dhcp: API return code fix

Type: fix

Change-Id: Ifcbfeecd6ca1215ec473eec4cce736ab4eacde80
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoip: MFIB CLI fix for parsing path flags 65/22565/1
Neale Ranns [Mon, 7 Oct 2019 08:23:38 +0000 (08:23 +0000)]
ip: MFIB CLI fix for parsing path flags

Type: fix

Change-Id: I7ed9726d8c5ca26715a84b004a18fd7f93142486
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agordma: prevent loopback of broadcast packets 31/22531/2
Benoît Ganne [Fri, 4 Oct 2019 13:28:12 +0000 (15:28 +0200)]
rdma: prevent loopback of broadcast packets

TX queues must be created before RX queues on Mellanox cards in order to
not receive our own broadcast packets.

Type: fix

Change-Id: I32ae25a47d819f715feda621a5ecddcf4efd71ba
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agobonding: traffic traversing the wrong interface 51/22551/2
Steven Luong [Fri, 4 Oct 2019 21:18:37 +0000 (14:18 -0700)]
bonding: traffic traversing the wrong interface

Missing an increment in the while loop. Hashes not stored in the array.

Type: fix

Signed-off-by: Steven Luong <sluong@cisco.com>
Change-Id: I603027f5a7305478f48a102ac8035ffde9102c53
(cherry picked from commit 0471cdbd3fe04a88a8b70b5f0eff0c378e19abf7)

4 years agoip: Fix IP unnumbered dump of one interface 54/22554/1
Neale Ranns [Sun, 6 Oct 2019 08:04:26 +0000 (01:04 -0700)]
ip: Fix IP unnumbered dump of one interface

Type: fix

Change-Id: I35fb6fdfba50c4a59cf1ffb94cb51487bcf5afc9
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agomisc: add "show run summary" 32/22532/2
Dave Barach [Fri, 4 Oct 2019 13:59:00 +0000 (09:59 -0400)]
misc: add "show run summary"

Prints the interior node vector rate, rx / tx / drop rates

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I57130db0f99e852a8498aa90d01e52f7ac33dcc9

4 years agordma: make sure pci subsystem is initialized 45/22545/2
Benoît Ganne [Fri, 4 Oct 2019 15:38:05 +0000 (17:38 +0200)]
rdma: make sure pci subsystem is initialized

The rdma driver use the pci subsystem, make sure the dependency is
recorded.

Type: fix

Change-Id: Ibd613f623d355612881acc31b9423f2de13793a3
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agovlib: pci: set pci driver name to none when no driver is loaded 44/22544/2
Benoît Ganne [Fri, 4 Oct 2019 15:30:21 +0000 (17:30 +0200)]
vlib: pci: set pci driver name to none when no driver is loaded

If no Linux PCI driver module is loaded, then the driver_name in the PCI
info struct is NULL. This can triggers crash when checking driver name
eg. in vlib_pci_device_open().
Default to "<NONE>" as driver name, which should never match.

Type: fix

Change-Id: I9e69889a7566467bd8220b92bbbaa72ada957257
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agodocs: add packet-generator writeup 46/22546/2
Dave Barach [Fri, 4 Oct 2019 16:38:13 +0000 (12:38 -0400)]
docs: add packet-generator writeup

Type: docs

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4abb5c17e6fdfeaed5bbadb2ce83098dde6d05b1

4 years agohsa: make APP_OPTIONS_PREALLOC_FIFO_PAIRS configurable 43/22543/2
MathiasRaoul [Fri, 4 Oct 2019 15:28:00 +0000 (15:28 +0000)]
hsa: make APP_OPTIONS_PREALLOC_FIFO_PAIRS configurable

-add prealloc_fifo_pairs  member in echo_main_t
-new cli parameter in vpp_echo

Type: feature

Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I6bb1214ee93e06421cd0a3721420278c51cd59c4

4 years agoquic: make quic fifo size configurable via cli 23/22323/9
MathiasRaoul [Fri, 4 Oct 2019 15:27:03 +0000 (15:27 +0000)]
quic: make quic fifo size configurable via cli

Type: feature

Change-Id: I6d6ac649094ef4bee2aed311915dd58f11972e79
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
4 years agoip: fix use-after-free in IPv6 SLAAC expiration 06/22406/4
Benoît Ganne [Mon, 30 Sep 2019 08:55:33 +0000 (10:55 +0200)]
ip: fix use-after-free in IPv6 SLAAC expiration

Type: fix

Change-Id: I46b166b3a10c4543eafa4422531dd3c725db45f1
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agoquic: update quicly to v0.0.5 84/22484/5
MathiasRaoul [Wed, 2 Oct 2019 14:56:15 +0000 (14:56 +0000)]
quic: update quicly to v0.0.5

-Update quicly patches
-Remove event logger (removed from quicly).
-Update quicly functions calls

Type: feature

Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I0355befeb5ce961928f17225c83890ba87cf6ebc

4 years agovppinfra: create unformat function for data size parsing 23/22523/2
MathiasRaoul [Fri, 4 Oct 2019 09:53:45 +0000 (09:53 +0000)]
vppinfra: create unformat function for data size parsing

Type: feature

Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I8d71078a9ed42326e19453ea10008c6bb6992c52

4 years agonat: fix use-after-free 31/21931/4
Benoît Ganne [Thu, 18 Jul 2019 15:33:42 +0000 (17:33 +0200)]
nat: fix use-after-free

Type: fix

Change-Id: Iac91c086c4e975f0bada058f40b7b7d4475377f8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agotcp: unittest: do not access non-existent samples 00/22400/2
Benoît Ganne [Mon, 30 Sep 2019 10:56:28 +0000 (12:56 +0200)]
tcp: unittest: do not access non-existent samples

There is no bt->samples for this test, do not use it.

Type: fix

Change-Id: I2090290887bc5c0b5cdb0561cf2bf72a87781089
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agoacl: fix intermittent test failure 96/22496/3
Andrew Yourtchenko [Thu, 3 Oct 2019 07:55:52 +0000 (07:55 +0000)]
acl: fix intermittent test failure

ACL tests use random port number in the tests.
A port number 6081 causes the decode in scapy
to consume some of the Raw payload into GENEVE
encoding, which breaks the test.

Solution: bring up the lower range of random
port to 16384, so that it does not touch any
of the well known ports.

Type: test
Change-Id: I022660d8ec147857924b436f1871b0b5ddcf4c47
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
4 years agoebuild: Unite default build platform to vpp 93/21293/4
juraj.linkes [Wed, 14 Aug 2019 09:11:33 +0000 (11:11 +0200)]
ebuild: Unite default build platform to vpp

Top level makefile is using vpp as the default platform. The other place
where platform is specified has native as the default. Unite them to the
only currently supported platform - vpp.

Type: make

Change-Id: Idb12ccc3056dd6be640a2d6763dc30e4f789d2ac
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
4 years agomisc: add "maxframe" and "rate" to packet-generator cli. 57/22357/4
Christian E. Hopps [Fri, 27 Sep 2019 16:59:30 +0000 (12:59 -0400)]
misc: add "maxframe" and "rate" to packet-generator cli.

Allow for setting the maximum number of generated packets to be included
in the frame passed to next nodes. This is very important for testing
code which may be susceptible to multi-frame vs single-frame bugs (e.g.,
code that is doing re-ordering where packets may be buffered between
frames).

Update:
- remove redundant packet "rate" option.
- reduce n_max_frame to u32 as that's what pulled from the CLI.

Type: feature
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ie362bbb110b2cf01d9f65c559bbe9101e17b7fdc
Signed-off-by: Christian Hopps <chopps@labn.net>
4 years agoemacs: track improvements in vppapigen 48/22448/4
Dave Barach [Tue, 1 Oct 2019 16:10:57 +0000 (12:10 -0400)]
emacs: track improvements in vppapigen

Remove boilerplate which is now generated by vppapigen

Type: refactor

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I36bff1a651ac48caa969ed76d963b0a733ef5532

4 years agomemif: memif buffer leaks during disconnect. 32/22432/7
Padma Ram [Tue, 1 Oct 2019 01:05:18 +0000 (06:35 +0530)]
memif: memif buffer leaks during disconnect.

- code added to release the mbuf's to main pool during memif disconnect.

Type: fix

Change-Id: I504dacc9a40bc1702831cf3208fd532d1ae68a6f
Signed-off-by: Padma Ram <padmaram86.raja@gmail.com>
4 years agoapi: fix non-null-terminated C-string 03/22403/3
Benoît Ganne [Fri, 27 Sep 2019 16:07:39 +0000 (18:07 +0200)]
api: fix non-null-terminated C-string

Type: fix

Change-Id: I132112bf77e1fad7fc0227a96e6b0cee590295e8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agoipsec: initialize msgid and allow no dh in child sa 63/22363/2
Christian E. Hopps [Fri, 27 Sep 2019 19:05:41 +0000 (15:05 -0400)]
ipsec: initialize msgid and allow no dh in child sa

- set msgid to 0 not random.
- allow for no DH in ESP child SA

Ticket: VPP-1781
Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ibe26009d38f444eeaec5b042097f145d161c7672

4 years agoethernet: fix dmac filter coverity warning 92/22492/2
Matthew Smith [Wed, 2 Oct 2019 21:34:27 +0000 (16:34 -0500)]
ethernet: fix dmac filter coverity warning

Static analysis says that a possibly null pointer is dereferenced.
Check it first.

Type: fix

Change-Id: I3d1a1548162d1dfc26f19fbcf159f0f1f91eb7c4
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
4 years agopppoe: remove api boilerplate 82/22482/2
Ole Troan [Wed, 2 Oct 2019 14:53:58 +0000 (16:53 +0200)]
pppoe: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I42705c508e88dae40a4c19ab20a1340623a57e16

4 years agooddbuf: remove api boilerplate 85/22485/2
Ole Troan [Wed, 2 Oct 2019 15:00:30 +0000 (17:00 +0200)]
oddbuf: remove api boilerplate

Type: refactor
Change-Id: Ic4922da46bf941249dd74b1a8bc6a98c62c099b7
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agonsim: remove api boilerplate 86/22486/2
Ole Troan [Wed, 2 Oct 2019 15:09:01 +0000 (17:09 +0200)]
nsim: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Idf2206ae3e3d8dd05e98528ee1f02c4c7d567f37

4 years agodpdk: remove api boilerplate 88/22488/2
Ole Troan [Wed, 2 Oct 2019 15:17:58 +0000 (17:17 +0200)]
dpdk: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I2cba1e2912902b092348dddcf9cbcba231c75995

4 years agofeature: API cleanup 39/22439/2
Jakub Grajciar [Tue, 1 Oct 2019 09:37:30 +0000 (11:37 +0200)]
feature: API cleanup

Use consistent API types.

Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Id1e7210298cb494f3cb7a47a9ecf2bc1d9c1d58e

4 years agodhcp: API cleanup 38/22438/7
Jakub Grajciar [Tue, 1 Oct 2019 09:30:56 +0000 (11:30 +0200)]
dhcp: API cleanup

Use consistent API types.

Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Ia63d920788add2584060a240321acced7a471640

4 years agomap: fix DF[Don't fragment] ip4-map-t behaviour 33/22333/8
Vladimir Ratnikov [Fri, 27 Sep 2019 07:26:49 +0000 (03:26 -0400)]
map: fix DF[Don't fragment] ip4-map-t behaviour

This patch allows ip4-map-t plugin to drop
packets if DF flag is set and packet size
is bigger than MTU

Type: fix

Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com>
Change-Id: I0c1531a1f876d9efc8e7e2bff9804f298becdb68

4 years agomap: fix indent-off 44/22444/2
Klement Sekera [Tue, 1 Oct 2019 13:08:43 +0000 (13:08 +0000)]
map: fix indent-off

Replace erroneous INDENT-OFF with INDENT-ON and reformat code which is
non-conforming wrt to code style.

Type: style

Change-Id: Ia3310371e96b248e5da143fad8fdca3b2fb6650b
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agovlib: improve summary vector-rate statistics 53/22453/4
Dave Barach [Tue, 1 Oct 2019 17:34:23 +0000 (13:34 -0400)]
vlib: improve summary vector-rate statistics

Type: refactor

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I4b77879b0a84fdec3c1518a972cf003d5135222d
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agoip: mfib CLI 'via local' fix 50/22450/2
Neale Ranns [Tue, 1 Oct 2019 16:49:53 +0000 (09:49 -0700)]
ip: mfib CLI 'via local' fix

Type: fix

Change-Id: I6fd7bb27b95a50d37424f65dc51e8b341f8b1b28
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoethernet: dmac filter checks secondary mac addrs 92/21792/10
Matthew G Smith [Wed, 4 Sep 2019 20:01:04 +0000 (15:01 -0500)]
ethernet: dmac filter checks secondary mac addrs

Maintain a list of secondary MAC addresses on ethernet_interface_t.
In ethernet-input dmac filtering, If packets do not match the
primary interface hardware address, check to see if they match the
other addresses.

Type: feature

Change-Id: Ie0edf45cae0d85c038a61086c47b3ae82d7e162d
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
4 years agoquic: Create custom event logger 15/22215/6
MathiasRaoul [Thu, 26 Sep 2019 09:17:13 +0000 (09:17 +0000)]
quic: Create custom event logger

Type: feature

Change-Id: I20acfe6a53cf9f15e3e4b8847b6f76757962f1c7
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
4 years agoquic: Add Tx, Rx and packet drop counters 14/22214/8
MathiasRaoul [Thu, 26 Sep 2019 09:13:39 +0000 (09:13 +0000)]
quic: Add Tx, Rx and packet drop counters

Type: feature

Change-Id: I25aeeed49fc569315296a73c5595c2e2e302434f
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
4 years agosession: fix use-after-free 28/21928/5
Benoît Ganne [Thu, 18 Jul 2019 16:38:42 +0000 (18:38 +0200)]
session: fix use-after-free

Make sure to reinitialize data before free-ing it.

Type: fix

Change-Id: I45727c456d0345204d4825ecdd9690c5ebeb5e94
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agosession: allow transport cleanup in any state 54/22454/3
Florin Coras [Tue, 1 Oct 2019 17:32:46 +0000 (10:32 -0700)]
session: allow transport cleanup in any state

Type: fix

Third time's a charm

Change-Id: I31555a35d2b51f49a93a2a213c28896b0cad4c09
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agoquic: add cli command for stats 13/22213/7
MathiasRaoul [Thu, 26 Sep 2019 09:07:16 +0000 (09:07 +0000)]
quic: add cli command for stats

add command to display stats from quicly (rtt, packet loss)

Type: feature

Change-Id: Iaa18bc78fbf80a9367ef150a8cf4997a456c6b39
Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
4 years agordma: fix non-NULL terminated C-string overflow 35/22435/2
Benoît Ganne [Mon, 30 Sep 2019 14:43:25 +0000 (16:43 +0200)]
rdma: fix non-NULL terminated C-string overflow

Type: fix

Change-Id: I584777825636347c116bd084e348858bcb1b7d75
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agomap: use SVR for MAP-T 29/22429/2
Klement Sekera [Mon, 23 Sep 2019 09:00:30 +0000 (09:00 +0000)]
map: use SVR for MAP-T

This change is part of an effort to unify reassembly code. By removing
shallow virtual reassembly functionality in MAP and using the common
vnet provided shallow virtual reassembly, code size and complexity
is reduced.

Type: refactor
Change-Id: Iec8edd039f7b967b53e17bb9bca228a8b452ac0c
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agobuild: build-root/Makefile rm of install tree 18/22418/4
Burt Silverman [Mon, 30 Sep 2019 13:50:42 +0000 (09:50 -0400)]
build: build-root/Makefile rm of install tree

Type: fix

The scenario is touch of a dpdk source file in places like
<TOP>/build-root/build-vpp-native/external/dpdk-19.08/.  The subsequent
build will trigger an rm -rf $(PACKAGE_INSTALL_DIR) by
build-root/Makefile at around line 709.  Because the package in
question, "external", consists of various "sub" packages, all of which
are controlled with files like .quicly.install.ok located in
build-root/build-vpp[_debug]-native/external, we end up not handling the
.*.install.ok files to reflect the removal of that PACKAGE_INSTALL_DIR.
This fix will correct that, at least for the case of touching/changing
dpdk files. A better long term solution would be to change the "sub"
packages to be full fledged build system packages, as Dave Barach points
out.

Signed-off-by: Burt Silverman <burtms@gmail.com>
Change-Id: Ia94ccaa2795cbf354b5921c3001a7141313b66be

4 years agoipsec: fix use-after-free 30/21930/4
Benoît Ganne [Mon, 9 Sep 2019 14:34:54 +0000 (16:34 +0200)]
ipsec: fix use-after-free

When deleting interface from the API, 'hi' gets removed before
'h->sw_if_index' is copied.

Type: fix

Change-Id: I8e10108e9bdf95ab2fe002790d98262d583ca58c
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agobonding: fix non-null-terminated C-string 04/22404/3
Benoît Ganne [Fri, 27 Sep 2019 16:08:22 +0000 (18:08 +0200)]
bonding: fix non-null-terminated C-string

Type: fix

Change-Id: Ibb7ba878b049b8b18e890c43fdd6324cb88d63b8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agohsa: fix vpp_echo mq locking 50/22350/3
Nathan Skrzypczak [Fri, 27 Sep 2019 15:03:15 +0000 (17:03 +0200)]
hsa: fix vpp_echo mq locking

Type: fix

Change-Id: I18d2cde0baaed4134e8378c09aaa88693fb997f8
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agodhcp: dhcp6_ia_na_client_cp API cleanup 94/22394/3
Jakub Grajciar [Mon, 30 Sep 2019 08:26:53 +0000 (10:26 +0200)]
dhcp: dhcp6_ia_na_client_cp API cleanup

Use consistent API types.

Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: Ie2d2c74ed3832d137e808e0b52348b4e660feb6f
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
4 years agoip: svr: fix feature refcounts 19/22419/2
Klement Sekera [Mon, 30 Sep 2019 14:35:36 +0000 (14:35 +0000)]
ip: svr: fix feature refcounts

Reference counts need to be per-interface as opposed to global. This
allows configuring the feature on more than one interface correctly.

Type: fix
Fixes: de34c35fc73226943538149fae9dbc5cfbdc6e75

Change-Id: I05534ac59fa86e67290737ec6c61df2c19acab48
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agovlib: fix old nodes vector overflow in refork 33/21933/4
Benoît Ganne [Fri, 30 Aug 2019 14:20:12 +0000 (16:20 +0200)]
vlib: fix old nodes vector overflow in refork

Type: fix

Change-Id: I81c4cf0ce87288bb2d3c7b9f31e9419290d588b4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agodns: fix non-NULL terminated C-string 05/22405/3
Benoît Ganne [Mon, 30 Sep 2019 08:13:27 +0000 (10:13 +0200)]
dns: fix non-NULL terminated C-string

Type: fix

Change-Id: Ib030e6ac3386528901e0805d1ffe2eec033d819f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agoapi: fix use-after-free 08/22408/3
Benoît Ganne [Wed, 11 Sep 2019 14:43:44 +0000 (16:43 +0200)]
api: fix use-after-free

Type: fix

Change-Id: I2a599c22d5770587fdd419e5d212c8527054d2e9
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agolb: remove api boilerplate 95/22395/3
Ole Troan [Mon, 30 Sep 2019 09:04:39 +0000 (11:04 +0200)]
lb: remove api boilerplate

Type: refactor
Change-Id: I5555037386d6f6593ac3328385603a382be1fc2a
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agovmxnet3: remove api boilerplate 96/22396/2
Ole Troan [Mon, 30 Sep 2019 09:19:28 +0000 (11:19 +0200)]
vmxnet3: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I009e806997461ad790f125d6359993862e1c5e5d

4 years agostn: remove api boilerplate 98/22398/2
Ole Troan [Mon, 30 Sep 2019 10:44:03 +0000 (12:44 +0200)]
stn: remove api boilerplate

Type: refactor
Change-Id: I212c87c03324137c79a674d0842ca4537b28e4b4
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agotls: remove api boilerplate 11/22411/2
Ole Troan [Mon, 30 Sep 2019 11:17:26 +0000 (13:17 +0200)]
tls: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I92c010e64aa6cc6fb2b3845b37cc24dd112fc5f9

4 years agomactime: remove api boilerplate 10/22410/2
Ole Troan [Mon, 30 Sep 2019 11:11:35 +0000 (13:11 +0200)]
mactime: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I034cc6fb2a12d1b43b3470a1ba39cc1fe020386a

4 years agostats: fix per-worker stat vector length 01/22401/3
Benoît Ganne [Mon, 30 Sep 2019 10:39:55 +0000 (12:39 +0200)]
stats: fix per-worker stat vector length

Type: fix

Change-Id: I198a2312f5fc6e922c8a6c51ba7248ce6e236f81
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agohsa: fix non-NULL terminated C-string use in echo 07/22407/3
Benoît Ganne [Mon, 30 Sep 2019 08:56:33 +0000 (10:56 +0200)]
hsa: fix non-NULL terminated C-string use in echo

Use '%v' format for non-NULL terminated vectors instead of '%s'.

Type: fix

Change-Id: Id83de52486ad8dad3cdf3f32dad63a223fc1fdf7
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agosession: Fix missing elt regrab 17/22417/2
Nathan Skrzypczak [Mon, 30 Sep 2019 12:49:13 +0000 (14:49 +0200)]
session: Fix missing elt regrab

Type: fix

Change-Id: Ie756c5477d989702e633aa0d42ca154ff32b4c9a
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agoct6: remove api boilerplate 71/22271/5
Ole Troan [Wed, 25 Sep 2019 16:42:47 +0000 (18:42 +0200)]
ct6: remove api boilerplate

Type: refactor
Change-Id: Ibf00279d8065e7ef4fc06e8b9946dcc7bfd647de
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agol2e: remove api boilerplate 43/22343/3
Ole Troan [Fri, 27 Sep 2019 12:06:56 +0000 (14:06 +0200)]
l2e: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ifca5eee01b7813ddb6a8e4510f3adb96ade55fa7

4 years agoipsec: add insecure option for format of SA 62/22362/3
Christian E. Hopps [Fri, 27 Sep 2019 18:43:22 +0000 (14:43 -0400)]
ipsec: add insecure option for format of SA

If specified, shows keys, otherwise redacts. This change sets this flag
in the existing CLI code (thus maintaining the old behavior). The use
case for not specifying the insecure flag (and thus redacting the keys
from the show output) is for log messages.

Type: feature
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I8c0ab6a9a8aba7c687a2559fa1a23fac9d0aa111

4 years agoipsec: allow null cipher with dpdk esp 64/22364/2
Christian E. Hopps [Fri, 27 Sep 2019 19:19:19 +0000 (15:19 -0400)]
ipsec: allow null cipher with dpdk esp

The NULL cipher is a (valid) non-AEAD choice for ESP encrypt path.
Allow it.

Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: I6d8b66223a0ffb0952c2dd6fa898a8a2289fef7a

4 years agoipsec: fix memleaks in ikev2 openssl code 65/22365/2
Christian E. Hopps [Fri, 27 Sep 2019 19:24:37 +0000 (15:24 -0400)]
ipsec: fix memleaks in ikev2 openssl code

- Need to always free created contexts
- Always pair init with cleanup for older openssl API.

Type: fix
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
Change-Id: Ie8840403bcac500c20085d57240401ad39d119f8

4 years agovppinfra: implement CLIB_PAUSE () for aarch64 platforms 56/22356/2
jaszha03 [Fri, 27 Sep 2019 16:48:23 +0000 (11:48 -0500)]
vppinfra: implement CLIB_PAUSE () for aarch64 platforms

Define CLIB_PAUSE () to generate the "yield" instruction. No significant
performance changes were observed for clib_spinlock_t and clib_rwlock_t.

Type: feature

Change-Id: I59eb996e61c7a16007517e57e6996567302c1657
Signed-off-by: Jason Zhang <jason.zhang2@arm.com>
Reviewed-by: Lijian Zhang <Lijian.Zhang@arm.com>
4 years agoipsec: support 4o6 and 6o4 for tunnel protect 48/22348/2
Neale Ranns [Fri, 27 Sep 2019 13:32:02 +0000 (13:32 +0000)]
ipsec: support 4o6 and 6o4 for tunnel protect

Type: feature

Change-Id: Ib2352ca4c7abf4645f21fa16aaaf27408890a2bf
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agosession: fix io_evt mq locking 51/22351/2
Nathan Skrzypczak [Fri, 27 Sep 2019 15:04:47 +0000 (17:04 +0200)]
session: fix io_evt mq locking

Type: fix

Change-Id: Iaa8045bba19cc305c84074668a20e1468d431b10
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agol3xc: remove api boilerplate 44/22344/2
Ole Troan [Fri, 27 Sep 2019 12:09:31 +0000 (14:09 +0200)]
l3xc: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Iea808fcdbf97cb78a2e2805002d3e2333279cb89

4 years agolacp: remove api boilerplate 45/22345/2
Ole Troan [Fri, 27 Sep 2019 12:14:38 +0000 (14:14 +0200)]
lacp: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I5b77da8e9c476bd784be087a53b2eafb2d1a4831

4 years agosvs: remove api boilerplate 46/22346/2
Ole Troan [Fri, 27 Sep 2019 12:21:58 +0000 (14:21 +0200)]
svs: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I08eab052b67893cc6633d235885438e69950904b

4 years agoikev2: remove api boilerplate 42/22342/3
Ole Troan [Fri, 27 Sep 2019 12:02:13 +0000 (14:02 +0200)]
ikev2: remove api boilerplate

Type: refactor
Change-Id: Ib46ed3e65e75a97995a3e251d87324fec6595024
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agosctp: remove api boilerplate 47/22347/2
Ole Troan [Fri, 27 Sep 2019 12:27:16 +0000 (14:27 +0200)]
sctp: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I6576b76ef7ba494a8b777d01d75055270d837b24

4 years agotests: add quic plugin qclose/sclose tests 85/22185/5
Dave Wallace [Sat, 21 Sep 2019 04:19:26 +0000 (04:19 +0000)]
tests: add quic plugin qclose/sclose tests

Type: test

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I3122b038f7d77c7e5e8ee7c24046da6c94ca2d2c

4 years agobuiltinurl: remove api boilerplate 69/22269/4
Ole Troan [Wed, 25 Sep 2019 16:20:20 +0000 (18:20 +0200)]
builtinurl: remove api boilerplate

Type: refactor
Change-Id: Iaf728642e489acfd63e1da88aa8daa44ceca21e9
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agocdp: remove api boilerplate 70/22270/5
Ole Troan [Wed, 25 Sep 2019 16:24:42 +0000 (18:24 +0200)]
cdp: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I3b4bbbf2574faf8d06546eb72f127fa47479e988
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agoavf: remote api boilerplate 67/22267/3
Ole Troan [Wed, 25 Sep 2019 15:33:46 +0000 (17:33 +0200)]
avf: remote api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Iafa1c0d0c1195f88b1a55f0341459c3278c3b2e6
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agoigmp: remove api boilerplate 36/22336/2
Ole Troan [Fri, 27 Sep 2019 07:59:53 +0000 (09:59 +0200)]
igmp: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I578b09ec223c8e4a04b7590b55354b1104ac6628

4 years agohttp_static: remove api boilerplate 35/22335/2
Ole Troan [Fri, 27 Sep 2019 07:46:08 +0000 (09:46 +0200)]
http_static: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ie1f0cccf0c9dc4c0d8ae1e1b5d8e6a75c325d1ce

4 years agogtpu: remove api boilerplate 34/22334/3
Ole Troan [Fri, 27 Sep 2019 07:35:04 +0000 (09:35 +0200)]
gtpu: remove api boilerplate

Type: refactor
Change-Id: I08d200fbec805af3109e738eee32c3ecfd61c7cc
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agogbp: remove api boilerplate 31/22331/2
Ole Troan [Fri, 27 Sep 2019 07:20:37 +0000 (09:20 +0200)]
gbp: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I2995413619f5fbe77bbe2df9f5d37db8cc596b73

4 years agodns: remove api boilerplate 30/22330/2
Ole Troan [Fri, 27 Sep 2019 07:07:51 +0000 (09:07 +0200)]
dns: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ifffa86b45dd1f213ba974a296ab64202b672a6df

4 years agoabf: remove api boilerplate 66/22266/4
Ole Troan [Wed, 25 Sep 2019 15:33:27 +0000 (17:33 +0200)]
abf: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I80a371baf7715de1acee90952a0dd270172d8538
Signed-off-by: Ole Troan <ot@cisco.com>
4 years agoacl: remove api boilerplate 65/22265/2
Ole Troan [Wed, 25 Sep 2019 15:32:25 +0000 (17:32 +0200)]
acl: remove api boilerplate

Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I5701b7d6d5e1423fb0004f7e48815cd672f81e4d

4 years agomisc: add vnet classify filter set support 64/22264/4
Dave Barach [Wed, 25 Sep 2019 15:27:46 +0000 (11:27 -0400)]
misc: add vnet classify filter set support

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I79b216d2499df143f53977e5b70382f6f887e0bc

4 years agoip: fix use-after-free in reassembly 29/21929/5
Benoît Ganne [Fri, 19 Jul 2019 11:42:12 +0000 (13:42 +0200)]
ip: fix use-after-free in reassembly

 - ip{4,6}_reass_finalize() frees the reassembly context: do not access
it after the call.
 - traces access reassembly context: free it after and not before
tracing.

Type: fix

Change-Id: Ia3aaea9c7b74932e249e013be04b9bd7298fd187
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agomap: use SVR for MAP-E 75/22175/10
Klement Sekera [Wed, 21 Aug 2019 10:53:14 +0000 (10:53 +0000)]
map: use SVR for MAP-E

This change is part of an effort to unify reassembly code. By removing
shallow virtual reassembly functionality in MAP and using the common
vnet provided shallow virtual reassembly, code size and complexity is
reduced.

Type: refactor
Change-Id: I431f47d4db97154fecaeaecd6719cfc3b83cfc4a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agoip: add shallow virtual reassembly functionality 82/20382/25
Klement Sekera [Tue, 25 Jun 2019 11:19:22 +0000 (11:19 +0000)]
ip: add shallow virtual reassembly functionality

Type: feature

Change-Id: Ibc8334e26c7e6f6120696c3e313b6e11d73dab99
Signed-off-by: Klement Sekera <ksekera@cisco.com>
4 years agolb: add APIs for set interface nat4 and nat6 03/21903/3
Hongjun Ni [Mon, 9 Sep 2019 16:49:24 +0000 (00:49 +0800)]
lb: add APIs for set interface nat4 and nat6

Type: feature

Change-Id: I5656cd798b108dd780381b87f574554442ed7b23
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
4 years agoclassify: use vector code even when data is not aligned 47/22247/2
Damjan Marion [Tue, 24 Sep 2019 22:25:36 +0000 (00:25 +0200)]
classify: use vector code even when data is not aligned

Type: feature

Change-Id: I8f5f4841965beb13ebc8c2a37ce0dc331c920109
Signed-off-by: Damjan Marion <damarion@cisco.com>