118 Commits

Author SHA1 Message Date
Ed Warnicke
db6d6b3058 Update Release Notes for 18.07 Release
Change-Id: I2b58bca6d360badb4fd17022121e244aee5713b8
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
2018-07-30 14:29:08 -05:00
Neale Ranns
ee8b973de9 VOM: support for pipes
Change-Id: I5c381dfe2f926f94a34ee8ed8f1b9ec6038d5fe2
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
(cherry picked from commit 208c29aac523231af2420a95ba7e5d361698780b)
2018-07-18 04:48:34 +00:00
Damjan Marion
20728d40d9 memif: fix max number of rings
Change-Id: Ie7621a38a44e7c692e23e58c43d27d8d2aab43e6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-07-11 13:23:03 +00:00
Mohsin Kazmi
9aca7b5ee9 vom: Add TAPv2 support
Change-Id: I1fff014dd7d8a66ed3cb063e8c996de4f7e745c2
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-07-11 13:12:12 +00:00
Marco Varlese
abec942075 openSUSE: spec file update to reflect latest deps
Change-Id: I3c04956400a2e88d331f43d1b4865ee2c75e7bc9
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2018-07-10 10:12:38 +00:00
Mohsin Kazmi
6b1cdd3a20 vom: Add cross connect support
Change-Id: Ia316730d8f9fe9836200aa96e0b5fd827dc71c98
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-07-03 11:26:04 +00:00
Milan Lenco
f8b43e5421 libmemif: fixing head/tail arithmetics & queue reallocation
Change-Id: Ibc1f01b1cc99e7be77e892e53b7e1283f2a145cf
Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2018-06-28 13:50:28 +00:00
Ole Troan
a7564e8004 Python API: Add enum and union support.
As well as a rewrite of the encoders/decoders to make it more readable and extensible.
(Re-commit after fix to verify build.)

Change-Id: Ic244d3cebe070bb2570491f8a24f4a1e203f889a
Signed-off-by: Ole Troan <ot@cisco.com>
2018-06-22 03:00:45 +00:00
Ole Trøan
61debaaaf2 Revert "Python API: Add enum and union support."
This reverts commit a5ee900fb75201bbfceaf13c8bc57a13ed094988.

Some of the unit tests breaks. Backing out until fixed.

Change-Id: I1846fb417db44a2a772f7b59cda8bcfe6d39f8c3
Signed-off-by: Ole Troan <ot@cisco.com>
2018-06-18 18:30:09 +00:00
Ole Troan
a5ee900fb7 Python API: Add enum and union support.
As well as a rewrite of the encoders/decoders to make it more readable and extensible.

Change-Id: I253369ac76303922bf9c11377622c8974fa92f19
Signed-off-by: Ole Troan <ot@cisco.com>
2018-06-17 15:21:00 +00:00
Mohsin Kazmi
0af529c4c5 vom: Add support for af-packet dump
Change-Id: I0a1fc36ac29f6da70334ea3b5a5cf0e841faef76
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-06-11 23:34:18 +00:00
Damjan Marion
98a5d810f8 add script for virtual function create/show/remove
Change-Id: I151bc4269cb4d7e8572a6a676da20f69206d6c3f
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-06-10 06:56:38 +00:00
Neale Ranns
daff178403 DHCP Client Dump
- use types on the DHCP API so that the same data is sent in comfing messages and in dumps
- add the DHCP client dump API
- update VOM to refelct API changes
- rename VOM class dhcp_config* dhcp_client*
- the VOM dhcp_client class maintains the lease data (which it reads on a dump) for clients to read

