summaryrefslogtreecommitdiffstats
path: root/extras
AgeCommit message (Collapse)AuthorFilesLines
2018-02-28Adjust vpp-selinux-policy postinstallMatthew Smith1-1/+1
Only run semodule command on hosts where selinux is enabled. Change-Id: I7bcfc758e44bb0f41ec657ad395352ddb92766eb Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-02-28Fix SELinux capabilities. Creating a tap interface with 'tap connect' was ↵Victor Nguyen -T (victong2 - OTHERWISE PORTAGE at Cisco)1-2/+2
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-16Add iperf VM/vhost creationJohn DeNisco12-19/+452
Change-Id: I27a59203f406120558f73bfcc12dca8835ae6361 Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-02-07libmemif: cleanup queue info while memif connectingChun Li2-1/+5
Change-Id: I4265fd0606f87f80f43f7f59ced1c3a73de82776 Signed-off-by: Chun Li <chunl2@cisco.com>
2018-01-31RPMS: Also install C.py, JSON.py for vppapipgen.Jon Loeliger1-0/+3
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-30VPP-899: Run VPP under SELinuxBilly McFall7-4/+536
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-26Add support for 18.01.John DeNisco5-62/+89
Fixed bugs. Improved some config as the result of Tetration experience. Change-Id: Ie4b8d2d77ca3ad165675c42fa2d9a4798d871f9d Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-01-24docs: Clean up TOCDave Wallace2-3/+9
Change-Id: I5415c002a431d84372f56d4a77dc2aabd6ef55f7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com> (cherry picked from commit 1eb970d16028e9a987c1dd2bfe217d1313262b81)
2018-01-23VPPAPIGEN: vppapigen replacement in Python PLY.Ole Troan1-0/+1
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-18dpdk plugin depends on numactl-libsGabriel Ganne1-1/+1
dpdk_plugin.so depends on libnuma.so.1 Change-Id: Ia1fd3b5cec043b294cc14cd947908675b451deac Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-12-15apps: refactor uri and update build infraFlorin Coras6-0/+470
Change-Id: Ifa9966a27586a1a65038d069cf4a1e6e21a72d45 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-04Optimize RPM build processRenato Botelho do Couto2-21/+18
* Remove unused variable OS_VERSION_ID * Do all RPM building in build-root/rpmbuild * Add build-root/rpmbuild to .gitignore * Move redundant code to a target called 'spec' * Copy spec file to SPECS instead of SOURCES * Only set %{_topdir} macro when it's undefined, and because of that remove sed call to delete definition on spec file * Pass _version and _release using --define parameter instead of using sed to add them to .spec * Move rpm files to build-root after build finishes * Add dist tarball to .gitignore Change-Id: I230d60b62914056b353f7f8701d14754b0bf7f8c Signed-off-by: Renato Botelho do Couto <renato@netgate.com>
2017-11-30Cleanup and simplifyMarco Varlese2-32/+14
This patch addresses two things: 1) It simplifies the Makefile to build RPMs by removing duplication and use environment variables instead; 2) It aligns openSUSE with others with regards to invoke "pkg-rpm" by the build.sh for Vagrant Change-Id: I51557f54e4ddf49d83bb69fa0035c8fff122857e Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-11-29Using $(CURDIR) to fix the absolute path issueMarco Varlese1-1/+1
Change-Id: Ic26edd34a2980fc8cf34514433a7b7076660316e Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-11-21libmemif: unit test update, continue configure if check module missingJakub Grajciar3-8/+10
Change-Id: I11ef4e7dcf1759eb3545be5db2a7196d1217a6dd Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-17Add a non interactive modeJohn DeNisco5-131/+221
Change-Id: I2ebcb1acb43b4316e3dd48e83909d710dbef4e2f Signed-off-by: John DeNisco <jdenisco@cisco.com>
2017-11-17subunit is required on centos as well as fedoraGabriel Ganne1-2/+0
Remove fedora dependency restriction on subunit and subunit-devel packages. libsunit is only called in test/ext/Makefile on all platforms safe opensuse. Change-Id: I483f42f20f6ba8bd112c18a9c51753a5d816d1c1 Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com> Signed-off-by: Romain Ly <romain.ly@enea.com>
2017-11-16libmemif: unmask head/tail pointers fix, additional ring info in ↵Jakub Grajciar3-75/+109
memif_queue_details_t Change-Id: I1dbf91c2a1575d5a82af70bfccdd990310323a8c Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-11VCL: clean up disconnect_session debug output.Dave Wallace1-31/+36
- Run VPP in xfce4-terminal in VCL unit tests. Change-Id: Iba6a870617a811261de0a54fa38cdb5109ae1d07 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-11-08memif: do not mask head and tail pointersDamjan Marion3-59/+61
Change-Id: Ie849ab713ff086187c18a91ab32e58207fe94033 Signed-off-by: Damjan Marion <damarion@cisco.com> Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-08VOM rpm build fixesNeale Ranns1-0/+1
Change-Id: I1f76aabecfd7d33b924a4856a4c3fc683b9b8802 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-11-07libmmeif: Makefile fixJakub Grajciar1-1/+1
Change-Id: Id3fae50714802a4e2a5a82fcdfcee5b640f47e37 Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-07libmemif: add dep to MakefileJakub Grajciar1-2/+2
Change-Id: I7a14474e4545016f0de97f92602e1dfcc0ffac12 Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-05libmemif: example app can generate ICMP, dev perf tests (using icmpr-epoll)Jakub Grajciar6-46/+774
Change-Id: Ib72ede51559754f606c0a1d57f4fb624d032caa6 Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-05dpdk: build nasm from sourceSergio Gonzalez Monroy2-7/+0
As not all distros have the minimum required nasm version (2.12.01) available, build nasm from sources when building Intel IPsec MB library. Change-Id: Iaa9da87f612c0f84da5704162c3bf430b3351076 Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-11-01A bit of cleanup, updated the README, started vhost test.John DeNisco7-42/+245
Change-Id: I49b998644b8b79c778c1186fc09831b1cd8fc015 Signed-off-by: John DeNisco <jdenisco@cisco.com>
2017-10-30libmemif: perf optimizationJakub Grajciar1-65/+34
Change-Id: Ie3bd75e0e98c7ecb4c66dba701131363e5ec89a2 Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-10-25VCL: Fix vcl test scripts to check vcl.am instead of uri.amDave Wallace1-1/+1
Change-Id: I34ab79ddf0a612be1f2a4223e46811516e5b317e Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-24VCL-LDPRELOAD: statically link vppcom into libvcl-ldpreload.soDave Wallace17-9269/+25
- Move VCL & VCL-LDPRELOAD source into src/vcl - Statically link vppcom into libvcl-ldpreload.so Change-Id: I778300b37e8b06640d9dbc01caf297edf7a6edb7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-20VCL-LDPRELOAD: Refactor vcom_socket* and fix crash in vppcom_selectDave Wallace2-89/+92
- filter verbose debug output with VCOM_DEBUG > 2 - clean up nomenclature, renaming vppcom_*() functions to vcom_session_*() - fix vppcom_select crash with NULL maps. Change-Id: I6e416a096d6fd800aa26991c2439e24e8fc38cc5 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-19LD_PRELOAD poll implementationshrinivasan ganapathy7-4/+748
- add poll implementation - implementation based on vppcom_poll - implementation based on vppcom_select - currently vppcom_select implementation is picked Change-Id: If6c2862ae72e9969335aca5b8085957c98287dc0 Signed-off-by: shrinivasan ganapathy <shrinivasanganapathy@gmail.com> Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-19vcl-ldpreload: test script enhancementsDave Wallace4-0/+59
Change-Id: Iff302a35cd5d35bf0671a63e8ba81a0c60a231eb Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-19VCL-LDPRELOAD: fix iperf3 socket_test.shDave Wallace1-15/+0
Change-Id: Ib6b52917af717d3341429163fb9ecc903cf717fb Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-17Initial commit for phase 2, Add some simple validation.John DeNisco4-8/+235
Change-Id: I5b1d5600cdef4b05cc7c2f1cddb60aed2cc49ac2 Signed-off-by: John DeNisco <jdenisco@cisco.com>
2017-10-17VCL_LDPRELOAD: Add unit test scripts.Dave Wallace5-0/+160
Change-Id: I5fbb3339a6dbd7b40fecf66bfda3fd3249b4a90c Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-17VCL: refactor VCL_LDPRELOAD env vars.Dave Wallace1-5/+3
- Update vcl-ldpreload references to use $WS_ROOT. Change-Id: I8e79f7c5e330eda6548a2baf84613b0a4d360811 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-16LDPRELOAD: Remove hack code in getpeernameSteven1-14/+0
Now the real implementation of getpeername is there, we remove the hack version of getpeername in LDPRELOAD. Change-Id: I8fa2ba93d346f78d04129a87ee17a834cba537da Signed-off-by: Steven <sluong@cisco.com>
2017-10-15VCL/LDPRELOAD: getpeername and getsocknameSteven1-30/+10
Add support for getpeername and getsockname system calls Change-Id: Ie22787b967bb2a5fead0f5fcffd779e4f39b3302 Signed-off-by: Steven <sluong@cisco.com>
2017-10-14Fix bug with temporary directory when building rpms.Thomas F Herbert1-1/+1
Fixes bug introduced in commit 5349f94d. JIRA: VPP-1014 Change-Id: Ia18f4c6f5f1124306cce790a36f6de970d186687 Signed-off-by: Thomas F Herbert <therbert@redhat.com> (cherry picked from commit 8c5bfbcc09f44f3ed2b87b0b5c257fbb7b735f97)
2017-10-14Deps added to Makefile must also be in spec file.Thomas F Herbert1-0/+4
Deps are required for Fedora too. This patch is merged in version stable/17.10. It should also be merged in master because it fixes breaking rpm builds in some circumstances. JIRA: VPP-1015 Cherry-picked from stable/1710 Change-Id: I10807069742cdd6b09a0f34d9d05e9cae4146ec3 Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-10-13LDPRELOAD: Add TCP_KEEPIDLE, TCP_KEEPINTVL, and SO_KEEPALIVESteven1-9/+32
Implement the subject setsockopt by passing them to VCL Change-Id: Ida5136cb3a51d2bf30080e8c4af4239681ed2184 Signed-off-by: Steven <sluong@cisco.com>
2017-10-13LDPRELOAD: Add ioctl, fcntl, and setsockopt supportSteven6-32/+255
Add support for the following system calls: ioctl (FIONREAD) fcntl (F_GETFL) fcntl (F_SETFL) setsockopt (SOL_IPV6, IPV6_V6ONLY) setsockopt (SOL_TCP, TCP_NODELAY) setsockopt (SOL_SOCKET, SO_REUSEADDR) setsockopt (SOL_SOCKET, SO_BROADCAST) This patch supersedes https://gerrit.fd.io/r/#/c/8765/ Change-Id: I5d5309d9f43d93a990b389d8cb667631de1903fe Signed-off-by: Steven <sluong@cisco.com>
2017-10-12libmemif: Add memif_cancel_poll_event() + bug fixing.Milan Lenco3-30/+78
Change-Id: I27d6bf93216f1f639f01fad730506afdc7115e46 Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
2017-10-12Add support for packaging SUSE RPMs.Marco Varlese2-0/+384
This patch adds a new spec file for SUSE distribution and modifies the Makefile to learn which platform is building the RPMs for. Change-Id: Ic8ee0ddf978042cc1785ebc28bd1a6c9faf9bb74 Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-12Initial push of vcl-ldpreload to extrasKeith Burns (alagalah)14-0/+8327
- fix checkstyle Change-Id: I4317757258ed6a65b8fae1377f17db39375282ac Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com> Signed-off-by: shrinivasan ganapathy <shrinivasanganapathy@gmail.com>
2017-10-11Redhat and small system supportJohn DeNisco23-0/+6148
Initial 17.10 commit Final 17.07 cleanup, 17.10 next Added CentOS grub support, this should complete the CentOS support Added Centos install/unistall Added TCP parameters. Change-Id: I064e3a4118969ac36e62924a6a3f8a98f132ba60 Signed-off-by: John DeNisco <jdenisco@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2017-10-09Allow use of /etc/os-release fileMarco Varlese4-45/+32
The top-level Makefile in VPP already uses the file /etc/os-release to recognize which OS the build is being performed on. The scripts for vagrant images instead were still using different files for different distros and adding a new distro to be supported causes issues with the extra-logic to deal with it. This patch aligns the vagrant scripts to use the same approach followed by the top-level Makefile and simplifies the steps to identify / update the OS and build / run VPP. Change-Id: I539f4a7c27b3fef70ed1c12b0276049bc47dc289 Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-04libmemif: memif_rx_burst fixJakub Grajciar1-2/+2
Change-Id: I2f488fef828df8915b57552567e1be79efe69700 Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-10-03Repair vlib API socket serverDave Barach2-2/+0
- Teach vpp_api_test to send/receive API messages over sockets - Add memfd-based shared memory - Add api messages to create memfd-based shared memory segments - vpp_api_test supports both socket and shared memory segment connections - vpp_api_test pivot from socket to shared memory API messaging - add socket client support to libvlibclient.so - dead client reaper sends ping messages, container-friendly - dead client reaper falls back to kill (<pid>, 0) live checking if e.g. a python app goes silent for tens of seconds - handle ping messages in python client support code - teach show api ring about pairwise shared-memory segments - fix ip probing of already resolved destinations (VPP-998) We'll need this work to implement proper host-stack client isolation Change-Id: Ic23b65f75c854d0393d9a2e9d6b122a9551be769 Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-09-28General documentation updatesChris Luke6-31/+41
- We now have several developer-focused docs, so create an index page for them. - Rework several docs to fit into the index structure. - Experiment with code highlighting; tweak the CSS slightly to make it slightly nicer to look at. Change-Id: I4185a18f84fa0764745ca7a3148276064a3155c6 Signed-off-by: Chris Luke <chrisy@flirble.org>