Age | Commit message (Collapse) | Author | Files | Lines |
|
== CONTENT ==
* SCTP chunks definition as per RFC4960;
* Helper functions to set/get values to/from the corresponding chunks;
* Hooks to the session/application layers;
* Complete state-machine handling;
* Implementation for unexpected chunk received in a certain
state (state-machine error handling)
* Support for 1-single connection;
* Sample application to test receive/transmit data-path;
* Test to validate SCTP stack;
Change-Id: I1b55c455ab400be9513f4e094dadfc3181d2ebc9
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
|
|
now we get:
00:00:04:288925: pg-input
...
00:00:04:289345: ethernet-input
...
00:00:04:289524: ip6-input
...
00:00:04:289553: ip6-mfib-forward-lookup
...
00:00:04:289584: ip6-mfib-forward-rpf
entry 14 itf 2 flags Forward,
00:00:04:289754: ip6-drop
UDP: 2002::1 -> ff01:2::255
tos 0x00, flow label 0x0, hop limit 64, payload length 21
UDP: 1234 -> 1234
length 21, checksum 0x90d1
00:00:04:289802: error-drop
ip4-input: Multicast RPF check failed
08:36:44,517 Count Node Reason
182 ip4-input Multicast RPF check failed
8 ip6-icmp-input neighbor advertisements sent
8 ip6-icmp-input router advertisements sent
8 arp-input ARP replies sent
Change-Id: I1b29cda4ec77a88db45bfb25c7473cd64bbf501a
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
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>
|
|
forwarding provided by the source is pushed to all other entries
it covers in the sub-tree
Change-Id: I2a45222ef653358f55c2436de3e3c6353cfadba2
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Fixes the remainig apis that explicitly check svm queue length.
Change-Id: I6055c7c50050affee3098e162e15fb12c205e5db
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
This does not update api client code. In other words, if the client
assumes the transport is shmem based, this patch does not change that.
Furthermore, code that checks queue size, for tail dropping, is not
updated.
Done for the following apis:
Plugins
- acl
- gtpu
- memif
- nat
- pppoe
VNET
- bfd
- bier
- tapv2
- vhost user
- dhcp
- flow
- geneve
- ip
- punt
- ipsec/ipsec-gre
- l2
- l2tp
- lisp-cp/one-cp
- lisp-gpe
- map
- mpls
- policer
- session
- span
- udp
- tap
- vxlan/vxlan-gpe
- interface
VPP
- api/api.c
OAM
- oam_api.c
Stats
- stats.c
Change-Id: I0e33ecefb2bdab0295698c0add948068a5a83345
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
- separate client/server code for both memory and socket apis
- separate memory api code from generic vlib api code
- move unix_shared_memory_fifo to svm and rename to svm_fifo_t
- overall declutter
Change-Id: I90cdd98ff74d0787d58825b914b0f1eafcfa4dc2
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
- rename l2_bridged to is_dvr. Including on the ip.api
this was new in the 18.01 release so no compatability issues.
- steal the free space in vnet_buffer_opaque_t for use with flags.
- run the ipX-output feature arc from the DVR DPO
Change-Id: I040e5976d1dbe076fcdda3a40a7804f56337ce3f
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I123259c131f1bd16c70990bf7f48d9a275c53ce2
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
|
|
Change-Id: Ie8f6bb4fcd3e4fa269e86a77d2f21c87f372b783
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: Ibb6f450783d0ab64bd943c19f12d0954b0a94b24
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
|
|
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>
|
|
Change-Id: I23081ea25a8d40d8ebe1fcb6efe4143e9c5a0fc6
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
|
|
Change-Id: I655382f7f74181dd7c795a2b22f151f76b50e793
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I497e9f6489dd35219bcf2b51ac992467aac4c8eb
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
exist in configuration
Change-Id: I01a69c4eef2c6224a24907b8fed12dcb1b642307
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
|
|
Change-Id: I565277eafbce3d4f59a7f0d497fca1c4fed3cfc8
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
|
|
Change-Id: I35e166feeb0ac1e0e570efe07cb5f4cbeb5b8670
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
This fixes a crash if the first buffer in buffer chain is not traced,
but some other buffer (mid-chain) is.
Change-Id: I2c9f529ae0bc3263d20981e0cb83ce24ed292bd8
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Change-Id: I32ec3ff341e70ceaa6203df5a9e7c3ffdae20a06
Signed-off-by: Swarup Nayak <swarupnpvt@gmail.com>
|
|
Change-Id: I63d720378b92813993525f80fee90fc79df27fba
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Move elog_sample.c to src/examples/vlib
Change-Id: I7d32c83c424b9ca4a057372c7fc6a6e2b7dab034
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Icab8f1411da22bd56ef0de3b100eaa9519a42f52
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
DBGvpp# sh fib mem
FIB memory
Tables:
SAFI Number Bytes
IPv4 unicast 2 673066
IPv6 unicast 2 1054608
MPLS 1 4194312
IPv4 multicast 2 2322
IPv6 multicast 2 ???
Nodes:
Name Size in-use /allocated totals
Entry 96 20 / 20 1920/1920
Entry Source 32 0 / 0 0/0
Entry Path-Extensions 60 0 / 0 0/0
multicast-Entry 192 12 / 12 2304/2304
Path-list 40 28 / 28 1120/1120
uRPF-list 16 20 / 20 320/320
Path 72 28 / 28 2016/2016
Node-list elements 20 28 / 28 560/560
Node-list heads 8 30 / 30 240/240
Change-Id: I8c8f6f1c87502a40265bf4f302d0daef111a4a4e
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I62a6ee78ee9ad73fd58a46fbdca54fd964fec113
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I43a7ac5b6c33810a465568d1955f400f4ef08786
Signed-off-by: Milan Lenco <milan.lenco@pantheon.tech>
|
|
There's nothing ip6-sr specific about it.
Change-Id: I9e3710162bd81b535c46599c988557abf5a5003b
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I32de25890ac0a643314f650591d2479879d9a2a6
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: Idc7e7c35f17d514589d1264f1d1be664192ee586
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
- makes the VAPI generated file more consumable.
- VOM build times improve.
Change-Id: I838488930bd23a0d3818adfdffdbca3eead382df
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
This allows to use the classifier to steer source routing packets instead
of using the "sr steer" command.
This way we can steer on anything instead of only the dst ip address.
test:
* add add_node_next function to the VppPapiProvider class.
* add simple test scenario using the classifier to steer packets with
dest ip addr == a7::/8 to the source routing insert node.
* use new interface indexes (3,4) instead of (0,1) to prevent a cleanup
conflict with the other tests which attach a specific fib to the
interface.
The test creates interfaces sepsrated from the other tests to prevent a
conflict in the cleaning of the ip6 fib index 1 which causes vpp not to
be able to find a default route on this table.
Change-Id: Ibacb30fab3ce53f0dfe848ca6a8cdf0d111d8336
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
|
|
When a DUMP with sw_if_index == ~0 is used to get all Neighbor
entries for all interfaces, it is unclear in the details to
which interface the neighbor belongs.
Clear that up by returning the associated sw_if_index as well.
Change-Id: Ib584a57138f7faceffed64d7c1854f7af92e0e42
Signed-off-by: Jon Loeliger <jdl@netgate.com>
|
|
- see draft-ietf-bier-mpls-encapsulation-10
- midpoint, head and tail functions
- supported payload protocols; IPv4 and IPv6 only.
Change-Id: I59d7363bb6fdfdce8e4016a68a9c8f5a5e5791cb
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: Ia8941b7b90f14dd688aca215b2dae1cc5c8f4472
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Change-Id: I28c8abe49c9858966a66530d3dc41c074c6901f3
Signed-off-by: Matus Fabian <matfabia@cisco.com>
|
|
Change-Id: I5e35921acb65157a3de8ea0c53b3a6fa5cfca044
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I5f92e40d2fe08a05f51622143648433732141cf4
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Change-Id: Id14826eefe43168747c8ba69b3b600441a7d4047
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
|
|
A UDP-encap object that particiapates in the FIB graph and contributes
DPO to teh output chain. It thereofre resembles a tunnel but without the
interface. FIB paths (and henace routes) can then be created to egress
through the UDP-encap. Said routes can have MPLS labels, hence this also
allows MPLSoUPD.
Encap is uni-directional. For decap, one still registers with the UDP port
dispatcher.
Change-Id: I23bd345523b20789a1de1b02022ea1148ca50797
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: Id324a757517f85973097e20e2eb88d64ae0e931b
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
calculation
Change-Id: I62f625a93e5d818caef382316035cd5447bd8fef
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
|
|
Change-Id: I1326f21f0a00a201d2bdb55b73af14fca6ba8888
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
To enable this, applications set the proxy flag in their attach requests
and pass the transport protocols they want to act as proxies for as part
of the attach options.
When proxy is enabled, session rules that point incoming packets to the
proxy app are addedd to the local and global session tables, if these
scopes are accessible to the app. In particular, in case of the former,
the rule accepts packets from all sources and all ports destined to the
namespace's supporting interface address on any port. While in case of
the latter, a generic any destination and any port rule is addedd.
Change-Id: I791f8c1cc083350f02e26a2ac3bdbbfbfa19ece3
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I7aafdecd6f370411138e6ab67b2ff72cda6e0666
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: Ib87eccb853cafceea5f5513f6bb51c2364449afa
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
This introduces 5-tuple lookup tables that may be used to implement
custom session layer actions at connection establishment time (session
layer perspective).
The rules table build mask-match-action lookup trees that for a given
5-tuple key return the action for the first longest match. If rules
overlap, ordering is established by tuple longest match with the
following descending priority: remote ip, local ip, remote port, local
port.
At this time, the only match action supported is to forward packets to
the application identified by the action.
Change-Id: Icbade6fac720fa3979820d50cd7d6137f8b635c3
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I4164c4c19c8dbfd73e6ddf94a12056325cc093b9
Signed-off-by: Neale Ranns <nranns@cisco.com>
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
|
|
- Global variables declared in header files without
the use of the 'extern' keword will result in multiple
instances of the variable to be created by the compiler
-- one for each different source file in which the
the header file is included. This results in wasted
memory allocated in the BSS segments as well as
potentially introducing bugs in the application.
Change-Id: I6ef1790b60a0bd9dd3994f8510723decf258b0cc
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Vat supports setting value for the parameter, but
'not_last' is ignored by ip_add_del_route handler,
so can be removed.
This patch
- updates ip.api,
- removes vat handlers
- updates vpp_papi_provider.py
(also mpls_route_add_del with unused not_last)
Change-Id: Ife15de123db4bc8247103a29b90bce1988e46534
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I0c1671f3eaf2dad084e3ac9fb124c9ed78273f50
Signed-off-by: Dave Barach <dave@barachs.net>
|