summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-01-04VOM: NAT coverity found bugsNeale Ranns2-3/+3
Change-Id: Ic55ad2e0a1435f552ce84ed1a9b1981191bc178b Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 842eb22e5d5a7e11114fe093eeccafb080e9aa8b)
2018-01-03NAT64: free port when dynamic BIB deleted (VPP-1107)v18.04-rc0Matus Fabian6-39/+46
Change-Id: Id897ed61a26a4069678ed4ddac1ba28bf32809c3 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2018-01-02VOM: NAT updatesNeale Ranns12-174/+518
Change-Id: I112afaa1f2ccd2ee62a436c73802afaea9b44779 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-12-22tcp: add builtin server/client transfer testFlorin Coras4-33/+60
Change-Id: Iab0baabf2f27bc7ad7fbf2d2789a493752b07d8a Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-21fib: make deag entries urpf extemptFlorin Coras5-0/+19
Change-Id: Ie8f6bb4fcd3e4fa269e86a77d2f21c87f372b783 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-21VPP-1109 Fix loop for some CLI (code review)Swarup Nayak3-0/+7
Change-Id: I518387ab479bee4778d45a33c95f7b0f72aa1b72 Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
2017-12-20L2 emulation: remove usued ip-table-id from APINeale Ranns1-1/+0
IP table mapping is set using 'set int ip table X Y" Change-Id: I2adec40015f9281c9b00c55506000b322f42d91a Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-12-20acl-plugin: add a debug CLI to print 5-tuple structure in human readable ↵Andrew Yourtchenko3-0/+33
format from hex representation Even though the trace now prints the hex as well as human readable format for acl plugin, it can be handy to have a separate function which allows to decode the hex. So add this debug CLI. Change-Id: I1db133a043374817ea9e94ae3736b8a98630669d Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-12-20L2 EmulationNeale Ranns17-2/+1366
L2 Emulation is a feautre that is applied to L2 ports to 'extract' IP packets from the L2 path and inject them into the L3 path (i.e. into the appropriate ip[4|6]_input node). L3 routes in the table_id for that interface should then be configured as DVR routes, therefore the forwarded packet has the L2 header preserved and togehter the L3 routed system behaves like an L2 bridge. Change-Id: I8effd7e2f4c67ee277b73c7bc79aa3e5a3e34d03 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-20fix kubeproxy some testsGabriel Ganne2-2/+41
* NAT46: fix test cleanup, missing del keyword * NAT66: fix kube-proxy vip, is ipv6 * add some missing kp_put_writer_lock * wipe flowtable after each unit test * Add new cli api: "test kube-proxy flowtable flush" to flushes everything * Call this new cli function after the end of each kube-proxy unit test. * same as commit b3d1b203579226ca5136b9d6a2744577d07cfcc6 for the lb plugin Change-Id: I4146f44841328ec96eb66729e3bae3d40f33e4aa Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-12-20Translate matching packets using NAT (VPP-1069)Juraj Sloboda6-48/+238
Add API function which enables forwarding of packets not matching existing translation or static mapping instead of dropping them. When forwarding is enabled matching packets will be translated while non-matching packets will be forwarded without translation. Change-Id: Ic13040cbad16d3a1ecdc3e02a497171bef6aa413 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2017-12-20Fix MPLS local-label CLI help stringMarek Gradzki1-1/+1
CLI parsing code (unformat_fib_route_path) does not recognise 'resolve-via-connected'. However it understands 'resolve-via-attached'. Change-Id: I57e5eb75199cb8ae72c0fc8642a41f042b022201 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-12-20VPP-1083 "ip punt redirect add" crashed if not mentioned any other parameterSwarup Nayak2-8/+28
Change-Id: Ibb6f450783d0ab64bd943c19f12d0954b0a94b24 Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
2017-12-19BIER coverity fix in route downlaodNeale Ranns2-3/+3
Change-Id: I9341f1554d804dfeeecef656e59e8598704863dc Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-19FIB memory leak during recursive loop detectionNeale Ranns1-0/+2
Change-Id: I5ecd43330b3329b072e6da62a4eed1641eb17f8f Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-19VPP-1032: fix coverity warning in bierDave Barach1-2/+2
Change-Id: I0f8d2d9be78d4d936ed61538aee1b7207871347b Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-19Fix passing bad context for callback functionJuraj Sloboda1-2/+2
Change-Id: I61e6019ab34f52c82bf3f1e5327501a613f58bd9 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2017-12-19NAT: Twice NAT44 (VPP-969)Matus Fabian6-783/+821
Translation of both source and destination addresses and ports for 1:1 NAT session initiated from outside network (ExternalIP K8 use case). Change-Id: Ic0000497cf71619aac996d6d580844f0ea0edc14 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-12-19lldp: Fix Coverity Warnings CID 177942, CID 177945Dave Wallace1-1/+1
Change-Id: Ic1ab32c5df3f7a613fe0dcd6bfc15037fa2a008b Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-12-18session api: Fix Coverity Warning CID 180115Dave Wallace1-1/+1
Change-Id: I87e3de556910851d16af343bfcbede49500843ff Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-12-18API: Fix Coverity Warning CID 177944Dave Wallace1-1/+1
Change-Id: I5dbd5e5673ecb0d3878053ae9985478740cf3bc6 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-12-18NAT: Add performance testing TRex scripts and config (VPP-832)Matus Fabian13-0/+426
Change-Id: I149a20f183b836db4c32fb4e4a8438b3a14c1c26 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-12-18Fix nat44 identity mappingDave Barach1-0/+5
Set l_addr to the interface address if the interface address is known when the identity mapping is created. Change-Id: I61af0f5248c9d86d23a24457b342b2e1fb4ac726 Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-18Support kube-proxy data planeHongjun Ni12-0/+3595
This plugin provides kube-proxy data plane on user space, which is used to replace linux kernal's kube-proxy based on iptables. The idea is largely inspired from VPP LB plugin. Currently, kube-proxy plugin supports three service types: 1) Cluster IP plus Port: support any protocols, including TCP, UDP. 2) Node IP plus Node Port: currently only support UDP. 3) External Load Balancer. Please refer to kp_plugin_doc.md for details. Change-Id: I36690e417dd26ad5ec1bd77c7ea4b8100416cac6 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2017-12-18SR-MPLS: binary API and automated steeringPablo Camarillo10-522/+1694
Change-Id: Iacfbaaa91ea8bd92790dec9fce567063bdbc5d64 Signed-off-by: Pablo Camarillo <pcamaril@cisco.com>
2017-12-18VPP-269 Coding standards cleanup - vnet/vnet/policerKrishanpal singh1-11/+14
Change-Id: Ib92794205027d3242c6f0c8962fe02ac38c7129b Signed-off-by: Krishanpal singh <krish.singh03@gmail.com>
2017-12-16GRE tunnel key includes the FIB tableNeale Ranns4-137/+219
- GRE tunnels with the same src,dst addresses are not the same tunnel - Two data-plane improvements: - the cached key was never updated and so useless - no need to dereference the tunnel's HW interface to get the sw_if_index Change-Id: I2f2ea6e08c759a810b753cec22c497e921a2ca01 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-16Use crc32 wrapper (VPP-1086)Gabriel Ganne4-12/+17
This allows arm platforms to also take advantage of crc32 hardware acceleration. * add a wrapper for crc32_u64. It's the only one really used. Using it instead of a call to clib_crc32c() eases building symmetrical hash functions. * replace #ifdef on SSE4 by a test on clib_crc32c_uses_intrinsics. Note: keep the test on i386 * fix typo in lb test log Change-Id: I03a0897b70f6c1717e6901d93cf0fe024d5facb5 Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-12-16dpdk: unset ETH_TXQ_FLAGS_NOXSUMS only for selected PMDsDamjan Marion1-5/+8
Change-Id: I1699e440052faa317b06d46692e8656a41d21bfe Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-12-15VPP-1102: fix dangling references in RPC handlingDave Barach5-27/+59
Queue RPC calls and send them from the main dispatch loop. As things stood, if the vpp main input queue filled, worker threads could enter a barrier-sync spin-wait in the middle of processing a frame. If thread 0 decided to recreate worker thread data structures, the worker thread(s) could easily crash. Legislate the problem out of existence by enqueueing RPC messages only from the main dispatch loop. At that point, doing a barrier-sync wait is perfectly OK. Change-Id: I18da3e44bb1f29a63fe5f30cf11de732ecfd5bf7 Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-15apps: refactor uri and update build infraFlorin Coras7-446/+15
Change-Id: Ifa9966a27586a1a65038d069cf4a1e6e21a72d45 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-15Fix icmp/udp/tcp punt/drop pathsVijayabhaskar Katamreddy14-63/+79
Send packets to ip4/6_punt/drop nodes instead of error-drop/punt nodes dbarach: clean up an annoying checkstyle issue: indent 2.2.10 (OpenSUSE version) and indent 2.2.11 (Ubuntu / CentOS versions) had an artistic disagreement about ip_frag.c. Change-Id: I660bee28a064af9c6c70371363081e941d1c3a94 Signed-off-by: Vijayabhaskar Katamreddy <vkatamre@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-15VCL-LDPRELOAD: Fix Coverity Warning CID 178776Dave Wallace3-98/+68
- Fix broken unit test code. - Check for NULL ptr in vppcom_session_attr() VPPCOM_ATTR_GET_*_ADDR endpoint parameters. Change-Id: I01169edce098ee855a9cba08893c2b08c93ea6c3 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-12-15implement clib_smp_pause() for arm and aarch64 platformKevin Wang2-1/+4
Change-Id: Ic9c1c70e06b953538ed43fc91ed26b6be82ce812 Signed-off-by: Kevin Wang <kevin.wang@arm.com>
2017-12-15fib: fix show fib path-list and pathFlorin Coras2-4/+4
Change-Id: I465282e513b6a0482e96dd02fc7e0e4ed3e3731a Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-15ESP_AH_test_automation_scripts rev1“mystarrocks”1-7/+0
Change-Id: I941abdc4a02e4c52c66b9d299e380b27caca7c1d Signed-off-by: “mystarrocks” <mystarrocks@yahoo.com>
2017-12-14Fix display of single-event event-logsDave Barach2-1/+8
Change-Id: Ib3e25916c66fa3e1b082359095652c45d3b27d0f Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-14VPP-1100 Fix loop in "set punt tcp/udp command"Swarup Nayak1-5/+17
Change-Id: I23081ea25a8d40d8ebe1fcb6efe4143e9c5a0fc6 Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
2017-12-14pci: auto-detect right vfio/uio driverDamjan Marion3-3/+58
Change-Id: Ib4012ff598698924484525932d041988cc4c63f6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-12-14vom: acl: Extend constructor for l3 ruleMohsin Kazmi2-9/+23
New constructor can construct the l3 rule using all or partial paratmeters. Change-Id: I828ec1c4713decb5824e4a73c3692cebc2324cc2 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2017-12-14vom: acl-list: Add comparison operator - for UTMohsin Kazmi1-0/+12
Change-Id: I341f522b46dd85fb3b1dd43fd125513f16f89171 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2017-12-14vppinfra: add AVX512 variant of clib_memcpyDamjan Marion5-130/+359
Taken from DPDK, also AVX2 variant updated to be in sync with DPDK version. Change-Id: I8a42e4141a5a1a8cfbee328b07bd0c9b38a9eb05 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-12-14tap_v2: include host-side parameters in the dump binary APIMilan Lenco9-10/+152
Change-Id: I097a738b96a304621520f1842dcac7dbf61a8e3f Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2017-12-14VPP-1032: clean up coverity warnings.Dave Barach2-5/+12
"This time, for sure..." Change-Id: Ie981003842d37c5eb6a0b2fe3abe974a93b86df8 Signed-off-by: Dave Barach <dave@barachs.net>
2017-12-14Enable AWS ENA PMDMatthew Smith3-1/+13
Elastic Network Adapter PMD for newer AWS instance types Change-Id: Ic7f6ac4a261ccc7af3ffb2ed8950274532e3feae Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2017-12-14NAT64: fix coverity (VPP-1032)Matus Fabian2-0/+4
CIDs 180713 and 180714 Change-Id: Ia4856d1a62f176e99983f8c82eaa09d5df9d4ca5 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-12-14BIER disposition default routeNeale Ranns3-8/+20
Change-Id: I7196ad8bf6afaf356674789c05e23ac000bc038e Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-14session: cleanup attach flagsFlorin Coras16-83/+83
Change-Id: I39d21d15677f57e10b69b8842f2cbca277abddf0 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-13IP bi-direction multicast - same cable check on egressNeale Ranns2-1/+17
Change-Id: I655382f7f74181dd7c795a2b22f151f76b50e793 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-12-13make "test-all" target pass againGabriel Ganne3-2/+11
The "test-all" target is still never called as part of any continuous test (as it probably should) but at least it can now be expected to succeed. VXLAN-GPE: * decapsulate Ethernet to "l2-input" instead of "ethernet-input" otherwise the inner mac address get checked against the interface one (external) and packet gets dropped (mac mismatch) * set packet input sw_if_index to unicast vxlan tunnel for learning TEST: * VXLAN: * reduce the number of share tunnels: => reduce test duration by half => no functional change * VXLAN-GPE: * fix test TearDown() cli: command is "show vxlan-gpe" only * remove vxlan-gpe specific tests as the were a duplicated of the BridgeDomain one and already inherited. * disable test_mcast_rcv() and test_mcast_flood() tests * P2PEthernetAPI: * remove test: "create 100k of p2p subifs" there already is a "create 1k p2p subifs" so this one is a load test and not a unit test. See: lists.fd.io/pipermail/vpp-dev/2017-November/007280.html Change-Id: Icafb83769eb560cbdeb3dc6d1f1d3c23c0901cd9 Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>