vpp.git
9 days agovppinfra: explicitelly cast to void * to silence clangd 93/42793/2
Damjan Marion [Tue, 15 Apr 2025 07:14:49 +0000 (09:14 +0200)]
vppinfra: explicitelly cast to void * to silence clangd

Type: fix
Change-Id: I286c73d532368e3726269cce9a6993c4911e99cb
Signed-off-by: Damjan Marion <damarion@cisco.com>
9 days agovlib: thread safe logging 17/42817/2
Damjan Marion [Tue, 15 Apr 2025 09:23:47 +0000 (11:23 +0200)]
vlib: thread safe logging

Type: improvement
Change-Id: I373c40f23bf221287731c86dc7e6ceacdb627f9d
Signed-off-by: Damjan Marion <damarion@cisco.com>
9 days agobonding: ASSERT fails for bif->active_members in TX path 53/42653/4
Steven Luong [Thu, 3 Apr 2025 17:22:10 +0000 (10:22 -0700)]
bonding: ASSERT fails for bif->active_members in TX path

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>
9 days agovlib: timing wheel improvements 77/42777/10
Damjan Marion [Wed, 9 Apr 2025 16:36:18 +0000 (18:36 +0200)]
vlib: timing wheel improvements

Type: improvement
Change-Id: I9b57ed8632e0afea9f4b67972619f411c27f35f2
Signed-off-by: Damjan Marion <damarion@cisco.com>
9 days agohttp: malformed request handling improvement 89/42789/4
Matus Fabian [Fri, 11 Apr 2025 13:38:07 +0000 (09:38 -0400)]
http: malformed request handling improvement

handle case when sum of the DATA frame payload lengths do not equal
value of content-length header

Type: improvement

Change-Id: I71c4114fb52d7ae1dba9645a3dcf41ffe3516e1f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
9 days agotcp: remove erroneous exception seg check assert 92/42792/3
Florin Coras [Mon, 14 Apr 2025 02:50:51 +0000 (22:50 -0400)]
tcp: remove erroneous exception seg check assert

Type: fix

Change-Id: Ic3ae960e8f4a28f96b9964f6a3bd60379dd3795f
Signed-off-by: Florin Coras <fcoras@cisco.com>
10 days agohs-test: added basic performance testing infra 96/42796/3
Adrian Villin [Thu, 10 Apr 2025 12:26:43 +0000 (14:26 +0200)]
hs-test: added basic performance testing infra

- only works on ubuntu 22.04 for now
- usage: build docker images, 'make setup-cluster',
  then 'sudo make test-perf'
- TODO: documentation, install KinD and kubectl automatically,
   build containers before cluster setup

Type: feature

Change-Id: Ic4a78a0d9368d947404324c7af8c2520fa7ef3c0
Signed-off-by: Adrian Villin <avillin@cisco.com>
10 days agovlib: add 'relative' keyword for cpu configuration 94/41094/24
hsandid [Fri, 7 Jun 2024 16:11:48 +0000 (18:11 +0200)]
vlib: add 'relative' keyword for cpu configuration

Type: feature

Add keyword 'relative' to translate cpu pinning configuration
to match vpp launch affinity

Change-Id: Ic748e5f4269525764b7adc92a8a5e4877e59c5a3
Signed-off-by: hsandid <halsandi@cisco.com>
10 days agovlib: require main core with 'skip-cores' attribute 99/41099/4
hsandid [Mon, 10 Jun 2024 14:06:37 +0000 (16:06 +0200)]
vlib: require main core with 'skip-cores' attribute

Type: fix

Not specifying main core with 'skip-cores' attribute can result
in launch issues e.g. if main thread pinned automatically by
scheduler to a cpu in 'skip-cores' range.

Change-Id: Ie47b3691e25ed4ff5d53887d3e1d5e8cb2be00b9
Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
10 days agovlib: avoid confusion when parsing plugins section 49/42649/6
Nicolas PLANEL [Thu, 3 Apr 2025 08:54:15 +0000 (10:54 +0200)]
vlib: avoid confusion when parsing plugins section

config_one_plugin steal the vector allocated by unformat()
and memory leak in the error path of config_one_plugin
call vec_dup() and vec_free() when it's needed

Type: fix
Change-Id: I2407e0981e9628c40908cdd26683b98ae27c2159
Signed-off-by: Nicolas PLANEL <nplanel@cisco.com>
10 days agodpdk: fix key length for linked crypto algs 39/42739/2
Matthew Smith [Tue, 8 Apr 2025 14:41:31 +0000 (14:41 +0000)]
dpdk: fix key length for linked crypto algs

Change to key storage in vnet crypto was not propagated to linked algs
in dpdk cryptodev code. There is an explicit key length field now
instead of using vec_len() on the key data.

Type: fix
Fixes: 6676d95169

Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Change-Id: I27fbfa5b2da3db0930cf2b2f2addd00d7400c74d

10 days agovlib: fix restart cli command 82/42782/2
Benoît Ganne [Thu, 10 Apr 2025 14:19:25 +0000 (16:19 +0200)]
vlib: fix restart cli command

Type: fix

Change-Id: I961a261a647863936021e4b29d406971fd76c0af
Signed-off-by: Benoît Ganne <bganne@cisco.com>
12 days agosession: support builtin ct accepts 82/42582/5
Florin Coras [Thu, 27 Mar 2025 06:29:01 +0000 (02:29 -0400)]
session: support builtin ct accepts

Type: improvement

Change-Id: I876630549e113b9ee5e81357a30523cbcc6b434e
Signed-off-by: Florin Coras <fcoras@cisco.com>
12 days agohttp_static: url handler POST improvement 88/42788/2
Matus Fabian [Fri, 11 Apr 2025 09:15:52 +0000 (05:15 -0400)]
http_static: url handler POST improvement

for POST request url handler expect data immediately after msg,
but in case of http/2 this was broken because headers and data are
different frames

Type: improvement

Change-Id: I32f93c3945c10c95a7d2150a9b60f79bac2a7e5a
Signed-off-by: Matus Fabian <matfabia@cisco.com>
12 days agohs-test: http/2 testing with h2spec 83/42783/3
Matus Fabian [Thu, 10 Apr 2025 14:17:30 +0000 (10:17 -0400)]
hs-test: http/2 testing with h2spec

