3709 Commits

Author SHA1 Message Date
Jakub Grajciar
1941871e26 libmemif: ubuntu 18.04 build fix
Change-Id: I6624cacd625eea6a9b8214f67d14ec162e2c0195
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-13 16:13:46 +01:00
Dave Barach
3464c86065 Rationalize plugin symbol error reporting
Change-Id: I64f2b2007f30fc1c6bd2990ba0d7ccbcd43cdb38
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-13 01:35:23 +00:00
Marco Varlese
6e4d4a3684 SCTP: cumulative SACK fix
A bug was found affecting the cumulative sending of SACK messages.
Because the next0 was never assigned to the next_output the SACK message
was never leaving the peer.
Further, two new flags have been added to distinguish when a peer is
AWAITING a SACK message (e.g. DATA is inflight and waiting to be
acknowledged).

Change-Id: Ibb5a98f7e5fed15cdc76710b74195cac031d59ed
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2018-03-13 00:36:53 +00:00
Jon Loeliger
179ab361b7 SPAN: Add 'is_l2" flag to DETAILS response messages.
Change-Id: I375bb0e663bc082d98a29fb101c653557ddc8f55
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2018-03-12 21:33:25 +00:00
Dave Barach
611d918f80 Remove md5.[ch] from vppinfra
Removed the sole use of it from ip6_neighbor.c

Change-Id: Ie53cb3b6a3a41ec0917ec2042e5006d0cfaefc01
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-12 15:57:10 -04:00
Dave Barach
8d0f2f0031 License text cleanup
Change-Id: I105375c653b1a1dce8f0f71005b281ff137c6f42
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-12 15:08:44 +00:00
Matus Fabian
3c2a416c42 NAT44: fix nat_not_translate_output_feature in dual loop (VPP-1194)
Change-Id: Icb858414145db0e5fef495e155903b3b935e50ba
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-03-12 03:42:15 -07:00
Matus Fabian
2aad876be8 NAT44: fix nat_not_translate_output_feature for ICMP (VPP-1191)
Change-Id: I1552e1418b704fdf1f1fa2c0174313b9b82a37a3
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-03-12 10:21:42 +00:00
Andrew Yourtchenko
2ca200501e vnet: l2-classify: prefetch (n+2, n+3) rather than (n+1, n+2) inside dual loop code
The dual loop within the L2 classifier processes the (n, n+1) packets,
the prefetching was trying to prefetch (n+1, n+2) - thus half of the
prefetches were not used - because the next iteration needs (n+2, n+3).

Change-Id: I827d20845dbdd0dcdcf463ee25661a7921428992
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2018-03-11 19:29:27 +00:00
John Lo
eeef247aef dpdk-input node packet trace intermittent on IP forwading path
Packet trace initiated by dpdk-input node would occasionally
not fully function if next node is ip4-input.
Change packet trace saving order in the quad-loop so "sho trace"
will display trace in packet receive order.
Fold calling of vlib_trace_buffer() into dpdk_add_trace().

Change-Id: I9d7a9bf3b9391f95590e66150b26b0b15912d803
Signed-off-by: John Lo <loj@cisco.com>
2018-03-11 19:28:04 +00:00
Dave Barach
aaacfbc5b1 Move the vnet cdp protocol implementation to a plugin
Add a binary API and debug cli to enable/disable cdp. cdp is disabled
by default.

Change-Id: I307c7e38dfda38e36ff3325f65de7036c34d89b1
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-10 15:27:58 -05:00
Lee Roberts
fde0929d93 Assign correct NUMA node for DPDK crypto devices
DPDK rte_cryptodev_socket_id() is returning zero for QAT devices.
Apply DPDK patch where correct NUMA node can be obtained with pci_dev->device.numa_node.

