Age | Commit message (Collapse) | Author | Files | Lines |
|
- 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>
|
|
override the default CXXFLAGS (which provides a -O2) with the
system set CFLAGS (providing -O0/-O2 for debug/release builds)
Change-Id: Ic84e51baafdc22d37139303566d705d759e36721
Signed-off-by: Neale Ranns <nranns@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: Ic55ad2e0a1435f552ce84ed1a9b1981191bc178b
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I112afaa1f2ccd2ee62a436c73802afaea9b44779
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
L2 Emulation is a feautre that is applied to L2 ports to 'extract'
IP packets from the L2 path and inject them into the L3 path (i.e.
into the appropriate ip[4|6]_input node).
L3 routes in the table_id for that interface should then be configured
as DVR routes, therefore the forwarded packet has the L2 header
preserved and togehter the L3 routed system behaves like an L2 bridge.
Change-Id: I8effd7e2f4c67ee277b73c7bc79aa3e5a3e34d03
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
New constructor can construct the l3 rule
using all or partial paratmeters.
Change-Id: I828ec1c4713decb5824e4a73c3692cebc2324cc2
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I341f522b46dd85fb3b1dd43fd125513f16f89171
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I4c22ad08bf8fa3e8f05b8938ff447cafa4eea5b2
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I39b975e6dc3b3ed1f81c1736ed498aee05f6a88b
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
Currently:
- vpe.api (supported previously)
- stats.api
- oam.api
Change-Id: Iab48d5d142e9a1ea0a4f366352b1d9429cc47309
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
JVpp maps request messages with replies
for Java API user convenience, e.g.:
- do not polute send APIs with messages other than requests/dumps,
- allow callback registration only for replies/details and events.
Since there are no conventions for event message naming
(https://wiki.fd.io/view/VPP/API_Concepts#API_Conventions),
jvpp should not limit events to messages
that end with 'event' or 'counters' suffix.
Instead jvpp should treat all messages
except for requests/dumps as potential events.
Such behaviour was introduced on Java API level by
https://gerrit.fd.io/r/#/c/8377/
in order support reusing
details messages as events (e.g. BFD events).
This patch goes one step forward by
relaxing rules at jvpp generation level.
Change-Id: I2a35e9eb2a288b2cf02d36ca95e6cb13e76e19e3
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: If14d1b2d9b73de77321d94f10d48fa1bb04846f6
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I4fbf4a574f455628d56e78cefc1a76adc06bc801
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Since introduction of dedicated SW Interface Event,
there is no need for special handling of messages
that can be both requests and events.
Change-Id: I76575e32c6d5b19e9a1ca953e5841d8ac3de4de7
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Since L2FibTable removal
and introduction of dedicated SW Interface Event,
special message handling code can be removed.
The patch also fixes issues
found by Intelij's code inspection tool.
Change-Id: Ic4b2fd12ac30c7627f4cd6769716e4bb52ec0b10
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I03d7508649e80a538fcf9541815e2c29224bc87a
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I14c838ee99f9bc2db66bb2e775039d2cb2e7924f
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I3d936d456ee27b2e0857843295efb60a9f2d0be7
Signed-off-by: Matus Fabian <matfabia@cisco.com>
|
|
logging: allow a client to register a callback handler to recieve log messages
that way the client can maintain a correctly sequenced log
populate: fix the creation of interface and the setting of the handle
stats: the reset promise idea is not defined behaviour.
Use an eanble/disable command pair
Change-Id: I347720bb65df2874c7619e722d593bc863ee2bf1
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I0c5e198049d510f3b3f9a6aefe49c315449768e3
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I2e8743d70a8d8604d370218a73d5f37c2f7c4617
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
- find object by key
- compare objects
Change-Id: I36ec8612be9482bcef7ceced2a59f7403f77b3e8
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: Id8b159dd72b92798538a32fe570fb0038d742ef2
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
- Add a basic heuristic to have vpp_papi search in several
places for the JSON API files.
- It's clever enough to work out the path to these files
from within several places in the source tree, falling
back to the system location as a last resort.
Change-Id: I1f823588e5aa0064d545ce4206ab29dbdedc4c7f
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I8a16f2ba884451ca8028adb91383d57fdf1d9d50
Signed-off-by: dongjuan <dong.juan1@zte.com.cn>
|
|
Change-Id: I5e3fa5e098a8ea26dbc3d3a1dc064e3507e33d8e
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I262f2113f5805c0f89b615a0383efa8520184dd1
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I273e1ea28c3c146e4a88d031c790c1cc56dccf00
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I2fa219d6530f1e7a3b8ae32d35a0c60ba57c5129
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: Id085c1e3cbc7bf03df02755f9e35896cdb57e9e3
Signed-off-by: Damjan Marion <damarion@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>
|
|
Change-Id: Id87e245882eab80a85a2883ffdb7a0f3b7f26a75
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I74886c31f8ceba2561679513560cf5ae46757236
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
If key is passed without ":", results in segmentation fault.
This patch fixes this issue.
Change-Id: I4e6bb3431c261cc2ac752b966a11edd7aa3304a0
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
When compile with gcc version 4.8.5, the compiler doesn't
able to optimize the execution time initialization order.
This patch fixes the initialization order.
Change-Id: I14eacdf30f7ef481f72452adfc955400e37ae559
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I0e627adb7846a33ee6e43f66cde648b4ae7f5cd4
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
test provide two ways to count invocations:
1) maximum number of invocations and received replyies within 1 sec
2) measure time in ns from first request to receiving last reply
over set amount of requests
specific command is included in Readme
results from testing on my local machine were:
350K/sec Callback Api Read - show version
250K/Sec Future Api Read - show version
120K/sec allback Api Write - add table
Change-Id: Ie0383d848b98ee2b4b90c38a827a24acd28cac72
Signed-off-by: Matej <matej.perina@pantheon.tech>
|
|
Change-Id: I1f76aabecfd7d33b924a4856a4c3fc683b9b8802
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I4dfdbf7f58af4f37141fa325edf8780b2dc4c8bb
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
split the VOM into two halves; a top/front-end and a bottom/backend.
Only the backend includes the auto-generated VAPI.
This serves two purposes:
1 - improves ompile times for VOM, since the VAPI is included
only in the backend.
2 - does not expose VAPI to users of VOM
Change-Id: I17b93aeaef10c0eba8612016d9034aca5628d9f7
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I0db55e079f9b1835668c8efe69e6e6f7f8437b00
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
Change-Id: I3d3e5dff5b22fca58a50da6a9d0aaf1182e736dd
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Change-Id: I0b5806dd1d8cb45f40354cfe6cae7f4e76309f92
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I4b03a4f86a7e0e47874715398ca9f8ff0f5386ee
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
|
|
The VOM is a C++ library for use by clients/agents of VPP for programming
state. It uses the binary APIs to do so. Various other common client side
functions are also provided. Please see om.hpp for a more detailed description.
Change-Id: Ib756bfe99817093815a9e26ccf464aa5583fc523
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Co-authored-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
A bug in the decoder of messages when there was a non-array compound type.
The typical result was an error message from the struct library:
"error:unpack_from requires a buffer of at least 4 bytes"
Change-Id: Ie30fec6fc39b9f4177b54fa4adc4fc69674f0e12
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
- message sending method inside synchronization blocks causes
deadlock between sending and receiving part
- breaking atomicity of sending message and putting future with
corresponding id to map needs additional handling by writer and receiver,
regardless which part get access to sync block first will create
new future and second one will complete it and remove from map,
in case of dump calls where control ping reply is required
as confirmation that all information were send, if ping reply is
received before writer put future in map, reader will create
regular control ping future instead and writer needs to made association
between these two futures
Change-Id: Id29a19be7a5319291a5e07cf931080610178f00c
Signed-off-by: Matej <matej.perina@pantheon.tech>
|
|
Dynamically calculate the required buffer size to pack into based on
message definition. Also add input parameter length checking.
Change-Id: I7633bec596e4833bb328fbf63a65b866c7985de5
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Java bindings use get_message_id from jvpp-common
to detect if messages known at compile time
are avaliable at runtime.
In case of missing entry, Java exception is propagated
via JNI using (*env)->ThrowNew.
But this function does not end code execution so,
in order to prevent unexpected behaviour
(e.g. calling vl_msg_api_set_handlers with id == 0),
get_message_id caller should do it manually.
Change-Id: I2edb5013fd3658dcdd77a867b5cdf62e559ee071
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|