477 Commits

Author SHA1 Message Date
Chris Luke
aa761e1281 VPP-57 Add missing license headers in doc files
Change-Id: Icd1f8952f66d3cee027c59f3148c67f1839de306
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-16 11:48:16 +00:00
Dave Wallace
9c5b2b301c VPP-64: Fix top-level "make pkg-deb" which breaks if CDPATH is set in the user's
bash environment.

Change-Id: Ib13e6fdafa67175937e57fad4e75e553cb1e08a3
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-05-16 11:47:05 +00:00
Dave Wallace
ed18a1c840 VPP-65: Fix top-level "make install-dep" to work behind a firewall /
proxy-server on Ubuntu.


Change-Id: I3f662455728adb81ca5a079540d8a9c615a5b977
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-05-16 11:46:28 +00:00
Filip Tehlar
195bceec56 ONE-13: Add CLI/API for LISP static remote mappings
Change-Id: Ic4c717af9629541bac0a0e6c65d0157619c8f578
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-15 15:02:51 +00:00
Chris Luke
75a37b372e VPP-62 Add a doxy filter to enable vpe.api doc
This makes Doxygen think the API definitions are structs which is close
enough to be able to document the API methods.

It also has logic to create an indexed API page but that's disabled for
now because it duplicates the "brief" text twice in the struct doc.

Fixes a minor line numbering issue in filter_c.py.

Change-Id: If380160b73e7c10d999b35a76f55d0e27cbc91cc
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-15 13:22:54 +00:00
Dave Barach
7e55d364fd VPP-63: clean up config scripts, remove specific hostnames
Change-Id: Ifb77256fa691b1a90045a10448835c09b764e74f
Signed-off-by: Dave Barach <dave@barachs.net>
2016-05-14 18:39:11 -04:00
Chris Luke
1d1644c260 VPP-57 Add doxygen build dependencies
Change-Id: I764d8a440c050d753e0380e139f489d3085f17f4
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-13 19:28:39 +00:00
Florin Coras
ddfafb82ec ONE-7: Fix map-request encapsulation
We now try to find the first map-resolver IP we have a route to and
decide the ip lookup node according to map-resolver IP.

Change-Id: I68fc12861dc1e9a203ebf6caefd4f053a741a785
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-13 19:14:47 +00:00
Ed Warnicke
a20935192a Whitespace probe for CI
Change-Id: I3744ee19a21dcea2885aef2800244c93aa19763a
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-13 13:49:34 -05:00
Chris Luke
b585097048 VPP-57 Add Doxygen to VPP
- Configures Doxygen.
- Adds a source filter to do magic on our use of the preprocessor to do
  constructor stuff to make Doxygen grok it better.
