87 Commits

Author SHA1 Message Date
Tetsuya Murakami
1b81e6ef66 srv6-mobile
Type: feature

Plug-in for IPv6 Segment Routing Mobile

This funcion was developed by

Signed-off-by: Satoru Matsuchima <satoru.matsushima@gmail.com>
Signed-off-by: Filip Varga <filipvarga89@gmail.com>
Signed-off-by: Tetsuya Murakami <tetsuya.mrk@gmail.com>

Signed-off-by: Tetsuya Murakami <tetsuya.mrk@gmail.com>
Change-Id: Ie995adc73d8f8d444339aab71619c3599e69f12d
Signed-off-by: Tetsuya Murakami <tetsuya.mrk@gmail.com>
2019-11-19 07:02:40 +00:00
Dave Barach
210c74531c nsim: add FEATURE.yaml
Type: docs

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I75d1efc503135bdc224f563b4e02b449904bfa08
2019-11-17 18:39:07 -05:00
Damjan Marion
06c194d91b virtio: feature arc have higher priority than redirect
Type: fix
Fixes: 8389fb9

Change-Id: Ie159eb444b28b36a7af86049b80fba4e49be93cb
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-13 15:26:22 +00:00
Damjan Marion
801c7016ad pmalloc: always lock pages
Type: feature

Change-Id: I5bbf37969c9c51e40a013d1fc3ab966838eeb80d
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-07 22:27:28 +00:00
Vratko Polak
09220b8d00 misc: Use tabs in MAINTAINERS
Type: style

Change-Id: Idd15c372f43a720e18a973e78ec5ccd00e1ad709
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-31 19:01:56 +00:00
Paul Vinciguerra
35b037fd7f vpp_config: fix typos in templates
Type: style

Change-Id: Ia435604c8c48a78054848095567f1e54d028227e
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-10-30 20:17:12 +00:00
Paul Vinciguerra
27ccbfdec3 misc: MAINTAINERS clean up typos
Type: style

Change-Id: I0241005c1bb009444fdc510fc1a6599cc90d91dd
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-10-30 19:39:55 +00:00
Paul Vinciguerra
97c998c281 docs: devices-- add FEATURES.yaml
Type: docs

Change-Id: I039ba9ad5385452b202366fba0b367506a21ea4f
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-10-30 09:08:11 +00:00
Dave Barach
d7b306657d mdata: buffer metadata change tracker plugin
A handy tool in case you need to know which metadata will be changed
when a packet visits a certain node.

Reflect metadata changes into format functions used by the
vpp-specific wireshark dissector.

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I96fe8a24db4082bb29fe2a33cc522e8616a3a1bb
2019-10-25 14:36:13 +00:00
Chenmin Sun
e8c9f4f1c0 flow: Add 'drop' and 'redirect-to-queue' actions support
Type: feature

Add 'drop' and 'redirect-to-queue' support in
'test-flow' command and DPDK plugin

Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I567bb77cb401c9bd1309ecabe802fe9de88c746b
2019-10-16 18:34:51 +00:00
Mohsin Kazmi
29467b5347 gso: Add gso feature arc
Type: refactor

Change-Id: Ib4a8e7e64093b2db1deda6663325080bc8337605
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-10-14 22:48:38 +00:00
Mohsin Kazmi
26c7a4b0b6 ping: Move to plugin
Type: refactor

Change-Id: I51d5bf54dfd408aa0c406cbdf0f4be10ef19d10d
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-10-14 22:44:35 +00:00
Vratko Polak
6df2c79541 papi: harden socket handling
In the previous implementation of socket transport for PAPI,
socket methods .send and .recv_into were used.
But they are not guaranteed to send/receive all the data
for the full message. The receive part contained a loop,
but it handled only the main message, not the header.

This patch replaces .send with .sendall
and uses newly defined _read_fixed method.

Also, removed Paul from maintainers,
as he is not active much, lately.

Type: fix

Change-Id: Iae1a68bf8f9e666856b7c7d62ebfe22defc5dfe1
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-10-11 18:48:21 +00:00
Jakub Grajciar
2d3282e17f geneve: API cleanup
Use consistent API types.

Type: fix

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I1964e4f0afe6f030ae9c8e28fcba5fd81aa1f130
2019-10-10 08:06:25 +00:00
Ole Troan
ab96454e3a ioam: remove api boilerplate
Note: The VAT _test.c plugins need some more adjustments.

