vpp.git
4 years agoip ipsec: Remove IPSec SPI-0 punt reason 74/20574/3
Neale Ranns [Wed, 10 Jul 2019 07:10:25 +0000 (07:10 +0000)]
ip ipsec: Remove IPSec SPI-0 punt reason

Type: fix

There's no call for an SPI-0 punt reason with UDP encap, since
it's only with UDP encap that the ambiguity between IKE or IPSEC
occurs (and SPI=0 determines IKE).

Enhance the punt API to dum ponly the reason requested, so a client
can use this as a get-ID API

Change-Id: I5c6d72b03885e88c489117677e72f1ef5da90dfc
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agodocs: how to enable coredump with systemd 99/20499/3
Benoît Ganne [Thu, 4 Jul 2019 09:25:59 +0000 (11:25 +0200)]
docs: how to enable coredump with systemd

Type: docs

Change-Id: I1f657389fec716cc6cdc942803e65f861ffea5f5
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agosyslog: fix syslog structured data formatting 90/20590/3
Benoît Ganne [Wed, 10 Jul 2019 15:01:09 +0000 (17:01 +0200)]
syslog: fix syslog structured data formatting

syslog structured data are stored as vectors not null-terminated
C-strings. Use '%v' instead of '%s'.

Type: fix
Fixes: b4515b4be4

Change-Id: Iba224f271c832daca90d4bbccfef45d0f563fe60
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agovppinfra: bihash add-but-do-not-overwrite semantics 48/20548/2
Dave Barach [Mon, 8 Jul 2019 18:47:44 +0000 (14:47 -0400)]
vppinfra: bihash add-but-do-not-overwrite semantics

If is_add=2, fail w/ return value -2 if the key exists instead of
overwriting the (key,value) pair.

Type: feature

Change-Id: I00a3c194a381c68090369c31d6c6f9870cfe0a62
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agoip: Punt node does not free iovecs 76/20576/2
Neale Ranns [Wed, 10 Jul 2019 08:47:15 +0000 (01:47 -0700)]
ip: Punt node does not free iovecs

Type: fix
Fixes: f7a55ad74c

Change-Id: Ic3474e746887f880a8f6246bebc399715bac8e80
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoipsec: Revert "IPSEC: remove byte swap operations in DP during SPD classify" 02/20602/3
Neale Ranns [Wed, 10 Jul 2019 13:46:21 +0000 (13:46 +0000)]
ipsec: Revert "IPSEC: remove byte swap operations in DP during SPD classify"

Type: fix
Fixes: 231c4696872cb344f28648949603840136c0795d

This reverts commit 231c4696872cb344f28648949603840136c0795d.

Change-Id: I136344555983dd10a31dbc000ee40e2de2c91291
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoipsec: Revert "IPSEC: remove double byte swap of IP addresses" 03/20603/2
Neale Ranns [Thu, 11 Jul 2019 09:31:19 +0000 (09:31 +0000)]
ipsec: Revert "IPSEC: remove double byte swap of IP addresses"

This reverts commit 9b208ced585d3b4620d6fde586cd047fe2027ecf.

Type: fix
Fixes: 9b208ced585d3b4620d6fde586cd047fe2027ecf

Change-Id: I94a17039b4727bff0877423da5ba6cfceb188b17
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agogbp: An Endpoint can change sclass 75/20575/2
Neale Ranns [Wed, 10 Jul 2019 08:14:58 +0000 (01:14 -0700)]
gbp: An Endpoint can change sclass

Type: feature

Change-Id: I9d3a73a6a6048fa0189f7fa6306a638279977fcd
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoavf: add more link speeds 50/20150/3
Damjan Marion [Fri, 14 Jun 2019 19:14:36 +0000 (21:14 +0200)]
avf: add more link speeds

Type: feature
Change-Id: I6f94f7ef5ffbd938457c9356a5a11f3d1afeb0a2
Signed-off-by: Damjan Marion <damarion@cisco.com>
4 years agoquic: Fix quic_echo event flags 09/20609/1
Nathan Skrzypczak [Thu, 11 Jul 2019 13:58:34 +0000 (15:58 +0200)]
quic: Fix quic_echo event flags

Type: fix

Change-Id: Ibaa272b57f36b092897a99a65ca28f9d4caf29a7
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agovom: Fix reference to flags in GBP bridge-domain 05/20605/2
Neale Ranns [Thu, 11 Jul 2019 10:44:16 +0000 (03:44 -0700)]
vom: Fix reference to flags in GBP bridge-domain

Type: fix
Fixes: 5e82b050

Change-Id: I8f709c5303861ea9984144ce5543c86c934869bb
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agotcp: improve rate estimate 68/20368/6
Florin Coras [Wed, 26 Jun 2019 16:12:34 +0000 (09:12 -0700)]
tcp: improve rate estimate

Type:feature

- sample rtt estimation
- report acked+sacked
- report last lost bytes
- use snd_una == snd_nxt to detect 0 bytes in flight

Change-Id: I83181261fdb375c7e33d24b7a82343561e6a905f
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agoip: fix show ip neigh vector read overflow 84/20584/3
Benoît Ganne [Wed, 10 Jul 2019 13:40:33 +0000 (15:40 +0200)]
ip: fix show ip neigh vector read overflow

Both format_ethernet_arp_ip4_entry() and format_ip6_neighbor_ip6_entry()
used %s to format flags which is a vector and not a null-terminated
C-string.
Introduce format_ip_neighbor_flags() instead.

Type: fix
Fixes: 102ec52bc4

Change-Id: I0c9349fefbeb76471933de358acceb50512a21aa
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agovlib: Replace timer in CLI with an event process 73/20573/3
Chris Luke [Wed, 10 Jul 2019 03:33:30 +0000 (23:33 -0400)]
vlib: Replace timer in CLI with an event process

The CLI code, when it accepts a socket connection, ran a timer
for each session that would ensure the CLI session was started
should the TELNET negotiation stage fail to complete.