suite is marked as pending since http plugin is not build with http/2
enabled by default

Type: test

Change-Id: If13f2add1f418060dae6d493f2cd800f9f734449
Signed-off-by: Matus Fabian <matfabia@cisco.com>
12 days agotcp: do not scale syn-ack window 87/42787/2
Florin Coras [Fri, 11 Apr 2025 03:55:26 +0000 (23:55 -0400)]
tcp: do not scale syn-ack window

Type: fix

Change-Id: I1d677a8d80065644a1ddfb3884d99feee04c4756
Signed-off-by: Florin Coras <fcoras@cisco.com>
13 days agovppinfra: move spinlock code into macro so it can be reused 86/42786/1
Damjan Marion [Wed, 9 Apr 2025 17:49:52 +0000 (19:49 +0200)]
vppinfra: move spinlock code into macro so it can be reused

Change-Id: Iead3b7e4fa374d1851aa76245407f6e77a26f832
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
13 days agohttp: http/2 improvements 78/42778/4
Matus Fabian [Wed, 9 Apr 2025 18:34:53 +0000 (14:34 -0400)]
http: http/2 improvements

- improved handling of malformed frames and protocol violations
- if frame payload is not in fifo stop rx processing

Type: improvement

Change-Id: I4f5bd3f2fda23f2170b63af47d11deca666be27b
Signed-off-by: Matus Fabian <matfabia@cisco.com>
13 days agovlib: don't enable api elog by default 85/42685/2
Damjan Marion [Mon, 7 Apr 2025 19:21:38 +0000 (21:21 +0200)]
vlib: don't enable api elog by default

Change-Id: Ie6eb9bf9560efbe78976b84e33eb880f2aa66dfe
Type: improvement
Signed-off-by: Damjan Marion <damarion@cisco.com>
13 days agovppinfra: fix includes in devicetree code 76/42776/3
Damjan Marion [Wed, 9 Apr 2025 17:31:50 +0000 (19:31 +0200)]
vppinfra: fix includes in devicetree code

Type: fix
Change-Id: I493d8c1cc569074172fac79bbc31ed7d8df16a21
Signed-off-by: Damjan Marion <damarion@cisco.com>
2 weeks agohttp: check if version is known on cleanup 79/42779/1
Matus Fabian [Wed, 9 Apr 2025 18:57:21 +0000 (14:57 -0400)]
http: check if version is known on cleanup

peer might close/reset cleartext connection before send something or
nothing and connection time-out, in this case do not call http vfts

Type: fix

Change-Id: Ie30217fb8c68bf96a8d498bb0d50c8b20eb0e370
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2 weeks agohttp: PING frame support 40/42740/2
Matus Fabian [Tue, 8 Apr 2025 17:49:11 +0000 (13:49 -0400)]
http: PING frame support

Type: improvement

Change-Id: I932c97e4b9fc8d614ae77c3c949f04687a4f29ad
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2 weeks agomisc: update vpp python requirements 80/42580/7
Naveen Joy [Wed, 26 Mar 2025 21:53:09 +0000 (14:53 -0700)]
misc: update vpp python requirements

Type: fix

Change-Id: I715ea3b69342f7b8ab032e40320be9fa938c04e9
Signed-off-by: Naveen Joy <najoy@cisco.com>
2 weeks agovpp: add VPP_PLATFORM to show version output 76/42676/4
Dave Wallace [Fri, 4 Apr 2025 03:47:00 +0000 (23:47 -0400)]
vpp: add VPP_PLATFORM to show version output

- when building with VPP_PLATFORM=octeon10,
  the show version output does not include
  the VPP_PLATFORM which is included in the
  debian package name.  Adding this to the
  version helps clarify the platform/package
  name in CSIT trending graphs in addition
  to matching installed debian package name
  for packages with non-default VPP_PLATFORM.

Type: fix

Change-Id: Ieb582a1db576f5e676b97becfdce6ebdfdd3ae41
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2 weeks agohttp: http/2 starting tcp connection 42/42642/6
Matus Fabian [Wed, 2 Apr 2025 17:44:44 +0000 (13:44 -0400)]
http: http/2 starting tcp connection

Type: feature

Change-Id: Ic731cf0f758f247cd067ca13ec2901c2c01b5065
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2 weeks agohttp: http/2 stream state machine 92/42592/8
Matus Fabian [Mon, 31 Mar 2025 17:29:48 +0000 (13:29 -0400)]
http: http/2 stream state machine

server side stream state machine

Type: feature

Change-Id: I03ce57f6c1146f7e1dfd7d54db7d3e3ec7615991
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2 weeks agohttp: http_buffer improvements 50/42650/3
Matus Fabian [Thu, 3 Apr 2025 09:59:06 +0000 (05:59 -0400)]
http: http_buffer improvements

needed for http/2 to make data frame header

http_buffer_get_segs return number bytes in returned segments
http_buffer_is_drain changed to http_buffer_bytes_left
ptr buffer can track u64 data length

Type: improvement

Change-Id: I586bec69c851cb38d7be7af9e254cd240bbd7e62
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2 weeks agohttp_static: support multiple listeners 80/42680/9
Florin Coras [Fri, 4 Apr 2025 21:56:18 +0000 (17:56 -0400)]
http_static: support multiple listeners

Add support for multiple listeners that can be added and removed via
"http static listener" cli.

Type: feature

Change-Id: I024d1bf8b02b2046f1757656944b2d48662a1254
Signed-off-by: Florin Coras <fcoras@cisco.com>
2 weeks agohttp: handle ts closed notifications 81/42681/2
Florin Coras [Sat, 5 Apr 2025 19:41:05 +0000 (15:41 -0400)]
http: handle ts closed notifications

Handle transport closed notifications and update connection state.
Also, handle closed state in app close notifications and force http
connection cleanup if transport is already closed to avoid waiting for
timer based cleanups.

Type: improvement