Change-Id: I1c7a77bb13e2db8615189e97b67d68d043127787
Signed-off-by: Lee Roberts <lee.roberts@hpe.com>
2018-03-10 11:12:45 +00:00
Lee Roberts
03f47f1e73 Coordinate known Ethernet speeds with Linux kernel and DPDK
Linux kernel and DPDK recognize the following Ethernet speeds:
10M, 100M, 1G, 2.5G, 5G, 10G, 20G, 25G, 40G, 50G, 56G and 100G.
Add consistent Ethernet speeds to VPP.

Change-Id: I4cfcf378fb34425c1206db5aa2f6bdcc66e0a6ab
Signed-off-by: Lee Roberts <lee.roberts@hpe.com>
2018-03-09 19:46:27 +00:00
Lee Roberts
45a09462ad Correct address calculation for VPP-1168
Use (u64) cast to ensure proper address calculations.

Change-Id: I6bad50010b140189f1b0af177e55da0045bd7a93
Signed-off-by: Lee Roberts <lee.roberts@hpe.com>
2018-03-09 19:43:48 +00:00
Keith Burns (alagalah)
0d2b0d5497 VCL API for external callback for listener/connect event
Change-Id: Ic59355683b581945d10a2df97d9b2deae87a998e
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2018-03-09 19:40:39 +00:00
Damjan Marion
51c52c0adc dpdk: move DPDK vfio hack to dpdk plugin
Change-Id: I806cbf8c6c49643fe6c317bcceab93c1b9d441ab
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-09 19:20:32 +00:00
Dave Wallace
fef3f7bd0a make test: Force VCL test timeouts to FAIL test.
Change-Id: Ie8d3bcb9021d9272bd27dba35d30e5081023f061
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2018-03-09 18:12:32 +00:00
Dave Wallace
8d73e856ca VCL: add event registration to listen session in select()
Change-Id: Ie2e8f4ec3a7ec1018e5f9ca6f28f8cb18beaa814
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2018-03-09 16:51:37 +00:00
ahdj007
5e85c54d22 when exceed max reass,
frag packet can't get reass.

adding bihash,it can rewrite new hash value.
so need to delete hash after compare hash value.

Change-Id: I83b5c47890110e9a598b78cfbe8fcd27bbe291bb
Signed-off-by: ahdj007 <dong.juan1@zte.com.cn>
2018-03-09 13:05:27 +00:00
Neale Ranns
31ed744076 MPLS Unifom mode
- support both pipe and uniform modes for all MPLS LSP
- all API programming for output-labels requires that the mode (and associated data) is specificed
   - API changes in MPLS, BIER and IP are involved
- new DPO [sub] types for MPLS labels to handle the two modes.

Change-Id: I87b76401e996f10dfbdbe4552ff6b19af958783c
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-03-09 11:59:58 +00:00
Mohsin Kazmi
8f931a47b0 ACL: Fix the detail for ethertype whitelist
Change-Id: Ie8b4effbd25e1e26b625d451ec059bac58a5a5a1
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-03-09 10:38:46 +00:00
Keith Burns (alagalah)
7cf80e08b6 VCL event handling changes
- added vce_get_event_handler()
- added check for event before blocking on mutex in vppcom_session_accept()

Change-Id: I8e19ea5fcbaa40279cb28152b9923ca8f1328670
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2018-03-08 16:46:25 -08:00
Florin Coras
d77eee64b1 tls: make tls engines pluggable
- add infra for pluggable tls "engines"
- makes mbedtls specific code a plugin

Change-Id: I2c5b099e2b69d2be0038e3ef02b208ff907727e7
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-03-08 21:53:33 +00:00
Keith Burns (alagalah)
00f44cc1f7 VCL refactoring
- simplified event handling and unregister
- removed fixed need to bit flip event hash key
- added spinlock for client_session_fifo (was using sessions_lockp)
- removed redundant vars