It has since transpired that this is unsafe; the timer is capable
of firing in critical sections, during a spinlock, and since we
peform non-trivial things in the handler it can cause a deadlock.

This was reported recently in VPP-1711 but a search of history
suggests this may also be (one of) the causes in VPP-1413.

This change replaces that method with an event-driven process.
The process is created when the first socket connection is
accepted.

When new connections are created the process is sent an event
to register the new session in a list. That event process has
a loop that evaluates the list of oustanding sessions and if
a deadline expires, their session is started if it has not been
already, and then removed from the list.

If we have pending sessions then the loop waits on a timer or an
event; if there are no sessions it waits on events only.

Type: fix
Ticket: VPP-1711
Change-Id: I8c6093b7d0fc1bea0eb790032ed282a0ca169194
Signed-off-by: Chris Luke <chrisy@flirble.org>
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agoemacs: update the vat plugin generator 68/20568/2
Dave Barach [Tue, 9 Jul 2019 18:22:21 +0000 (14:22 -0400)]
emacs: update the vat plugin generator

Use the VAT_PLUGIN_REGISTER macro.

Type: refactor

Change-Id: I5ab9f311028c07a37a40cc1328d9724f852783ee
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agomisc: fix buffer issue in geneve_input 28/20528/5
Zhiyong Yang [Sat, 6 Jul 2019 09:14:54 +0000 (05:14 -0400)]
misc: fix buffer issue in geneve_input

Type: fix

Change-Id: I32000cd42b0ab2ce54a159c6727823fd0d113fe4
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
4 years agoquic: Improve timing interface for quic_echo 67/20567/3
Nathan Skrzypczak [Tue, 9 Jul 2019 16:04:00 +0000 (18:04 +0200)]
quic: Improve timing interface for quic_echo

Type: feature

Change-Id: I7a99b72276878625017c73dff8402f3e7fa7c33f
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agofib: fib_entry_flags_update takes a vector of paths 66/20566/2
Neale Ranns [Tue, 9 Jul 2019 14:29:35 +0000 (14:29 +0000)]
fib: fib_entry_flags_update takes a vector of paths

Type: fix
Fixes: 097fa66b

Change-Id: I690e31433b64f11399c08b4a0318762916c2c2f0
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agotests: Re-enable ipsec tests on ARM 32/20532/3
juraj.linkes [Mon, 8 Jul 2019 08:22:55 +0000 (10:22 +0200)]
tests: Re-enable ipsec tests on ARM

Type: fix

* test_ipsec_tun_if_esp.TestIpsecGreTebIfEsp
* test_ipsec_esp.TestIpsecEspAll
  add keepalive messages before each algo/engine to prevent test timeout

Change-Id: I726f3f9613bab02a65e65542cee494c68176ded7
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
4 years agoacl: perform the ACL-as-a-service user registrations in global heap 95/20295/2
Andrew Yourtchenko [Mon, 24 Jun 2019 15:13:06 +0000 (15:13 +0000)]
acl: perform the ACL-as-a-service user registrations in global heap

Some users tend to call registration routine long before they need
that service - which triggers an immediate initialization of
the ACL heap, which is rather big. This commit defers this process
by keeping the registrations in the global heap.

Change-Id: I5825871bd836851942b55184b6ee2657c7a9cc33
Type: fix
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
4 years agosession: notify app of session and transport cleanup 49/20549/4
Florin Coras [Mon, 8 Jul 2019 18:47:18 +0000 (11:47 -0700)]
session: notify app of session and transport cleanup

Type:feature

Change-Id: Ic9515c0b11ca6f75503f47ec6b2c58d240afb144
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agoquic: echo thread can handle multiple sessions 45/20545/4
Nathan Skrzypczak [Mon, 8 Jul 2019 16:18:27 +0000 (18:18 +0200)]
quic: echo thread can handle multiple sessions

Type: feature

Change-Id: Ibb60d5b46aafe109a81a8604712a917f6e246eaf
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agoudp: UDPC handle open fail 02/20502/4
Nathan Skrzypczak [Thu, 4 Jul 2019 12:20:17 +0000 (14:20 +0200)]
udp: UDPC handle open fail

Type: fix

Change-Id: Ib8fb4957f4da9e464e2575c45c8ff3828db89872
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agotests: remove unused class attribute in VppTestCase 61/20561/2
Paul Vinciguerra [Tue, 9 Jul 2019 13:42:18 +0000 (09:42 -0400)]
tests: remove unused class attribute in VppTestCase

Identified in post-merge review.

Type: test

Change-Id: I46e19285479437561a43975ba9b5cb68f478736c
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agogbp: Ownership of dynamically created vxlan-gbp tunnels managed via gbp_itf 43/20543/7
Neale Ranns [Fri, 5 Jul 2019 07:53:45 +0000 (00:53 -0700)]
gbp: Ownership of dynamically created vxlan-gbp tunnels managed via gbp_itf

Type: fix

This solves the ownership of vxlan-gbp tunnels. When the last reference of these goes away they need to be deleted. Currently there are two owners; gbp_itf via gef_itf and the lock held by the gbp_endpoint_location_t. The problem is that the
loc removes its reference whilst the fwd still holds the gbp_itf, and things go wrong.
This change moves the lifecycle management of the vxlan-gbp tunnel to the gbp_itf. When the last lock of the gbp_itf goes, so does the tunnel. now both the EP's loc and fwd can hold a lock on the gbp_itf and it's only removed when required.
The other change is the management of the 'user' of the gbp_itf. Since each user can enable and disable different features, it's the job of the gbp_itf to apply the combined set. determining a unique 'uesr' from the caller was near impossible, so I moved that to the gbp_itf, and return the allocated user, hence the 'handle' that encodes both user and interface.

The hash table maps from sw_if_index to pool index.

