Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I25937cd7470c826d1e833e65530ae959c39139d8
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ifc0296834e25ddbdd0ad8283c061f309801b053c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Any u8* variable created by format() is NOT null-terminated.
Add the null terminating byte with vec_terminate_c_string().
If that variable is used by (at least) hash_get_mem(), then it needs to
be null-terminated, as it will go through string_key_sum() which makes a
call to strlen.
Change-Id: I4e51e1b6668f557e53af3bb897cd281598eedbc0
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
|
|
Change-Id: Ief8c3d3bec116e9f884981fb52af528f98b5f6ff
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I198f58a84c4692408f9205052af24ee22df7aeaa
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Add one of these statements to foo.api:
vl_api_version 1.2.3
to generate a version tuple stanza in foo.api.h:
/****** Version tuple *****/
vl_api_version_tuple(foo, 1, 2, 3)
Change-Id: Ic514439e4677999daa8463a94f948f76b132ff15
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
- 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>
|
|
Change-Id: Ib675164c475edcdbe3013df7b847adf5e050c53f
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ib5d335d6130617d6135615c6c8fa8deaac971331
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I0f1a051dd3b5786dc7c457bc6fc7ce4fcd0f530c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ifda4d22c9d1de210165932a0996f75cc8428ae7a
Signed-off-by: Alberto Rodriguez-Natal <natal@cisco.com>
|
|
Change-Id: Ia2fc4621f0e199b0d02ac4d2104b54bdb49c14dd
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ieeb3b7eaabb568180320fe54d3eae2d26f3e4704
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I0581a1bddad55d8d573c546ec84b0b2760abab3d
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I912fa53c02c720901c9fb253550790829107de39
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I0011c211908db6067f918fbaaa7d6863191d5bd3
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Id7e0f967cc510f0b45f043f74493854083ac67ae
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I1356296e1a85b5d532f45ba70572b2184ac3f6fb
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I0c638ad5dabc035b4b7de3b9befbe2c8ba7b0b66
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I38e1c6a6b033e12ef3f4345a1deff73fa4adbea0
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Also fixes csum computation for lisp control plane 4o6 encapsulated control
messages.
Change-Id: I991e0b5c0d16dc51e0b5bdc79e1d752270b34765
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I16c3f5a97c45e504eec94ce131e854d7da9cd0e3
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
To save space in the first cacheline following is changed:
- total_length_not_including_first_buffer moved to the 2nd cacheline.
This field is used only when VLIB_BUFFER_TOTAL_LENGTH_VALID and
VLIB_BUFFER_NEXT_PRESENT are both set.
- free_list_index is now stored in 4bits inside flags, which
allows up to 16 free lists. In case we need more we can store index
in the 2nd cachelin
Change-Id: Ic8521350819391af470d31d3fa1013e67ecb7681
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I56bf6b46527f9465d78ed7c08b6e216e50c135ec
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Change-Id: I36bb47faea55a6fea7af7ee58d87d8f6dd28f93d
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Ib8c72f8e08e89357b64f2f69ab70d60d3a7ec506
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: Id160346ebf533ee5f55bd735803624a75ed997b9
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: Ib62ee0eacd6c91dc4cd95835efe901079754ef42
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I971c110ed126f1a24a963f9d3b88cf8f8c308816
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ib22ffee3d8ac63af171d032c2ffcb44a2e42400c
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I1ec328cda73f7eaf7867cd8a2a17852ee0cd23f1
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I8110b2a1d7bf8a818c7e9b6f95c3f60324e8ccab
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I546c761acfbf880717163a035aa691b04337b7bf
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ibe55e4399c6b78d83268d7c49ed498cab7bfdb43
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I4a2d24b7124dc9afaf81f29e06e43235a103a320
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I72298aaae7d172082ece3a8edea4217c11b28d79
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Ia8736916bf59006bc581fe477db51ddd6bcc15e5
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I056dc6246f79d887d69ad459a6b8b3092a099baa
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I26087cbde40cc5f2f1cb501ca6e791292e02badf
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ib83baf6ddec4ac192f6b4123d9eb599fb370fd0c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I1aa25ef11dc75002cb9b6aac0981af00026e57ce
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I5bd0721b70dfc240fa9225df3704774f6b0ede81
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I399cac46d279e020ba33459ef759d9d29d3ac716
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I8b7dc3bf631bd228db23679534e04b8af7ac4ec7
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Iaa4fb2bc2230c1a99c518a37039cd91648dc19c0
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I5c5b4d680359cf3635c2d7b0088ea2ba6a428f93
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
After VPP-635 was merged, did one more pass. While the code was waiting
to be merged, a few changes were merged to master with the same issue.
This is a few additional changes addressing the same issue. See VPP-635.
Change-Id: I7abeac5c260c1e2e9d9d318fd1aae24cd6932efc
Signed-off-by: Billy McFall <bmcfall@redhat.com>
|
|
Change-Id: I49e5ce0aae6e4ff634024387ceaf7dbc432a0351
Signed-off-by: Dave Barach <dave@barachs.net>
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: Icd0dba04d8929456228136d1f25c459bffcc6a7a
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
In the CLI parsing, below is a common pattern:
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (line_input, "x"))
x = 1;
:
else
return clib_error_return (0, "unknown input `%U'",
format_unformat_error, line_input);
}
unformat_free (line_input);
The 'else' returns if an unknown string is encountered. There a memory
leak because the 'unformat_free(line_input)' is not called. There is a
large number of instances of this pattern.
Replaced the previous pattern with:
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (line_input, "x"))
x = 1;
:
else
{
error = clib_error_return (0, "unknown input `%U'",
format_unformat_error, line_input);
goto done:
}
}
/* ...Remaining code... */
done:
unformat_free (line_input);
return error;
}
In multiple files, 'unformat_free (line_input);' was never called, so
there was a memory leak whether an invalid string was entered or not.
Also, there were multiple instance where:
error = clib_error_return (0, "unknown input `%U'",
format_unformat_error, line_input);
used 'input' as the last parameter instead of 'line_input'. The result
is that output did not contain the substring in error, instead just an
empty string. Fixed all of those as well.
There are a lot of file, and very mind numbing work, so tried to keep
it to a pattern to avoid mistakes.
Change-Id: I8902f0c32a47dd7fb3bb3471a89818571702f1d2
Signed-off-by: Billy McFall <bmcfall@redhat.com>
Signed-off-by: Dave Barach <dave@barachs.net>
|