Type: refactor
Change-Id: Ifa150683d7d68db7950f66ef85eea73c8281ba14
Signed-off-by: Ole Troan <ot@cisco.com>
2019-10-09 07:53:10 +00:00
Neale Ranns
02bfd641b6 dhcp: Move to plugin
Type: feature

Change-Id: I3fe27a8ef577741d9a5c4f090ec91cf68fb44fe3
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-10-07 19:33:39 +00:00
Ole Troan
7ff64fb975 oddbuf: remove api boilerplate
Type: refactor
Change-Id: Ic4922da46bf941249dd74b1a8bc6a98c62c099b7
Signed-off-by: Ole Troan <ot@cisco.com>
2019-10-03 12:38:03 +00:00
Ole Troan
0d935531f9 stn: remove api boilerplate
Type: refactor
Change-Id: I212c87c03324137c79a674d0842ca4537b28e4b4
Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-30 15:32:10 +00:00
Ole Troan
ee98904e0c ct6: remove api boilerplate
Type: refactor
Change-Id: Ibf00279d8065e7ef4fc06e8b9946dcc7bfd647de
Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-30 10:40:16 +02:00
Ole Troan
0aa35a7fad l2e: remove api boilerplate
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: Ifca5eee01b7813ddb6a8e4510f3adb96ade55fa7
2019-09-30 08:38:47 +00:00
Ole Troan
941185ae65 svs: remove api boilerplate
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I08eab052b67893cc6633d235885438e69950904b
2019-09-27 16:05:51 +00:00
Ole Troan
1bc96680c4 cdp: remove api boilerplate
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I3b4bbbf2574faf8d06546eb72f127fa47479e988
Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-27 11:49:11 +00:00
Damjan Marion
864d857c6c classify: remove includes from classifier header file
Type: refactor

Change-Id: I6f0af1c3078edce1c1b29a8b99c4a232d7084d33
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-09-20 13:52:06 +00:00
Jakub Grajciar
aa4438a311 cop: API cleanup
Use consistent API types.

Type: fix

Change-Id: I6ac453c88628a4dbb08b03c408df09b91b1ea5ca
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2019-09-19 16:30:52 +00:00
Dave Barach
43765e2b4e builtinurl: initial working attempt
Note that the builtin URLs are disabled by default. To activate,
"builtinurl enable" or use the builtinurl_enable API.

See .../extras/http/sample.md for some Hugo-friendly .md w/ embedded
Javascript that accesses the builtin URLs.

Type: feature

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I6d82d9292c41d6d2d90be73ba8a1a043fb20c986
2019-09-18 14:26:59 +00:00
Dave Barach
84a563ae40 dns: fix trivial multi-thread deadlock
Add a simple lock trace mechanism

Type: fix
Ticket: VPP-1752

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: Idc82b1ad59adb0f7c185d27ced57e9a4c25ce62f
2019-08-22 19:33:34 -04:00
Dave Barach
e8d2dcb6a6 dns: handle multiple replies for single requests
The world is a mess. A single DNS request may yield multiple, subtly
different responses; all with the same DNS protocol-level ID.

Last response wins in terms of what ends up in the cache.

First response wins in terms of the response sent to the client. Hard
to do otherwise since we have no clue that more than one answer will
be forthcoming.

Type: fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I3175a40eb1fea237048d16b852a430f5ab51eaef
2019-08-19 18:23:35 -04:00
Dave Barach
6b53fd5163 http_static: tls support
Type: refactor

Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I45745e568cd943293d0015a61f67ec799b6804d8
2019-08-10 11:30:39 -04:00
Ole Troan
edfe2c0079 api: vppapitrace JSON/API trace converter
usage: vppapitrace.py [-h] [--debug] [--apidir APIDIR] {convert,replay} ...

optional arguments:
  -h, --help        show this help message and exit
  --debug           enable debug mode
  --apidir APIDIR   Location of JSON API definitions

subcommands:
  valid subcommands

  {convert,replay}  additional help
    convert         Convert API trace to JSON or Python and back
    replay          Replay messages to running VPP instance

To convert an API trace file to JSON:
vppapitrace convert /tmp/api.trace trace.json

To convert an (edited) JSON file back to API trace for replay:
vppapitrace convert trace.json api-edited.trace