Change-Id: I4c7bf4c0e5dcf33d1c545f262365e69151febcf4
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agotcp: remove warning for multi-seg scnario. 53/20553/5
Simon Zhang [Tue, 9 Jul 2019 08:19:26 +0000 (16:19 +0800)]
tcp: remove warning for multi-seg scnario.

Type: fix

Change-Id: I64e2082bd8ac5b0be21e10407dc29ba4c3f4cab3
Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com>
4 years agovat: unload unused vat plugins 64/20564/2
Dave Barach [Tue, 9 Jul 2019 14:04:18 +0000 (10:04 -0400)]
vat: unload unused vat plugins

If the corresponding vpp plugin is absent, return a non-zero
clib_error_t * from vat_plugin_register ("xxx plugin not loaded"). The
vat plugin calls dlclose on the vat plugin, and it disappears.

Depending on the plugin configuration, this can reduce the vpp virtual
size by several gigabytes.

Added a VAT_PLUGIN(<plugin-name>) macro to vat_helper_macros, clean up
boilerplate vat_plugin_register() implementations. Fixed a number of
non-standard vat_plugin_register methods.

Type: refactor

Change-Id: Iac908e5af7d5497c78d6aa9c3c51cdae08374045
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agofib: fix urpf_itfs vector overflow 58/20558/2
Benoît Ganne [Tue, 9 Jul 2019 11:50:35 +0000 (13:50 +0200)]
fib: fix urpf_itfs vector overflow

When removing duplicates in urpf_itfs vector we search for the 1st next
different entry in the vector, but the loop test is in the wrong order:
(urpf->furpf_itfs[i] == urpf->furpf_itfs[j]
  && j < vec_len(urpf->furpf_itfs))
We must check for overflow before checking equality.

Type: fix
Fixes: 3ee44040c66cbe47ff292ac7fb0badccbe2afe6d

Change-Id: I63729aff12057d5abce6c24ec24339cd9cd79494
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agomisc: extras update list_api_changes.py to PY3 68/20468/2
Paul Vinciguerra [Tue, 2 Jul 2019 21:37:46 +0000 (17:37 -0400)]
misc: extras update list_api_changes.py to PY3

Type: refactor

Change-Id: I099d78393675b7aac37e89df98527c361054077b
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agotcp: track last lost bytes in sack sb 27/20527/5
Florin Coras [Sat, 6 Jul 2019 01:31:54 +0000 (18:31 -0700)]
tcp: track last lost bytes in sack sb

Type:feature

Change-Id: I687809ebcc759cec8cb1d5c3b2b7e6bc995a7985
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agoquic: add back missing test timeout 59/20559/2
Nathan Skrzypczak [Tue, 9 Jul 2019 12:36:31 +0000 (14:36 +0200)]
quic: add back missing test timeout

Type: fix

Change-Id: Ic153b2bc754ee69949f6e5fd412c474f9ed722f0
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agoquic: fix passive disconnect handling & refactor 25/20525/4
Nathan Skrzypczak [Thu, 4 Jul 2019 12:32:40 +0000 (14:32 +0200)]
quic: fix passive disconnect handling & refactor

Type: refactor

Change-Id: Ie54a77252e9f58a90f9e1f9595b9ede354952f70
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agotests: treat all truthy env vars the same way 78/20478/7
Paul Vinciguerra [Wed, 3 Jul 2019 12:38:38 +0000 (08:38 -0400)]
tests: treat all truthy env vars the same way

Introduce a new class, that returns the truthiness of a env var.
Since an environment variable is just a string, it would normally
be true if not unset. The new class returns true when the env var is
set to a string that would be considered true.

Type: test
Depends-on: https://gerrit.fd.io/r/20484

Change-Id: I90ef010156f6fec246bde5c0e208ced1869b180f
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agopapi: update VPPEnumType for python3 51/20551/2
Paul Vinciguerra [Mon, 8 Jul 2019 19:41:07 +0000 (15:41 -0400)]
papi: update VPPEnumType for python3

Python3 uses __bool__ instead of __nonzero__

Type: fix
Depends-on: https://gerrit.fd.io/r/#/c/20484/

Change-Id: I7dd13d0508ab18d6c50c235f4186006799e92b45
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agovppinfra: allocate bihash virtual space on demand 46/20546/4
Dave Barach [Mon, 8 Jul 2019 16:25:38 +0000 (12:25 -0400)]
vppinfra: allocate bihash virtual space on demand

Reduces the vpp image virtual size by multiple gigabytes

Add a "show bihash" command which displays configured and current
virtual space in use by bihash tables.

Modify the .py test framework to call "show bihash" on test tear-down

Type: refactor

Change-Id: Ifc1b7e2c43d29bbef645f6802fa29ff8ef09940c
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agovcl: add worker unregister api 50/20550/4
Florin Coras [Mon, 8 Jul 2019 19:34:45 +0000 (12:34 -0700)]
vcl: add worker unregister api

Type:feature

Change-Id: Ie73644aed94e58d5dce822de5000183e414401df
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agovcl: cleanup listener accept fifo 52/20552/3
Florin Coras [Mon, 8 Jul 2019 20:00:00 +0000 (13:00 -0700)]
vcl: cleanup listener accept fifo

Type: fix

Change-Id: Ic470d429f4bf1924185f720d66efe06f4727bcbd
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agomap gbp papi: match endianess of f64 81/19581/17
Paul Vinciguerra [Wed, 15 May 2019 01:01:28 +0000 (21:01 -0400)]
map gbp papi: match endianess of f64

clib_net_to_host_f64, clib_host_to_net_f64 are now implemented as '=',
https://gerrit.fd.io/r/#/c/20406/  set papi to match.
- all f64 api references are now wrapped with
  clib_net_to_host_f64 or clib_host_to_net_f64.

IEEE f64 endianess is not defined.  If clib_net_to_host_f64 and
clib_host_to_net_f64 are later defined in VPP as big-endian, it is
a single character change in the papi vpp_serializer.