Change-Id: I26ee6a15b0993810d5a75fa56bb24e3396962f7b
Signed-off-by: Florin Coras <fcoras@cisco.com>
2 weeks agovlib: add vlib_node_unschedule() and vlib_node_is_scheduled() 79/42679/2
Damjan Marion [Fri, 4 Apr 2025 14:32:53 +0000 (16:32 +0200)]
vlib: add vlib_node_unschedule() and vlib_node_is_scheduled()

Type: improvement
Change-Id: I18c3b2c688c2395e49976b9bb17c784cf6e62dc7
Signed-off-by: Damjan Marion <damarion@cisco.com>
2 weeks agoiavf: fix promisc flags 78/42678/2
Damjan Marion [Fri, 4 Apr 2025 11:28:14 +0000 (13:28 +0200)]
iavf: fix promisc flags

define unused flag bits so they are initialized to zero

Change-Id: Ibcab38efa33d70cb4f8a813b5eaf001c8ddea4fe
Type: fix
Signed-off-by: Damjan Marion <damarion@cisco.com>
2 weeks agovlib: use libiberty to demangle backtrace if present 77/42677/2
Damjan Marion [Fri, 4 Apr 2025 11:23:32 +0000 (13:23 +0200)]
vlib: use libiberty to demangle backtrace if present

Only C++ for now.... but others like rust can be added easily

Type: improvement
Change-Id: Ic61766f9944c0c19711a40a4686d296605d6c10d
Signed-off-by: Damjan Marion <damarion@cisco.com>
2 weeks agocrypto: make configurable crypto engines 45/42445/8
Nicolas PLANEL [Fri, 28 Feb 2025 18:59:14 +0000 (19:59 +0100)]
crypto: make configurable crypto engines

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>
2 weeks agohsa: add timed runs option for echo client 76/42576/19
Semir Sionek [Wed, 26 Mar 2025 13:29:32 +0000 (13:29 +0000)]
hsa: add timed runs option for echo client

Introduce the run-time parameter for echo client, which allows for
running for a certain time with a full buffer as opposed to running
until n amount of data is bounced back.

Type: improvement
Change-Id: I7b5b2138fe3fbbc36511331095a02dafd776fa94
Signed-off-by: Semir Sionek <ssionek@cisco.com>
3 weeks agohs-test: simplify core allocation 56/42656/2
Adrian Villin [Wed, 2 Apr 2025 17:01:17 +0000 (19:01 +0200)]
hs-test: simplify core allocation

- no longer distinguishing between release and debug build in the CI
- core allocation will always start from core 1 (or 0 if CPU0=true)

Type: improvement

Change-Id: I4568bda01bd90fba14ca81f6669bdab3b7521415
Signed-off-by: Adrian Villin <avillin@cisco.com>
3 weeks agoacl: use ip4_preflen_to_mask instead of artisanal function 03/41203/4
Andrew Yourtchenko [Thu, 18 Jul 2024 12:01:53 +0000 (14:01 +0200)]
acl: use ip4_preflen_to_mask instead of artisanal function

Type: improvement
Change-Id: I4cd52a9f2b8814e8d27a72ea3547fd9f8ee23562
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
3 weeks agovat2: fix -p in vat2 help text 77/41277/3
Bence Romsics [Thu, 18 Jul 2024 08:57:12 +0000 (10:57 +0200)]
vat2: fix -p in vat2 help text

Since commit fe1fb3c31a short option -p stands for --plugin-path and -s
stands for --prefix. Adjust the help text. Also fix a typo and sort
option lists.

Type: fix
Change-Id: I8e9fd825cca930e13e0a09a4492f22951a25e2ee
Signed-off-by: Bence Romsics <bence.romsics@gmail.com>
3 weeks agotests: gracefully terminate iperf3 process to enable cleanups 36/42636/3
Naveen Joy [Tue, 1 Apr 2025 21:26:44 +0000 (14:26 -0700)]
tests: gracefully terminate iperf3 process to enable cleanups

Type: fix

Change-Id: I24660305ea20d7b69e825a785ce5be3f80b431eb
Signed-off-by: Naveen Joy <najoy@cisco.com>
3 weeks agotests: update lcov ignore_error param 18/42618/1
Ivan Ivanets [Tue, 1 Apr 2025 17:30:34 +0000 (20:30 +0300)]
tests: update lcov ignore_error param

Type: test

Add the value 'negative' into ignore_error param to fix lcov error
for test-cov.

Change-Id: Ia10f70315e9f9f24bfa1d177a7293b65c3889fd2
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
3 weeks agoocteon: set cpt descriptor count to 16k 56/42356/4
Nithinsen Kaithakadan [Thu, 23 Jan 2025 05:04:52 +0000 (10:34 +0530)]
octeon: set cpt descriptor count to 16k

Set the number of CPT descriptors to 16384.
Add an option to configure cpt descriptor count
from startup conf.

Type: feature

Signed-off-by: Nithinsen Kaithakadan <nkaithakadan@marvell.com>
Change-Id: Id1ffbe69ad7d457dbd0b11494be1dc0d4a28c324

3 weeks agoocteon: fix invalid mac length in chacha poly 87/42487/2
Nithinsen Kaithakadan [Sun, 9 Mar 2025 13:16:01 +0000 (18:46 +0530)]
octeon: fix invalid mac length in chacha poly

This patch fixes invalid mac length to resolve crash in Chacha Poly.

Type: fix

Signed-off-by: Nithinsen Kaithakadan <nkaithakadan@marvell.com>
Change-Id: Ia940a721b5cb47f7b5fe68adbea78adaaa0f54f0

3 weeks agobuild: fix the make-ext-deps 00/42600/3
Andrew Yourtchenko [Mon, 31 Mar 2025 12:05:52 +0000 (12:05 +0000)]
build: fix the make-ext-deps

After the spring cleaning there were a couple of packages missing,
which prevented the install of the external dependencies.
Also as per Damjan, dkms is no longer needed for dpdk.

Type: fix
Fixes: 27c80923d0cc941c3d6954e2339b0ec75bcf18f9
Change-Id: I7f51577fee25283d64ddb898af87ae7520d6afb0
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
3 weeks agohsa: remove mbytes/gbytes parameters from echo client 87/42587/2
Semir Sionek [Fri, 28 Mar 2025 15:05:11 +0000 (15:05 +0000)]
hsa: remove mbytes/gbytes parameters from echo client

