aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
AgeCommit message (Collapse)AuthorFilesLines
2024-11-06session: session table holding free appns indexSteven Luong1-0/+4
session table may be shared among multiple appns's. app ns add id blue secret 1 if tap0 app ns add id red secret 1 if tap0 session table holds the last added app_ns's appns_index. If the last app_ns is deleted, session table is not free since there is still an appns which uses the same session table. In that case, session table is holding the free app_ns's appns_index and it can cause problem. The fix is to modify appns_index in session table to hold a vector of appns_index's instead of just the appns_index that was last added. When the app ns is deleted, remove the deleted appns_index from the session table's vector of appns_index's. Type: fix Change-Id: Ied8bc97f185071dc89b9b56656e18efbd2995131 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-11-04hsa: added GET method to clientAdrian Villin3-582/+744
Type: improvement Change-Id: I46f7e1e2b509a463ff4b2492bf6412b67a1afdc4 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-11-01http: CONNECT method for tunnellingMatus Fabian4-66/+341
Type: improvement Change-Id: I6af16ddcc6734bb831227ce65cb39e87294fc4cd Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-11-01http: fix invalid listener handle timeout configDave Wallace1-1/+1
- Fixes this assert() in make test-debug testcase: make test-debug TEST=test_http_static.TestHttpStaticVapi.test_http_static_vapi ... vpp[441]: /vpp/src/vppinfra/tw_timer_template.c:301 (tw_timer_start_2t_1w_2048sl) assertion `interval' fails Type: fix Change-Id: Ic6040957f48ab578affa5b1cf7dfdf4be27c4c56 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-10-30http: udp proxy uri template parsingMatus Fabian4-28/+163
Parse a URI template that has variables "target_host" and "target_port", where varaibles are at the end of the path: "/{target_host}/{target_port}/". Type: improvement Change-Id: I440b7f4951bffa1fd9971740b9890b221193943b Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-29hsa: proxy support for connected for udpFlorin Coras1-0/+102
- mark listener as connected to support udp proxying. Connectionless udp proxying is possible but would need more work on rx path. - add support for session migration Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia6911ad728b7718a4983152d144e2566998e35c2
2024-10-29http: "absolute-form" target URL parsingMatus Fabian4-43/+468
Type: improvement Change-Id: If39680a148d39add40433547369b2ddad3c2e226 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-28http: timeout docsMatus Fabian1-0/+29
Type: docs Change-Id: I3dd9a726b862e72458a8f83c62354411d2c89d07 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-28http_static: always free ext_cfgMatus Fabian2-2/+2
Type: fix Change-Id: I655e93c0f1e1de65d6d3c3e0976e25a7ce11aafc Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-28af_xdp: api cleanupStanislav Zaikin3-256/+3
remove deprecated api handlers Type: improvement Change-Id: Id53d94f9d5fe46eba3ed809e4c16136c0eb2befc Signed-off-by: Stanislav Zaikin <stanislav.zaikin@46labs.com>
2024-10-25hsa: http cli client ho session cleanupMatus Fabian1-8/+27
Type: improvement Change-Id: I9266dac18ad3ee57fc8ecca3614b51b2345e9c48 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-25http: pass timeout using extended configMatus Fabian7-12/+95
App can now pass http connection timeout using extended configuration, ext cfg type TRANSPORT_ENDPT_EXT_CFG_HTTP, value (in seconds) set in ext cfg member opaque. It is optional, default value is 60 seconds. Type: improvement Change-Id: Ibeff4bbd3153421be350ff564ec3c8e52e5b9639 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-25session: support of multiple extended configsMatus Fabian9-44/+66
This allow configuration for each transport protocol when combined, e.g. HTTPS=HTTP+TLS. Extended config of session endpoint config is now chunk of memory, which allow seamless integration with VCL, and internal representation is hidden behind APIs, which is better for future improvements. By default chunk is allocated to 512B if the app doesn't do so before. Type: improvement Change-Id: I323f19ec255eba31c58c06b8b83af45aab7f5bb1 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-25dhcp: client use mac address as client identifierOle Troan1-1/+3
Previously the DHCP client use a constant client identifier (vpp 1.1). Problem with that is that multiple VPP clients on the same link would fail. Fixed by using MAC address instead. Type: improvement Change-Id: If37f4a14cc728bde6c9ef6c169957562d763c973 Signed-off-by: Ole Troan <otroan@employees.org>
2024-10-24hsa: support vcl server binding to ipFlorin Coras1-15/+36
Type: improvement Change-Id: I4d64cddaa372aecaee8bb3eaf244c8d4998f490c Signed-off-by: Florin Coras <fcoras@cisco.com>
2024-10-24hsa: add appns support to http cli serverSteven Luong1-31/+43
When the last listener is deleted, detach the cli server. The appns is determined and should be entered when the cli server is first brought up. When adding an additional listener subsequently, appns must not be specified. Type: improvement Change-Id: Idac5b1f89df2aeca6734ab4532ebade0659fc357 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-10-24armada: fix rxq buffer pool assignmentDamjan Marion1-2/+3
Type: fix Change-Id: I5a78804986f400f8adc7f58f25fe5d7989a926ea Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-10-23dev: fix typo in function nameDamjan Marion1-1/+1
vnet_dev_get_port_rx_node_idex -> vnet_dev_get_port_rx_node_index Type: fix Change-Id: I9a90e5822cbc93bcf2f91244b4eb4e5fff53c212 Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
2024-10-23armada: port and queue countersDamjan Marion5-5/+262
Type: improvement Change-Id: I221253be147e99cd082911f28d088b64ca96eff5 Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
2024-10-23armada: fix typoDamjan Marion1-2/+2
Type: fix Change-Id: I1c1eb9d7426086bb8023867b3118ece119bca05b Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
2024-10-23dhcp: fix buffer length after adding new optionArtem Glazychev1-1/+2
The size of dhcp option should be o.length + 2 additional bytes of the header. Incorrect offset results in an extra byte at the end of the packet: ... 0120 04 00 00 00 04 05 04 AC 10 04 01 FF 00 ... RFC2131 says the last should be the 'end' option (ff) Type: fix Change-Id: I056d755d29465aab8c1c55a0b930f65ece6fafce Signed-off-by: Artem Glazychev <glazychev@mts.ru>
2024-10-23armada: set prinary address supportDamjan Marion1-0/+14
Type: improvement Change-Id: I280cb3961ff4b18c6e02053c7526c19570add09d Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
2024-10-22dpdk: validate number of tx descriptorsMatthew Smith1-0/+8
The default number of tx descriptors per queue is 1024. On some device types, this is larger than the maximum allowed value and rte_eth_tx_queue_setup() can return an error. Compare the configured value to the maximum value for each device and set the configured value to the maximum value if the configured value is larger. Type: improvement Signed-off-by: Matthew Smith <mgsmith@netgate.com> Change-Id: Ie29c5c6d58c76388f65f266032821140b0f879fb
2024-10-19hsa: refactor proxy to minimize lock usageFlorin Coras2-169/+303
Use per worker context to minimize proxy session lock usage for io events. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia0ea204a8b09f72300fd40745b299246d5d0ddb7
2024-10-17crypto-native: adding missing ciphersJerome Tollet1-0/+3
Type: docs Change-Id: I23a15e1ecd4c41f6567299aa07bb5458d468acf8 Signed-off-by: Jerome Tollet <jtollet@cisco.com>
2024-10-17octeon: add crypto frameworkNithinsen Kaithakadan6-13/+2040
Configure crypto device. Add crypto support in control plane and data plane. Control plane - Handle vnet crypto key add and delete - Register crypto async enqueue and dequeue handlers Data plane - Add encryption and decryption support for - AES-GCM - AES-CBC hmac sha1/256/384/512 - AES-CTR sha1 - 3DES-CBC md5 sha1/256/384/512 Type: feature Signed-off-by: Nithinsen Kaithakadan <nkaithakadan@marvell.com> Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com> Change-Id: Ia9e16c61ed84800a59e0c932a4ba6aa1423c1ec8
2024-10-15hsa: switch proxy to using first worker connectsFlorin Coras2-29/+77
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I04821236ba8ab02525bd99a1ed4572dfcf5e5131
2024-10-14http: Content-Length value parsing improvementMatus Fabian1-18/+62
Type: improvement Change-Id: Ida8ca43b5fed41fc0b13a2dde97e7e35c55283c9 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-14hs-test: http_static wrk testsMatus Fabian1-6/+19
Type: test Change-Id: I87cddb88f2a62e79d66832827134ddaa95740839 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-14http: timer pool assert crash fixMatus Fabian4-55/+121
Two iterations over expiret timers: 1) ivalidate timer handle and mark the connection as having a pending timer 2) send RPCs to workers Type: fix Change-Id: Iadc031c4e6d6f7bbd851d0421e6e0ea2d2b5e70f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-14http: track half-open sessionsMatus Fabian2-3/+95
It might happen that app detach during connecting period and worker is not valid anymore when http_ts_connected_callback is called. Type: improvement Change-Id: I95f094e8bc0352728a61e3fe74ab0745859e2457 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-10-11snort: add timestamps to packetsAlexander Skorichenko2-7/+19
Type: improvement Change-Id: I810679c8a73c4d1b3fc2cc2300ded46a30d68e8f Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
2024-10-09dpdk: xstats as symlinksOle Troan3-61/+51
Type: improvement Change-Id: I0df26e5a4d486b694ec90ba27b485a75bf264b20 Signed-off-by: Ole Troan <otroan@employees.org>
2024-10-08dev: add helper functionsDamjan Marion3-10/+9
Type: improvement Change-Id: I7c9e882b1cdf141b34e84dbfed46b392624d1f62 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-10-08armada: fix tx queue initDamjan Marion1-3/+3
Type: fix Fixes: 4e51841 Change-Id: Ife3cb43f54cc0700c469f89b0a5af0ff44143807 Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-10-07http_static: fix first and add segment sizeFlorin Coras2-1/+2
Allow segments bigger than 4GB Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I510f7cff75883fdbd6c0c22efff9a14e26c755f4
2024-10-07hsa: cannot delete/unlisten default uriSteven Luong1-1/+1
Although it is rare that one wants to remove the default uri listener, we should still support it. The problem is that we strip the null character on unformatting the input. We should not add a null character on formatting the default uri. Type: fix Change-Id: I08520dbd2a2448639ce023f9fd75555bc620e7ee Signed-off-by: Steven Luong <sluong@cisco.com>
2024-10-07ip: add extended shallow reassemblyKlement Sekera1-3/+2
This patch adds some fixes and improvements: Fixes bug where save_rewrite_length gets overwritten on reassembly handoff. Fixes bug where duplicate fragments could cause a reassembly context to be lost, because the race losing thread would remove bihash entry created by winning thread. Improves tracing by adding more events. Adds extended shallow reassembly. This is a toggleable option, which if turned on will cause reassembly to wait for both first and last fragments to calculate total IP payload length. Furthermore it'll store a local copy of first fragment and necessary data to retrieve it in vnet_buffer2. This allows downstream features to access full L3/L4 headers when dealing with fragments. Type: fix Change-Id: I81695070533410c5815291dbc65ea71c87e3ae05 Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
2024-10-03session: use proper name for ct transportFlorin Coras1-2/+2
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iebf5155a429c77143df9eb44f504fea28cddaf98
2024-09-30http: http_state_wait_server_reply fixMatus Fabian1-0/+1
We enqueue 2 segments to app, first is masg (http_msg_t) and second as much as possible of the raw data, so it must be: max_enq - sizeof (msg) Type: fix Change-Id: Ib7ece7e0ad1aac99d687d49149f1bccea599b10f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-09-28session: fix SDL to use remote instead localSteven Luong1-36/+36
The language is local == VPP local interface remote == sender prefix to VPP node SDL acts on remote prefix. Type: fix Change-Id: I82917c6ef801fc67430dfdd15c5630cb7a6347e0 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-09-28hsa: Add multiple listeners supportSteven Luong1-10/+123
It is desirable that http cli server can support multiple listeners. This is needed for supporting both ip4 and ip6 at the same time. Added the optional keyword listener add | del to the http cli server command. Example usage: start ip4 default uri and then add ip6 uri http cli server http cli server uri http://2001::2/80 listener add Type: improvement Change-Id: I884a4cd64ff676f9759a062b6d607a1742f610f3 Signed-off-by: Steven Luong <sluong@cisco.com>
2024-09-27snort: API functions for pluginAlexander Skorichenko8-47/+984
Also, made disconnect-instance and delete-instance functions available via cli. Type: feature Change-Id: I7939d27867959cb871b1cc7205b94410b53906fd Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
2024-09-26tls: cleanup engine hs cb and improve ctx formattingFlorin Coras3-34/+9
Handshake completion is now tracked via a ctx flag so we no longer need ctx_handshake_is_over. Also, as we no longer prealloc application sessions, improve ctx state formatting. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: If48588ecde13e56fb99d1a46238bda53ed4eae1b
2024-09-26vlib: process node scheduler reworkDamjan Marion1-1/+1
This commit allow use od cooperative multitasking with multiple descheduling reasons (i.e. event wait and suspend) inside the same process node. In previus code remote node will wake up process node by sending event evein if process node is waiting in vlib_process_ssupend(). This change also allowed new vlib_process_yield() API which deschedules current process and it puts it into the end of queue. Change-Id: I846e5a99b4ea1809eb80895f6ffe0ef0b2fd21ae Type: improvement Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-09-26octeon: fix pause flow control for lbk/sdp devicesAlok Mishra1-1/+6
Pause frame flow control is not supported for LBK (Loopback) and SDP (System DPI Packet Interface Unit) devices. This patch skips the pause flow configuration for these devices. Type: fix Fixes: 53239b4 Signed-off-by: Alok Mishra <almishra@marvell.com> Change-Id: I3096fcef9df4ad59d64bfabb83f91f13813128a8
2024-09-25dpdk: add new device ID for Cisco VIC VFHyong Youb Kim1-1/+2
VIC now supports standard SR-IOV, as opposed to VM-FEX SR-IOV. It uses a new device ID 0x02b7 for VF. Add it to the supported list. Type: improvement Change-Id: Ifc91c66f5e75dd005aa9d8a47700896a941abab5 Signed-off-by: Hyong Youb Kim <hyonkim@cisco.com>
2024-09-25octeon: enable h/w vlan tagging supportAlok Mishra1-0/+1
This patch enables h/w vlan tagging by setting MAX_VTAG_INS field in NIX_AF_SMQ_CFG register. This is required to configure VLAN tag insertion by the hardware for egress packets Type: feature Signed-off-by: Alok Mishra <almishra@marvell.com> Change-Id: Ifcdf9c1e5b0b8ddc27cabab597ae91780ceca095
2024-09-24octeon: enable ethernet pause frame supportAlok Mishra1-0/+73
This patch adds support for MAC pause flow control. By default, pause flow control is enabled in the device configuration. Type: feature Signed-off-by: Alok Mishra <almishra@marvell.com> Change-Id: I0f448479a38fae615d87af7e736c6053ada89cca
2024-09-24octeon: fix error handling for packet with errorMonendra Singh Kushwaha1-1/+15
Type: fix Change-Id: Ieb97f1526939bcd732c155d3a7535dca71971258 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>