Note: This breaks the api in a manner that would not be detected by
the flag day initiative.  The scope is small.  This only impacts map.api,
which applied the u64 transformation, while the gbp api uses '='.

The implementation of "=" raises issues for the papi socket implementation
if used between systems of differing endianess.  See Vratko's comments.

- Added get_f64_endian_value() to api to allow client to verify endianess of f64's.

Type: fix
Depends-on: https://gerrit.fd.io/r/#/c/20484/

Change-Id: I00fc64a6557ba0190398df211aa0ea5c7eb101df
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agoip: retain local interface address adjacency 41/20541/3
Matthew Smith [Sun, 7 Jul 2019 00:27:29 +0000 (19:27 -0500)]
ip: retain local interface address adjacency

Type: feature

ip4_local_check_src() was overwriting vnet buffer opaque data
on the adjacency for packets with "local" (dpo-receive) destination
addresses.

Retain the dpo receive index in vnet_buffer()->adj_index[VLIB_TX].
This can allow a graph node to distinguish the interface where the
destination address is configured from the interface where the
packet was received. This can be useful in correctly handling
packets that have been sent to an address configured on a loopback
interface.

Change-Id: I52a942e85b5302b338a2d0404a37c5ea1a99e89f
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
4 years agosession: add flag to disable session lookup 03/20503/5
Nathan Skrzypczak [Thu, 4 Jul 2019 12:26:21 +0000 (14:26 +0200)]
session: add flag to disable session lookup

Type: feature

Change-Id: I1369859be0a722ea37e5d3ecb35dee5684fc69f8
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agogbp: More unit tests 59/20459/5
Neale Ranns [Fri, 14 Jun 2019 07:49:50 +0000 (07:49 +0000)]
gbp: More unit tests

Type: test

Change-Id: I0a58cc19bdfb73eabadbf6eb49b57e8db96959b5
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agosession: target app.fib_index in unbind_uri 24/20524/3
Nathan Skrzypczak [Fri, 5 Jul 2019 09:58:22 +0000 (11:58 +0200)]
session: target app.fib_index in unbind_uri

Type: fix

Change-Id: Iafcf85315c73bcd73af20bd84b1ccba030e2065b
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agoapi: Implement log_dump/log_details 77/20377/13
Paul Vinciguerra [Wed, 26 Jun 2019 02:30:19 +0000 (22:30 -0400)]
api: Implement log_dump/log_details

- Replaces the need to screen scrape "show log".
- Adds an api to return the system time.  When running over a socket, the
  api client may have different time than the vpp host.

expected use:
  vpp_time_before_command = self.vapi.show_vpe_system_time_ticks().vpe_system_time_ticks
  <run some commands>
  log_output = self.vapi.log_dump(start_timestamp=vpp_time_before_command)

Depends-on: https://gerrit.fd.io/r/20484
Depends-on: https://gerrit.fd.io/r/#/c/19581/

==============================================================================
TestVpeApi
==============================================================================
log_details(_0=838, context=3, timestamp_ticks=2.4954863503546518e+48, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'vlib_physmem_shared_map_create: clib_mem_create_hugetlb_fd: open: No such file or directory\n\n')
log_details(_0=838, context=3, timestamp_ticks=1.6101902879480125e+159, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'falling back to non-hugepage backed buffer pool')
test_log_dump_default (test_vpe_api.TestVpeApi)                          OK
log_details(_0=838, context=13, timestamp_ticks=2.4954863503546518e+48, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'vlib_physmem_shared_map_create: clib_mem_create_hugetlb_fd: open: No such file or directory\n\n')
log_details(_0=838, context=13, timestamp_ticks=1.6101902879480125e+159, level=<vl_api_log_level_t.VPE_API_LOG_LEVEL_WARNING: 4>, timestamp=u'2019/07/04 20:35:41:281', msg_class=u'buffer', message=u'falling back to non-hugepage backed buffer pool')
test_log_dump_timestamp_0 (test_vpe_api.TestVpeApi)                      OK
test_log_dump_timestamp_future (test_vpe_api.TestVpeApi)                 SKIP
test_show_vpe_system_time_ticks (test_vpe_api.TestVpeApi)                SKIP

==============================================================================
TEST RESULTS:
     Scheduled tests: 4
      Executed tests: 4
        Passed tests: 2
       Skipped tests: 2
==============================================================================

Test run was successful

Type: feature

Change-Id: I893fc0a65f39749d2091093c2c604659aadd8447
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agogbp: refactor policy nodes 21/20521/4
Benoît Ganne [Wed, 3 Jul 2019 15:34:21 +0000 (17:34 +0200)]
gbp: refactor policy nodes

Refactor both policy and policy-dpo nodes so they share the same code
for contract & acl lookup and for tracing.
This should help to implement new policy schemes.

Type: refactor

Change-Id: If5704bda708838eb01516dd39473d9bf248cfdf6
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agomisc: allow second ':' in commit message 10/20410/3
Damjan Marion [Sat, 29 Jun 2019 09:27:40 +0000 (11:27 +0200)]
misc: allow second ':' in commit message

Type: fix
Fixes: 26ce6ca
Change-Id: I3ffa1e60966ba3e20670a7b95bba53e86e9861e0
Signed-off-by: Damjan Marion <damarion@cisco.com>
4 years agovxlan-gbp: Decap ignores reserved bits 06/20506/4
Neale Ranns [Thu, 4 Jul 2019 14:12:50 +0000 (14:12 +0000)]
vxlan-gbp: Decap ignores reserved bits

Type: fix

from the draft:
3.  Backward Compatibility

   VXLAN [RFC7348] requires reserved fields to be set to zero on
   transmit and ignored on receive.

Change-Id: I98544907894f1a6eba9595a37c3c88322905630e
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoethernet: ARP disabled node 65/20365/2
Neale Ranns [Wed, 26 Jun 2019 15:22:01 +0000 (08:22 -0700)]
ethernet: ARP disabled node

Type: feature

improve the tracing from:

