hicn.git
2 years agofix(libhicnctrl)/hicn_plugin): copy address to correct offset 65/37965/2
Mauro Sardara [Fri, 20 Jan 2023 09:37:24 +0000 (09:37 +0000)]
fix(libhicnctrl)/hicn_plugin): copy address to correct offset

Copy address received from vapi into correct ip46address offset

Ticket: HICN-826

Change-Id: I1bf23cc0920539f8883b499981f216038e51a8c0
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix: correctly print fib prefixes 49/37949/1
Mauro Sardara [Wed, 18 Jan 2023 20:07:48 +0000 (20:07 +0000)]
fix: correctly print fib prefixes

Change-Id: Icd00882577be78fe8996f53f737d87d5c8e2da99
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat: local-remote strategy 32/37932/18
Mauro Sardara [Mon, 16 Jan 2023 20:18:23 +0000 (20:18 +0000)]
feat: local-remote strategy

Ticket: HICN-824

Change-Id: Iea285cb499b13c943a142fa39328ee36c91ae913
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat: forward local interest if PIT entry exists in case of local remote strategy 26/37926/1
Michele Papalini [Mon, 16 Jan 2023 11:00:38 +0000 (12:00 +0100)]
feat: forward local interest if PIT entry exists in case of local remote strategy
Ref: HICN-823

Signed-off-by: Michele Papalini <micpapal@cisco.com>
Change-Id: I9e4b5da6ae1011e29e128d7811e29b3020a4a3cc

2 years agofeat: update cmake modules version 17/37917/6
Mauro Sardara [Fri, 13 Jan 2023 10:13:14 +0000 (10:13 +0000)]
feat: update cmake modules version

Change-Id: I3154e22faa5c274dda3645f3a4e81cf5b6ea526b
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat: set STREAM parameters in functional tests 01/37901/6 v23.02-rc0
Mauro Sardara [Thu, 12 Jan 2023 08:48:47 +0000 (08:48 +0000)]
feat: set STREAM parameters in functional tests

Ticket: HICN-822

Change-Id: I0b05a3d4b01fe2ab35682eb7d70fa0f0bdf05176
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoMerge "feat: upgrade to VPP 22.10"
Luca Muscariello [Tue, 10 Jan 2023 16:48:16 +0000 (16:48 +0000)]
Merge "feat: upgrade to VPP 22.10"

2 years agofeat: upgrade to VPP 22.10 18/37818/18 v22.10-rc0
Mauro Sardara [Mon, 12 Dec 2022 16:19:35 +0000 (16:19 +0000)]
feat: upgrade to VPP 22.10

Change-Id: I556bd8c44f0ff7a631a0df34b498ffd7952fcf4a
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix(libtransport): fix variable type for port number 43/37743/1
Michele Papalini [Fri, 2 Dec 2022 16:04:26 +0000 (17:04 +0100)]
fix(libtransport): fix variable type for port number
Ref: HICN-820

Signed-off-by: Michele Papalini <micpapal@cisco.com>
Change-Id: Ibad1b02abcc40734143ca3dad1d3e37c93ae8eaf

2 years agofeat: configure hicnlight port in libtransport and libconfig 40/37740/7
Mauro Sardara [Fri, 2 Dec 2022 14:20:18 +0000 (15:20 +0100)]
feat: configure hicnlight port in libtransport and libconfig

Change-Id: Ib55747b4589150ce4a88938e28371c6cf5ab979b
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Signed-off-by: Michele Papalini <micpapal@cisco.com>
2 years agofeat(libtransport): add configuration section for hicnlight io_module 37/37737/5
Mauro Sardara [Thu, 1 Dec 2022 15:29:08 +0000 (16:29 +0100)]
feat(libtransport): add configuration section for hicnlight io_module

And add configuration for hicnlight url.

Ticket: HICN-819

Change-Id: I0c2557ca49078e1e405d078da2768372e5f44525
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat(auth): add support for ED25519 and ED448 89/37689/1
Olivier Roques [Thu, 17 Nov 2022 11:26:23 +0000 (11:26 +0000)]
feat(auth): add support for ED25519 and ED448

Ref: HICN-818

Signed-off-by: Olivier Roques <oroques@cisco.com>
Change-Id: I8672f022b74be387e16496660a78edf3c1da4bf1

2 years agoMerge "fix(hicn-light): fib_contains incorrectly matches subprefixes"
Michele Papalini [Fri, 21 Oct 2022 14:19:42 +0000 (14:19 +0000)]
Merge "fix(hicn-light): fib_contains incorrectly matches subprefixes"

2 years agofix(libhicnctrl): hc_face_create does not update face id in parameter 02/37502/1
Jordan Augé [Fri, 21 Oct 2022 12:45:43 +0000 (14:45 +0200)]
fix(libhicnctrl): hc_face_create does not update face id in parameter