Change-Id: I2a43463937cbd80c01d45798e74b21288d8b8ead
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-06-07 03:11:10 -04:00
Neale Ranns
e8d7ff5f87 Interface Tag: memset field in VOM, clear the tag in VPP on interface delete
Change-Id: Id97de732b5952d5d86202e7749c9e81cf8dbed87
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-06-03 02:21:26 +00:00
Neale Ranns
0053de63ec ARP proxy dumps
Change-Id: I8335ebf266becf2f42bb3f28a17dfed8d9b08f97
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-05-25 11:45:48 +00:00
Igor Mikhailov (imichail)
3b854a5cb8 MLX DPDK glue: exclude dependency on OFED libraries
MLX DPDK mlx5_glue.so, compiled under RTE_LIBRTE_MLX5_DLOPEN_DEPS,
provides a run-time check for OFED libraries.
To do so, it links with -libverbs -lmlx5 so that the binding could
occur or fail at runtime (see DPDK 59b91be and VPP 59b91be).
However RPM install fails on systems without OFED installed since
RPM spec has an entry "Requires: libmlx5".
To overcome this, exclude such requirement from the spec.

Same applies to mlx4_glue.so, compiled under RTE_LIBRTE_MLX4_DLOPEN_DEPS

Change-Id: I0ff6efc49581104743cc7e5b1f7cdbc1665ce9ba
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2018-05-19 11:25:09 +00:00
Neale Ranns
9e2f91548b IP unnumbered dump
Change-Id: I4f245fd225bcc563fafee2696cd039477d661c57
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-05-18 13:03:05 +00:00
Neale Ranns
d2d4c10ecd VOM: nat-binding populate handle errors
Change-Id: I8f41c659c6f50efd679a56878c6fdcf426ac9410
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-05-15 11:30:11 +00:00
Mohsin Kazmi
ab96d181e9 vom: fix interface admin up/down
Change-Id: I7b9d28a940e0d7c4a4acda3f4048261c67bf49ff
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-05-14 10:23:42 +00:00
Thomas F Herbert
6168623290 Add python lex and yacc to spec file build requirements.
Change-Id: Icf1a30c9df4d3298407c00383020debe99acdbff
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-05-04 21:53:09 +00:00
Dave Barach
f4addbd03a Add plugin periodic function elisp skeleton
Change-Id: Ide4e2d2a06dff20c94ae5436ba6361b246052867
Signed-off-by: Dave Barach <dave@barachs.net>
2018-05-01 07:14:08 +00:00
Damjan Marion
164e5f8c63 Move VOM to extras/vom
Change-Id: Iea174f03dfba3bd06024db0f0cc373532300dcae
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-04-27 11:35:07 +00:00
Damjan Marion
2cdc2bde95 libmemif: fix build on ununtu 18.04 (VPP-1244)
Change-Id: If830dc0c8171b14c8a686db899885e26628a6f91
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-04-26 18:40:16 +02:00
Chris Luke
159fcf4074 VPP 18.04 release notes
- Notes for the 18.04 release
- Fixes for table layout of previous API summary
- Update list_api_changes.py script

Change-Id: Id99ed4df2e76e2704f949ee940eedf9ede7e8f4b
Signed-off-by: Chris Luke <chrisy@flirble.org>
(cherry picked from commit ac2b7363f437afedd100162c901b5d03cb37a34a)
2018-04-26 01:38:48 +00:00
Jakub Grajciar
435f500215 libmemif: fix implicit declaration of memfd_create
Change-Id: Icdeaad1d5df63bd5e9426958a3b73582bbd226b7
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-04-24 18:40:01 +00:00
Dave Wallace
d5ae97cfbf Script to list patches that changed api files.
- Add Ole Troan's script from vpp-dev email:
  https://lists.fd.io/pipermail/vpp-dev/2017-October/007037.html

Change-Id: I0cbf5118169dc25f0edd659a5a9f5cde8619f780
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit b0a517b6c881ad82ac15e52e832056314216058d)
2018-04-24 04:05:45 +00:00
Jakub Grajciar
5e1f69a4eb libmemif: fix clang compilation errors/warnings
Change-Id: I09444281a932d367162a10b90c3759db71c03350
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-04-12 14:05:05 +00:00
Thomas F Herbert
b42b77b31c Restore building of debuginfo RPMs
JIRA: VPP-1227

Remove rpm tmp dir build debuginfo rpms.
Reverses commits to fix a build problem with old versions of rpmbuild
that prevented builds in chrooted environments with short paths
and short project names.

Change-Id: I852696dccc984bf4882fd3ca9ec4c8da080bdb41
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-08 13:34:45 +00:00
Thomas F Herbert
6673178d48 Remove subunit from Centos requirements.
JIRA: VPP-1229