To generate a Python file that can be replayed:
vppapitrace convert /tmp/api.trace trace.py
vppapitrace convert trace.json trace.py

Replay it to a running VPP instance:
vppapitrace replay --socket /tmp/api.trace

In VPP that file can be replayed with:
vpp# api trace replay api-edited.trace

This patch also modifies the API binary trace format, to include the
message id to message name table.

Change-Id: Ie6441efb53c1c93c9f778f6ae9c1758bccc8dd87
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
2019-08-08 23:01:18 +00:00
Neale Ranns
99536f4b49 dhcp: send unicast and broadcast packets via the IP adjacency
Type: feature

this means DHCP packets are subject to the IP features configured on the interface
- the unicast packets already were sent throught the adj
- added UT for DHCP client sending a unicast renewal

Change-Id: Id50db0b71822f44bf7cb639a524195cdc9873526
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-07-26 09:32:56 +00:00
Neale Ranns
5281a9029e qos: QoS dump APIs
Type: feature

Change-Id: I514b40026986f3828c8727453456b20a0a45f3af
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-07-24 14:55:59 +00:00
Vratko Polak
7f37a94bab vapi: add python scripts to vpp-dev package
As requested in https://lists.fd.io/g/vpp-api-dev/message/18
three vapi scrips are packaged, destination to share/vpp/.

Also:
+ Add "vapi" as a separate component to maintainers file.
+ Add also vppapigen/generate_json.py to share/vpp/.
+ Improve CMakeLists.txt indentation.

Type: feature

Change-Id: Ia06715621aa344e8ee759410b293509a54f81fdd
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-07-24 13:59:16 +00:00
Mohsin Kazmi
1acdbc2fac misc: Add maintainer entry for native virtio driver
Type: feature

Change-Id: Ieda0d8fbd2c1524ddf9fc776bc5c315629e893bf
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-07-24 12:03:13 +00:00
Mohsin Kazmi
0f09a47f10 gso: Fix the l3 packet gso segment size
Type: fix
Ticket: VPP-1721

Change-Id: I7a5d4f1440048ddc9f599ac11d06e5a7df20440e
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-07-22 13:02:28 +00:00
John Lo
b966b96aa4 nsim: cross-connect mode crash at interface output node
Type: fix

Change-Id: If99c1d8a7ec97a726430a927eab0d3b57222af1f
Signed-off-by: John Lo <loj@cisco.com>
2019-07-12 18:04:20 +00:00
Benoît Ganne
bbe6d110a1 syslog: fix syslog structured data formatting
syslog structured data are stored as vectors not null-terminated
C-strings. Use '%v' instead of '%s'.

Type: fix
Fixes: b4515b4be4

Change-Id: Iba224f271c832daca90d4bbccfef45d0f563fe60
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-07-12 01:50:55 +00:00
Dave Barach
e5a7d59778 emacs: update the vat plugin generator
Use the VAT_PLUGIN_REGISTER macro.

Type: refactor

Change-Id: I5ab9f311028c07a37a40cc1328d9724f852783ee
Signed-off-by: Dave Barach <dave@barachs.net>
2019-07-10 18:00:59 +00:00
Nathan Skrzypczak
50f4a41714 udp: UDPC handle open fail
Type: fix

Change-Id: Ib8fb4957f4da9e464e2575c45c8ff3828db89872
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-07-09 16:52:29 +00:00
Neale Ranns
81cfa9cf38 vxlan-gbp: Decap ignores reserved bits
Type: fix

from the draft:
3.  Backward Compatibility

   VXLAN [RFC7348] requires reserved fields to be set to zero on
   transmit and ignored on receive.

Change-Id: I98544907894f1a6eba9595a37c3c88322905630e
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-07-05 17:57:33 +00:00
Neale Ranns
fe2fff37bb ethernet: ARP disabled node
Type: feature

improve the tracing from:

00:00:01:259665: pg-input
  stream pcap3, 42 bytes, 3 sw_if_index
  current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259690: ethernet-input
  frame: flags 0x1, hw-if-index 3, sw-if-index 3
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:259702: arp-input
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:259710: error-drop
  rx:pg2
00:00:01:259717: drop
  null-node: blackholed packets

to

00:00:01:283323: pg-input
  stream pcap3, 42 bytes, 3 sw_if_index
  current data 0, length 42, buffer-pool 0, ref-count 1, trace handle 0x0
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283348: ethernet-input
  frame: flags 0x1, hw-if-index 3, sw-if-index 3
  ARP: 02:03:00:00:ff:02 -> ff:ff:ff:ff:ff:ff