...since we're already doing unformat_memory_size on the regular bytes
parameter anyway. In conjunction with that, adjust some make
test/hs-test tests to make use of this parameter.

Type: refactor
Change-Id: Ia0c2899a31b14a8689fdc256e25c4bb418de37fc
Signed-off-by: Semir Sionek <ssionek@cisco.com>
3 weeks agohs-test: remove assert in container.Exec 97/42597/3
Adrian Villin [Fri, 28 Mar 2025 11:59:12 +0000 (12:59 +0100)]
hs-test: remove assert in container.Exec

- removed so we can ignore errors (e.g. vppinstance.Stop)

Type: test

Change-Id: Ib83057eaac7ae6e7338ae9cb59ab2af6239c47a5
Signed-off-by: Adrian Villin <avillin@cisco.com>
3 weeks agohttp: leave space for msg header on transport method 89/42589/3
Florin Coras [Fri, 28 Mar 2025 18:05:10 +0000 (14:05 -0400)]
http: leave space for msg header on transport method

Type: fix

Change-Id: I4bcc9c6168c18ccf5701b832c26b16d3bb24bc98
Signed-off-by: Florin Coras <fcoras@cisco.com>
3 weeks agohttp_static: POST to static files improvement 88/42588/2
Matus Fabian [Fri, 28 Mar 2025 16:04:50 +0000 (12:04 -0400)]
http_static: POST to static files improvement

Type: improvement

Change-Id: I6a6794dee3c9e948227e6c08769d45aa595bfe02
Signed-off-by: Matus Fabian <matfabia@cisco.com>
3 weeks agotests: fix text cov-post 86/42586/2
Ivan Ivanets [Fri, 28 Mar 2025 15:48:41 +0000 (17:48 +0200)]
tests: fix text cov-post

Type: test

Need to remove unused html/cmd_line file after genhtml based on
jjb/script/publish_cov.sh error about file name patter without
extension

Change-Id: I607951f8e464bb9e0bb88b4ee84010a5984f082a
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
3 weeks agovcl: fix coverity warnings 85/42585/1
Florin Coras [Fri, 28 Mar 2025 04:17:44 +0000 (00:17 -0400)]
vcl: fix coverity warnings

Type: fix

Change-Id: I41a9332bdd7a34ce30eaa5cd2378990dbe8e31f5
Signed-off-by: Florin Coras <fcoras@cisco.com>
3 weeks agodma_intel: fix dsa software fallback 36/42536/3
Jeff Shaw [Fri, 21 Mar 2025 15:00:17 +0000 (08:00 -0700)]
dma_intel: fix dsa software fallback

When a page fault occurs, and the "block on fault" flag is not set, the
DSA device reports the error in the completion descriptor and software
should complete the operation in software. This behavior works properly,
except the batch was not added to the list of pending batches, so the
DSA node failed to completely process the batch. The side effect is the
application callback is not called, so buffers are not freed, and the
batch is never added back to the freelist, leading to eventual buffer
exhaustion, and traffic stopping.

The fix is to make sure the batch is added to the list of pending
batches so the DSA node completes the batch. This change also removes
the line that increments the "submitted" counter as that is only used
to count batches that are submitted to hardware. A separate counter,
sw_fallback, is used to count batches that are handled in software.

Type: fix
Change-Id: Ib54e8d77ac02e5dca237bb9348440c3ddaad993b
Signed-off-by: Jeff Shaw <jeffrey.b.shaw@intel.com>
3 weeks agotests: fix test cov for PG Stream and Session SDL 84/42584/2
Ivan Ivanets [Thu, 27 Mar 2025 13:53:04 +0000 (15:53 +0200)]
tests: fix test cov for PG Stream and Session SDL

Type: test

Localized cli response waiting time configuration only for
test_pg_stream and test_session_sdl instead of asfframework conf

Change-Id: Iabeccdda97e518662f1243edd91217c02cdc8711
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
4 weeks agotests: fix test cov 81/42581/1
Ivan Ivanets [Wed, 26 Mar 2025 21:53:05 +0000 (23:53 +0200)]
tests: fix test cov

Type: test

Need to add cli response waiting timeout for test cov for test_session_sdl
and test_pg_stream.

Change-Id: I3eedfdb0de1ca01d9786742986fbcce2487500e3
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
4 weeks agovcl: improve vpp detached handling for mq epoll apps 44/42544/5
Florin Coras [Tue, 25 Mar 2025 07:29:40 +0000 (00:29 -0700)]
vcl: improve vpp detached handling for mq epoll apps

Apps that rely on epoll and use eventfds for mq signaling can
potentially sleep indefinitely if vcl detaches from vpp and no libc fd
generates events.

To avoid this, at detach time, force creation of a pair of pipes that
constantly generates mq_epfd events to force apps, including ldp, to
request vppcom epoll_waits which retry attaching to vpp.

Type: improvement

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ie2ac338cc10721829e6ac525ee7d6b812354e9a3

4 weeks agohs-test: fix redis test on ubuntu 24.04 54/42554/2
Florin Coras [Wed, 26 Mar 2025 03:54:51 +0000 (23:54 -0400)]
hs-test: fix redis test on ubuntu 24.04

Noticed in local runs that after snapshots, vcl crashes due to what
appears to be a memory corruption. Given that snapshot are done in a
forked child process, probably this is some mishandling of child
processes in multi-threaded apps.

Disable snapshotting for now.

Type: fix

Change-Id: Ide2dd3d68911b936742b41992485cc06db737564
Signed-off-by: Florin Coras <fcoras@cisco.com>
4 weeks agoacl: fix an off-by-one error in fa_acl_match_ip6_addr which does masked IPv6 comparison 96/42596/2
Andrew Yourtchenko [Wed, 26 Mar 2025 15:52:25 +0000 (16:52 +0100)]
acl: fix an off-by-one error in fa_acl_match_ip6_addr which does masked IPv6 comparison

The comparison code for the bit remainder (non-zero part of prefix length modulo 8)
was incorrectly looking one byte further than it should.