Subunit and Subunit-devel in Fedora and Epel but not Centos.
This patch moves the Fedora from the Centos specific requirements.

Change-Id: I093a4571cddf14af5ee2827ba8ee00c7bcbe6fc0
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-08 13:34:07 +00:00
Thomas F Herbert
5f56c091ce Remove mbedtls from build requirement for Centos
Although mbedtls is in Fedora and Epel, it is not
in Centos yet. It is not strictly necessary for TLS
which also can use openssl.

Change-Id: Id62d52000f9ecda2fc10d1938f02be1142fa5bdb
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-06 02:56:03 +00:00
Dave Barach
104404348f Fix bugs in emacs plugin templates
use api_helper_macros.h
declare plugin_main_t external in the header file
declare plugin_main_t instance in plugin.c
setup main_t->vlib_main, main_t->vnet_main in the init routine

Change-Id: Ib8c742a60c63adfe9724447e1a2acc8c7723e90c
Signed-off-by: Dave Barach <dave@barachs.net>
2018-04-03 19:56:11 +00:00
Jakub Grajciar
3744fc7abc libmemif: zero-copy-slave mode + header space
Slave is now able to dequeue buffers from rx queue and enqueue them to tx queue
(zero-copy operation). Slave can produce buffers with headroom, which will allow adding
 encap without copy.

Change-Id: Ia189f8de1a68be787545ed46cf78d36403e7e9bf
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-30 20:48:36 +00:00
John DeNisco
4dc8397629 Fix minor issues.
Change-Id: I1ce5106d99dd4d4b1c033d4873b4511e9a170afc
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-03-30 20:46:03 +00:00
Damjan Marion
23d4e8a6b5 Build libmemif as part of verify job
Change-Id: I7e808b5bcbb74343a4ed6782f115ed07e9bfe3a6
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-28 13:41:15 +00:00
Jakub Grajciar
ab7c2b012d libmemif: add private header size field
Change-Id: I09567c8ee9c92e91918840f80942a005069d9842
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-28 13:35:40 +00:00
Jakub Grajciar
ecfa2aaa63 libmemif: version 2
Change-Id: Ia2532695aa9199d2a7b684aebef43df0b8235531
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-26 12:01:49 +00:00
Billy McFall
1ac36d7421 VPP-1197: SELinux: 'create tap' (vhost-net backend TAP) fails when
SELinux is enable

Update the SELinux Policy to allow management of the new vhost-net
backend TAP interface.

Change-Id: I2d0633a7fce2ee2a4d6e0008ab13599647c14f42
Signed-off-by: Billy McFall <bmcfall@redhat.com>
2018-03-14 18:43:39 +00:00
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
8d0f2f0031 License text cleanup
Change-Id: I105375c653b1a1dce8f0f71005b281ff137c6f42
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-12 15:08:44 +00:00
Matthew Smith
30ec82161f Add RPM buildtime dependency on mbedtls-devel
Update RPM spec to know about it

Change-Id: I61c7c1ce96071e3b84d792c18ff8880217b14fce
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-03-02 16:48:25 +00:00
John DeNisco
8996cb6f77 Change tcp config to reflect some recent changes.
Change-Id: Ic151be9ff7114c1fdec22d5ad056654960cf12b2
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-03-01 15:06:31 -05:00
Matthew Smith
7c172cb245 Adjust vpp-selinux-policy postinstall
Only run semodule command on hosts where selinux
is enabled.