- Adds a convenience helper to the root Makefile.
- Adds a README.md to the root directory (and which Doxygem uses as its
  "mainpage".
- Add several other documentative files.
- Currently using SVG for call graphs, though this may have a
  load-time performance impact in browsers.

Change-Id: I25fc6fb5bf634319dcb36a7f0e32031921c125ac
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-13 17:23:36 +00:00
Keith Burns (alagalah)
94b1442a67 VPP43 - NSH refactoring: Added nsh-map nodes
- removed vnet/vnet/nsh-gre
- removed all nsh from vnet/vnet/nsh_vxlan_gpe to
  vnet/vnet/nsh
- moved vnet/vnet/nsh_vxlan_gpe to vnet/vnet/vxlan_gpe
- added cli and binary api for VXLAN GPE tunnels
- plan to move vnet/vnet/nsh to new repo (sfc_nsh) and make plugin
- added cli for NSH (binary API will be done in sfc_nsh)
- vnet/vnet/gre will be extended in VPP-54

Change-Id: I1d27def916532321577ccd68cb982ae0d0a07e6f
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-05-13 16:07:41 +00:00
Andrej Kozemcak
3e53fc5664 ONE-11: Fix bugs in LISP API
- check input variables
- in locator_set dump, add support for remote locator_set

Change-Id: Ib10028e83fead358f820ae45c71b6ca4dfbe2f1e
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
2016-05-13 12:20:11 +02:00
Damjan Marion
b0618bdc84 VPP-53: clang build fails in API on SR tests
Change-Id: Ib3117d7b5b6b8c97acfea17ad27c965f6ce2e829
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-12 19:06:59 +00:00
Maros Marsalek
0e0c99f8de Generate jvpp sources in build-root
+ Fail build when JVpp does not compile

Change-Id: I4ad3ffb5d7ff6edaad89de66a9f0bd79a14fb690
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-05-12 14:09:56 +02:00
Ed Warnicke
beabdf0161 Revert "Whitespace change for testing CI"
This reverts commit cf9b712f57e3e81662e0815bd19ce19583783650.

This reverts gerrit: https://gerrit.fd.io/r/#/c/1078/

Change-Id: I4cf8c238fd81b5dc8bd077bbdd00cf72aef796ed
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-12 04:06:05 +00:00
Ed Warnicke
cf9b712f57 Whitespace change for testing CI
Change-Id: I52bf3c1c8ece08a4b52fce1f34704b944f9c1888
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-12 03:52:59 +00:00
Tibor Sirovatka
c288066921 JVPP - null checks changed to Objects.requireNonNull usage
Review changes incorporated

Change-Id: Ia04b62144a0d3643095b518db538c7eb5137c048
Signed-off-by: Tibor Sirovatka <tsirovat@cisco.com>
2016-05-12 03:15:23 +00:00
Florin Coras
e6250e0a7f ONE-9: Fix clang build errors
Change-Id: Icbf3e269471ee0fc1d21f842b2ea220328a0f891
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-11 11:47:27 +00:00
Florin Coras
bd92de551f ONE-8: Fix adj signature issues
When inserting routes into ip4/6 fibs, we first added a dummy adjacency
and afterwards manually updated its rewrite header to enable src/dst
forwarding. The downside to this is that the adj signature is changed
and therefore when deleting a route the adjacency signature is not
removed from adj_index_by_signature hash resulting in crash if the same
adjacency is re-inserted.

This patch avoids the issue by enforcing the insertion of 'complete'
adjacencies thereby obviating the need to update the rewrite header.

Change-Id: Ib43bfe72a65e2cf9ef7685a99596eb1d7723e543
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-11 11:03:20 +00:00
Filip Tehlar
215104e67f ONE-6: dp is not programmed when re-enabling LISP
Change-Id: I4c0c5d44168da811a713943275430a378ff46929
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-11 00:16:44 +00:00
Chris Luke
93dcd1d743 VPP-46 Fix cut-and-paste in the debug CLI
Since the move to line-mode the debug CLI was eating everything in the
input_vector but only processing upto the first newline. Cut-and-paste
type operations generally send a large block of input with multiple
newlines and thus all but the very first line were simply ignored.

This patch fixes that and also cleans up the difference between
input_vector and current_command which in turn removes a lot of cruft
from the keystroke parser.

Previously current_command was just the character accumulator inside the
char-by-char keystroke parser; complete commands were copied back to
input_vector (overwriting anything already in there).

Now, in char-by-char mode:
- input_vector is the stream of incoming bytes yet to be processed
- current_command is the accumulated characters of the next command to
  be executed; once newline is found, it is the complete command to be
  executed.

In line mode:
- input_vector and current_command are the same thing.

Change-Id: I72d21f0f3508b413879071ab186a71cef1124a2b
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-10 13:37:03 -04:00
Andrew Yourtchenko
716d959349 Avoid clobbering output_function by concurrent CLI sessions doing vlib_process_wait_for_event*.
A problem is easily reproducible by taking the test harness code from the commit,
and launching it in two terminals with some time overlap - the outputs will
be sent to the wrong session. This commit moves the output_function and argument
from a global structure into the process structure, thus the output_function
is not clobbered anymore and each session gets only its own output.

To ensure the callers can redirect the outputs to different destinations
(e.g. the API calls via shared memory, etc.) the existing logic
for vlib_cli_input() was retained.

To avoid the magic numbers usage in the logic that does the page-alignment
of the process stack, there are changes around the stack[] member
of vlib_process_t. Also added a compile-time assert to ensure that
the stack does indeed start on the page size multiple boundary.

Change-Id: I128680ac480735e5f214f81a884e414268e5d652
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2016-05-10 17:13:00 +00:00
Filip Tehlar
46d4e36792 ONE-4: Add LISP enable/disable API/CLI
This patch adds an enable/disable API/CLI for control plane
which calls similar functions for data plane. When re-enabling
it also re-populates dataplane with tunnels and interfaces.

Change-Id: Id8c3d6af90ecc0be331d502756914b1f62824046
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-05-10 13:52:48 +02:00
Matus Fabian
8a95a482cf Add af_packet API
Change-Id: I39409ae9e75fdb59d8cbbd940fa192b24eb79b6a
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-05-10 11:10:37 +00:00
Florin Coras
686a5a5b2b ONE-3: Delete dst route when src fib is empty
Properly check that src fib is empty.

Change-Id: I4072169027a404cad66eaaa8450f7c18f1fa8073
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-09 21:24:48 +02:00
Shwetha Bhandari
05866a16c0 VPP-44: iOAM service and path verification using shamir's secret sharing
Change-Id: I445ad13f8f93cb75cacc94192c4ae85c8ca14e35
Signed-off-by: Shwetha Bhandari <shwethab@cisco.com>
2016-05-09 13:31:53 +00:00
Florin Coras
ed09a050b7 ONE-5: Remove unused vnet_lisp_gpe_add_del_tunnel API
Change-Id: Ib22ec807d2b74b7c3cb37f66052cd07bc4d896db
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-09 11:35:52 +00:00
Ole Troan
30d41fff9b VPP-20: Verify valid sw_if_index in ip_address_dump.
(Also checked other API calls for same error without finding any.)

Change-Id: I1062ecf8eff004efb3fad4582a00c6b512c36999
Signed-off-by: Ole Troan <ot@cisco.com>
2016-05-09 12:24:54 +02:00
Ed Warnicke
027103e561 Switch to using -headless JDK
By default, jdks bring a bunch of UI related things
we don't need, so switch to headeless.

Also, use default-jdk-headless for Ubuntu after 14.04.
Use openjdk-8-jdk-headless for Ubuntu 14.04.

Change-Id: I3cf14c39c9f59dc2f1beba8dfb19971f4b67f5a6
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-07 13:03:22 +00:00
Ed Warnicke
59611303fb Switch to using nexus.fd.io for dpdk tarball
Change-Id: I9751cbb9137627491ee4bd03e0318429327c0bd8
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-07 13:02:42 +00:00
Chris Luke
a6116ef5cf VPP-35 Add GRE tunnels to sw_interface_dump
GRE tunnels were missing from vpp_api_test's sw_interface_dump command.

$ sudo ./build-root/install-vpp_debug-native/vpp-api-test/bin/vpp_api_test json
vat# sw_interface_dump
[
...
  {
    "sw_if_index": 7,
    "sup_sw_if_index": 7,
    "l2_address_length": 0,
    "l2_address": [0, 0, 0, 0, 0, 0, 0, 0],
    "interface_name": "gre0",
    "admin_up_down": 1,
    "link_up_down": 0,
    "link_duplex": 0,
    "link_speed": 0,
    "mtu": 0,
    "sub_id": 0,
    "sub_dot1ad": 0,
    "sub_number_of_tags": 0,
    "sub_outer_vlan_id": 0,
    "sub_inner_vlan_id": 0,
    "sub_exact_match": 0,
    "sub_default": 0,
    "sub_outer_vlan_id_any": 0,
    "sub_inner_vlan_id_any": 0,
    "vtr_op": 0,
    "vtr_push_dot1q": 0,
    "vtr_tag1": 0,
    "vtr_tag2": 0
  }
]

Change-Id: I6f174f3c384eac464250b22f43b25be6a844aa66
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-07 13:01:55 +00:00
Chris Luke
716490069e VPP-45 Fix crash when GRE packet received on new i/f
If a GRE tunnel is created, no other interface added and the GRE tunnel
is not set "up" then a crash occurs on the first packet for this tunnel
because fib_index_by_sw_if_index[] does not yet have a mapping to the fib
the new interface is in. The code to set this is missing from
gre/interface.c

Change-Id: I567ad74a2af3ea5afe4a40ed39a1d4395642f77c
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-07 13:01:23 +00:00
Ed Warnicke
30aff24e10 Small improvement to vagrant file
Change-Id: Ia85ed0ef55cb5da118289667d7b217d8890d487e
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-07 12:58:55 +00:00
Chris Luke
393490e0f5 VPP-34 GRE traffic blackholes in encap direction
The GRE code is missing the logic to indicate the "hardware" interface
is up. The fix is to listen for admin up/down events on the "software"
interface and reflect that into the hardware interface state.

Change-Id: If06e4f03989b2c52c32f50c11e1943e42bb2609f
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-06 17:09:09 -04:00
John Lo
7ae717de72 Check IP adj_index to make sure it is valid to prevent possible crash
Change-Id: I439aac05638fd40e314bec8756e42a32c436321c
Signed-off-by: John Lo <loj@cisco.com>
2016-05-06 04:55:13 +00:00
Damjan Marion
4e0fcd7932 Fix vpp_lite build caused by missing definition of unlikely macro
Change-Id: I11b34e171c1c7907dd3faec219866418b4e792f6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-05 22:50:03 +02:00
Andrej Kozemcak
a9edd85e4c ONE-2: Add new LISP dump API for lisp gpe
API:
	lisp_gpe_enable_disable_dump

Change-Id: I1c8e78f00f9a3f99c1f2f54884af565292e4ccf8
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
2016-05-05 11:46:10 +00:00
Keith Burns (alagalah)
fdff1e6ed5 VPP-39 - refactoring of NSH into own folder
- common header files and structs used in both GRE and VXLAN-GPE

Change-Id: I06d0b773e936fb011408817237059f24a4beb412
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-05-05 11:45:22 +00:00
Mohsin Kazmi
8f15e922f7 NETMAP: Some fixes
1) Correct the NIOCRXSYNC macro on receive side from NIOCTXSYNC.
2) Flush the pending messages in the tx rings.