Type: fix
Change-Id: Idd27d218e77eff5f368f2ba0a5cefb86ecf605f5
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
4 weeks agovlib: add new node type - SCHED nodes 37/42537/3
Damjan Marion [Mon, 17 Mar 2025 14:51:59 +0000 (15:51 +0100)]
vlib: add new node type - SCHED nodes

SCHED nodes are new type of nodes, similar to input nodes but they are
scheduled to be run from timing wheel.
SCHED nodes work both on main and worker threads.

Typically SCHED nodes can be scheduled to be run in two ways:
 - vlib_node_set_interrupt_pending() - from any thread, run ASAP
 - vlib_node_schedule() - from own thread, afer sepcific interval

Type: feature
Change-Id: Id29a66532328d9b3c454e65d09495e8fb479cedf
Signed-off-by: Damjan Marion <damarion@cisco.com>
4 weeks agobuild: remove unused packages 52/42552/1
Damjan Marion [Tue, 25 Mar 2025 21:50:05 +0000 (22:50 +0100)]
build: remove unused packages

Type: improvement
Change-Id: I324e34198b5332407759f3acff8b185f936d9090
Signed-off-by: Damjan Marion <damarion@cisco.com>
4 weeks agohs-test: iperf and redis server logs 49/42549/2
Matus Fabian [Tue, 25 Mar 2025 09:51:17 +0000 (05:51 -0400)]
hs-test: iperf and redis server logs

send output to a log file for iperf server and redis server

Type: test

Change-Id: I07a5222e4717eee9cac3aab5c9a1a324d843e3b5
Signed-off-by: Matus Fabian <matfabia@cisco.com>
4 weeks agomisc: update maintainers 51/42551/1
Jeff Shaw [Tue, 25 Mar 2025 15:13:10 +0000 (08:13 -0700)]
misc: update maintainers

Update dma_intel, dpdk-cryptodev, idpf, and ipsec maintainers.
Also fix whitespace formatting.

Type: docs

Change-Id: Ic25343164c2fc33010a0d7044dab2e813dc6c7b7
Signed-off-by: Jeff Shaw <jeffrey.b.shaw@intel.com>
4 weeks agohttp: http/2 core skeleton 82/42482/5
Matus Fabian [Fri, 14 Mar 2025 13:10:38 +0000 (09:10 -0400)]
http: http/2 core skeleton

Type: feature

Change-Id: Ia6581b685c9dbc89e72bdec320b7f52f6f962542
Signed-off-by: Matus Fabian <matfabia@cisco.com>
4 weeks agohttp: extendable conn/req ctx and multiplexing 62/42462/7
Matus Fabian [Fri, 7 Mar 2025 13:02:42 +0000 (08:02 -0500)]
http: extendable conn/req ctx and multiplexing

multiplexing support:
- set request index as connection_index in application session
- do not allocate app session/http req immediately in
  http_ts_accept_callback but wait for request/stream opening

HTTP version specific data in connection and request ctx:
- opaque pointer in http_conn_t
- req_pool manged entirely by specific version engine

Version specific configuration:
- added name to http_engine_vft_t
- added unformat_cfg_callback (optional) to http_engine_vft_t

Type: improvement

Change-Id: Ib43f0489337a222a68b0f81d45cb2e64b2c606c0
Signed-off-by: Matus Fabian <matfabia@cisco.com>
4 weeks agobuild: fix coverage for various lcov versions 44/42044/3
Benoît Ganne [Wed, 18 Dec 2024 16:38:23 +0000 (17:38 +0100)]
build: fix coverage for various lcov versions

Starting with lcov version 2, we need to add some errors filtering.
Unfortunately, those filters are not available with lcov version 1.

Type: fix
Fixes: 66fcfb845b8e588901b4f663435e9e1b30499467

Change-Id: Ic8f4c55be89dcc59370b5a69ed8e8f39c5647ec8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
4 weeks agotests: allow to define SKIP_TESTS in a similar fashion to TEST 26/42426/2
Andrew Yourtchenko [Wed, 19 Mar 2025 14:11:44 +0000 (14:11 +0000)]
tests: allow to define SKIP_TESTS in a similar fashion to TEST

This change adds the possibility to specify the tests to skip
from the selected set of tests. This allows to construct test
sets "everything except foo and bar" that are tedious to make
otherwise.

Type: improvement
Change-Id: I0862031baf22fef926554873a88a068dfc8f0623
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
4 weeks agotests: use vcl_test_client and server for installation 16/42516/6
Ivan Ivanets [Wed, 19 Mar 2025 14:35:42 +0000 (16:35 +0200)]
tests: use vcl_test_client and server for installation

Type: test

Need to use vcl_test_client and server for deb pkg installation.
After that it is possible to use for the new one CSIT testsuit.

Change-Id: I5a374e47e9c0d0fa3920f26f6dcc9adfbc05103b
Signed-off-by: Ivan Ivanets <iivanets@cisco.com>
5 weeks agoquic: Fix compilation error with CMake 4.0.0 91/42491/2
nucleo [Mon, 17 Mar 2025 14:25:41 +0000 (16:25 +0200)]
quic: Fix compilation error with CMake 4.0.0

Fixes quicly compilation error and warning with CMake 4

Compatibility with CMake < 3.5 has been removed from CMake.
Compatibility with CMake < 3.10 will be removed from a future version of CMake.

Type: fix

Change-Id: I810f70459d5ba70f6a8c0ea0d57c77fe20dddb73
Signed-off-by: nucleo <alekcejk@googlemail.com>
5 weeks agohs-test: lower minimum iperf perf requirements 24/42424/3
Adrian Villin [Mon, 17 Mar 2025 09:43:06 +0000 (10:43 +0100)]
hs-test: lower minimum iperf perf requirements

- lowering because of ubuntu 24.04

Type: test

Change-Id: I35ec190f10bda0ea0bfe815f00ac147e451b3607
Signed-off-by: Adrian Villin <avillin@cisco.com>
5 weeks agoaf_xdp: Backport Get rid of llc and use clang to build BPF object files directly 83/42483/2
nucleo [Fri, 14 Mar 2025 15:09:18 +0000 (17:09 +0200)]
af_xdp: Backport Get rid of llc and use clang to build BPF object files directly