00:00:01:259665: pg-input
  stream pcap3, 42 bytes, 3 sw_if_index
  current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259690: ethernet-input
  frame: flags 0x1, hw-if-index 3, sw-if-index 3
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:259702: arp-input
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259710: error-drop
  rx:pg2
00:00:01:259717: drop
  null-node: blackholed packets

to

00:00:01:283323: pg-input
  stream pcap3, 42 bytes, 3 sw_if_index
  current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283348: ethernet-input
  frame: flags 0x1, hw-if-index 3, sw-if-index 3
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:283360: arp-input
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283369: arp-disabled
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283374: error-drop
  rx:pg2
00:00:01:283380: drop
  arp-disabled: ARP Disabled on this interface

Change-Id: I49b915b84cf56d6c138dedd8a596c045c150c4fb
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agosctp: move to plugins, disabled by default 74/20374/15
Florin Coras [Wed, 26 Jun 2019 23:27:13 +0000 (16:27 -0700)]
sctp: move to plugins, disabled by default

Removed sctp buffer metadata from vnet/buffer.h, added it to the
plugin. Add registration APIs for plugin-based vlib_buffer_opaque /
opaque2 decoders, used by "pcap dispatch trace ..." for display in the
wireshark dissector.

Type:refactor

Not actively maintained.

Change-Id: Ie4cb6ba66f68b3b3a7d7d2c63c917fdccf994371
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agotcp: timestamp adjustment 50/20450/4
Vladimir Kropylev [Tue, 2 Jul 2019 08:25:26 +0000 (11:25 +0300)]
tcp: timestamp adjustment

Type: feature

Change-Id: Icb3c574100cde95ab5be4923c8739889cf7e48c6
Signed-off-by: Vladimir Kropylev <vladimir.kropylev@enea.com>
4 years agogbp: use bd index at ext-itf creation instead of bd id 23/20523/4
Benoît Ganne [Fri, 5 Jul 2019 09:29:39 +0000 (11:29 +0200)]
gbp: use bd index at ext-itf creation instead of bd id

Type: fix
Fixes: cfc7a107e6cb8be6e7c53a08e23a146c431c8e90

Change-Id: I341cbc94271ab89c3c643756a9c04b790cef8591
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agotcp: add cc algo start tx event 13/20513/4
Florin Coras [Fri, 5 Jul 2019 00:05:59 +0000 (17:05 -0700)]
tcp: add cc algo start tx event

Type: feature

Notify cc algos that new data is sent on a connection that was
apparently idle.

Change-Id: I892e5e9bb5b88d791265ffbbefce6f9694d01970
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agotcp: add cc algo undo recovery notification 87/20487/5
Florin Coras [Thu, 4 Jul 2019 02:51:02 +0000 (19:51 -0700)]
tcp: add cc algo undo recovery notification

Type:feature

Change-Id: Iedefe87555f0a0033abed8569bc2995c8f523d7e
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agotcp: add loss signal to cc algo 86/20486/7
Florin Coras [Thu, 4 Jul 2019 00:47:22 +0000 (17:47 -0700)]
tcp: add loss signal to cc algo

Type:feature

Change-Id: Ibe1a4c555b55fb929d55b02599aaf099ed522cdf
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agogbp: add unit-tests for anonymous l3out 40/20440/6
Benoît Ganne [Mon, 1 Jul 2019 15:10:41 +0000 (17:10 +0200)]
gbp: add unit-tests for anonymous l3out

Type: test

Change-Id: Ib32c87b7f07c0552a6801a895332a0156c3c37f0
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agogbp: update gbp-ext-itf API 08/20508/2
Benoît Ganne [Thu, 4 Jul 2019 14:43:26 +0000 (16:43 +0200)]
gbp: update gbp-ext-itf API

Change gbp-ext-itf API to create anonymous ext-itf through the same API
as non-anonymous instead of a new API

Type: refactor

Change-Id: I381ff2a5bcd55276793df78ca891334c28946cd0
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agovxlan-gpe: simplify counter code 88/20488/1
Zhiyong Yang [Thu, 4 Jul 2019 02:56:24 +0000 (22:56 -0400)]
vxlan-gpe: simplify counter code

Type: style

Change-Id: Ia50867a853388d9f69571815ddcdaadfc47206bc
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
4 years agohsa: clean up quic_echo 47/20447/9
Dave Wallace [Tue, 2 Jul 2019 06:01:40 +0000 (06:01 +0000)]
hsa: clean up quic_echo

- Fix typo
- Use same prefix on all error messages
- Fix time arg parsing

Type: fix

Change-Id: I27334ada47d8512d2b43ce770a55f87081af2a1e
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
4 years agovcl: disable ldp bidirectional multiple socket tests 70/20470/3
Florin Coras [Wed, 3 Jul 2019 02:33:15 +0000 (19:33 -0700)]
vcl: disable ldp bidirectional multiple socket tests

Type: fix

Change-Id: I83778d897b6aa37a37ffdfa1d0932bb5e95225e2
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agodoxygen: improve .md file discovery 79/20479/2
Dave Barach [Wed, 3 Jul 2019 14:04:44 +0000 (10:04 -0400)]
doxygen: improve .md file discovery

Add directories under .../src which contain .md files to
DOXY_SRC_DIRECTORIES.

Type: fix

Change-Id: If7ce833b6cb9cd5ec30a8df8e263087e276cfe97
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agomisc: fix coverity warnings 85/20485/2
Dave Barach [Wed, 3 Jul 2019 19:21:50 +0000 (15:21 -0400)]
misc: fix coverity warnings

Type: fix
Ticket: VPP-1649

Change-Id: I93a393eca80065c379035478500e75e855f39b12
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agoapi: remove garbage from sockclnt_create reply 01/20401/11
Vratko Polak [Tue, 2 Jul 2019 09:07:24 +0000 (11:07 +0200)]
api: remove garbage from sockclnt_create reply

The fix uses memset to zero after alloc,
as sizing of source string is not obvious.