Change-Id: I30090edb7d365befdc838e0b08ae22bdde377ea2
Ticket: HICN-817
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agofix(sonar): False positives Identical sub-expressions on both sides of operator 86/37486/4
Luca Muscariello [Wed, 19 Oct 2022 15:51:12 +0000 (17:51 +0200)]
fix(sonar): False positives Identical sub-expressions on both sides of operator

Ref: HICN-816

Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: Ifdbcad287f89378dc2a35110fac01dba9c341ef9

2 years agoMerge "fix(libhicn): Out of bound memory access"
Luca Muscariello [Wed, 19 Oct 2022 15:31:05 +0000 (15:31 +0000)]
Merge "fix(libhicn): Out of bound memory access"

2 years agofix: show forwarder log after test execution 77/37477/2
Mauro Sardara [Tue, 18 Oct 2022 16:48:45 +0000 (18:48 +0200)]
fix: show forwarder log after test execution

The command to show the log should be executed
with "sudo", as the log file is owned by the root user.

Ticket: HICN-815

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I3c1bf40691037d32c09e095e6011992212b19e38

2 years agoMerge "fix(hicn-light): access to field 'local' results in a dereference of a null...
Luca Muscariello [Tue, 18 Oct 2022 07:44:25 +0000 (07:44 +0000)]
Merge "fix(hicn-light): access to field 'local' results in a dereference of a null pointer"

2 years agofix(sonar): Nodejs LTS update 43/37443/3
Luca Muscariello [Mon, 17 Oct 2022 15:57:25 +0000 (17:57 +0200)]
fix(sonar): Nodejs LTS update

Ref: HICN-814

Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I3da9837c9e42d9b509dfb863c0f01302fe39aa97

2 years agofix(libhicn): Out of bound memory access 41/37441/1
Jordan Augé [Mon, 17 Oct 2022 14:52:25 +0000 (16:52 +0200)]
fix(libhicn): Out of bound memory access

Change-Id: If7ef58bc05dd62f58bf5d5a8bce0491afab37d42
Ticket: HICN-813
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agofix(hicn-light): access to field 'local' results in a dereference of a null pointer 36/37436/1
Jordan Augé [Mon, 17 Oct 2022 13:13:05 +0000 (15:13 +0200)]
fix(hicn-light): access to field 'local' results in a dereference of a null pointer

Change-Id: I7251e7024c2e0a29629df2a1a7d9b0561ec0e9a6
Ticket: HICN-812
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agofix(hicn-light): fib_contains incorrectly matches subprefixes 33/37433/2
Jordan Augé [Mon, 17 Oct 2022 09:40:32 +0000 (11:40 +0200)]
fix(hicn-light): fib_contains incorrectly matches subprefixes

Change-Id: I9575012a4980649a05a490057bf4a71675792396
Ticket: HICN-811
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agorefactor(hicn-light): cleanup towards optimizations to UDP socket face 71/37371/25
Jordan Augé [Fri, 30 Sep 2022 10:29:05 +0000 (12:29 +0200)]
refactor(hicn-light): cleanup towards optimizations to UDP socket face

Change-Id: If5bc3c4dfcdde386ac02674f3c03d32d495b2231
Ticket: HICN-771
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agoMerge "fix(hicn-light): error handling for invalid connections + local bind/remote...
Mauro Sardara [Fri, 14 Oct 2022 15:47:51 +0000 (15:47 +0000)]
Merge "fix(hicn-light): error handling for invalid connections + local bind/remote connect returning EINVAL in tests"

2 years agofix(hicn-light): error handling for invalid connections + local bind/remote connect... 23/37423/4
Jordan Augé [Fri, 14 Oct 2022 13:45:53 +0000 (15:45 +0200)]
fix(hicn-light): error handling for invalid connections + local bind/remote connect returning EINVAL in tests

Change-Id: I7398ff034ce0b96ea31bc3fa9d5ba515a5c14804
Ticket: HICN-809
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agofix(libhicnctrl): new create/face&route command fail 21/37421/2
Jordan Augé [Fri, 14 Oct 2022 08:37:53 +0000 (10:37 +0200)]
fix(libhicnctrl): new create/face&route command fail

Change-Id: I49d80a741672c4f9da75e36cc816fc53f37ac158
Ticket: HICN-808
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agotest: instrument functional tests with more logs 82/37382/37
Mauro Sardara [Tue, 11 Oct 2022 18:01:32 +0000 (20:01 +0200)]
test: instrument functional tests with more logs

Also:
 - Do not tun tests with privileged containers HICN-806
 - Refactor robot test files and config.sh

Currently some logs are missing from the robot output of the functional tests.
This patch adds them.

Ticket: HICN-805

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I9893eb356a4dd12f4bc6347b8fe02e358c9bf737

2 years agoMerge "feat(strategy): forwarding strategy for local faces Ref: HICN-802"
Michele Papalini [Tue, 11 Oct 2022 14:40:15 +0000 (14:40 +0000)]
Merge "feat(strategy): forwarding strategy for local faces Ref: HICN-802"

