aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet
AgeCommit message (Collapse)AuthorFilesLines
2 daystcp: avoid spurious asserts while discarding bytesFlorin Coras1-8/+18
Found by hst in ci, probably because of af_packet interfaces with gso/gro on. Only applies to chained buffers. Type: fix Change-Id: I8d223a526bbdf88a2a7b60a0028e79ce14015a37 Signed-off-by: Florin Coras <fcoras@cisco.com>
3 dayssession: force cleanup of cts without app wrkFlorin Coras1-1/+2
Also some improvements to unit tests. Type: fix Change-Id: Ib16f320e4404748fee8e3c6994b8df8dd890b9ea Signed-off-by: Florin Coras <fcoras@cisco.com>
7 daysdev: enable flow on primary interfaceMonendra Singh Kushwaha1-1/+1
Type: fix Change-Id: Ic5d9390240c00aa706c4f6902c774360263455f2 Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
9 daystcp: fix coverity discard bytes warningFlorin Coras1-3/+6
Type: fix Change-Id: Id832d1e240e42b8ce76f243c14ca67e724a4ef34 Signed-off-by: Florin Coras <fcoras@cisco.com>
9 dayssession: avoid clearing fifos while closingFlorin Coras1-6/+0
Allow apps to scrape amount of undelivered data before cleanup. Type: improvement Change-Id: Ia925bfdd9ee168f5b9da0ddd3048cf4ed2fd440e Signed-off-by: Florin Coras <fcoras@cisco.com>
9 dayssession: update state on unexpected delete ntfFlorin Coras1-2/+4
Type: improvement Change-Id: I3b180ccdcd6073688bb220a35cd97f2411cee28a Signed-off-by: Florin Coras <fcoras@cisco.com>
9 daysbonding: activate also on port-rx-eth arcVratko Polak2-7/+22
CSIT tests bonding with AVF, but no longer with plugins/avf. And plugins/dev_iavf is sensitive only to port-rx-eth arc, not to device-input arc. Not sure changing bonding is the correct fix, but it is easier than making vnet/dev work on device-input arc. - The indentation is a compromise with "make fixstyle". Ticket: vpp-3602 Type: fix Change-Id: I9744d9560661cae208a273155aee7e1b3decdd15 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
10 daysfib: fix adj_get_rewrite()Benoît Ganne1-1/+1
It looks like this bug has been around forever: initially the rewrite string was at the end of rw->data, so the correct thing to do would have been to return rw->data + max_size - rw->data_size. Then we moved the rewrite string at the beginning of the buffer, so we should always return rw->data. In any case, rw->data - rw->data_size is clearly wrong and will access memory in the rewrite header or before it. Type: fix Fixes: b80c536e34b610ca77cd84448754e4bd9c46cf68 Change-Id: Ib6d1124776a3c20e718fc46d61190dec7cba31c3 Signed-off-by: Benoît Ganne <bganne@cisco.com>
11 dayssession: add session eventing infra for appsFlorin Coras7-1/+906
Basic framework/supporting infrastructure for now. Start evt app with default collector with: app evt-collector enable [uri <uri>] Add/del collectors (only one supported for now) with: app evt-collector add <uri> External applications can request eventing to default collector. Builtin applications can also provide custom eventing functions. Type: feature Change-Id: I3547bfc9b258b33a4e8c60c161de75c21533b7f1 Signed-off-by: Florin Coras <fcoras@cisco.com>
11 daysudp: fix byte counts to not include headersFlorin Coras2-4/+5
Type: fix Change-Id: Ia3a8bbafedf2ee99a1a78c8fcc08e2b9420f938a Signed-off-by: Florin Coras <fcoras@cisco.com>
11 dayssession: add support for postponing transport cleanupsFlorin Coras6-11/+126
Add new session layer api that allows transports to request postponed cleanups in session_input. Eventually this should become default especially if transport connections are to be scrapable before cleanup. Update tcp and udp for now. Type: improvement Change-Id: I74beef41d5deed68efa664b78c1cf95e980b3bde Signed-off-by: Florin Coras <fcoras@cisco.com>
11 daystcp: reuse and refactor use of del functionFlorin Coras3-13/+11
Rename tcp_connection_del to tcp_connection_cleanup_and_notify and use where needed. Type: refactor Change-Id: I6007205a63620f1bbf20b59999e833b6d6f631d4 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-05-02sr: fixed return msg id in policy update v2 handlerKirill A. Khalitov1-1/+1
Type: fix Change-Id: Id6cd8030235f097a41ada8f9a3d7450a71a2c34e Signed-off-by: Kirill A. Khalitov <voronar@gmail.com>
2025-05-02vnet: add vapi interface feature enablement check functionKirill A. Khalitov2-0/+43
Type: improvement Change-Id: I813c832cf6673eae91bd38ab60e7f19a609a5025 Signed-off-by: Kirill A. Khalitov <kirill.khalitov@46labs.com>
2025-04-27tcp: tcp_bt_flush_samples coverity fixMatus Fabian1-0/+2
Type: fix Change-Id: I844ac34c929a000dff4fd0f607b5543ad2876eb8 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2025-04-25udp: track connection startup timestampFlorin Coras3-1/+6
Type: improvement Change-Id: I8edea1beec82c8e2cfa87e0cc551609d46ee76a7 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-04-24vppinfra: unify thread_index handlingDamjan Marion106-339/+386
use typedef for thread_index instead if u16, u32, uword.... Type: improvement Change-Id: Ib31a0f918035e07d8f53c46a3d80b9ad8b3df129 Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-04-18vlib: move file_main to vlib/file.[ch]Damjan Marion5-6/+5
mechanical change to accomodate following patch... Type: refactor Change-Id: I74be905534d8061d0f192b969cfbfd94272922f0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-04-16udp: add basic stats per connectionFlorin Coras4-8/+49
Type: improvement Change-Id: I95a3b9c85f4b6ab94250fc8fb5f2a4a142a2f833 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-04-16session: https parsing supportAdrian Villin2-52/+48
Type: improvement Change-Id: I6ec29cda2cb841a70d6f5768f97666b2cc37febb Signed-off-by: Adrian Villin <avillin@cisco.com>
2025-04-15bonding: ASSERT fails for bif->active_members in TX pathSteven Luong2-33/+45
Elements in bif->active_members are used without protection in the TX DP path. However, elements in bif->active_members may freed by another thread asynchronously and it may cause the ASSERT to fail when accessing elements. The fix is to take a snapshot of the active_members and use that in the TX DP path. Type: fix Change-Id: I081cc81cc4d072807d6cbbcf5d21feb97f500362 Signed-off-by: Steven Luong <sluong@cisco.com>
2025-04-14tcp: remove erroneous exception seg check assertFlorin Coras1-4/+3
Type: fix Change-Id: Ic3ae960e8f4a28f96b9964f6a3bd60379dd3795f Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-04-12session: support builtin ct acceptsFlorin Coras1-0/+8
Type: improvement Change-Id: I876630549e113b9ee5e81357a30523cbcc6b434e Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-04-11tcp: do not scale syn-ack windowFlorin Coras1-2/+2
Type: fix Change-Id: I1d677a8d80065644a1ddfb3884d99feee04c4756 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-04-04crypto: make configurable crypto enginesNicolas PLANEL4-0/+147
Add a configuration sections crypto-engines, it works like plugins syntax : The following configuration will load and register only openssl engine ''' crypto-engines { default {disable} openssl {enable} } ''' And this one will load all engines except openssl ''' crypto-engines { default {enable} openssl {disable} } ''' Type: feature Change-Id: Ia637db93b497d0c4333704f3c024e85de3941791 Signed-off-by: Nicolas PLANEL <nplanel@cisco.com> Signed-off-by: Nicolas PLANEL <nplanel@gmail.com> Signed-off-by: Nicolas PLANEL <nplanel@cisco.com>
2025-03-14ip: fix ICMP inner payload parsingKlement Sekera2-2/+33
Add a check so that ICMP type is verified to be an error before parsing inner payload. If it's not an error, then the inner payload is not there. Type: fix Fixes: 46d0ff3945 Change-Id: I5c7d8ddacb347ec030784f349064e66d63cd525e Signed-off-by: Klement Sekera <klement.sekera@gmail.com>
2025-03-09session: improve endpoint cfg unit testFlorin Coras2-0/+8
We are currently testing only active open from default to non-default appns. Add connect test from non-default to default appns and make sure transport cleans up ports. Type: improvement Change-Id: Id0f05aa295ac175b549d8035eb530dbb9a15d85d Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-03-06session: fix lcl port allocation with fibFlorin Coras1-0/+1
Type: fix Change-Id: I0b0cc664cec2643a543a39cc7482292604381bf7 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-03-03session: uri parsing improvementsAdrian Villin2-2/+90
- It is now possible to use "proto://ip4:port/target" or "proto://[ip6]:port/target" format. - Updated http_client and related tests to use the new format Type: improvement Change-Id: Ic6afd8c66eddca2ab1d7afc034e193441c34f8ee Signed-off-by: Adrian Villin <avillin@cisco.com>
2025-03-01session: ignore tx evts for cl sessions with no fifoFlorin Coras1-1/+1
Type: fix Change-Id: I3e484ed3447dde3540c39b2c5c5ce26329c83340 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-25ipsec: coverity warning, issue CID 509068Piotr Bronowski1-5/+0
UNUSED_VALUE warning fixed. Type: fix Change-Id: Idd1f0fab96f252f2081d5c268ecc722223289477 Signed-off-by: Piotr Bronowski <piotrx.bronowski@intel.com>
2025-02-25vxlan: move vxlan-gpe to a pluginlajoskatona12-4726/+0
Move vxlan-gpe folder under vnet to the plugin folder, update cmake configuration and header paths, and add plugin.c to register plugin. JIRA: VPP-2059 Type: improvement Change-Id: I31b6d326276c4aa684fcdcf8443ef349f7816a6d Signed-off-by: lajoskatona <katonalala@gmail.com> Signed-off-by: Nicolas PLANEL <nplanel@cisco.com>
2025-02-24udp: fix cli for next node and opaqueFlorin Coras1-1/+2
Type: fix Change-Id: I77c2d8e64ed463b1c8e84e0fca8d79684a88714c Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-20session: trace all packets sourced by session layerFlorin Coras1-23/+23
Trace both packets generated by dispatching sessions and those that have been enqueued by other nodes, e.g., syns, fins, acks enqueued by tcp input and output. Because not all buffer sources know the session, remove for now the session index from the trace. Nonetheless, next node on path will print it, so no information is lost. Type: improvement Change-Id: Id69094fbf00e6bc8f98095e90cdf20e2b7f0aeda Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-18ipsec: enable support for ipv6 udp ipsec encapsulation in policy modePiotr Bronowski1-32/+49
IPSec traffic may be sent encapsulated inside UDP packagaes. In case of esp packgaes decryption is required (according to defined policies), whereas IKE traffic should be bypassed (relevant policy needs to be defined). With this patch required behaviour is provided. Type: feature Change-Id: If99c7bf121db881c0bdf2b45e6fdca87c0d872a5 Signed-off-by: Piotr Bronowski <piotrx.bronowski@intel.com>
2025-02-18ipsec: add support for bypass and discard policies for ipv6Piotr Bronowski1-120/+223
In case of ipv6 addresses spd did not support bypass and discard policies. This change introduces missing implementation in the same way as it was implemented for ipv4. Type: feature Change-Id: Idad974655b209d946414d7d85037d0783cde7db3 Signed-off-by: Piotr Bronowski <piotrx.bronowski@intel.com>
2025-02-17sr: fix sr_policy fib tableArtem Glazychev1-2/+3
fib_table_get_flow_hash_config accepts fib_index, not fib_table. Type: fix Change-Id: I0372ca1b6caab4a34bc0590f9856d89deff6ee90 Signed-off-by: Artem Glazychev <glazychev@mts.ru>
2025-02-15ip: add support to preallocate poolsMohsin Kazmi7-2/+64
Type: improvement In certain use cases, the underlying pools expand by allocating a new, larger pool and copying the existing elements into it. This process can be time-consuming, leading to slower control plane configurations, especially when a large number of elements are already present. This patch allows users to pre-configure some of these pools through startup.conf. It also fixes alignment for ip4 mtrie. Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> Signed-off-by: Benoît Ganne <bganne@cisco.com> Change-Id: Ib0f1d40e3efb8b4fce989219196c718d6834498a
2025-02-14session: improve chained buffer enqueueFlorin Coras1-50/+58
Type: improvement Change-Id: I86497255cd2a73e37ae9be61dcce3a27199c552f Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-14tcp: improve exception checks for established connectionsFlorin Coras1-18/+39
Separate exception state checks, e.g., no connection or closed, from segment validation. Segments with no ack, rst, syn flag should not be received in established node. Still, leave the check in for now. Type: improvement Change-Id: I7ceb01d7133f3a571e18721b6e51ff79f533f8cb Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-13ipsec: better pack outbound SA runtime dataDamjan Marion1-5/+5
Type: improvement Change-Id: I9a0437dcfaf5e6930bb7fa057866ea36e7ca328f Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-02-13ipsec: keep inbound seq as u64Damjan Marion4-48/+45
Type: improvement Change-Id: I03f0b6137db6780f2c2935df90e98acf4bd471f9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-02-13ipsec: combine huge and normal anti-replay-window handlingDamjan Marion4-239/+118
Type: improvement Change-Id: Idfbaf56e3b56e77c8deaca9d3e41f7a78d8c4e0b Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-02-13ipsec: embed anti-replay bitmap in the runtime dataDamjan Marion2-63/+47
Type: improvement Change-Id: I753917c6d7e30b8d5e3291b85a7532a455ebc2bb Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-02-13ipsec: store anti_replay_window_size in runtime dataDamjan Marion4-55/+31
Type: improvement Change-Id: I0626af365855ad5301419e72e9430a47a5d0e5d7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2025-02-13session: make sure we cannot pass wrong IO event typeBenoît Ganne1-23/+36
GCC 11 complains about potential cast from u32 to session_t. Type: fix Change-Id: Id777e339c40e0ea3c3c8b2b0800acf7cd7a4ced3 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2025-02-12tcp: rename worker ctx to just wrkFlorin Coras6-27/+20
Align with session layer (also less typing in gdb ..) Type: refactor Change-Id: I1455a1aa3e3bad7b53fe638a678774b88b9969b9 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-12session: move io inlines to header fileFlorin Coras2-334/+325
Make sure compiler can optimize out constants. Type: improvement Change-Id: I3982d4b2cf1e0e08e31a0836fd64fab82564a7d6 Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-07session: do not match listeners when looking for lcl portFlorin Coras3-5/+73
Also optimize lookup to avoid session rules table matching. Type: fix Change-Id: I5b62c870edd9f7486e7de1417816fffa30d03a3e Signed-off-by: Florin Coras <fcoras@cisco.com>
2025-02-06qos: fix qos record cliFilip Tehlar1-1/+1
Type: fix Change-Id: Ic3d4bbb4df8be6ef109f0af17744b35abc240ba2 Signed-off-by: Filip Tehlar <filip.tehlar@gmail.com>