Change-Id: I7bcfc758e44bb0f41ec657ad395352ddb92766eb
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-02-28 21:47:43 +00:00
Victor Nguyen -T (victong2 - OTHERWISE PORTAGE at Cisco)
3f8562eaab Fix SELinux capabilities. Creating a tap interface with 'tap connect' was returning an error when VPP was launched as a service (tested on CentOS 7.3). Adding 'net_admin' to SELinux capabilities for VPP solves the issue.
Change-Id: Icd0529b49adb86e7b371283a6f39af03816951c5
Signed-off-by: Victor Nguyen <victong2@cisco.com>
2018-02-28 14:35:30 +00:00
John DeNisco
9fa5cf4669 Add iperf VM/vhost creation
Change-Id: I27a59203f406120558f73bfcc12dca8835ae6361
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-02-16 08:09:27 +00:00
Chun Li
5dca5465f5 libmemif: cleanup queue info while memif connecting
Change-Id: I4265fd0606f87f80f43f7f59ced1c3a73de82776
Signed-off-by: Chun Li <chunl2@cisco.com>
2018-02-07 10:02:20 +08:00
Jon Loeliger
190282cb0a RPMS: Also install C.py, JSON.py for vppapipgen.
When building plugins outside of the VPP tree, the vppapigen
tool requires the use of the C.py / JSON.py code.  To that end,
install it in /usr/share/vpp as referenced.

Change-Id: I457d58e7bde7140c7811fa0a93b4f44d1310784a
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2018-01-31 19:14:17 +00:00
Billy McFall
28cf3b7da2 VPP-899: Run VPP under SELinux
Add an SELinux profile such that VPP can run under SELinux on RPM based
platforms. The SELinux Policy is currently only implemented for RPM
packages, specifically, Fedora, CentOS and RHEL. Doxygen User
Documentation has been included (selinux_doc.md). Once some discussion
on file locations has completed (see vpp-devlist), updates to the Debug
CLI documentation will also need to be updated.

Additional changes:
Patch Set 2:
- Rework selinux_doc.md such that each line is only 80 characters
  instead of each sentence on a line. Made additonal minor chnages
  to the text.
- Update vHost Debug CLI documentation to reflex new socket location.
  Cleaned up some text from when I originally wrote it, to better
  reflex proper use.
- Update exec Debug CLI documentation to be more inline with suggested
  helptext, added text regarding recommended script file location.
- For Debian builds, create the /var/log/vpp/ directory. I don't use
  Debian very much, so please pay extra attention to
  build-data/platforms.mk and build-root/deb/debian/.gitignore.
- Per discussion on VPP call, changed the default log location to
  /var/log/vpp/vpp.log.
- Changed the socket location for vHost in AutoConfig to
  /var/run/vpp/.
Patch Set 3:
- Update selinux_doc.md based on comments.

Change-Id: I400520dc33f1ca51012d09ef8fe5a7b7b96c631e
Signed-off-by: Billy McFall <bmcfall@redhat.com>
2018-01-30 13:26:20 +00:00
John DeNisco
a7da67fcc6 Add support for 18.01.
Fixed bugs.
Improved some config as the result of Tetration experience.

Change-Id: Ie4b8d2d77ca3ad165675c42fa2d9a4798d871f9d
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-01-26 14:55:33 -05:00
Dave Wallace
6cd396cec3 docs: Clean up TOC
Change-Id: I5415c002a431d84372f56d4a77dc2aabd6ef55f7
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit 1eb970d16028e9a987c1dd2bfe217d1313262b81)
2018-01-24 01:23:34 +00:00
Ole Troan
9d42087149 VPPAPIGEN: vppapigen replacement in Python PLY.
This is a version of the VPP API generator in Python PLY. It supports
the existing language, and has a plugin architecture for generators.
Currently C and JSON are supported.

Changes:
 - vl_api_version to option version = "major.minor.patch"
 - enum support
 - Added error checking and reporting
 - import support (removed the C pre-processor)
 - services (tying request/reply together)

Version:
 option version = "1.0.0";

Enum:
 enum colours {
   RED,
   BLUE = 50,
 };
 define foo {
  vl_api_colours_t colours;
 };

Services:
 service {
  rpc foo returns foo_reply;
  rpc foo_dump returns stream foo_details;
  rpc want_stats returns want_stats_reply
      events ip4_counters, ip6_counters;
 };

Future planned features:
 - unions
 - bool, text
 - array support (including length)
 - proto3 output plugin
 - Refactor C/C++ generator as a plugin
 - Refactor Java generator as a plugin

Change-Id: Ifa289966c790e1b1a8e2938a91e69331e3a58bdf
Signed-off-by: Ole Troan <ot@cisco.com>
2018-01-23 13:03:53 +00:00