2 years agofeat(strategy): forwarding strategy for local faces 81/37381/4
Michele Papalini [Tue, 11 Oct 2022 08:44:22 +0000 (08:44 +0000)]
feat(strategy): forwarding strategy for local faces
Ref: HICN-802

Signed-off-by: Michele Papalini <micpapal@cisco.com>
Change-Id: I22b48d700b1b46599e570d841932d74c5ac65891

2 years agoMerge "refactor(hicn-light): cleanup and optimizations to UDP socket face"
Mauro Sardara [Fri, 7 Oct 2022 15:54:49 +0000 (15:54 +0000)]
Merge "refactor(hicn-light): cleanup and optimizations to UDP socket face"

2 years agorefactor(hicn-light): cleanup and optimizations to UDP socket face 12/37312/14
Jordan Augé [Fri, 30 Sep 2022 10:29:05 +0000 (12:29 +0200)]
refactor(hicn-light): cleanup and optimizations to UDP socket face

Ticket: HICN-771
Change-Id: Ie84dc2f61888c3fdd7b3728b2a13cacbac503d1a
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agoMerge "test: new packet format functional test with hiperf/libtransport"
Mauro Sardara [Fri, 7 Oct 2022 11:25:49 +0000 (11:25 +0000)]
Merge "test: new packet format functional test with hiperf/libtransport"

2 years agofix(libhicnctrl): connections created without interface conflict with existing listeners 69/37369/2
Jordan Augé [Fri, 7 Oct 2022 06:46:31 +0000 (08:46 +0200)]
fix(libhicnctrl): connections created without interface conflict with existing listeners

Change-Id: Idc891221b2cd149a4a5decc45c2e84da74b832df
Ticket: HICN-804
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agorefactor(libhicnctrl): strategy/set missing in VFT 60/37360/3
Jordan Augé [Wed, 5 Oct 2022 15:46:32 +0000 (17:46 +0200)]
refactor(libhicnctrl): strategy/set missing in VFT

Change-Id: I19a8dd89a1f03127d414d1c086848079ff10d0df
Ticket: HICN-803
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agotest: new packet format functional test with hiperf/libtransport 40/37340/4
Jordan Augé [Tue, 4 Oct 2022 15:41:36 +0000 (17:41 +0200)]
test: new packet format functional test with hiperf/libtransport

Change-Id: Ib6ca26e9ee1a042a72ac81da71493542e8b833e6
Ticket: HICN-774
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agofeat: support for new packet format in hicn-light 10/37210/12
Jordan Augé [Wed, 21 Sep 2022 15:11:22 +0000 (17:11 +0200)]
feat: support for new packet format in hicn-light

Ref: HICN-792

Change-Id: I3204006bd2dd2be6504c33035c6578ec0292455a
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agoMerge "fix(rtc-production-protocol): do not modify packet just after sending it"
Michele Papalini [Thu, 29 Sep 2022 13:53:38 +0000 (13:53 +0000)]
Merge "fix(rtc-production-protocol): do not modify packet just after sending it"

2 years agorefactor(io_modules): remove deprecated loopback module 02/37302/1
Mauro Sardara [Thu, 29 Sep 2022 13:32:18 +0000 (15:32 +0200)]
refactor(io_modules): remove deprecated loopback module

The loopback io-module is not used and its functionalities
are already covered by the forwarder io-module.

We should then deprecate it.

Ticket: HICN-800
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I709b8e27d00c03f009d33846076d65b0fee9a6d8

2 years agofix(rtc-production-protocol): do not modify packet just after sending it 01/37301/2
Mauro Sardara [Thu, 29 Sep 2022 11:25:26 +0000 (13:25 +0200)]
fix(rtc-production-protocol): do not modify packet just after sending it

Also:
 - Fix consumer-producer unit test
 - Enable communication of local socket using forwarder io-module

Ticket: HICN-799

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Ib245fce6d6f409255d4e91e5745a6919acb3e720

2 years agofix(memif.patch): use correct cwd in git describe 56/37256/1
Mauro Sardara [Mon, 26 Sep 2022 14:35:46 +0000 (16:35 +0200)]
fix(memif.patch): use correct cwd in git describe

If libmemif is included as subfolder, it might not
find a .git folder in the CMAKE_SOURCE_DIR.

To prevent this we need to use CMAKE_CURRENT_SOURCE_DIR,
in order to get the folder containing the CMakeLists of libmemif.

Ticket: HICN-798
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I51bb5dc94fa79d17482896bca356e60993ea39eb

2 years agoMerge "fix(stats): fix forwarder statistics retrieval"
Mauro Sardara [Mon, 26 Sep 2022 11:20:08 +0000 (11:20 +0000)]
Merge "fix(stats): fix forwarder statistics retrieval"

2 years agoMerge "fix(Makefile): fix the `make commit-template` target"
Luca Muscariello [Mon, 26 Sep 2022 08:40:23 +0000 (08:40 +0000)]
Merge "fix(Makefile): fix the `make commit-template` target"