Change-Id: I581040d03b1633a3d6fb22fa1fb285bcb7975afb
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2016-05-04 17:18:11 +00:00
Matthew Smith
29d8510d22 VPP-42: VPP crashes in IPsec code when running multithreaded
Change-Id: Ib231642cfead5f5e8e45508361a11c87aad83b51
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2016-05-04 11:41:52 -05:00
Marek Gradzki
0aaf92ffbb HONEYCOMB-10: fix issues with FindClass in multithreaded environments
Added jclass reference caching and updated JNI version to 1.8

Change-Id: Ie8dbbd4b91b90bf9e4e9a6148313e46056b0d67e
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-04 15:52:22 +00:00
Dave Barach
9942bba79f VPP-12: only remove vpp-related files from /dev/shm
Change-Id: I1b6983a6d23d3d2635814cdd307efa25cd5c8b7b
Signed-off-by: Dave Barach <dave@barachs.net>
2016-05-04 09:42:20 -04:00
John Lo
b53693ab0c ENIC driver patch to set PKT_RX_VLAN_PKT only if pkt passed has VLAN tag
Change-Id: I72475bfe50e42886ffa8fb6e58eb8192892fa381
Signed-off-by: John Lo <loj@cisco.com>
2016-05-04 03:18:44 +00:00
Ed Warnicke
d6a779c411 Fix for unattended in Makefile
Also works around verify