Change-Id: I3c7645da660fb5560efdc4e9347e105df9650a16
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2018-03-08 19:58:34 +00:00
Dave Wallace
9a0546d8c5 VCL: cleanup namespace_secret env-var cfg code.
Change-Id: I9de8dd822494abe1b8701a72a9b8bede34dea8dc
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2018-03-08 19:10:05 +00:00
Dave Wallace
fbbb07c33e VCL: Add full hoststack test option to socket_test.sh
Change-Id: I3e5e179daa9d6f1c46adb85b05dd810bdd312054
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2018-03-08 19:08:55 +00:00
Andrew Yourtchenko
27fe75a96b acl-plugin: add the support for dumping the ethertype whitelist (VPP-1163)
The gerrit 10434 which added the support for whitelist model on ethertypes,
did not include the support to dump the current state.
This patch fills that gap.

Change-Id: I3222078ccb1839dc366140fa5f6b8999b2926fd2
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2018-03-08 14:35:20 +00:00
Marek Gradzki
cc134719b7 vppapigen: require reply/details messages for requests/dumps
Throw exception if details/reply is not defined instead
of logger warning.

Change-Id: I6eb39c51eecca6521e5f563ba09dfd62311b45ec
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-08 06:59:16 +00:00
Steve Shin
a36f08c364 Fix Avoid crash in vnet_delete_sub_interface routine
vnet_get_sw_interface shoud be called after sw_if_index is validated.

Change-Id: I36f1d90999c740803386404ba9b32703b659cd54
Signed-off-by: Steve Shin <jonshin@cisco.com>
2018-03-07 13:42:09 -08:00
Damjan Marion
8db9430007 fix physmem mappings
Change-Id: Ie0763e20c36a29a8ef866511903c85027dd133c3
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-07 19:26:50 +01:00
Damjan Marion
7dc4d67852 features: extend 'feature node not found' warning message
Change-Id: I8f45fdb3865e2e0cbb5162ac622c07fec5e42b9d
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-07 16:39:06 +00:00
Matus Fabian
e4e34c23fe NAT44: allow to configure one interface only as output or input feature (VPP-1192)
following is not possible:
set interface nat44 out GigabitEthernet0/3/0 output-feature
set interface nat44 out GigabitEthernet0/3/0

Change-Id: I1592cc18390881fda66f98316700886b8f5295f0
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-03-07 14:18:11 +00:00
Neale Ranns
4b65ddf428 GBP: fix the runs before statement against the ACL node
Change-Id: I0ff13962ab6855663b9aec31c95e4a88cc809ff0
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-03-07 14:11:45 +00:00
Damjan Marion
ef2e584543 packet-generator: use default free list
Change-Id: I2a34546f9b32edc9bfb86b5492dde34aaef49ccc
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-07 14:01:40 +00:00
Florin Coras
8f89dd0128 tls: enforce certificate verification
- add option to use test certificate in the ca chain
- add hostname to extended session endpoint fields and connect api
  parameters. If hostname is present, certificate validation is
  enforced.
- use /etc/ssl/certs/ca-certificates.crt to bootstrap CA cert. A
  different path can be provided via startup config

Change-Id: I046f9c6ff3ae6a9c2d71220cb62eca8f7b10e5fb
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-03-07 13:27:59 +00:00
Damjan Marion
7139e757b1 test: disable reassembly tests and system modification script
One of basic requirements from day one for maek test is that it should
run unpriviledged, so modifying system paremeters is unacceptable.

Disabling script and reassembly tests as they need to be done in
different way.

Change-Id: I063c73eb82f2ebd7499e8adb1574a9fd2475fb5b
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-07 12:00:59 +00:00
Ole Troan
d6743b1d64 VPPAPIGEN: Run tool directly from source tree.
This ensures that tool changes do not require re-bootstrap.
Disabled generation of temporary files (gentab / .pyc) to avoid polluting the source tree.

Change-Id: I4d6bc035fbb46550fa8f4e99f4091eef90e2d86c
Signed-off-by: Ole Troan <ot@cisco.com>
2018-03-07 10:53:52 +00:00
Ole Troan
52ca756c3a VAPI: Ensure type definitions are generated in same order as .api file.
The previous use of a dictionary instead of a list led to typedefs being generated in wrong order.