Fixes xdp-tools compilation error with clang 20

error: argument unused during compilation: '-c' [-Werror,-Wunused-command-line-argument]

Type: fix

Change-Id: I4d37256a722499ec1cbe8fe8e708810a2c8c9d99
Signed-off-by: nucleo <alekcejk@googlemail.com>
5 weeks agodpdk: rte_eth_tx_prepare need to called before transmiting packets 52/42452/11
Nicolas PLANEL [Wed, 5 Mar 2025 15:37:47 +0000 (16:37 +0100)]
dpdk: rte_eth_tx_prepare need to called before transmiting packets

By the DPDK documentation rte_eth_tx_prepare() call is required
to prepare the NIC and to validate the mbufs.

This would fix hardware bad UDP checksum generated by ena driver issue.

As performance will be impacted depending on the driver tx_prepare() callback
I defined a tx-prepare flag that would be enabled by default on ena driver but
could be enabled in the configuration if need for others drivers.

Note: This option would normally be exclusive with intel_phdr_cksum as driver's
tx_prepare would normally cover this usage.

Type: fix
Change-Id: Ic7c21682f7bd92b35bd9b1028129709baa2a64d4
Signed-off-by: Nicolas PLANEL <nplanel@cisco.com>
Signed-off-by: Nicolas PLANEL <nplanel@gmail.com>
5 weeks agohs-test: added session, tcp, svm unit tests 23/42423/3
Adrian Villin [Thu, 13 Mar 2025 11:12:13 +0000 (12:12 +0100)]
hs-test: added session, tcp, svm unit tests

- moved HttpUnitTest to unittests_test.go
- unit tests will only run on coverage builds
- added "SUCCESS" message to some unit tests

Type: test

Change-Id: I35a0510d0ac2899d85f2aa6875a738b280e9b89c
Signed-off-by: Adrian Villin <avillin@cisco.com>
5 weeks agoip: fix ICMP inner payload parsing 35/41935/4
Klement Sekera [Tue, 26 Nov 2024 14:42:41 +0000 (15:42 +0100)]
ip: fix ICMP inner payload parsing

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>
5 weeks agohs-test: enable coverage file filtering correctly 81/42481/1
Semir Sionek [Fri, 14 Mar 2025 10:44:21 +0000 (06:44 -0400)]
hs-test: enable coverage file filtering correctly

Type: fix
Change-Id: Idb14eebb42d31ff3c6ad5cde30fdb2e53d47302b
Signed-off-by: Semir Sionek <ssionek@cisco.com>
5 weeks agovcl: fix cl sendto on unbound socket 71/42471/9
Florin Coras [Wed, 12 Mar 2025 08:18:32 +0000 (04:18 -0400)]
vcl: fix cl sendto on unbound socket

Type: fix

Change-Id: Ia1e61a7ed633ad9708bd02fbaf4a39fe1a0ca1f3
Signed-off-by: Florin Coras <fcoras@cisco.com>
5 weeks agobuild: remove the duplicate `make install-dep` in `make pkg-verify` 68/42468/2
Jay Wang [Tue, 11 Mar 2025 10:49:43 +0000 (10:49 +0000)]
build: remove the duplicate `make install-dep` in `make pkg-verify`

In Makefile, when a target has multiple prerequisites, the order of
execution of prerequisites is not guaranteed. So we might encounter the
following `apt-get` lock issue when executing `make pkg-verify` due to
the duplicate execution of `make install-dep` command.

Reading package lists...
E: Could not get lock /var/lib/apt/lists/lock. It is held by process 21872 (apt-get)
E: Unable to lock directory /var/lib/apt/lists/
make[1]: *** [Makefile:404: install-dep] Error 100
make[1]: Leaving directory '/builds/software/ias/networking/vpp'
make: *** [Makefile:373: /builds/software/ias/networking/vpp/build-root/.deps.ok] Error 2

Type: fix
Change-Id: I057cebf5e31c0f3eef42f7ad07c7759a2d8e7f73
Signed-off-by: Jay Wang <jay.wang2@arm.com>
5 weeks agourpf: fix multicast traffic 37/42337/2
Alexander Skorichenko [Wed, 5 Feb 2025 13:29:29 +0000 (14:29 +0100)]
urpf: fix multicast traffic

Type: fix
Change-Id: I937d5d8c89bd1e0cc6ff396df6e81ff96755702c
Signed-off-by: Maxim Babichev <maxim@netgate.com>
Signed-off-by: Alexander Skorichenko <askorichenko@netgate.com>
5 weeks agohs-test: ignore some never used code paths for coverage generation 79/42479/1
Semir Sionek [Thu, 13 Mar 2025 14:35:09 +0000 (10:35 -0400)]
hs-test: ignore some never used code paths for coverage generation

Type: fix

Change-Id: I4318efee62d7fdeb936b00aafd431a4927899f9b
Signed-off-by: Semir Sionek <ssionek@cisco.com>
6 weeks agohs-test: shutdown VPP cleanly when finishing a testcase 69/42469/2
Semir Sionek [Tue, 11 Mar 2025 12:05:31 +0000 (08:05 -0400)]
hs-test: shutdown VPP cleanly when finishing a testcase

Good practice in general, but especially helpful when SIGKILL'd VPP
can't write out coverage data.

Type: fix

Change-Id: I7e7261b6f2e63fd4a6b24a3832c32800c71493c2
Signed-off-by: Semir Sionek <ssionek@cisco.com>
6 weeks agodpdk: format UDP hw offload info consistently 93/42393/2
Nicolas PLANEL [Thu, 27 Feb 2025 08:51:33 +0000 (09:51 +0100)]
dpdk: format UDP hw offload info consistently

Format the hardware offload info the same way than other protocol
to avoid confusion when reading logs, like this :
  PKT_TX_SCTP_CKSUM (0x0000) SCTP cksum of TX pkt. computed by NIC
  PKT_TX_TCP_CKSUM (0x0000) TCP cksum of TX pkt. computed by NIC
  PKT_TX_UDP_CKSUM (0x0000) TX UDP cksum

