aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2024-08-29buffers: support disabling allocation per numa domainLukas Stockner1-7/+13
Currently, the per-numa buffer allocation doesn't support skipping the allocation altogether for a particular NUMA domain - if it's set to zero, it instead uses the default allocation. Therefore, this changes the behavior so that the default is only used if no per-numa allocation is specified, and an allocation of zero is honored by not allocating a buffer at all. Type: improvement Change-Id: Ie9133b179a88eb884aa3da921e65292daea0df2d Signed-off-by: Lukas Stockner <lstockner@genesiscloud.com>
2024-08-29octeon: use proper refs for roc item spec and maskSriram Vatala1-43/+59
vnet flow enable is failing due to bogus bytes pointed by spec, mask variables of roc_npc_flow_item structure. Using reference to local variables defined in block scope is causing this. Moving the variable declarations to function block scope fixes this issue. Fixes: 064762e20 Type: fix Signed-off-by: Sriram Vatala <svatala@marvell.com> Change-Id: I3904199b5b2bd88cd02ada5604059ab6fd12eef7
2024-08-29vppinfra: Use affinity for online cpus on FreeBSDTom Jones1-15/+7
On FreeBSD the affinity returned by cpuset gives us a bitmask documenting the available cpus. This can be modified if we are jailed or are launched via the cpuset(1) command. Initialise the clib bitmask otherwise it is always 0 and we cannot configure any workers. Type: improvement Change-Id: I067e373ea440c6fbd03839d1cf103c8b97d8a0c6 Signed-off-by: Tom Jones <thj@freebsd.org>
2024-08-29crypto-native: aes_cbc_encrypt in vppinfraMohammed Hawari2-175/+227
Change-Id: Ibafa51f5fc98674d30e8758a0f9cc361c8b5c0fc Type: refactor Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2024-08-28ip6: fix error in ip6_input_checkBenoît Ganne1-1/+1
Type: fix Change-Id: Ibe8ee27484c3b7b920529fd082b1e46b7daef1e5 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2024-08-28hsa: http_cli coverity fixMatus Fabian1-1/+1
Type: fix Change-Id: I23c55e6be08cc02332da9375d2eb19b74b79427c Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-28http: http_send_data cleanupMatus Fabian1-36/+38
removed unused parameter offset Type: improvement Change-Id: I30cde713731555fb2eb305c303369c1ead4d3783 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-28interface: do not update runtime data if input node is not setDamjan Marion1-0/+3
Type: improvement Change-Id: Id81d1ac23505a74d3bc6f5d7eddca2be20d39f45 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-08-28http: http_state_wait_app_reply improvementMatus Fabian2-6/+24
set http status according to whether app also sent the body Type: improvement Change-Id: Ia41603cc21b410ca6929ec3d3e7c4c6808305769 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-23http: status line parsing fixMatus Fabian1-9/+25
Request line must only start with method name and server should ignore at least one empty line (CRLF) received prior to the request-line. Type: fix Change-Id: Ifebd992dc4c13df1a3fabfcdef9e7ee644150a21 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-22sr: fix gcc 13.2.0 build errors on ubuntu 24.04Dave Wallace1-0/+2
Type: fix Change-Id: I3ea7664c9f2cd1deaa6721bfd31214fe27f21468 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-08-22misc: move osi to pluginHadi Rayan Al-Sandid11-33/+69
Type: refactor This patch moves osi into a plugin, and also modifies the init functions of llc and snap to preserve init order dependency (llc_init --> osi_init --> snap_init). While the initial intent was to move osi/llc/snap together into a single plugin, there exists a dependency on llc in vnet/ethernet, which would require further refactoring and testing work. Change-Id: Ic0eff030ee29c8d316c0e0fe13931451aa193527 Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
2024-08-22tests: fix make test python issues on ubuntu 24.04Dave Wallace1-0/+3
- add patch to scapy to use latest six module instead of the old scapy specific six module which fails to import moves sub-module on python 3.12 - fix warning for deprecated legacy editable install of vpp_papi - skip failing testcases on ubuntu-24.04 Type: test Change-Id: Idc1a008c6e45ba69caa50c2e245012eb05effed7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-08-22http_static: added last-modified headerAdrian Villin3-11/+30
Type: improvement Change-Id: I492df92ef25f9c0cd57fc8980500b58bebaa94c6 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-08-21vppinfra: cleaner way of getting libdl in CMakeGuillaume Solignac1-9/+1
Cmake has a dedicated CMAKE_DL_LIBS variable to get libdl; use it instead of trying to find it manually. Type: improvement Signed-off-by: Guillaume Solignac <gsoligna@cisco.com> Change-Id: I9969c6be029f6a6e09cccaecd50e9eaf7d785b34
2024-08-21dpdk: Move file-prefix flag processing into linux only blockTom Jones1-1/+3
Type: improvement Change-Id: I01a228618db72f8db4e439c6ad636defe79a695a Signed-off-by: Tom Jones <thj@freebsd.org>
2024-08-21octeon: add support for max_rx_frame_size updateAlok Mishra2-8/+27
This patch adds capability to update max_rx_frame_size on octeon port. Initial MTU value is being set in the "oct_port_start", which is invoked every time the Ethernet interface is brought up, thus overwriting any MTU value set by VPP CLI. Moved the MTU initialization to "oct_port_init" to address this. Type: feature Change-Id: I00d0d52bc7711062cde47b8fe52e6823bb718d08 Signed-off-by: Alok Mishra <almishra@marvell.com>
2024-08-21octeon: enable tx checksum offload capabilityMonendra Singh Kushwaha2-5/+7
This patch enables tx checksum offload and sets correct l3/l4 offset. Type: feature Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: I666f4000cb51c4979567a52255377dbe15ffb202
2024-08-21octeon: sync mac address to cgx/rpm tableMonendra Singh Kushwaha1-0/+17
This patch syncs mac address to cgx/rpm table at initialization, which sets interface in unicast mode. Type: fix Change-Id: Icf64b91ce5c74cc399cad3d3358b951fb2a65297 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
2024-08-20vppinfra: fix format_clib_timebase_timeAdrian Villin1-5/+4
- make the format RFC9110 compliant Type: fix Change-Id: I4272562ca1082285a596ef866ab6c4f405c64bc5 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-08-20http_static: make max-age configurableAdrian Villin5-12/+168
Type: improvement Change-Id: I629add6e3f4219d56610c3785013f69dbe847844 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-08-19http: make Media Types RFC9110 compliantAdrian Villin1-77/+77
- https://www.rfc-editor.org/rfc/rfc9110.html#name-media-type https://www.iana.org/assignments/media-types/media-types.xhtml Type: improvement Change-Id: I2624dc39a985ff3999aed6e1c833220b7049828d Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-08-16http: http_read_message improvementMatus Fabian2-45/+78
Use svm_fifo_peek in http_read_message and advance rx fifo head by amount of bytes send to app, since not always you won't or can't send all bytes. Type: improvement Change-Id: I84348c9df5c77ba386c9738a754295bb9ea0f7ef Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-13tls: add basic tls record parsersFlorin Coras3-0/+532
Type: improvement Change-Id: Ia6a9f69b787950e3dbffd13ae577e499d6d2f55f Signed-off-by: Florin Coras <fcoras@cisco.com>
2024-08-13session: problem in session_rules_details APISteven Luong1-0/+4
Backend needs to return protocol to indicate if the prefix is ip4 or ip6. Type: fix Change-Id: If827c2e8b2a58051298968fa4d69de71ce9c4fcc Signed-off-by: Steven Luong <sluong@cisco.com>
2024-08-09http: authority-form target parsing/serializingMatus Fabian3-0/+87
Type: improvement Change-Id: Ifb90818a3526d3d4030a66b1ef7eebedfe97978f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-07ikev2: handoff packetsStanislav Zaikin6-0/+232
current approach saves state in per-thread data structure. in multi-worker + nat-t cases udp/500 and udp/4500 might be dispatched on different workers. this patch adds hands off packet to 1 explicit thread - 1st worker (or main thread in case there're no workers) or to thread that was explicitly set by user via configuration Type: improvement Change-Id: Ib5cd9a4b8612dfaa63b276035709524f7a492d4f Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
2024-08-07vppapigen: ensure address types are nul terminatedOle Troan4-14/+27
A string generated from format() may not be nul terminated. Type: fix Change-Id: I88452e446c3504d70758e9009c65be5466034d92 Signed-off-by: Ole Troan <otroan@employees.org>
2024-08-07ikev2: fix BN_bn2bin re-allocationStanislav Zaikin1-3/+2
the former code was re-allocating the vector when padding takes place. it's not necessary since we have the correct size. also, it caused issues since upper layer doesn't know about re-allocation and it caused crash. with this patch many test-cases are enabled again. Type: fix Change-Id: Idf0b320101670ec64d62e9aac6399cc7c54c996f Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
2024-08-06session: memory leak in show session rulesSteven Luong1-6/+9
Need to vec_free ns_id whenever we return in the function show_session_rules_command_fn in case memory was allocated to it. Type: fix Change-Id: Ifc38d3eb2756a8a128467dd40ad40fe3f0be8fc0 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-08-06http: client POST methodMatus Fabian6-50/+722
Type: improvement Change-Id: Iaa70abcee02866f9a6426a6e8e4709eeba0e8114 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-06session: session_lookup_local_endpoint returns the wrong valueSteven Luong1-1/+1
SESSION_INVALID_INDEX is u32. The function is supposed to return u64. The caller of the function tests the return value to see if it is SESSION_INVALID_HANDLE in ct_session_connect. If it is not, it thinks it is a valid handle and calls listen_session_get_from_handle which causes a crash. Type: fix Change-Id: I4ede6b2dfb95259f3a6071cfa3a77ce0d9cd9edd Signed-off-by: Steven Luong <sluong@cisco.com>
2024-08-06vlib: add 'exit' as alias to 'quit'Maxime Peim1-0/+6
Type: improvement Change-Id: I099739a246dbdb6fdca136d06bc8e4b3f493a839 Signed-off-by: Maxime Peim <mpeim@cisco.com>
2024-08-01vcl: handle EINTR in epoll_wait callsAritra Basu1-11/+37
Type: improvement Change-Id: I71a987b8871988d38e4a752c7f93f52a27bce6a3 Signed-off-by: Aritra Basu <aritrbas@cisco.com>
2024-08-01tcp: add establish timer pops to statsAritra Basu2-13/+19
Type: improvement Change-Id: Ibc1e391356cef415b992b65c00f3d365fc97386d Signed-off-by: Aritra Basu <aritrbas@cisco.com>
2024-08-01misc: remove deprecated builtinurl pluginMatus Fabian7-537/+0
Plugin code is incorporated in http_static plugin for longer time. Type: refactor Change-Id: Ib74adb2a79d3ee715bbc994d77bc7718faf7184f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-31ip6: set buffer->error in ip6_input_checkOle Troan1-32/+34
When packets are dropped and this field is not set, then trace shows the packet being dropped by the null-node instead of the correct reason. Type: fix Change-Id: I3ed9186285d0db7fa6a1e5b739a28ee625968f30 Signed-off-by: Ole Troan <otroan@employees.org>
2024-07-31npt66: replace clib_warnings() with error countersOle Troan2-41/+43
Replace clib_warnings() in the forwarding path with error counters. Change-Id: Ie679d940f056eeddeb8a032c77fe9c2195490cfc Signed-off-by: Ole Troan <otroan@employees.org> Type: fix Signed-off-by: Ole Troan <otroan@employees.org>
2024-07-29tcp: fix typo in show tcp config CLI commandAritra Basu1-2/+2
Type: fix Change-Id: I844539af3a283c8ec12498dbfd4857b8b533d7c1 Signed-off-by: Aritra Basu <aritrbas@cisco.com>
2024-07-29http: client code improvementMatus Fabian8-161/+543
Client app can sends request target, custom header and body to HTTP layer. In response it receives all bytes as received from transport, aditionally we provide offset and length of headers and body. In addtion client app is now able to receive response with all status codes and Host header field is set in request at protocol layer. Type: improvement Change-Id: I8c8e2c8f99cdf500126b7c2c722aebc254aa0d9f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-27tcp: CLI command to print tcp_cfgAritra Basu1-0/+68
Type: improvement Change-Id: Ie8f6ddc96fd3f5d44827ace834f8f6baa330d37d Signed-off-by: Aritra Basu <aritrbas@cisco.com>
2024-07-26tcp: improve tcp listener CLIAritra Basu3-0/+18
Type: improvement Change-Id: I11dc43bdf65cecfa5c48ac734a4727b377023c80 Signed-off-by: Aritra Basu <aritrbas@cisco.com>
2024-07-24http_static: fix coverity warningMatus Fabian1-1/+1
Type: fix Change-Id: Ie4af8ec0c6089b5719899f3d0b670f8a2de7f8a2 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-24session: delete and add application namespace do not create the global ↵Steven Luong4-65/+56
session table When an application namespace is added, we call session_table_is_alloced to see if we need to allocate a new session table. That check returns true even if we removed the session table. The fix is when we delete an application's global session table, we need to invalidate fib_index_to_table_index. Fixed test_vcl test script to run two tests back to back. The 1st test deletes the application namespace at the end. The 2nd test adds the application namespace in the beginning. Type: fix Fixes: 67bae20b05cb46e5f6d19afeaf1f7a52a5309d59 Change-Id: I67f5cc1b726a07659597a9479df011717db08d0a Signed-off-by: Steven Luong <sluong@cisco.com>
2024-07-23prom: concurrent connections fixMatus Fabian1-4/+7
Type: fix Change-Id: I57814edb735e9dac916f2e01de95ccfb739ce655 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-23http: state machine fixMatus Fabian3-3/+187
When client sends second request without waiting for response of the first request http_ts_rx_callback should drop request (pipelining is not supported) instead of invoking return to state machine which can lead to erroneous state, e.g. reading random data from server app fifo. Added simple http static server url handler for testing to simulate long running request processing, for now hardcoded delay 5 seconds. Type: fix Change-Id: Ied9f7e2e4ee64c982f045c0f7f99a2dc5d7a2108 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-23http: return more than data from server appMatus Fabian13-140/+532
Server app could return headers in front of body/data buffer. Offers apis for building and serialization of headers section. HTTP layer now only add Date, Server and Content-Lengths headers, rest is up to app. Well known header names are predefined. Type: improvement Change-Id: If778bdfc9acf6b0d11a48f0a745a3a56c96c2436 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-23vppinfra: get_mempolicy instead of move_pages for mem initFlorin Coras1-19/+6
Use get_mempolicy instead of move_pages to detect numa nodes. Avoids issues whereby move_pages could stall if another rt thread spin waits instead of yielding the cpu. Type: improvement Signed-off-by: Tatsushi Kanemoto <t-kanemoto@fujitsu.com> Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7db2073ed82bb0b1e707130d9bd8f54bea333840
2024-07-23ip: crash in ip4_sas_commonlenSteven Luong1-0/+2
ip4_sas_commonlen may be called with null a2 argument from ip4_neighbor_advertise -> ip4_sas_by_sw_if_index. If a1 or a2 is null, there is no common length, shortest mask between a1 and a2, return 0 instead of crashing. Type: fix Change-Id: I307509ee7dedafac76d8877a1ef76ab8bbafef59 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-07-22hs-test: memory leak testingMatus Fabian1-0/+30
add infra for memory leak testing Type: test Change-Id: I882e8dbb360597cdb82ad52682725f7d39b2df24 Signed-off-by: Matus Fabian <matfabia@cisco.com>