Function vl_msg_api_alloc_zero is added (and used),
so similar bugs can be fixed easily.

Type: fix
Ticket: VPP-1716

Change-Id: I3b20040d0de4222686c58779f2c0af78c5543504
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
4 years agoquic: fifo notifications fix 83/20483/3
Aloys Augustin [Wed, 3 Jul 2019 14:59:43 +0000 (16:59 +0200)]
quic: fifo notifications fix

Add SESSION_IO_EVT_RX handling in session_send_evt_to_thread to allow
internal apps to send rx events ("tx notifications") to quic.
Add a call to quic_send_packets in quic_custom_app_rx_callback to
ensure QUIC ACKs are sent if there is no other activity on the
connection.

Type: fix

Change-Id: I885e01e6475e5b0274f274e9dd34d4a771719e69
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
4 years agogbp: Consider data-plane learnt source better than control-plane 38/20438/3
Neale Ranns [Fri, 21 Jun 2019 09:09:25 +0000 (02:09 -0700)]
gbp: Consider data-plane learnt source better than control-plane

Type: feature

Change-Id: Ice8fc0da6450d2aa8ba63ca1277393ac3605aa2c
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agogbp: improve contract formatting 62/20462/2
Neale Ranns [Tue, 2 Jul 2019 14:35:28 +0000 (14:35 +0000)]
gbp: improve contract formatting

Type: feature

Change-Id: I04be003bd86f828ec387dd0309bebcbf0a041e3a
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agovppapigen: allow decimal number in NUM token 63/20463/2
Paul Vinciguerra [Tue, 2 Jul 2019 17:00:58 +0000 (13:00 -0400)]
vppapigen: allow decimal number in NUM token

Needed to set f64 default values.

Type: feature

Change-Id: Ic58ebc0d9d890bf0e7821894285e61a5bee13199
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agofib: allow route delete with no paths and multipath=0 to remove the 61/20461/3
Neale Ranns [Tue, 2 Jul 2019 14:33:29 +0000 (14:33 +0000)]
fib: allow route delete with no paths and multipath=0 to remove the
whole route

Type: fix
Fixes: 097fa66b

Change-Id: I017ab5797670eb278c27c6e306cd8cadaacddf9d
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agosvm: fix multi-chunk fifo alloc and add more tests 67/20467/9
Florin Coras [Tue, 2 Jul 2019 20:07:37 +0000 (13:07 -0700)]
svm: fix multi-chunk fifo alloc and add more tests

Type: fix

- make sure that chunks and the rbtree are initialized if fifo segment
allocates multiple chunks for the fifo.
- ensure head/tail chunks are updated on all enqueue/dequeue events,
including when dropping data.
- more unit tests

Also fixes dequeue drop updates of head chunk.

Change-Id: I77f3550bc4e8b4e077f80ea87fe82b83ed013aeb
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agotests: fix FORCE_FOREGROUND 74/20474/2
juraj.linkes [Wed, 3 Jul 2019 08:42:40 +0000 (10:42 +0200)]
tests: fix FORCE_FOREGROUND

Type: fix

Change-Id: I145f9984c1d944d5b7de0487e8b41ae4fdb95b6d
Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech>
4 years agovat: Fix the incrementing IPv6 address 72/20472/1
Neale Ranns [Wed, 3 Jul 2019 08:00:53 +0000 (08:00 +0000)]
vat: Fix the incrementing IPv6 address

Type: fix

Change-Id: Ie085713f45672e112993638e01cdb325f451020a
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agotests: Have worker return immediately on bad executable 13/20413/7
Paul Vinciguerra [Sun, 30 Jun 2019 19:38:55 +0000 (15:38 -0400)]
tests: Have worker return immediately on bad executable

No reason to waste CI cycles if we know the test will not run.

See:
17:55:11  ==============================================================================
17:55:11  VPP Object Model Test
17:55:11  ==============================================================================
17:55:11  Exception in thread Thread-4:
17:55:11  Traceback (most recent call last):
17:55:11    File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
17:55:11      self.run()
17:55:11    File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/framework.py", line 1475, in run
17:55:11      stdout=subprocess.PIPE, stderr=subprocess.PIPE)
17:55:11    File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/run/venv/local/lib/python2.7/site-packages/subprocess32.py", line 617, in __init__
17:55:11      restore_signals, start_new_session)
17:55:11    File "/w/workspace/vpp-beta-verify-master-ubuntu1804/test/run/venv/local/lib/python2.7/site-packages/subprocess32.py", line 1415, in _execute_child
17:55:11      raise child_exception_type(errno_num, err_msg)
17:55:11  OSError: [Errno 2] No such file or directory: '/w/workspace/vpp-beta-verify-master-ubuntu1804/test/build/vom_test/vom_test'
17:55:11
17:55:11  17:55:11,328 Timeout! Worker did not finish in 120s
17:55:11  run C++ VOM tests                                                        ERROR [ temp dir used by test case: /tmp/vpp-unittest-VOMTestCase-vpMcWF ]
17:55:11

Type: fix

Change-Id: I3d8252807e98a09a8abd70de8a22517151f9d786
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agosvm: fix shm segment delete 39/20439/3
Florin Coras [Mon, 1 Jul 2019 15:57:42 +0000 (08:57 -0700)]
svm: fix shm segment delete

Type:fix

Change-Id: Ia8f3496bf24a7dbe0a295b038aa6dfa24f034989
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agoapi: fix coverity warnings 30/20430/3
Dave Barach [Mon, 1 Jul 2019 13:42:41 +0000 (09:42 -0400)]
api: fix coverity warnings

New coverity toolset, new set of squawks to fix

Ticket: VPP-1649
Type: fix

Change-Id: I2a7e4c42b101c6c79c01b150b2523ce3d5d62354
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agogbp: add anonymous l3-out subnets 62/20362/9
Benoît Ganne [Wed, 26 Jun 2019 12:05:51 +0000 (14:05 +0200)]
gbp: add anonymous l3-out subnets