Change-Id: I79ac470ec3fa9943c3a0913ebfaaf91176eb9a81
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-04 01:50:47 +00:00
Marek Gradzki
5657c5c808 HONEYCOMB-10: Copy context identifier from request to reply
Some of the send_*_details methods did not copy context
identifier from dump request message to details response.
The context identifier is used for request<->reply matching.

Change-Id: I8a744f3817bef94d7fa8ecb7bec6ea942c1a8793
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-03 15:09:49 +00:00
Hongjun Ni
d06f1b790c VPP-15 Add decap-next for nsh-gre tunnel short_help
Change-Id: I1965e9852f62aaf8c1576b72446a43b5878eb452
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-03 10:14:46 +00:00
Hongjun Ni
d91b22fd6c VPP-15 Add ethernet support for nsh-gre's decap-next
Change-Id: Icf3424671b4aa0f619983a3eb61785b533fdc11d
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-05-03 02:07:03 +00:00
Florin Coras
c7e91e4451 Small fixes to lisp-gpe header and decap
- enforce lisp-gpe router mode (set P bit)
- fix selection of ip6 decap node
- fix dual-dual lool error index init

Change-Id: I1a9623c0eb7e81a2cfb60efaa88dc44ee65e664d
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-05-02 22:04:00 +00:00
Chris Luke
633134b78a VPP-31 Fix linker issue with new sr-replicate
Changes in gnu ld in Ubuntu 16.04 tickles an issue with the
declaration pattern used for vlib_node_registration when,
as is the case in sr_replicate.c, the forward declaration is
seen by the linker in a module before the real declaration.

This patch uses the "extern" keyword in the forward declaration
to avoid this issue and removes extra forward declarations.

Change-Id: I075b0cd9932404e1360c7f9aec7114003d110f60
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-02 22:03:07 +00:00
Maros Marsalek
047bf84949 HONEYCOMB-10: JVpp documentation
Change-Id: Ibca8fc8c1962ca36d91898c1523afb2df6dfdc49
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-05-02 21:19:26 +00:00