00:00:01:283360: arp-input
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283369: arp-disabled
  request, type ethernet/IP4, address size 6/4
  02:03:00:00:ff:02/172.16.3.5 -> 00:00:00:00:00:00/172.16.2.1
00:00:01:283374: error-drop
  rx:pg2
00:00:01:283380: drop
  arp-disabled: ARP Disabled on this interface

Change-Id: I49b915b84cf56d6c138dedd8a596c045c150c4fb
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-07-05 17:55:24 +00:00
Florin Coras
3ffe6cadf0 sctp: move to plugins, disabled by default
Removed sctp buffer metadata from vnet/buffer.h, added it to the
plugin. Add registration APIs for plugin-based vlib_buffer_opaque /
opaque2 decoders, used by "pcap dispatch trace ..." for display in the
wireshark dissector.

Type:refactor

Not actively maintained.

Change-Id: Ie4cb6ba66f68b3b3a7d7d2c63c917fdccf994371
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
2019-07-05 17:49:39 +00:00
Paul Vinciguerra
1671d3be38 pg: format_pg_input_trace - reorder fields
00:00:00:814640: pg-input
  stream pcap0-sw_if_index-1, 42 bytes, 1 sw_if_index

is changed to:

00:00:00:814640: pg-input
  stream pcap0-sw_if_index-1, 42 bytes, sw_if_index 1

Type: style

Change-Id: I9bb32494c9c1d08bc7588f088ed67a60ed3236dd
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-06-29 09:12:53 +00:00
Florin Coras
b4ca8b11e4 sctp: add option to enable/disable
Type: feature

By default sctp is disabled to avoid wasting cycles.

Change-Id: I1e2f764c7168b5c15062efbe5895de93dcc2614e
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-06-27 21:30:36 +00:00
Vratko Polak
a37810dcf4 papi: prevent message_table inconsistencies
Socket transport is maintaining message_table to map
message name to index. After disconnect and re-connect,
the VPP may have been restarted with different set of plugins,
so message_table has to be wiped.

+ Edited MAINTAINERS to recognize "papi" as a separate component.

Type: fix
Change-Id: I1f16ad7ee0886e03bbc6a17bcddbfcaa322354e5
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2019-06-26 19:45:43 +00:00
Neale Ranns
023d23ad89 fib: default flow hash config for each DPO protocol type
Type: fix
Fixes: 59fa121f

Change-Id: I9eb4fe1612734e54932228527c37bf33b705dbdb
Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-06-26 11:46:18 +00:00
Chore
b1edf37bd5 misc: nat is added to MAINTAINERS file.
Type: fix

Change-Id: I3c6a0abad22c86c7125dc10e6d9be3d5af6d4ee3
Signed-off-by: Chore <s3m2e1.6star@gmail.com>
2019-06-26 08:55:25 +00:00
Florin Coras
00dd74cee7 hsa: move vcl test apps to hsa
Type: refactor

Change-Id: I352975585c1091bfc5b85d7f8fe985f9059820a7
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-06-26 02:15:20 +00:00
Florin Coras
e3b8682d3f hsa: move session-apps to host-stack apps plugin
Type:refactor

Change-Id: I114fea3a54258797e961d8627a99ba2098674d20
Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-06-25 14:25:54 +00:00
Andrew Yourtchenko
9d97d01411 tests: fix the MAINTAINERS file
Undo the change from I8488ab318a596c9b737308829cedfb7e96e57302 to the MAINTAINERS file

Change-Id: Ieea4a59dad127c2f2dcd86a6a0c699c23fb9158d
Type: fix
Fixes: d84661c
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-06-24 17:52:25 +00:00
Paul Vinciguerra
496b0dee7f tests: refactor VppDiedError.
- Move Exception into same module as TestCase.
- Move the error reporting logic inside the error.
- Allows testing of the returncode and signal_name for tests to consume.
- Fix the signal reporting code:
	VppDiedError: VPP subprocess died unexpectedly with returncode -6 [unknown].
    displays as:
	VppDiedError: VPP subprocess died unexpectedly with return code: -6 [SIGABRT].

Type: test

Change-Id: I8488ab318a596c9b737308829cedfb7e96e57302
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-06-24 16:03:09 +00:00