Ray Kinsella [Fri, 21 Apr 2017 11:24:43 +0000 (12:24 +0100)]
af_packet: reflect admin device state on host
Setting the interface state in VPP on an af_packet device, was not being
reflected on the host. This implied the user had to set the device state
in VPP and then on the host, in order to put the interface into an 'up'
state. This changes makes the device state consisent in VPP and the host.
Change-Id: I6dc6aee79503e04576683db937b861337a2b375b
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
John Lo [Fri, 28 Apr 2017 04:33:36 +0000 (00:33 -0400)]
Fix memory leak on deletion of BD (bridge domain)
On BD deletion, free memory used by members vector and mac_by_ip4
and mac_by_ip6 hash tables.
Change-Id: Ied467e79bb6636fd8788bdeddee660c66391bb7e
Signed-off-by: John Lo <loj@cisco.com>
Steven [Tue, 25 Apr 2017 23:16:00 +0000 (16:16 -0700)]
vhost: Disallow duplicate path name for vhost interface
When creating or modifying a vhost interface, verify if the path name
already existed and reject the command.
Change-Id: I8b2d33b77c847f774492874f7d194fa72c488479
Signed-off-by: Steven <sluong@cisco.com>
Damjan Marion [Thu, 27 Apr 2017 19:12:17 +0000 (21:12 +0200)]
dpdk: cleanup, move APIs to separate .c file
Change-Id: Id632ff1b30be808d9f270e2f77260391569fbda2
Signed-off-by: Damjan Marion <damarion@cisco.com>
Filip Tehlar [Thu, 27 Apr 2017 12:29:27 +0000 (14:29 +0200)]
LISP: fix deleting of locators, VPP-713
Change-Id: I4a2d24b7124dc9afaf81f29e06e43235a103a320
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Matthew Smith [Wed, 26 Apr 2017 20:42:39 +0000 (15:42 -0500)]
VPP-716: IKEv2 responder fails to authenticate initiator
Fix handling of IDi and IDr when processing payloads in ikev2_process_auth_req
Change-Id: If0d4441dc89f08f3753f38987406c002d43558ec
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Martin Gálik [Thu, 27 Apr 2017 09:13:26 +0000 (02:13 -0700)]
CGN: Send ICMP error packet if user is out of sessions available
Change-Id: I19a6015fde7342588cfa9c7a4f07016aa339cc72
Signed-off-by: Martin Gálik <magalik@cisco.com>
Ray Kinsella [Thu, 27 Apr 2017 08:57:00 +0000 (09:57 +0100)]
vnet: update help message for intfc state
Add useful help information on set interface state.
Change-Id: Ibcdcea2849ccaee4cc72bf38d79102beb0d4be11
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Shwetha Bhandari [Thu, 27 Apr 2017 08:43:10 +0000 (14:13 +0530)]
ioam: adding missing setup api msg crc table
Change-Id: Ic95fe6179de1151796188813cc595187d4c842a0
Signed-off-by: Shwetha Bhandari <shwethab@cisco.com>
Damjan Marion [Wed, 26 Apr 2017 12:25:56 +0000 (14:25 +0200)]
japi: fix compilation on 32-bit systems
Change-Id: Ia7cb986544a13cc17b43b2f0948482deb02e8fb5
Signed-off-by: Damjan Marion <damarion@cisco.com>
flyingeagle23 [Wed, 26 Apr 2017 12:22:04 +0000 (20:22 +0800)]
[VPP-711] uri_tcp_test when master bind fail we met a display issue about retval
Change-Id: I320c9079576af5494c8336880a173e1f0ff096ad
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
flyingeagle23 [Wed, 26 Apr 2017 12:06:52 +0000 (20:06 +0800)]
[VPP-710] tcp TCP_TIMER_ESTABLISH timeout_handler occur segment fault
Change-Id: Ie43b8f1c91600d44dff67e9348fb2fe83efc60c2
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
Pierre Pfister [Thu, 20 Apr 2017 13:34:00 +0000 (15:34 +0200)]
vhost: Fix mmap size calculation
I had a bug where a requested size of 1G was resulting in
an aligned size of '1G + 2M', resulting in an OOM error.
Previous code was adding one huge page size
when memory is already aligned.
Change-Id: Idd3aa0e9b893fb3efccba6ae1c7161e26d3f9456
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Damjan Marion [Wed, 26 Apr 2017 08:38:14 +0000 (10:38 +0200)]
Move scripts to extras/
Change-Id: I2abd6367915d4652fcf45025bd251046f3f206ab
Signed-off-by: Damjan Marion <damarion@cisco.com>
Steven [Tue, 25 Apr 2017 20:49:51 +0000 (13:49 -0700)]
vhost: core dump on quit with worker threads
Patch 6347 removed the socket file when the interface is deleted and
when VPP process is exitting. The CLI for deleting the interface has
builtin vlib_worker_thread_barrier_sync to prevent the worker
threads from running. Unfortunately, the CLI quit does not have the
builtin vlib_worker_thread_barrier_sync. As a result, it may cause the
worker thread to crash.
The fix is to add the vlib_worker_thread_barrier_sync in vhost_user_exit.
Change-Id: I1eff81170e131098f1799662f0ab48d6fca3def7
Signed-off-by: Steven <sluong@cisco.com>
Neale Ranns [Fri, 21 Apr 2017 08:07:59 +0000 (01:07 -0700)]
IP Flow Hash Config fixes
- the flow hash config is (and was) cached on the load-balance object so the fib_table_t struct is not used a switch time. Therefore changes to the table's flow hash config need to be propagated to all load-balances and hance all FIB entries in the table.
- enable API for setting the IPv6 table flow hash config
- use only the hash config in the fib_table_t object and not on the ipX_fib_t
- add tests.
Change-Id: Ib804c11162c6d4972c764957562c372f663e05d4
Signed-off-by: Neale Ranns <nranns@cisco.com>
Martin Gálik [Tue, 25 Apr 2017 08:25:08 +0000 (01:25 -0700)]
CGN: Session dump, test naming for ports fixed
Change-Id: Ib542b2b3ee023fbe3d0e01ceaf4b4ab7a0ec80dc
Signed-off-by: Martin Gálik <magalik@cisco.com>
Martin Gálik [Wed, 19 Apr 2017 08:12:27 +0000 (01:12 -0700)]
CGNAT: close session API and CLI commands.
Change-Id: I9c8636bd2c4b8da2907e8e4a4f2be1a2c3a8e0bb
Signed-off-by: Martin Gálik <magalik@cisco.com>
Damjan Marion [Tue, 25 Apr 2017 19:07:52 +0000 (21:07 +0200)]
Exit if plugin load attempt fail
This happens mainly if plugin contains unresolved symbol.
Such situation typically leads on crash a bit later so it is better
to exit immediatelly and display meaningful error message.
Change-Id: I4abd9a9089a4863400bf609e8d3fd7cebab92913
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Tue, 25 Apr 2017 18:58:06 +0000 (11:58 -0700)]
Session/tcp coverity fixes
Change-Id: Ic5467df16e870b49c49678b1dbb40f4a2390b3c9
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dave Barach [Mon, 24 Apr 2017 14:46:54 +0000 (10:46 -0400)]
"autoreply" flag: autogenerate standard xxx_reply_t messages
Change-Id: I72298aaae7d172082ece3a8edea4217c11b28d79
Signed-off-by: Dave Barach <dave@barachs.net>
Florin Coras [Tue, 25 Apr 2017 07:05:27 +0000 (00:05 -0700)]
Add sack tx unit test
Change-Id: Ib91db6e531231bdc52b0104673a912bee024872f
Signed-off-by: Florin Coras <fcoras@cisco.com>
Filip Tehlar [Fri, 21 Apr 2017 10:05:58 +0000 (12:05 +0200)]
LISP: clean DP when deleting locators in use
Change-Id: Ia8736916bf59006bc581fe477db51ddd6bcc15e5
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Damjan Marion [Mon, 24 Apr 2017 18:48:53 +0000 (20:48 +0200)]
Add support for 32-bit x86 compilation in Makefiles
Change-Id: Ida73678b47b685abef4e81b5cad9fc13eb330850
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Mon, 24 Apr 2017 18:58:29 +0000 (20:58 +0200)]
Fix structure alignment with 32-bit pointers
Change-Id: I740de6c0f12dab452b4349e3bf89ff976a6268c0
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Mon, 24 Apr 2017 18:52:35 +0000 (20:52 +0200)]
Define cache line size for x86 32-bit
Change-Id: Ie70e805f342bda69207b9df9543f1eccb5e69612
Signed-off-by: Damjan Marion <damarion@cisco.com>
Eyal Bari [Fri, 7 Apr 2017 20:14:17 +0000 (23:14 +0300)]
BD:unify bridge domain creation code
Change-Id: I29082e7a0c556069180a157e55b3698cf8cd38c7
Signed-off-by: Eyal Bari <ebari@cisco.com>
Klement Sekera [Mon, 24 Apr 2017 02:30:53 +0000 (02:30 +0000)]
BFD: disable gcc6 warnings in helper macros
Change-Id: Ibec3f1a2619d593accd8c560fb29d39d5617e16a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Damjan Marion [Thu, 20 Apr 2017 09:42:28 +0000 (11:42 +0200)]
Move emacs stuff to extras/
Change-Id: Ibbb7d8500e9064215cf912bd00bdf72a748f8a27
Signed-off-by: Damjan Marion <damarion@cisco.com>
Steven [Fri, 21 Apr 2017 20:31:50 +0000 (13:31 -0700)]
vhost: remove socket linked file when deleting vhost interface
- Unlink the file created for the socket when deleting vhost interface
if we are the server mode.
- Remove all vhost interfaces when VPP process is exitting.
Change-Id: Id9b676cd027bbd67b473bbd01901d1ecc4d8e6cb
Signed-off-by: Steven <sluong@cisco.com>
Dave Barach [Thu, 20 Apr 2017 21:50:39 +0000 (17:50 -0400)]
Debug CLI to magically create / delete a TCP session
The session ends up in established state, and is hand-crafted to look
like it was created by the builtin_server.
This will come in handy for injecting packets into tcp46-established,
along with ancillary debug CLI to adjust connection parameters.
Immediate applications include screwball window cases, out of order
segments, paws checking, and so on and so forth.
Debug CLI script:
loop create
set int ip address loop0 6.0.1.1/8
set int state loop0 up
set ip arp loop0 6.0.1.2 feed.face.babe
test tcp server
test tcp session
packet-generator new {
name tcp
limit 1
node ip4-input
size 100-100
interface loop0
no-recycle
data {
TCP: 6.0.1.2 -> 6.0.1.1
TCP: 11234 -> 1234
ACK window 2000
seqnum 0
acknum 0
incrementing 100
}
}
Change-Id: I866c2159376064b7d14f70531022c1fe949258c2
Signed-off-by: Dave Barach <dave@barachs.net>
Klement Sekera [Fri, 21 Apr 2017 07:49:14 +0000 (09:49 +0200)]
make test: mark all BFD tests as extended
Change-Id: Iaed59cca1c9fd69eadb86c15be6417a956cb9d5a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Neale Ranns [Tue, 18 Apr 2017 16:09:40 +0000 (09:09 -0700)]
Improve Load-Balance MAPs
- only build them for popular path-lists (where popular means more than 64 children)
the reason to have a map is to improve convergence speed for recursive prefixes - if there are only a few this technique is not needed
- only build them when there is at least one path that has recursive constraints, i.e. a path that can 'fail' in a PIC scenario.
- Use the MAPS in the switch path.
- PIC test cases for functionality (not convergence performance)
Change-Id: I70705444c8469d22b07ae34be82cfb6a01358e10
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Wed, 19 Apr 2017 20:00:05 +0000 (13:00 -0700)]
Session layer improvements
Among others:
- Moved app event queue to shared memory segment
- Use private memory segment for builtin apps
- Remove pid from svm fifo
- Protect session fifo (de)allocation
- Use fifo event for session disconnects
- Have session queue node poll in all wk threads
Change-Id: I89dbf7fdfebef12f5ef2b34ba3ef3c2c07f49ff2
Signed-off-by: Florin Coras <fcoras@cisco.com>
Steve Shin [Sat, 22 Apr 2017 13:58:23 +0000 (06:58 -0700)]
Fix multicast enable on the bonded interface
Multicast enable flag should be set when the bonded interface is up.
This flag allows multicast packets to be processed from the slave devices
of the bonded interface. Also promiscuous mode for all-multicast should
be correctly displayed as part of 'show hardware detail' output.
Change-Id: Ief0157c4c030a28afb9c45ebf3d6a12710083724
Signed-off-by: Steve Shin <jonshin@cisco.com>
flyingeagle23 [Thu, 20 Apr 2017 06:46:08 +0000 (14:46 +0800)]
[VPP-703]uri_tcp_test segment fault when mp->retval reply -30
Change-Id: I9d2e1f3434f66d9ae9cf40fe9043d0c4b384ef44
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
flyingeagle23 [Thu, 20 Apr 2017 10:38:48 +0000 (18:38 +0800)]
[VPP-704]./uri_tcp_test slave , uri test segment fault
Change-Id: I19dcc3fcf85c63dc7a7f35e023f6269c9f233d3b
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
flyingeagle23 [Thu, 20 Apr 2017 12:01:14 +0000 (20:01 +0800)]
[vpp-705]uri_cli issue:show session get nothing tips when session management disable
Change-Id: I6844732adcfdd534512f0925059d92b70dcdc080
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
Damjan Marion [Fri, 21 Apr 2017 11:56:40 +0000 (13:56 +0200)]
vlib: add cli command to dump all CLI commands
To be used for bash completion
Change-Id: I8f4702f24c2b7e223945e00a1b3560dec6ef39fd
Signed-off-by: Damjan Marion <damarion@cisco.com>
Ray Kinsella [Fri, 21 Apr 2017 10:08:43 +0000 (11:08 +0100)]
vppinfra: clib_memcpy improvement
In the case where n is a constant 16 bytes, the second load/store is
ignored by the load/store unit - it has neglible/zero cost. In the case
where n is variable and greater than 512 bytes, the extra if (n == 16)
branch has a very small performance impact.
Change-Id: I04b313cf022c18fee31b1d9bcf6a128414659a99
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Matus Fabian [Tue, 18 Apr 2017 12:29:59 +0000 (05:29 -0700)]
CGN: IPFIX logging
maximum entries per user exceeded event
Change-Id: Ie35d7f40f55001e2ef4a38f934f176594f25b189
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Damjan Marion [Thu, 13 Apr 2017 17:13:47 +0000 (19:13 +0200)]
vpp-api: rename libpneum to libvppapiclient
Change-Id: Ie6d2c769b316b43c40632aa9009c4ff6442cf658
Signed-off-by: Damjan Marion <damarion@cisco.com>
Chris Luke [Wed, 19 Apr 2017 22:31:00 +0000 (18:31 -0400)]
docs: Forward-port missing 17.01 release notes
Change-Id: I834df7661d2cc80c18f3879bb30e26091c28064f
Signed-off-by: Chris Luke <chrisy@flirble.org>
Klement Sekera [Wed, 19 Apr 2017 07:10:58 +0000 (07:10 +0000)]
make test: improve bfd reliability
Change-Id: Iaf446a2d7d8e595c3379fb9ed61a954351c17b90
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Damjan Marion [Thu, 20 Apr 2017 09:43:56 +0000 (11:43 +0200)]
Move vagrant stuff to extras/
Change-Id: I7e3d6ecc3f23d862004c273e23e36e234ceb6015
Signed-off-by: Damjan Marion <damarion@cisco.com>
Damjan Marion [Wed, 19 Apr 2017 12:09:07 +0000 (14:09 +0200)]
Extend ebuild to specify "configure" subdir, enable verify for sample-plugin
Change-Id: I2056e5d19bc3713e7a13e015dabf3b2431800973
Signed-off-by: Damjan Marion <damarion@cisco.com>
Milan Lenco [Wed, 19 Apr 2017 08:34:53 +0000 (10:34 +0200)]
Temporary workaround for the bug VPP-698.
Change-Id: I220b0b95449f24cc547206e38ab8e10019115ec0
Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
Andrew Yourtchenko [Tue, 18 Apr 2017 13:28:28 +0000 (13:28 +0000)]
Clean up old datapath code in ACL plugin.
Change-Id: I3d64d5ced38a68f3fa208be00c49d20c4e6d4d0e
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Klement Sekera [Wed, 19 Apr 2017 06:09:01 +0000 (08:09 +0200)]
disable extended BFD tests in verify job
Change-Id: I14484137fde8d6e77fc5905943657089347629fb
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Neale Ranns [Wed, 19 Apr 2017 12:24:40 +0000 (05:24 -0700)]
Learn IP6 link-local ND entries from NSs sourced from link-local address
Change-Id: I4c3ce4d58df7977490fc94991291422ea1e31ee3
Signed-off-by: Neale Ranns <nranns@cisco.com>
Damjan Marion [Tue, 18 Apr 2017 13:26:39 +0000 (15:26 +0200)]
Fix "make dist" to include version number, docouple it from rpm packaging
Change-Id: If2f9976d668089026c97b897cf449bff09050631
Signed-off-by: Damjan Marion <damarion@cisco.com>
Florin Coras [Wed, 19 Apr 2017 05:07:29 +0000 (22:07 -0700)]
Add more svm fifo unit tests
Change-Id: Ifc07b3f90ac155c26c3a216e073b474b499ebd44
Signed-off-by: Florin Coras <fcoras@cisco.com>
vagrant [Fri, 7 Apr 2017 01:48:47 +0000 (01:48 +0000)]
make test: python interpreter customization
Allow using custom python interpreter via 'PYTHON' env variable.
E.g. env PYTHON=pypy make test.
Get latest pip automatically to properly function in environments,
where old pip is available and a proxy is required. This allows
testing pypy in a centos vagrant-provided vm.
Change-Id: I67a658fc927303468cc67f0ac192317ca2907625
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
Juraj Sloboda [Fri, 14 Apr 2017 01:24:45 +0000 (03:24 +0200)]
Support ping from outside network in 1:1 NAT (VPP-695)
Change-Id: Iec8fd4c2bd26874bd8bda82172af797e9b92592c
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Martin Gálik [Fri, 31 Mar 2017 06:21:51 +0000 (23:21 -0700)]
CGN: additional tests
Change-Id: Ib9ae10e0fdc6de08120d92c3eebd76e71b379a06
Signed-off-by: Martin Gálik <magalik@cisco.com>
Neale Ranns [Tue, 18 Apr 2017 19:56:45 +0000 (12:56 -0700)]
Memory leak in load-balance maps
Change-Id: Iec67ae1232e346d5e0000e0b4c997fdc31865bc6
Signed-off-by: Neale Ranns <nranns@cisco.com>
Pavel Kotucek [Tue, 18 Apr 2017 11:12:20 +0000 (13:12 +0200)]
ACL-plugin does not match UDP next-header, VPP-687
Change-Id: Ide4f9bd6158fb64d069540fb43f4e593e39d6ff3
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
Dave Barach [Fri, 14 Apr 2017 20:46:44 +0000 (16:46 -0400)]
Fix fifo ooo bugs and improve testing
Change-Id: If3c01e318bcb740ca5b240c63f712e2167082a80
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Florin Coras <fcoras@cisco.com>
Dave Barach [Mon, 17 Apr 2017 19:56:17 +0000 (15:56 -0400)]
Socket API echo server
Change-Id: I67ee8bbcad12e272193ac9e5bc6e39c43ce453ed
Signed-off-by: Dave Barach <dave@barachs.net>
Florin Coras [Tue, 4 Apr 2017 01:00:00 +0000 (18:00 -0700)]
Set lower bound on persist timer
Change-Id: Ie98ecb8944e4d27e943797948fad41ec074d6720
Signed-off-by: Florin Coras <fcoras@cisco.com>
Clement Durand [Thu, 13 Apr 2017 11:27:04 +0000 (13:27 +0200)]
tcp: completed trace functions
* Populated the trace struct that weren't used before
* Modified and created format functions to format tcp packets and
connections
* Completed the node definitions to add the format_trace function
* Filled the tracing parts with `vlib_add_trace' calls in each tcp node
function
For the nodes in tcp_input.c, there is a verbose trace and a non-verbose
trace. Each packet goes through tcp[4-6]-input which is traced with
`format_tcp_rx_trace', and the other nodes are traced with
`format_tcp_rx_trace_short'.
Change-Id: I4f2eed023f5973c14343132a33b06131cf063aa2
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Signed-off-by: Clement Durand <clement.durand@polytechnique.edu>
Florin Coras [Wed, 5 Apr 2017 06:08:23 +0000 (23:08 -0700)]
Session layer refactoring
Major refactoring of the session layer api
- Add attatch api for application binding to the the session layer
- Simplify listen/connect calls
- Update application CLI
- Add transport endpoint to accept callback
- Associate segment manager to application and allow for multiple
binds/connects per app
Additional:
- svm fifo cleanup
- add fifo free, format fns
- add fifo offset enqueue unit test
Change-Id: Id93a65047de61afc2bf3d58c9b544339c02065af
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
Clement Durand [Wed, 12 Apr 2017 14:33:55 +0000 (16:33 +0200)]
tcp builtin_client: bug correction and short_help
The missing call to `vnet_session_enable_disable' would cause segfaults
because of an uninitialized session pointer. Just as in the builtin
server the session needs to be enabled for the client.
The `short_help' of the CLI command was also populated with the
arguments that are accepted in the parsing function
`test_tcp_clients_command_fn'.
Change-Id: I88c16efa80597dd19b406e8cf1c87aec1ec73573
Signed-off-by: Clement Durand <clement.durand@polytechnique.edu>
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
Neale Ranns [Thu, 13 Apr 2017 07:44:52 +0000 (00:44 -0700)]
Remove unsed parameter from fib_table_entry_special_add() (only used in FIB tests). The DPO was incorrectly initialised with FIB_PROTO_MAX
Change-Id: I962df9e162e4dfb6837a5ce79ea795d5ff2d7315
Signed-off-by: Neale Ranns <nranns@cisco.com>
Filip Tehlar [Fri, 7 Apr 2017 08:41:42 +0000 (10:41 +0200)]
LISP: make statistics thread safe
Change-Id: I056dc6246f79d887d69ad459a6b8b3092a099baa
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Juraj Sloboda [Wed, 5 Apr 2017 13:59:21 +0000 (15:59 +0200)]
Handle multiple flows with the same client port in deterministic NAT
Handle situation when client tries to connect to multiple hosts/ports
from the same client port. Extend matching to include remote host/port
when searching for existing session and create session for each flow
even when originating from the same client port.
Change-Id: I4f54ded930e59e7196843c6bc1d2d2386c57cd3c
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Pavel Kotucek [Wed, 12 Apr 2017 07:01:43 +0000 (09:01 +0200)]
acl-plugin: missing "deny" parameter in API
Change-Id: Ie2ab844ad27b5ddb552bad9b19e7029cf91e4071
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
Klement Sekera [Tue, 11 Apr 2017 04:01:53 +0000 (06:01 +0200)]
make test: don't rely on cPython GC to close fds
This code improvement allows running in pypy (and other interpreters)
without exhausting file descriptors.
Change-Id: Icb692a0fe1343c12cbbb15af6c58753420e74330
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Matus Fabian [Wed, 12 Apr 2017 10:36:13 +0000 (03:36 -0700)]
CGN: configurable timeouts
add API and CLI configuration of deterministic NAT session timeout for TCP, UDP
and ICMP protocol
Change-Id: I577440452e7eaedcb5d80501a7fd4b76e31e8c9c
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Juraj Sloboda [Mon, 3 Apr 2017 06:49:47 +0000 (08:49 +0200)]
Support ICMP session timeout in deterministic NAT
Change-Id: I0306bc0ab87908adb79c594c657d579cb34b3ec1
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Filip Tehlar [Tue, 11 Apr 2017 12:00:58 +0000 (14:00 +0200)]
LISP: show mapping negative action in CLI
Change-Id: I26087cbde40cc5f2f1cb501ca6e791292e02badf
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Dave Barach [Tue, 11 Apr 2017 17:12:48 +0000 (13:12 -0400)]
move binary-api client-only routines to memory_client.c
Change-Id: I0755f731b1b01e6a1a231948d498c625a2c966b7
Signed-off-by: Dave Barach <dave@barachs.net>
Steven [Tue, 11 Apr 2017 19:24:47 +0000 (12:24 -0700)]
Devices: set interface placement does not remove the old interface placement
The command set interface placement is supposed to remove the existing
interface placement and add a new interface placement based on the given
options. My quick test for the CLI shows that the old interface placement
continues to exist. But the new interface placement is also added.
The bug exists in vnet_device_input_unassign_thread which checks
the old thread index is the same as the passed thread index and skips the
deletion if they are the same.
The fix is to remove the check which is not supposed to be there.
Change-Id: Ib055721fad47513949a03b3cb6dc292bd19fd1e8
Signed-off-by: Steven <sluong@cisco.com>
Juraj Sloboda [Mon, 3 Apr 2017 06:43:58 +0000 (08:43 +0200)]
Add ICMP support for deterministic NAT
Change-Id: I9a6bcb7d173a2c13d89784e7ff8a6e42dcee201f
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Neale Ranns [Tue, 11 Apr 2017 15:56:53 +0000 (08:56 -0700)]
MPLS Mcast coverity fixes
Change-Id: Ic07ec5d4c2560a414d5f4f7eb37e10faf591664a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Tue, 11 Apr 2017 16:13:39 +0000 (09:13 -0700)]
MTRIE coverity fixes
Change-Id: If98355bebe823f45b11b0908a8d7700ab273a6db
Signed-off-by: Neale Ranns <nranns@cisco.com>
Neale Ranns [Tue, 11 Apr 2017 16:55:19 +0000 (09:55 -0700)]
Remove usued, redundant and deprecated code from lookup.h
Change-Id: Ic16bc10d0b2877b2afdf052615f9334f31b9519f
Signed-off-by: Neale Ranns <nranns@cisco.com>
Damjan Marion [Wed, 5 Apr 2017 10:28:38 +0000 (12:28 +0200)]
dpdk: use common interface placement infra
This pathch deprecates "show dpdk placement" and
"set dpdk placement" CLI commands.
Change-Id: I4e052ec3e8b8e6c54b4816e1e689e5b7a24892db
Signed-off-by: Damjan Marion <damarion@cisco.com>
jerryian [Mon, 10 Apr 2017 10:48:07 +0000 (18:48 +0800)]
Fix bug in configure 'pcap drop trace on file xx.cap' command (VPP-691)
Change-Id: Id9cc1fbe18099fae483a823dc7c2b16d6bc46a8c
Signed-off-by: jerryian <gu.jian1@zte.com.cn>
Steven [Tue, 4 Apr 2017 23:56:54 +0000 (16:56 -0700)]
vhost: interrupt mode enhancements
- Add cpu index to the vring structure for quick lookup
- Reduce the code that needs to be protected by
vlib_worker_thread_barrier_sync
- Set minimum timer no less than 1 ms
Change-Id: Iafef4bf6879a8efb350abf4e0f517e38f7ff7a8b
Signed-off-by: Steven <sluong@cisco.com>
Pierre Pfister [Tue, 4 Apr 2017 14:55:21 +0000 (15:55 +0100)]
Fix typo in minimal epoll polling time
epoll was supposed to not sleep when timeout
is less than 1ms, but a typo made it not sleep
any time the requested timeout is lower than
1000 seconds (in practice, never...).
This patch replaces "1e3" with "1e-3", which
represents 1ms.
Change-Id: I731851b27a6bf6ab8e41586e017e94b962b09bf3
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
(cherry picked from commit
ec06222ae189fe8d84b63410130fff04bf446573)
Juraj Sloboda [Mon, 3 Apr 2017 06:08:48 +0000 (08:08 +0200)]
Refactor SNAT code
Change-Id: I71f34dc64d4ddc5f2ec1164cb3c353d0fe2d95ab
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Klement Sekera [Mon, 10 Apr 2017 04:30:17 +0000 (06:30 +0200)]
make test: automatic "vpp finishes startup" check
Add code which checks if vpp doesn't crash/exit immediately after
startup to aid debugging stuff like mistyped graph node name or so.
Refuse to run tests if the vpp is unable to start, complain loudly
and print vpp's stderr at critical log level if this happens to make
spotting these problems in jenkins easy.
Change-Id: I40d3fbd05c822c0534713bae6bef05ecfb0e0c1d
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Damjan Marion [Wed, 5 Apr 2017 16:15:45 +0000 (18:15 +0200)]
Common device-input interrupt infra
Change-Id: I23b588eb56a3f5690158449a1f9bc8053cd3d251
Signed-off-by: Damjan Marion <damarion@cisco.com>
Juraj Sloboda [Mon, 3 Apr 2017 05:34:57 +0000 (07:34 +0200)]
Handle ICMP echo with TTL=1 in deterministic and fast SNAT nodes
Change-Id: Icd25ec2e5faf69898178199aa44f21790ce664e1
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Juraj Sloboda [Mon, 3 Apr 2017 04:33:23 +0000 (06:33 +0200)]
Make fixes in SNAT code
Change-Id: I691d1bfb2923a07c0003485b1d0272aaf9ed27ee
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
John Lo [Sat, 8 Apr 2017 03:32:32 +0000 (23:32 -0400)]
Fix init of ENIC driver to allow receiving of jumbo packets
Set rxmode.enable_scatter field in DPDK port config parameter so ENIC
driver will use multiple mbuf's for receiving jumbo packets.
Also remove ENIC driver check to disable setting ENIC MTU as this
capability is now working with the new ENIC driver, subject to 9002B
limit.
Change-Id: I563976201c4968d4538c0759505cef2de876934a
Signed-off-by: John Lo <loj@cisco.com>
Eyal Bari [Thu, 6 Apr 2017 00:31:00 +0000 (03:31 +0300)]
VXLAN/TEST:validate vxlan del reply has valid sw_if_index
Change-Id: Icf7420b7ee212e9341f63f005dc287d019fd8e4c
Signed-off-by: Eyal Bari <ebari@cisco.com>
Neale Ranns [Wed, 1 Mar 2017 23:12:11 +0000 (15:12 -0800)]
MPLS Mcast
1 - interface-DPO
Used in the Data-plane to change a packet's input interface
2 - MPLS multicast FIB entry
Same as a unicast entry but it links to a replicate not a load-balance DPO
3 - Multicast MPLS tunnel
Update MPLS tunnels to use a FIB path-list to describe the endpoint[s]. Use the path-list to generate the forwarding chain (DPOs) to link to .
4 - Resolve a path via a local label (of an mLDP LSP)
For IP multicast entries to use an LSP in the replication list, we need to decribe the 'resolve-via-label' where the label is that of a multicast LSP.
5 - MPLS disposition path sets RPF-ID
For a interface-less LSP (i.e. mLDP not RSVP-TE) at the tail of the LSP we still need to perform an RPF check. An MPLS disposition DPO performs the MPLS pop validation checks and sets the RPF-ID in the packet.
6 - RPF check with per-entry RPF-ID
An RPF-ID is used instead of a real interface SW if index in the case the IP traffic arrives from an LSP that does not have an associated interface.
Change-Id: Ib92e177be919147bafeb599729abf3d1abc2f4b3
Signed-off-by: Neale Ranns <nranns@cisco.com>
Florin Coras [Thu, 6 Apr 2017 22:27:35 +0000 (15:27 -0700)]
Fix gpe dp args to allow for 32 bit bridge domain ids, VPP-690
Change-Id: I4e3df197eed33acbceaff495279def8716773303
Signed-off-by: Florin Coras <fcoras@cisco.com>
flyingeagle23 [Thu, 6 Apr 2017 08:47:46 +0000 (16:47 +0800)]
VPP-684.Add ip which mask length exceeding upper limit,ping segmentfault
Change-Id: I2d1c5e4dbdcab2a81d6c88801183ca0bbc83e1d9
Signed-off-by: flyingeagle23 <wang.hui56@zte.com.cn>
Andrew Yourtchenko [Tue, 4 Apr 2017 14:10:40 +0000 (14:10 +0000)]
acl-plugin: make the IPv4/IPv6 non-first fragment handling in line with ACL (VPP-682)
This fixes the previously-implicit "drop all non-first fragments" behavior
to be more in line with security rules: a non-first fragment is treated
for the purposes of matching the ACL as a packet with the port
match succeeding. This allows to change the behavior to permit
the fragmented packets for the default "permit specific rules"
ruleset, but also gives the flexibility to block the non-initial
fragments by inserting into the begining a bogus rule
which would deny the L4 traffic.
Also, add a knob which allows to potentially turn this behavior off
in case of a dire need (and revert to dropping all non-initial fragments),
via a debug CLI.
Change-Id: I546b372b65ff2157d9c68b1d32f9e644f1dd71b4
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
9fc0c26c6b28fd6c8b8142ea52f52eafa7e8c7ac)
Marek Gradzki [Thu, 6 Apr 2017 07:37:00 +0000 (09:37 +0200)]
jvpp: remove unused print&endian headers (fixes VPP-688)
Change-Id: I97e03d98758a08b1f75a9a1f35f0181385a10ae8
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Neale Ranns [Wed, 5 Apr 2017 15:11:14 +0000 (08:11 -0700)]
BFD-FIB interactions
- single-hop BFD: attach a delegate to the appropriate adjacency
- multi-hop BFD [not supported yet]: attach a delegate to the FIB entry.
adjacency/fib_entry state tracks the BFD session state. when the state is down the object does not contribute forwarding hence and hence dependent objects will not use it.
For example, if a route is ECMP via two adjacencies and one of them is BFD down, then only the other is used to forward (i.e. we don't drop half the traffic).
Change-Id: I0ef53e20e73b067001a132cd0a3045408811a822
Signed-off-by: Neale Ranns <nranns@cisco.com>
Choonho Son [Wed, 5 Apr 2017 10:09:52 +0000 (19:09 +0900)]
VPP-686: create bridge-domain
- update default flags
- add missing flag learn
Change-Id: I50a1a001848769836468838775b59d3414d27710
Signed-off-by: Choonho Son <choonho.son@gmail.com>
Damjan Marion [Wed, 5 Apr 2017 17:18:20 +0000 (19:18 +0200)]
Use thread local storage for thread index
This patch deprecates stack-based thread identification,
Also removes requirement that thread stacks are adjacent.
Finally, possibly annoying for some folks, it renames
all occurences of cpu_index and cpu_number with thread
index. Using word "cpu" is misleading here as thread can
be migrated ti different CPU, and also it is not related
to linux cpu index.
Change-Id: I68cdaf661e701d2336fc953dcb9978d10a70f7c1
Signed-off-by: Damjan Marion <damarion@cisco.com>
Eyal Bari [Thu, 6 Apr 2017 00:26:59 +0000 (03:26 +0300)]
VXLAN:fix tunnel delete not returning sw_if_index
when tunnel is deleted reply should include the tunnel's sw_if_index
instead of ~0
Change-Id: Ie5e04f4feab9cf2c90f0e155ec0fb9ca839a956d
Signed-off-by: Eyal Bari <ebari@cisco.com>
Eyal Bari [Wed, 5 Apr 2017 02:33:21 +0000 (05:33 +0300)]
L2FIB:add l2fib_flush_bd l2fib_flush_int apis
Change-Id: I0a6989c6963956f3e60e8c50835c57845fccef8c
Signed-off-by: Eyal Bari <ebari@cisco.com>
Klement Sekera [Tue, 4 Apr 2017 14:19:48 +0000 (16:19 +0200)]
BFD: add ARP-awareness, fix bugs
Make BFD ARP-aware when sending out packets.
Fix a few one-liner bugs discovered while integrating with cisco
nexus. Enhance CLI view to better observe session state.
Change-Id: I266c29492f351207b84328ab665d9d697969da9c
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Andrew Yourtchenko [Tue, 4 Apr 2017 20:38:33 +0000 (20:38 +0000)]
acl-plugin: fix pretty-printing in "api trace custom-dump" (VPP-683)
Change-Id: Id15b401223aabe7dacb7566c871ebefc17fbb1fc
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit
7fd3f513c7df198c45204eba0a3e9a3abe509593)