Type: improvement
Change-Id: Icd16a484eabe36af4488352312245d638d7dff4b
Signed-off-by: Nicolas PLANEL <nplanel@cisco.com>
Signed-off-by: Nicolas PLANEL <nplanel@gmail.com>
6 weeks agohttp: http_transport_connect TLS support 61/42461/2
Matus Fabian [Fri, 7 Mar 2025 09:34:59 +0000 (04:34 -0500)]
http: http_transport_connect TLS support

enable HTTPS for client apps

Type: improvement

Change-Id: I2ca8b926771a350863cca81729102faf6ee9c874
Signed-off-by: Matus Fabian <matfabia@cisco.com>
6 weeks agohttp_static: resize header response buffer if needed 92/42392/8
Semir Sionek [Wed, 26 Feb 2025 16:50:23 +0000 (11:50 -0500)]
http_static: resize header response buffer if needed

Type: fix

Change-Id: If77469fbdf2b95b0c546a2d1de1cc8663464e1fc
Signed-off-by: Semir Sionek <ssionek@cisco.com>
6 weeks agovcl: improve vpp detatch handling 58/42458/9
Florin Coras [Fri, 7 Mar 2025 02:58:14 +0000 (21:58 -0500)]
vcl: improve vpp detatch handling

Better handling of multi-threaded applications that share sessions.

Type: improvement

Change-Id: Id69bcb1a4b1d67aab020beefdb2fa196ec2ee108
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 weeks agovcl: remove listen_no_mq from state to flag 59/42459/4
Florin Coras [Fri, 7 Mar 2025 03:15:23 +0000 (22:15 -0500)]
vcl: remove listen_no_mq from state to flag

One less state in state machine

Type: improvement

Change-Id: Ib6445a425b1e2d5a957318a94c3f132cddd8370b
Signed-off-by: Florin Coras <fcoras@cisco.com>
6 weeks agosession: improve endpoint cfg unit test 65/42465/6
Florin Coras [Sat, 8 Mar 2025 07:08:31 +0000 (02:08 -0500)]
session: improve endpoint cfg unit test

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>
6 weeks agosession: fix lcl port allocation with fib 57/42457/1
Florin Coras [Thu, 6 Mar 2025 19:20:14 +0000 (14:20 -0500)]
session: fix lcl port allocation with fib

Type: fix

Change-Id: I0b0cc664cec2643a543a39cc7482292604381bf7
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 weeks agohttp_static: hss_ts_rx_callback fix 54/42454/1
Matus Fabian [Wed, 5 Mar 2025 14:06:59 +0000 (09:06 -0500)]
http_static: hss_ts_rx_callback fix

reset hs->data_len before handling new request

Type: fix

Change-Id: I5b02f8ec418c56e8ec607c5bc5c8716d53e5376f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 weeks agomisc: add and consolidate host stack scripts 49/42449/7
Florin Coras [Mon, 3 Mar 2025 21:19:01 +0000 (16:19 -0500)]
misc: add and consolidate host stack scripts

Move all existing host stack scripts under extras/scripts/host-stack

Also add scripts for iperf/vcl performance testing

Type: improvement

Change-Id: Ia79b6bd061db49f61a0e4c6577cf45afe0323eb1
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 weeks agopapi: fix socket api max message id calculation 26/35726/5
Vladislav Grishenko [Fri, 29 Oct 2021 15:40:52 +0000 (20:40 +0500)]
papi: fix socket api max message id calculation

In case of sparse message ids due fixed offsets, length of
the message table is less than max message id, causing
"IndexError: list assignment index out of range" exception
in _register_function() due "self.id_msgdef[i] = msg".

Unlike shmem api, socket api needs to use max id.

Type: fix
Signed-off-by: Vladislav Grishenko <themiron@yandex-team.ru>
Change-Id: Ib777db9dabc3a5a3ff83f07ec211cf2fb3c15cf0
Signed-off-by: Ole Troan <otroan@employees.org>
7 weeks agohttp: http2 frames 43/42443/5
Matus Fabian [Fri, 28 Feb 2025 15:15:15 +0000 (10:15 -0500)]
http: http2 frames

Type: feature

Change-Id: Id2c6f6b5747c1f676048642e277eb66850f728b7
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 weeks agovppinfra: make verbose format time more verbose 46/42446/3
Florin Coras [Sun, 2 Mar 2025 23:40:11 +0000 (18:40 -0500)]
vppinfra: make verbose format time more verbose

Dump more cpu and reftime fields in clib time struct. Example:

DBGvpp# sh clock verbose
Time now 6.890267
cpu time 6.890267 now 22333609568369233 last 22333609568350337 since start 19981775480
reftime 6.890268 now 1740958292.416887 last 1740958285.526620 init 1740958285.526620
error 0.000000, clocks/sec 2900000000.000000, Sun, 02 Mar 2025 23:31:32 GMT
Time last barrier release 3.291883104
0: Time now 6.890387
   cpu time 6.890387 now 22333609568706225 last 22333609568696497 since start 19982121640
   reftime 6.890387 now 1740958292.417007 last 1740958285.526620 init 1740958285.526620
   error -.000001, clocks/sec 2900000000.000000
Thread 0 offset 0.000000000 error 0.000000000
1: Time now 5.695180
   cpu time 5.695180 now 22333609568926421 last 22333609568920073 since start 16516023212
   reftime 5.695181 now 1740958292.417084 last 1740958286.721903 init 1740958286.721903
   error -.000001, clocks/sec 2900000000.000000
Thread 1 offset 1.195283275 error -.000000114

Type: improvement

Change-Id: I383b9b1a2ef64a731bbc335cd512d565d47f0cd9
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 weeks agosession: uri parsing improvements 17/42417/5
Adrian Villin [Thu, 27 Feb 2025 14:04:56 +0000 (15:04 +0100)]
session: uri parsing improvements

- 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>
7 weeks agosession: ignore tx evts for cl sessions with no fifo 42/42442/3
Florin Coras [Fri, 28 Feb 2025 03:13:19 +0000 (22:13 -0500)]
session: ignore tx evts for cl sessions with no fifo