An anonymous l3-out subnet is a locally attached l3-out subnet, and
differs from regular l3-out subnets in the way adjacencies are managed.
It is required for the anonymous l3-out external interfaces to correctly
classify locally attached l3-out hosts.

Type: feature

Change-Id: Ie7bc88b1f22abc4d0b46db5f3cfbf208bc53ba5f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agogbp: add anonymous l3-out external interfaces 61/20361/6
Benoît Ganne [Wed, 26 Jun 2019 11:36:51 +0000 (13:36 +0200)]
gbp: add anonymous l3-out external interfaces

So far, GBP l3-out packets classification & policy relied on programmed
EP. All traffic to/from l3-out must go through a known EP.
This patch introduces a new feature where l3-out next-hops are only
known by their subnets (l3-out prefixes). As there are no longer known
EPs to program, an interface must be configured as external anonymous
l3-out. Packets classification & policy on this interface will rely on
the external subnets programmed in the BD VRF.
Note that contrary to all other interfaces in a GBP BD, external
anonymous l3-out interfaces have BD L2 learning turned on and rely on
ARP/ND.

Type: feature

Change-Id: Ieedb29dff4e967d08c4301e82d06bff450a63e5f
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agogbp: disable L2 BD learning per-interface 60/20360/7
Benoît Ganne [Wed, 26 Jun 2019 11:58:09 +0000 (13:58 +0200)]
gbp: disable L2 BD learning per-interface

Disable L2 BD learning for each GBP interface instead of at the bridge
level. This does not change the current behavior (learning is disabled
for all GBP interfaces) but enables turning it on selectively for future
features such as anonymous l3-out.

Type: refactor

Change-Id: Id88644277941d703600acf97d49cbc3332ae3f68
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agolibmemif: version 3.0 27/20427/4
Jakub Grajciar [Mon, 1 Jul 2019 12:24:48 +0000 (14:24 +0200)]
libmemif: version 3.0

Add support for multi-thread connection establishment.

- control_fd_update() callback now passes private context
  associated with updated file descriptor. File descriptor
  can belong to memif socket, memif connection or timerfd.
  In case of timerfd the context is NULL.

- memif_create_socket() new API. Creates memif socket
  handle to be passed to memif_create() in memif_conn_args_t.
  This API allows to pass private context whenever the file
  descriptor is updated.

- memif_delete_socket() new API. Deletes memif socket.
  Socket must not be in use by any interface.

Type: feature

Change-Id: I7ca4e4349595d4477195f1c32403d3e3a6eb5361
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
4 years agofib: Coverity fix to remove dead code 28/20428/3
Neale Ranns [Mon, 1 Jul 2019 12:43:33 +0000 (12:43 +0000)]
fib: Coverity fix to remove dead code

Type: fix

Change-Id: I678f523f058165030572d9cd395802b772db9ed7
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agolisp: init locator probed field in parser 35/20435/2
Florin Coras [Mon, 1 Jul 2019 14:56:47 +0000 (07:56 -0700)]
lisp: init locator probed field in parser

Type: fix

Reported by coverity.

Change-Id: Ic84ac8c373c4c834bfddbf3ca08e2cfa2152e2ae
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agovcl: handle fd rcv msg error 34/20434/5
Florin Coras [Mon, 1 Jul 2019 14:32:31 +0000 (07:32 -0700)]
vcl: handle fd rcv msg error

Type:fix

Also cleanup worker fds on error. Reported by coverity

Change-Id: I52cf77ca90e9ba1cc8ee9ddb3edaeabdc073beda
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agovcl: fix sock client and server tests 37/20437/3
Florin Coras [Mon, 1 Jul 2019 15:29:39 +0000 (08:29 -0700)]
vcl: fix sock client and server tests

Type:fix

Reported by coverity.

Change-Id: Ie623c5aa3ef54b649039c5ffa10476373c532825
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agolisp: fix unitialized ip prefix in cp unit test 36/20436/4
Florin Coras [Mon, 1 Jul 2019 15:15:30 +0000 (08:15 -0700)]
lisp: fix unitialized ip prefix in cp unit test

Type: fix

Found by coverity.

Change-Id: Ibfc753d2c42219d275e3722d6ce1ef0cec189adf
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agovom: Fix [m]route dump 26/20426/3
Neale Ranns [Mon, 1 Jul 2019 12:23:10 +0000 (05:23 -0700)]
vom: Fix [m]route dump

Type: fix
Fixes: 097fa66b

Change-Id: I4ada76982c680ee9b0af5828c7268b9b2098ce6b
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agoip: check all fib src for a connected dst entry 21/20321/9
Benoît Ganne [Tue, 25 Jun 2019 08:32:28 +0000 (10:32 +0200)]
ip: check all fib src for a connected dst entry

When looking for a connected fib entry matching the ARP destination,
there can be other DPO interposed prior to the connected one.

Type: fix

Change-Id: I9b4ab387fb08acf9879d5fda3791e6572a099492
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 years agobuild: vpp-ext-deps .rpm may not be installed 46/20446/1
Dave Barach [Mon, 1 Jul 2019 23:08:33 +0000 (19:08 -0400)]
build: vpp-ext-deps .rpm may not be installed

It's fine to remove the old .rpm, but don't stop the parade if there
wasn't an old .rpm to remove.

Type: fix

Change-Id: I500c740cc4ded16d3345c1e98462a1e8533f1028
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agoip: fix ip lookup for arm 41/20441/2
Florin Coras [Mon, 1 Jul 2019 16:51:54 +0000 (09:51 -0700)]
ip: fix ip lookup for arm

Type:fix
Fixes: cb54e3c

Change-Id: I3120eaabdc00a6c1248cf7eb81f2075983836dfd
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agolibmemif: icmp-responder example buffer management fix 90/20290/3
Jakub Grajciar [Mon, 24 Jun 2019 08:22:12 +0000 (10:22 +0200)]
libmemif: icmp-responder example buffer management fix