2 years agochore(hicn-plugin): install hicn.api.json 51/37251/3
Mauro Sardara [Mon, 26 Sep 2022 08:23:04 +0000 (10:23 +0200)]
chore(hicn-plugin): install hicn.api.json

The hicn.api.json is currently used by govpp/vapi_c_gen/vapi_cpp_gen
etc. to generate the APIs to configure the hicn plugin.

It should be installed in the system as external component may require
it to generate the api, as in the govpp case
(cf https://github.com/FDio/govpp/tree/master/binapi).

The hicn.api.son file will be installed with the rest of the plugins
API (share/vpp/api/plugins)

Ticket: HICN-797
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Ief7f0010a718efd272e260552f2f2d1428fac486

2 years agofix(Makefile): fix the `make commit-template` target 50/37250/3
Mauro Sardara [Mon, 26 Sep 2022 08:09:30 +0000 (10:09 +0200)]
fix(Makefile): fix the `make commit-template` target

make commit template expects the CWD of make to be a git repository.

While this is true most of the time, there are cases where we use the
Makefile just for install dependencies
(e.g. https://github.com/FDio/hicn/blob/master/Dockerfile.dev#L22) and
in that case we do not copy the .git folder.

The solution is to check if the current make directory is actually a
.git repository.

Ticket: HICN-796
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I12912c76c9ddfa3b7a19d0faf8c84b178ca728bf
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix(stats): fix forwarder statistics retrieval 49/37249/2
Enrico Loparco (eloparco) [Fri, 23 Sep 2022 15:27:34 +0000 (15:27 +0000)]
fix(stats): fix forwarder statistics retrieval

Ref: HICN-794
Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: I13162174f45855989727f92e96c11a1d48d710dd

2 years agofix(hicn-light): fix routing issues 33/37133/11
Jordan Augé [Fri, 16 Sep 2022 11:56:34 +0000 (13:56 +0200)]
fix(hicn-light): fix routing issues

Ref: HICN-786

Change-Id: I541c87d2d810907489ca4f59b3d7740a18c108fb
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agoMerge "fix(libhicnctrl): fix new listener validation during face or connection creation"
Mauro Sardara [Thu, 22 Sep 2022 13:47:55 +0000 (13:47 +0000)]
Merge "fix(libhicnctrl): fix new listener validation during face or connection creation"

2 years agofeat(libhicnctrl): implement face delete command 11/37211/4
Mauro Sardara [Wed, 21 Sep 2022 17:36:30 +0000 (19:36 +0200)]
feat(libhicnctrl): implement face delete command

Ticket: HICN-793
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I87f2cd5a9e077ba81cc0d92fc2ec9fb5c9ec2ff0

2 years agofix(libhicnctrl): fix new listener validation during face or connection creation 66/37166/4
Jordan Augé [Tue, 20 Sep 2022 11:27:12 +0000 (13:27 +0200)]
fix(libhicnctrl): fix new listener validation during face or connection creation

Change-Id: I5f532320fcb3fc01cd3a027af7ea5fc6425e4097
Ref: HICN-790
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
2 years agoci: add commit check 01/37201/6
Mauro Sardara [Wed, 21 Sep 2022 10:24:33 +0000 (12:24 +0200)]
ci: add commit check

Check the format of commit is conventional commit compliant

Ticket: HICN-791
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I56b0884c1bb84ef29adc55a5f07eafb3763eff43

2 years agoMerge "refactor(logs): use glog instead of prints"
Mauro Sardara [Wed, 21 Sep 2022 10:20:54 +0000 (10:20 +0000)]
Merge "refactor(logs): use glog instead of prints"

2 years agorefactor(logs): use glog instead of prints 48/37148/9
Enrico Loparco (eloparco) [Mon, 19 Sep 2022 08:37:30 +0000 (08:37 +0000)]
refactor(logs): use glog instead of prints

Ref: HICN-788
Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: Iedf75e1658a335985cc2dfd7b82ae61124f2371e

2 years agoMerge "fix(packaging): set correct dependencies for hicn-light package"
Mauro Sardara [Mon, 19 Sep 2022 11:14:19 +0000 (11:14 +0000)]
Merge "fix(packaging): set correct dependencies for hicn-light package"

2 years agofix(packaging): set correct dependencies for hicn-light package 54/37154/1
Mauro Sardara [Mon, 19 Sep 2022 10:43:13 +0000 (12:43 +0200)]
fix(packaging): set correct dependencies for hicn-light package

Ref: HICN-789

Change-Id: If6cde9d9a4289defa5fe283319fd8181c4b1bf90
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix(gcc): fix gcc warnings 39/37139/1
Enrico Loparco (eloparco) [Fri, 16 Sep 2022 14:53:05 +0000 (14:53 +0000)]
fix(gcc): fix gcc warnings

Ref: HICN-787
Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: I2a69be00382f6e5b2544b766d6ac9e1f8cae4bd6

2 years agoMerge "fix(strategy): fix memory leaks detected by valgrind in unit tests"
Mauro Sardara [Thu, 15 Sep 2022 11:06:52 +0000 (11:06 +0000)]
Merge "fix(strategy): fix memory leaks detected by valgrind in unit tests"

2 years agofix(strategy): fix memory leaks detected by valgrind in unit tests 26/37126/1
Enrico Loparco (eloparco) [Wed, 14 Sep 2022 15:57:25 +0000 (15:57 +0000)]
fix(strategy): fix memory leaks detected by valgrind in unit tests

Ref: HICN-785

Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: I0102bdba4257b891fc6843d42e6eccc5e48687dc

2 years agoMerge "feat(hicn-ping): allow usage of random prefixes/suffixes in hicn-ping"
Mauro Sardara [Wed, 14 Sep 2022 15:23:25 +0000 (15:23 +0000)]
Merge "feat(hicn-ping): allow usage of random prefixes/suffixes in hicn-ping"

2 years agoci: correctly generate tests reports 24/37124/2
Mauro Sardara [Wed, 14 Sep 2022 14:17:22 +0000 (16:17 +0200)]
ci: correctly generate tests reports

Do not use make test to run the tests after the build,
as it overwrites the report file for each single unit tests.

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Icdc55b31c1e36b213f977b76f8518ac16c393afc

2 years agofeat(hicn-ping): allow usage of random prefixes/suffixes in hicn-ping 20/37120/2
Enrico Loparco (eloparco) [Wed, 14 Sep 2022 08:58:55 +0000 (08:58 +0000)]
feat(hicn-ping): allow usage of random prefixes/suffixes in hicn-ping

Ref: HICN-783

Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: I41c804dd639ee15aee9619732f55e39a3baf1385

2 years agoci: group all unit test reports under same folder 17/37117/1
Mauro Sardara [Tue, 13 Sep 2022 19:08:01 +0000 (21:08 +0200)]
ci: group all unit test reports under same folder

Ref: HICN-872

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I29f34e15e3cc4e04d50de937568a4e4e76a33f33

2 years agoMerge "refactor: update INFO.yaml"
Luca Muscariello [Tue, 13 Sep 2022 12:51:44 +0000 (12:51 +0000)]
Merge "refactor: update INFO.yaml"

2 years agoMerge "fix: re-introduce BASE_IMAGE argument in docker-compose files for tests"
Mauro Sardara [Tue, 13 Sep 2022 10:58:30 +0000 (10:58 +0000)]
Merge "fix: re-introduce BASE_IMAGE argument in docker-compose files for tests"

2 years agofix: re-introduce BASE_IMAGE argument in docker-compose files for tests 03/37103/3
Mauro Sardara [Mon, 12 Sep 2022 15:05:43 +0000 (17:05 +0200)]
fix: re-introduce BASE_IMAGE argument in docker-compose files for tests

Ref: HICN-732

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I26ab4e0630d143bd429dc44318868667a155ed12

2 years agoMerge "fix(download_artifacts): use latest URLs from list retrieved from gerrit"
Angelo Mantellini [Tue, 13 Sep 2022 09:03:12 +0000 (09:03 +0000)]
Merge "fix(download_artifacts): use latest URLs from list retrieved from gerrit"

2 years agofix(download_artifacts): use latest URLs from list retrieved from gerrit 08/37108/1
Mauro Sardara [Mon, 12 Sep 2022 19:13:44 +0000 (21:13 +0200)]
fix(download_artifacts): use latest URLs from list retrieved from gerrit

Ref: HICN-781

Change-Id: Iaeaa57bb97599772611506444fcf806f17f7b9b0
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix(interest_manifest.h): set correct type to pos variable when using it in interest_... 04/37104/1
Mauro Sardara [Mon, 12 Sep 2022 16:36:10 +0000 (18:36 +0200)]
fix(interest_manifest.h): set correct type to pos variable when using it in interest_manifest_foreach_suffix

Ref: HICN-780

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I6025c3e87d4d8cb6a1e5e1f68e856214f8aa81ed

2 years agofeat(slab): add slab allocator to store hashtables' keys 91/37091/6
Enrico Loparco (eloparco) [Thu, 8 Sep 2022 12:18:09 +0000 (12:18 +0000)]
feat(slab): add slab allocator to store hashtables' keys

Ref: HICN-777
Signed-off-by: Enrico Loparco (eloparco) <eloparco@cisco.com>
Change-Id: Ibbd5c5e73cfd2f6adf757f7248dff8a933515d21

2 years agorefactor: update INFO.yaml 00/37100/3
Olivier Roques [Mon, 12 Sep 2022 07:34:37 +0000 (07:34 +0000)]
refactor: update INFO.yaml

Ref: HICN-779

Signed-off-by: Olivier Roques <oroques+fdio@cisco.com>
Change-Id: I3b1e93067bd005c29cf6d0c40867288bd5c5d04e

2 years agofix(sonar): make sonarqube happy 70/37070/2
Mauro Sardara [Fri, 2 Sep 2022 14:34:36 +0000 (14:34 +0000)]
fix(sonar): make sonarqube happy

Ref: HICN-766 HICN-767 HICN-764 HICN-762 HICN-743 HICN-759 HICN-760 HICN-758 HICN-761 HICN-756

Change-Id: Ic2accf6b6771c7a78d2b22d9bdb8e5a5be9ead8a
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofix: correct bugs in interest processing pipeline 65/37065/1
Mauro Sardara [Fri, 2 Sep 2022 11:17:49 +0000 (11:17 +0000)]
fix: correct bugs in interest processing pipeline

ResHHICN-748

Change-Id: I8e55932fda2c77891f7b2aaf7fa5d7087f1aa2bf
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat(hicn-plugin): interest manifest 27/37027/18
Mauro Sardara [Fri, 26 Aug 2022 15:02:12 +0000 (15:02 +0000)]
feat(hicn-plugin): interest manifest

Ref: HICN-748

Change-Id: Ie403de53a93094dca997cec379db6f5d3ce8e6be
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(sonar): add test coverage in sonar cloud 33/37033/3
Mauro Sardara [Mon, 29 Aug 2022 18:12:50 +0000 (18:12 +0000)]
ci(sonar): add test coverage in sonar cloud

Ref: HICN-749

Change-Id: I1523b548df9254949d164b995d24c0210252809f
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoMerge "ci(sonar): build with coverage information"
Luca Muscariello [Mon, 29 Aug 2022 17:10:27 +0000 (17:10 +0000)]
Merge "ci(sonar): build with coverage information"

2 years agoci(sonar): build with coverage information 32/37032/3
Mauro Sardara [Mon, 29 Aug 2022 17:05:25 +0000 (17:05 +0000)]
ci(sonar): build with coverage information

Also:
  - Install clang-11 as default compiler with make deps

Ref: HICN-752

Change-Id: Id6faf99ddd9c43a1c5804b8ace8df9dad27b82e6
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat: resize hicn_buffer_t to 24 byes 20/37020/8
Mauro Sardara [Thu, 25 Aug 2022 15:19:33 +0000 (15:19 +0000)]
feat: resize hicn_buffer_t to 24 byes

Ref: HICN-746

Change-Id: I70d526aa81c158a128408cff7e7a2d8e09ceb01a
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(functions.sh): fallback to full image build if artifacts cannot be retrieved 55/36955/1
Mauro Sardara [Fri, 19 Aug 2022 09:02:27 +0000 (11:02 +0200)]
ci(functions.sh): fallback to full image build if artifacts cannot be retrieved

Ref: HICN-743

Change-Id: I9690f541e985fa6cde65bb892f0b8a7787fd2e93
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agotest(hicn-light): fix hicn-light functional tests 36/36936/4
Mauro Sardara [Thu, 18 Aug 2022 09:11:20 +0000 (11:11 +0200)]
test(hicn-light): fix hicn-light functional tests

Ref: HICN-743

Change-Id: Id49ab872b5cf545c9e021a51a877341ff7ab9337
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(functional-tests): add functional tests scripts 05/36905/45
Mauro Sardara [Tue, 16 Aug 2022 07:43:05 +0000 (09:43 +0200)]
ci(functional-tests): add functional tests scripts

- Add scripts/functional-tests.sh script
- Add `download_artifacts` functions, allowing to retrieve artifacts of a gerrit patch
- Robot: redirect output of topology build to files, thus preventing robot from hanging
- Share folders between host and containers with the :z flag
- Use sudo to install executable in docker-compose scripts, as the user of the docker is not root anymore
- Makefile: decouple installation and build

Ref: HICN-732

Change-Id: Ib945cf7bd0ee331e33270cf1005dfebd085862eb
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoMerge "ci: add initial support to build against VPP master"
Luca Muscariello [Fri, 12 Aug 2022 20:27:03 +0000 (20:27 +0000)]
Merge "ci: add initial support to build against VPP master"

2 years agoci: add initial support to build against VPP master 91/36891/2
Mauro Sardara [Fri, 12 Aug 2022 14:31:43 +0000 (16:31 +0200)]
ci: add initial support to build against VPP master

Ref: HICN-742

Change-Id: Ifdf3597846fdfe0ba91516e9c0bf4e2a9ed2f1a3
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(sonarqube): force job to fail if any command fails 90/36890/2
Mauro Sardara [Fri, 12 Aug 2022 13:21:00 +0000 (15:21 +0200)]
ci(sonarqube): force job to fail if any command fails

Ref: HICN-741

Change-Id: Ib789432e5419d70188836f5391997067e2e9e8c3
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(sonarscan): fixes for sonar build 86/36886/1
Mauro Sardara [Fri, 12 Aug 2022 12:48:51 +0000 (14:48 +0200)]
ci(sonarscan): fixes for sonar build

- Configure safe directories for git

Ref: HICN-741

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I2c9da853f57ca4576fb4ad35c3ca81de575c7c65
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci(sonarscan): fixes for sonar build 82/36882/2
Mauro Sardara [Fri, 12 Aug 2022 10:28:13 +0000 (12:28 +0200)]
ci(sonarscan): fixes for sonar build

- Add submodule init before running the docker compose up command
- Mount workspace with the :z flag to modify the selinux label of the directory
- Build docker image with amd64 architecture, as sonar build wrapper only exists for x64

Ref: HICN-741

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I3cc3e285ce216eec9795011f67758df590dc6fec
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agofeat: fix sonarcloud build 81/36881/1
Luca Muscariello [Fri, 12 Aug 2022 08:51:40 +0000 (10:51 +0200)]
feat: fix sonarcloud build

Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I569ede7040d0f1e168af87a67e31d494fd11bc77

2 years agoci(sonarscan): fix typo 73/36873/1
Mauro Sardara [Thu, 11 Aug 2022 17:01:39 +0000 (19:01 +0200)]
ci(sonarscan): fix typo

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Ibadcc7b1a79ef92149b032becc800f1ed8ba00c5

2 years agoci: install docker-compose as part of sonarcloud scan 72/36872/1
Mauro Sardara [Thu, 11 Aug 2022 16:44:10 +0000 (18:44 +0200)]
ci: install docker-compose as part of sonarcloud scan

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I2216084a415abbb874dfa49051ca3ca0fcb7c41d

2 years agofeat: drop sysrepo and netconf/yang support 71/36871/1
Luca Muscariello [Thu, 11 Aug 2022 16:30:53 +0000 (18:30 +0200)]
feat: drop sysrepo and netconf/yang support

Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I215af1b77a3f9da878f3894708f687a7e7ea03a2

2 years agoci: call docker-compose in sonarcloud trigger 69/36869/4
Mauro Sardara [Thu, 11 Aug 2022 15:14:16 +0000 (17:14 +0200)]
ci: call docker-compose in sonarcloud trigger

Ref: HICN-739

Change-Id: I33c4948f6f7a1a27a30051da4a1bdbfc6de90951
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoMerge "ci: add functional tests to verification/merge jobs"
Luca Muscariello [Wed, 10 Aug 2022 18:25:53 +0000 (18:25 +0000)]
Merge "ci: add functional tests to verification/merge jobs"

2 years agoMerge "feat: Sonarcloud"
Luca Muscariello [Wed, 10 Aug 2022 13:14:59 +0000 (13:14 +0000)]
Merge "feat: Sonarcloud"

2 years agofeat: Sonarcloud 11/36811/3
Luca Muscariello [Mon, 8 Aug 2022 11:55:31 +0000 (13:55 +0200)]
feat: Sonarcloud

Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I2da6c9dfa1d05968555e8f43176de6a0ab37892e

2 years agofeat: add interest manifest serialization/deserialization 33/36833/2
Mauro Sardara [Fri, 8 Jul 2022 16:10:13 +0000 (16:10 +0000)]
feat: add interest manifest serialization/deserialization

Also:
  add helpers for interest manifest

Ref: HICN-738

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Ia531605148e00ccbe446da0f4f2d8caae2b098be
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agoci: add functional tests to verification/merge jobs 27/36827/7
Mauro Sardara [Tue, 9 Aug 2022 12:18:05 +0000 (14:18 +0200)]
ci: add functional tests to verification/merge jobs

Ref: ICN-732

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: Iabfce26c446c502dc1d8f50da0d607791ce392e9

2 years agoci: add checkstyle to verify jobs 13/36813/7
Mauro Sardara [Mon, 8 Aug 2022 15:20:42 +0000 (17:20 +0200)]
ci: add checkstyle to verify jobs

Ref: HICN-731

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I34f7abc5949ed02f7926a72ea54a2014ed255d6d

2 years agofeat: Due to the deep modifications related to names and packet format, 00/36800/3
Luca Muscariello [Thu, 4 Aug 2022 14:06:34 +0000 (16:06 +0200)]
feat: Due to the deep modifications related to names and packet format,
this task cover a large part of the codebase and involves several changes:

- the library provides a name data structure (hicn_name_t ), which is composed
  of a name prefix (hicn_name_prefix_t) and a name suffix (hicn_name_suffix_t),
  and it has been extended to provide all support functions required for name
  manipulation, including common prefix computation, as required for the Longest
  Prefix Match (LPM)in the forwarder, in addition to Exact Prefix Match (EPM).
- all code has been rewritten to use this data structure instead of having for
  instance the forwarder define its own name class (used to be Name and NameBitVector)
  the code has been refactored to minimize name allocations and copies, one remaining
  aspect is the difference of name storage between PIT and CS entries (respectively
  in the PIT entry, and in the message buffer), which causes the packet cache
  index to be updated when a PIT entry is converted into a CS entry. By storing
  the name in the PIT/CS entry everytime, we might save on this operation).
- hicn-light FIB has been rewritten : code has been refactored and should now be
  shorter and documented; unit tests have been drafted but more would be required
  to cover all cases and match the algorithms to add/remove nodes, as specified in the doc.
  all protocol details and hICN header formats are now abstracted by the library
  for the forwarder (and thus header.h and  protocols/*.h have been removed from
  public includes, and replaced by packet.h providing protocol agnostic packet
  level functions, completely replacing the compat.h header that used to provide
  similar functions.
- this works by exposing a opaque buffer to the application (a kind of socket buffer)
  which is used by the lib to cache the packet format and offsets of the different
  layers in the buffer and provider efficient operations (the packet format is
  either defined for packet construction, or guessed at ingress, and this structure
  is updated accordingly only once).

Co-authored-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I31e321897f85f0267fe8ba4720363c180564492f

2 years agoRevision and refactor of the VPP plugin with fixes for the 55/36555/5
Luca Muscariello [Thu, 30 Jun 2022 11:58:25 +0000 (13:58 +0200)]
Revision and refactor of the VPP plugin with fixes for the
packet generator. Hash table for the packet cache has been
changed with the bihash.

Co-authored-by: Mauro Sardara <msardara@cisco.com>
Signed-off-by: Luca Muscariello <muscariello@ieee.org>
Change-Id: I0e0191a9f109d37081d32cc55d577ea43533f8c0
Signed-off-by: Mauro Sardara <msardara@cisco.com>
2 years agorefactor(lib, hicn-light, vpp, hiperf): HICN-723 17/36417/6
Luca Muscariello [Thu, 9 Jun 2022 19:34:09 +0000 (21:34 +0200)]
refactor(lib, hicn-light, vpp, hiperf): HICN-723
 - move infra data structure into the shared lib
 - new packet cache using double hashing and lookup on prefix suffix
 - testing updates
 - authenticated requests using interest manifests

Co-authored-by: Mauro Sardara <msardara@cisco.com>
Co-authored-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Co-authored-by: Michele Papalini <micpapal@cisco.com>
Co-authored-by: Olivier Roques <oroques+fdio@cisco.com>
Co-authored-by: Enrico Loparco <eloparco@cisco.com>
Change-Id: Iaddebfe6aa5279ea8553433b0f519578f6b9ccd9
Signed-off-by: Luca Muscariello <muscariello@ieee.org>
3 years agoHICN-722: Updates on transport, RTC, manifest usage for RTC, infra. 39/36039/6
Luca Muscariello [Fri, 22 Apr 2022 15:55:01 +0000 (17:55 +0200)]
HICN-722: Updates on transport, RTC, manifest usage for RTC, infra.

Co-authored-by: Mauro Sardara <msardara@cisco.com>
Co-authored-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Co-authored-by: Michele Papalini <micpapal@cisco.com>
Co-authored-by: Angelo Mantellini <manangel@cisco.com>
Co-authored-by: Jacques Samain <jsamain@cisco.com>
Co-authored-by: Olivier Roques <oroques+fdio@cisco.com>
Co-authored-by: Enrico Loparco <eloparco@cisco.com>
Co-authored-by: Giulio Grassi <gigrassi@cisco.com>
manifest: optimize manifest processing
manifest: add FEC parameters to manifests
manifest: refactor verification process
manifest: report auth alerts in hiperf instead of aborting
manifest: remove FEC buffer callback in consumer
manifest: refactor and enable manifests by default
manifest: update manifest header with transport parameters
manifest: batch interests for first manifest from RTC producer
manifest: refactor processing of RTC manifests
manifest: update manifest-related socket options of consumers
manifest: update unit tests for manifests
manifest: pack manifest headers
manifest: verify FEC packets
auth: add consumer socket option to set max unverified delay
manifest: process manifests after full FEC decoding
manifest: manage forward jumps in RTC verifier
fec: remove useless fec codes
rs: add new code rate
rs: add new code rate
rs: add new code rate
rs: add new code rate
libtransport: increase internal packet cache size
remove internal cisco info in cmake
manifest: add option to set manifest capacity
data_input_node.c: add information about adj_index[VLIB_RX] on received data packetsi
sysrepo plugin: update build

Change-Id: I0cf64d91bd0a1b7cad4eeaa9871f58f5f10434af
Signed-off-by: Mauro Sardara <msardara@cisco.com>
Signed-off-by: Luca Muscariello <muscariello@ieee.org>
3 years agoci(scripts/install-vpp.sh): improve install-vpp.sh script 54/35854/3
Mauro Sardara [Fri, 1 Apr 2022 08:26:41 +0000 (10:26 +0200)]
ci(scripts/install-vpp.sh): improve install-vpp.sh script

Ref: HICN-720

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I6586573da1e415b596bad8e6d3e77dba38de8147