Type: fix

Change-Id: I3e484ed3447dde3540c39b2c5c5ce26329c83340
Signed-off-by: Florin Coras <fcoras@cisco.com>
7 weeks agomisc: VPP 25.02 Release Notes 99/42399/2
Andrew Yourtchenko [Thu, 23 Jan 2025 11:43:20 +0000 (12:43 +0100)]
misc: VPP 25.02 Release Notes

Type: docs
Change-Id: Iff452c28396159f7818e0a294daa0277870077f4
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit af12ed005d50809e130b93a4d9c934a961081dcf)

7 weeks agodocs: Restore and update nat section of progressive tutorial 02/40402/6
Bence Romsics [Tue, 27 Feb 2024 12:18:16 +0000 (13:18 +0100)]
docs: Restore and update nat section of progressive tutorial

The NAT section of the Progressive Tutorial was likely accidentally lost
in If5b0d07ea90d978c6b1f11210a661876b7929653. This patch restores it. It
is also updated to reflect current package and plugin names and cli
reference links.

Type: docs
Change-Id: Ifb6117cd00768fd05dccfa506b4e97c81f9bcf21
Signed-off-by: Bence Romsics <bence.romsics@gmail.com>
7 weeks agohttp: hpack headers encoding 88/42388/3
Matus Fabian [Tue, 25 Feb 2025 11:52:25 +0000 (06:52 -0500)]
http: hpack headers encoding

1) header encoding without dynamic table
2) serialization of response header block

Type: feature

Change-Id: I7ec470310e5aec0f8055492e92682261b4af5e81
Signed-off-by: Matus Fabian <matfabia@cisco.com>
7 weeks agohs-test: make docker cache dir multi-user friendly 37/42437/2
Matus Fabian [Thu, 27 Feb 2025 11:00:28 +0000 (06:00 -0500)]
hs-test: make docker cache dir multi-user friendly

Type: test

Change-Id: Ib569a48b61e337e3a1bef5ba5b37d10e3322c44a
Signed-off-by: Matus Fabian <matfabia@cisco.com>
8 weeks agohs-test: create docker buildx with proxy 95/42395/2
Matus Fabian [Thu, 27 Feb 2025 10:33:57 +0000 (05:33 -0500)]
hs-test: create docker buildx with proxy

Type: test

Change-Id: If887916bc540a51747e342a76edc2f37d54e6b0f
Signed-off-by: Matus Fabian <matfabia@cisco.com>
8 weeks agohs-test: fix make install-deps 94/42394/2
Matus Fabian [Thu, 27 Feb 2025 09:45:41 +0000 (04:45 -0500)]
hs-test: fix make install-deps

run apt-get commands with sudo

Type: test

Change-Id: I1044be65a21bd8a830c11f53239accf2cf86c33d
Signed-off-by: Matus Fabian <matfabia@cisco.com>
8 weeks agoabf: run abf after reassembly 91/42391/2
Benoît Ganne [Wed, 26 Feb 2025 15:06:23 +0000 (16:06 +0100)]
abf: run abf after reassembly

If reassembly is enabled, make sure to apply ABF after reassembly.

Type: fix

Change-Id: Ic12ccba34a9e4d13caba1821e8175ee5adc7f8c3
Signed-off-by: Benoît Ganne <bganne@cisco.com>
8 weeks agolinux-cp: Add support for LACP packets 24/42124/6
Akeel Ali [Thu, 9 Jan 2025 17:01:13 +0000 (12:01 -0500)]
linux-cp: Add support for LACP packets

This patch adds support to mirror LACP packets between host and phy.
It is needed for the Sonic-VPP project to support LAG and allow Sonic
to run LACP in the control plane.

The change has 3 parts:

(1) Converted lip_punt_node to lip_punt_xc_inline, which now supports
the creation of two distinct nodes: lip_punt_node and lip_punt_xc_node.
lip_punt_node retains its original punt functionality.
lip_punt_xc_node supports both punt and x-connect between host & phy.

(2) Add 2 new API (and corresponding CLI) to the linux-cp plugin:
(A) lcp_ethertype_enable ("lcp ethertype enable <ethertype>")
(B) lcp_ethertype_get ("show lcp ethertype")

(3) Add UT to test the new functionality and API/CLI for LACP and LLDP.

Type: improvement

Change-Id: Iab66e3b29351dcf2c471babd4f1ef4bdd19da46e
Signed-off-by: Akeel Ali <akeelapi@gmail.com>
8 weeks agohttp_static: squash subsequent forward slashes in request target path 82/42382/6
Semir Sionek [Fri, 21 Feb 2025 14:09:29 +0000 (09:09 -0500)]
http_static: squash subsequent forward slashes in request target path

In the file handler, squash groups of forward slashes during path
sanitation to minify the risk of running out of memory.

Type: fix

Change-Id: Ic29d691f876b891ff588157851334162b4e3c5e3
Signed-off-by: Semir Sionek <ssionek@cisco.com>
8 weeks agohttp: hpack headers decoding 74/42374/8
Matus Fabian [Tue, 18 Feb 2025 09:29:10 +0000 (04:29 -0500)]
http: hpack headers decoding

1) parsing of binary format (RFC7541 section 6)
2) simple dynamic table implementation
3) parsing of request header block

Type: feature

Change-Id: If43e175a0643f9731c15efc412a82345d9e33cee
Signed-off-by: Matus Fabian <matfabia@cisco.com>
8 weeks agoping: Check only PING_RESPONSE_IP4 and PING_RESPONSE_IP6 events 46/40246/10
Nikita Skrynnik [Wed, 24 Jan 2024 01:09:47 +0000 (12:09 +1100)]
ping: Check only PING_RESPONSE_IP4 and PING_RESPONSE_IP6 events

Check only PING_RESPONSE_IP4 and PING_RESPONSE_IP6
in ping binary API so it doesn't block other binary API
requests while working. (current version of ping binary API
can read other events like SOCKET_READ_EVENT, for example).

Type: fix
Change-Id: Ie7c5c92322af28633680c9c0d60fed739d4e65a0
Signed-off-by: Nikita Skrynnik <nikita.skrynnik@xored.com>