Type: fix

Change-Id: Ieeb763f282ee929a121585747119f458c00056ae
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
4 years agogbp: VRF scoped contracts 42/20242/10
Neale Ranns [Wed, 19 Jun 2019 13:25:56 +0000 (06:25 -0700)]
gbp: VRF scoped contracts

Type: feature

Change-Id: I01772cfc3a0118a5c49bf346339788824e6931b2
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agopapi: refactor set_errors_str 11/20411/2
Paul Vinciguerra [Sat, 29 Jun 2019 12:33:05 +0000 (08:33 -0400)]
papi: refactor set_errors_str

Assuming 2500 50 char lines:
  string_concat elapsed: 5.919933e-04
  string_join   elapsed: 2.830029e-04
  string_concat size:     156,312,500
  string_join size:           125,000

Type: refactor

Change-Id: I0a400265426bde492e9a651d24996ddcfe954aa1
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agoigmp: accept packets that have more on the wire data than IGMP reports. 12/20412/3
Neale Ranns [Sun, 30 Jun 2019 09:05:05 +0000 (09:05 +0000)]
igmp: accept packets that have more on the wire data than IGMP reports.

IGMPv3 sends a variable length of sources in a query. Today if the
amount of data on the wire does not exactly match that required for the
number of sources the packet is dropped.
Relax this check and instead accept the packet is the amount of wire
data is equal or greater than the number of sources.
Some devices on the wild internet pad small packets.

Type: feature

Change-Id: I102682814b38c0a0614d71816c9a286d90b834df
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agopg: format_pg_input_trace - reorder fields 40/20340/6
Paul Vinciguerra [Wed, 26 Jun 2019 01:02:40 +0000 (21:02 -0400)]
pg: format_pg_input_trace - reorder fields

00:00:00:814640: pg-input
  stream pcap0-sw_if_index-1, 42 bytes, 1 sw_if_index

is changed to:

00:00:00:814640: pg-input
  stream pcap0-sw_if_index-1, 42 bytes, sw_if_index 1

Type: style

Change-Id: I9bb32494c9c1d08bc7588f088ed67a60ed3236dd
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
4 years agodevices: virtio pci leaking spinlock 34/20334/3
Steven Luong [Tue, 25 Jun 2019 20:47:06 +0000 (13:47 -0700)]
devices: virtio pci leaking spinlock

Memory is dirt cheap. But there is no need to throw it away.

Type: fix

Change-Id: I155130ab3c435b1c04d7c0e9f54795b8de9383d9
Signed-off-by: Steven Luong <sluong@cisco.com>
4 years agosvm: rename fifo tx notifications to reflect use 07/20407/10
Florin Coras [Fri, 28 Jun 2019 19:45:12 +0000 (12:45 -0700)]
svm: rename fifo tx notifications to reflect use

Type: refactor

Change-Id: I651db44acdcb666a9c63e1037352cf88c68795b5
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agointerface: fixes for buliding for 32bit targets 08/20408/10
Vijayabhaskar Katamreddy [Fri, 28 Jun 2019 19:59:23 +0000 (12:59 -0700)]
interface: fixes for buliding for 32bit targets

 * structure alignment and padding issues
Type: fix

Change-Id: Ic7c2a8cb5a5526902463f3b4d2d93284b454ab6f
Signed-off-by: Vijayabhaskar Katamreddy <vkatamre@cisco.com>
4 years agoip: ip-lookup - remove the dead code 25/20225/2
Neale Ranns [Wed, 19 Jun 2019 07:14:10 +0000 (07:14 +0000)]
ip: ip-lookup - remove the dead code

Type: refactor

Change-Id: I791cc63e989df049104420faf74fc28f965b6648
Signed-off-by: Neale Ranns <nranns@cisco.com>
4 years agovppinfra: add dummy/noop f32/f64 endian swap fns 06/20406/2
Dave Barach [Fri, 28 Jun 2019 19:08:49 +0000 (15:08 -0400)]
vppinfra: add dummy/noop f32/f64 endian swap fns

Makes life easier for binary API language bindings

Type: fix

Change-Id: Ib459274fda05153d01cbb7bc328a8407e3ee5027
Signed-off-by: Dave Barach <dave@barachs.net>
4 years agoquic : Use TX event for app read notification 23/19823/10
Nathan Skrzypczak [Wed, 22 May 2019 16:41:50 +0000 (18:41 +0200)]
quic : Use TX event for app read notification

Type: feature

Change-Id: I1846cdeb35f079249f66a0351aa244c540923a43
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agotcp: reject out-of-order fins 03/20403/2
Florin Coras [Fri, 28 Jun 2019 16:18:48 +0000 (09:18 -0700)]
tcp: reject out-of-order fins

Type:fix

Change-Id: Iab2c308739f7733dbf70953e0ea87dcc404c60da
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agotcp: fix close-waiting check for outstanding tx data 04/20404/2
Florin Coras [Fri, 28 Jun 2019 16:41:28 +0000 (09:41 -0700)]
tcp: fix close-waiting check for outstanding tx data

Type: fix

Change-Id: I9e0e1bb933c38b17ac9fb8bf11b81e2fed021bf8
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 years agosession: add half_open_has_fifos for UDPC 58/20358/5
Nathan Skrzypczak [Wed, 26 Jun 2019 11:53:08 +0000 (13:53 +0200)]
session: add half_open_has_fifos for UDPC

Type: fix

Change-Id: Iede83a4e72b88fd55bf56ec0ca71c9196ce743cd
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
4 years agotests: handle TypeErrors in calls to VppDiedError 75/20375/3
Paul Vinciguerra [Thu, 27 Jun 2019 00:45:08 +0000 (20:45 -0400)]
tests: handle TypeErrors in calls to VppDiedError

Type: test

Change-Id: I869768ed25efa3350f025fba329466db69805803
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>