Change-Id: Iee6ff73f920883ce6e599180c1b47fe997c1702e
Signed-off-by: Ole Troan <ot@cisco.com>
2018-03-07 10:37:49 +00:00
Damjan Marion
c22fcba177 vlib: avoid crash if fill_free_list returns 0 buffers
Change-Id: If1284696e10df71b4029191b5e3adb32c21c0c5f
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-03-06 20:02:21 +00:00
Keith Burns (alagalah)
1275651d77 VCL registration handler added to session for polling sessions
Change-Id: I5f0f3b07a7aa3f243c3d44a9a15cf0670dbb2d46
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2018-03-06 18:18:30 +00:00
Yusuke Tatsumi
4707f22572 LB plugin: Fix Layer-4 checksum error in L3DSR.
Though dst-IP address would be change in LB plugin with L3DSR method,
layer-4 checksum would not be recomputed after this change.

Related changes:
- L3DSR: https://gerrit.fd.io/r/#/c/10203/

Change-Id: I98de7b8d80186ac77608a68050208c08d90b7c3b
Signed-off-by: Yusuke Tatsumi <ytatsumi@yahoo-corp.jp>
2018-03-06 15:55:07 +00:00
ahdj007
9691cf2d08 when lb tcp in2out flow,
in2out and out2in protocol are not same

Change-Id: I4ce680ad1f088cb079e1f2aeb15ca59225fca0d1
Signed-off-by: ahdj007 <dong.juan1@zte.com.cn>
2018-03-06 15:19:11 +00:00
ahdj007
9f06d0eccf reass frag_n should to be inited to 0
Change-Id: I8a4a7a85e86acbfe411e6dfa22e3976d7d4c903b
Signed-off-by: ahdj007 <dong.juan1@zte.com.cn>
2018-03-06 15:17:59 +00:00
Mohsin Kazmi
b5eb3b185f VOM: Fix state reconciliation
This commit also fixes the acl and arp handle for
inspector to view internal state of VOM.

Change-Id: Ibc8ff6cb51d2a77b4c04993ac7212564b8892337
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-03-06 14:47:28 +00:00
Marco Varlese
3f6ede3ab3 glibc 2.27 fix
With glibc 2.27 the memfd_create has been added to the devel libraries.
That's causing the internally defined static function to clash with the
system wide one. This patch addresses that issue on systems with latest
glibc libraries.

Change-Id: I788bf49b23d5b5f1cb1c0374e243d8a429178a71
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2018-03-06 13:11:18 +00:00
Marek Gradzki
07dce1e11d vppapigen: require service definition for singleton messages
Change-Id: Ie7b1c5e50588f65657c3c0900e5914ea82ebb50f
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-06 12:54:57 +00:00
Marek Gradzki
b533f3fade vppapigen: do not allow to define message as both request and reply
Change-Id: I0738fac32dd0c5d927c52d2eb2c1100d14c147cf
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-06 11:24:26 +00:00
Marek Gradzki
fc70e3a89f vppapigen: require reply ID different than caller ID
Change-Id: I316dc99881bce6a36904863d3c1c049b4f5cf658
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-06 11:24:17 +00:00
Marek Gradzki
51e5968835 API: Add service definitions for events and singleton messages (second attempt)
Based on https://gerrit.fd.io/r/#/c/10920/

Updates service definition in stats.api with correct reply message names.

Change-Id: I3282bee5304e667e23bc1fab3f43d967a50d880d
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-06 10:09:12 +01:00
Ole Trøan
2de1f15355 Revert "API: Add service definitions for events and singleton messages."
This reverts commit f7b7fa53b7eaec81d8c00c1023fb7d01f1f9761f.

Change-Id: I87496342943248e94f01ada31459f387c0a3a610
Signed-off-by: Ole Troan <ot@cisco.com>
2018-03-05 23:05:28 +00:00