Commit Graph

2019 Commits

Author SHA1 Message Date
Gaetan Perrot
aaec242a63 tests: net: socket: net_mgmt: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-14 11:18:31 -10:00
Marcin Niestroj
f6b35e637b tests: net: conn_mgr_nsos: fix CONFIG_ETH_NATIVE_TAP=n
Update option name s/CONFIG_ETH_NATIVE_POSIX/CONFIG_ETH_NATIVE_TAP/, which
follows recent Zephyr change.

Fixes 78f800642a ("drivers/ethernet/eth_native_posix: Rename to
  eth_native_tap")
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-07-14 11:18:20 -10:00
Gerson Fernando Budke
b478cd8f37 linker_script: Remove some remaining SUBALIGN in iterable sections
The #91219 miss some entries when doing the clean-up. This removes
some of remaining SUBALIGN entries in the iterable sections. It do
not consider SECTION_PROLOGUE and zephyr_linker_section entries.

Fixes #92349

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-07-07 10:07:56 -05:00
Gaetan Perrot
369d5b170c tests: net: socket: getaddrinfo: Remove unused assignment
In check_dns_query(), the assignment `ret = -ENOMEM` was never used since
the function returns false immediately afterward.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-07 10:05:51 -05:00
Tim Pambor
ee1468b675 tests: net: socket: Fix function signature
Update the process_dns function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-04 14:21:23 -10:00
Tim Pambor
f682a173d8 net: socket: mgmt: Fix function signature
Update the trigger_events function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-04 14:21:23 -10:00
Robert Lubos
aa4a8789d5 net: sockets: socket_dispatcher: Fix close function type
Socket dispatcher (and offloaded implementations in tests) register
fd as ZVFS_MODE_IFSOCK therefore they should register a  close2(
function instead of close().

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
30c8702b05 tests: net: iface: Fix interface context misuse
The iface test suite uses two different interface types with two
different context types and iid tests mixed up the two. It attempted
to create a mac address for Ethernet interface (which uses
struct eth_fake_context), however the net_iface_get_mac() function
only works with Dummy interface context (struct net_if_test). In
result the Ethernet interface context was corrupted (mac address
overwritten the promisc_mode flag).

Fix this by extracting mac generation code into a common function, and
use it in the Ethernet iface initialization phase instead of directly in
the test.

This was reported by UBSAN:
  tests/net/iface/src/main.c:239:34: runtime error: load of value 11,
  which is not a valid value for type '_Bool'

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
2d49ef26ad tests: net: socket: udp: Don't call memset() on a NULL pointer
cmsgbuf pointer can be NULL, therefore verify that before calling
memset() on it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Shrek Wang
6a27fd2255 net: tcp: Add TCP ACK validation
According to RFC 793, ch 3.9 Event Processing,
after the connection is sync-ed with seqnum of both sides then,
        1. drop any received segment if the ACK bit is off.
        2. validate the acknum like this:
        SND.UNA =< SEG.ACK =< SND.NXT

The ACK validation is done before entering the state-machine, so
remove the flags <ACK> check in the state-machine processing.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-07-04 13:08:57 -05:00
Tim Pambor
659382f1e9 tests: net: dns-sd: Use standard struct in_addr for IPs
Refactored the code to use the standard struct in_addr for
representing IPv4 addresses instead of a uint32_t combined
with the custom IP_ADDR macro.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-02 03:55:06 -10:00
Alberto Escolar Piedras
35a10937d7 tests/net: dhcpv6: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Shrek Wang
6527a1b23c net: tcp: Set the right th_win value in tester_prepare_tcp_pkt
The 16bit th_win in the TCP header was not set via htons(). It
will bring issues of wrong th_win value in the peer end. For
example, the 1280 (0x0500) TCP window size would be taken as
5 (0x0005) by the peer end.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-30 15:16:02 -05:00
Jukka Rissanen
24843ae223 tests: net: ppp: Compile test with PPP statistics
Make sure the compilation is ok if PPP statistics is enabled.

This is related to commit 3e704256e3
("net: ppp: stats: Fix net_mgmt request handler format") which
was needed because earlier commit 5a9a39caf3
("net: mgmt: Convert the mgmt API to use 64-bit masks")
missed an compile problem because there was no compile test that
enabled CONFIG_NET_STATISTICS_PPP option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 09:05:22 -10:00
Benjamin Cabé
5e0ab3dad0 tests: net: lib: dns: dns_cache: test dns_cache_remove
Add tests for dns_cache_remove() API

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 10:05:40 -05:00
Benjamin Cabé
3b0e134204 tests: net: npf: test NPF_ORIG_IFACE_[UN]MATCH rules
Add a test for the NPF_ORIG_IFACE_MATCH and NPF_ORIG_IFACE_UNMATCH
rules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 14:14:49 +02:00
Robert Lubos
2b1b509d9c tests: net: lwm2m: interop: Add custom tests for observe atributes
Add custom interoperability tests verifying that numerical observe
attributes work as expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Jukka Rissanen
9f46048159 tests: net: dhcpv4: client: Add DNS server deletion test
Make sure net_dhcpv4_stop() will generate DNS server deletion events.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
29e0272454 tests: net: dhcpv4: client: Remove checks for DNS server removal
As the net_dhcpv4_stop() will now properly remove DNS servers, remove
the loop check so that the add event gets tested again.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
cdc6c324d7 net: dns: Save info about source when configuring DNS servers
Remember which DNS server was added by a source like DHCPv4 or v6
message. This will allow system to remove DNS servers that were added by
that source. Then when stopping for example DHCP, we can remove those
specific DNS servers and not leaving DNS servers hanging in the system.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Benjamin Cabé
f21f3b0d92 tests: do not use "sanity" word
Fix to align with guidelines regarding the use of inclusive language.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 16:00:10 -10:00
Pieter De Gendt
c906d4a103 tests: net: dhcpv4: client: Test restarting DHCPv4 client
Add tests that verify the behavior of stopping and starting the DHCPv4
client.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Pieter De Gendt
1712a930a0 tests: net: dhcpv4: client: Explicit event/callback testing
Use k_event bit flags to test individual events and callbacks. Don't rely
on the number of events that happened.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Daniel DeGrasse
6f08a6ef5d tests: net: mgmt: define request handler properly
Define the request handler properly within the net mgmt test. This is
required for the alias() attribute to work correctly with clang. Also,
correct the handler signature to use size_t as expected. This resolves a
test failure seen with clang when building the net mgmt test for
native_sim.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-25 09:51:56 +02:00
Marc Lasch
4c46b0bc8b net: lwm2m: Fix typo in bootstrap_on_fail
Bootstrap vs. Boostrap.

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-06-24 15:38:27 -05:00
Jukka Rissanen
2ac66bc084 tests: net: if: Add tests for operational state change time
Make sure that the operational state change time is updated
correctly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-20 08:52:06 +02:00
Jukka Rissanen
7799f0c994 net: dns: Allow user to specify max answer length via Kconfig
If the default max. answer length of 512 bytes is not enough,
user can specify it by setting CONFIG_DNS_RESOLVER_MAX_ANSWER_SIZE
to suitable value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Jukka Rissanen
2ed2232f17 net: socket: mgmt: Create proper socket options for net_mgmt sockets
We cannot use the network management event number directly as
a socket option value because the management value is uint64_t
and that cannot be mapped directly to 32 bit integer.
So have an intermediate socket option that is mapped to actual
network management request number in getsockopt() and setsockopt().

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
Jukka Rissanen
5a9a39caf3 net: mgmt: Convert the mgmt API to use 64-bit masks
Instead of using 32 bit enum values for event numbers, convert
the code to use 64 bit long bit fields. This means that the
user API is changed to use 64 bit event values instead of 32
bit event values.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
Benjamin Cabé
e1d17b4a76 tests: net: lib: coap: test options with large deltas
Ensure encoding of options with large deltas works as expected by using
an "experimental" option 65100.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:40:12 +02:00
Benjamin Cabé
6dedf7dc71 tests: net: lib: coap: test options with large values
Ensure we test encoding of options that require multiple bytes to
encode their value.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:40:12 +02:00
Jukka Rissanen
cb9052459a net: dns: Properly cleanup DNS servers per network interface
Make sure we cleanup only those DNS servers that belong to
certain network interface when the interface goes down.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Keith Packard
97f96afbd7 linker_script: Remove all SUBALIGN usage for iterable sections
SUBALIGN forces alignment to the specified value, even if the object
requires stricter alignment. This causes mis-aligned access when accessing
the resulting value.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Shrek Wang
46ba523ba8 net: tcp: Align TCP seqence validation with Spec
According to RFC 793, the seqnum test includes 4 cases when STATE >
TCP_SYN_SENT:

      Seg-len Recv-win    Test
      ------- --------    ---------------------------------------
        0       0         SEG.SEQ = RCV.NXT
        0      >0         RCV.NXT =< SEG.SEQ < RCV.NXT+RCV.WND
       >0       0         not acceptable
       >0      >0         RCV.NXT =< SEG.SEQ < RCV.NXT+RCV.WND
                       or RCV.NXT =< SEG.SEQ+SEG.LEN-1 <RCV.NXT+RCV.WND

After the seq validation, the 'send duplicated ACK' code in FIN_WAIT1/
2/CLOSING/TIMEWAIT state processing is duplicated, so remove them.

Added TEST_CLIENT_SEQ_VALIDATION ztest case in tests/net/tcp.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-13 14:28:50 +02:00
Robert Lubos
35b1fa272d tests: net: offloaded_netdev: Add test for offloaded DNS APIs
Add test case verifying that offloaded DNS APIs are called as expected
and that enabling/disabling DNS offloading at runtime works.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:20:18 -07:00
Robert Lubos
8b7b2b5e9e tests: net: mqtt: client: Add test case for connect with iface binding
Add test case for verifying that MQTT client works fine if bound to an
interface.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:18:31 -07:00
Fin Maaß
ed4d421ace drivers: ethernet: remove phy related configs from eth config
remove phy related configs from eth config.
phy related configs chould go directly into the phy.
Most ethernet drivers didn't support the now removed
functions yet. Users should instead use `phy_configure_link()`
together with the `net_eth_get_phy()` function.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:17:37 -07:00
Shrek Wang
6e7756a542 net: tcp: Change SYN FIN to use send_data_timer
The send_queue was used as SYN/FIN packet retransmission. Before
the SYN/FIN being ACKed and dequeue-ed, the following packets in
the send_queue cannot be sent out. That's why Zephyr had to send
a FIN+ACK instead of a duplicated ACK-only in FINWAIT1, CLOSING.
In fact, we can take SYN/FIN as kind of data and use the same
send_data_timer for retransmission, like other OSes do. This way,
the send_queue is simply used for local traffics.
Benefits (in theory):
1. The code is easier,
2. TxPkt performance is better after skipping enq/deq send_queue,
3. The struct tcp{} node is a few bytes smaller, saving memory.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-02 13:30:19 +02:00
Robert Lubos
17c00ce868 tests: net: http_client: Increase ztest stack size
The ztest stack was too small on some platforms (e.g. nRF52840), so
increase the stack size.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-27 16:49:01 +02:00
Krzysztof Chruściński
5acd29e651 tests: all: Fix remaining issues reported by string validation
Fix issues reported by string validation which was added to strings
used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-27 09:16:08 +02:00
Stefan Schwendeler
b234e86ca6 tests: net: lib: lwm2m: detects no-operation setter and getter functions
Test case `test_set_bulk` and `test_get_set` test the LwM2m getter and
setter function by
- init a buffer with some value
- calling lwm2m_set_... with buffer as parameter
- calling lwm2_get_... by letting `get` write-back into the same
  buffer(!)
- compare the buffer with the init value

That implementation can't recognize a no-operation getter function.

This change adds some C macro magic for both test cases where
an `out` buffer for setter and an `in` buffer for getter functions
exists. The buffers are checked before use for inequality to avoid
any unexpected pass.

Signed-off-by: Stefan Schwendeler <Stefan.Schwendeler@husqvarnagroup.com>
2025-05-23 19:49:54 +02:00
Robert Lubos
00d214c3ae tests: net: http_client: Add new testsuite for HTTP client
And some basic tests.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:24 +02:00
Robert Lubos
6aa8f3fe57 tests: net: socket: tls_ext: Add test case for cert veirfy cb option
Add test case to verify if TLS_CERT_VERIFY_CALLBACK socket option works
as expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
0956271bc3 tests: net: socket: tls_ext: Add test case for verify result option
Add test case to verify if TLS_CERT_VERIFY_RESULT socket option works as
expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
6be66aac60 tests: net: socket: tls_ext: Extract common code into functions
Extract server configuration, client configuration and test shutdown
into separate functions so that they're reusable in other tests.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Jordan Yates
1abe095b8e tests: net: conn_mgr_nsos: added
Add basic tests for the NSOS Connectivity Manager implementation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 11:31:54 +02:00
Alberto Escolar Piedras
b2ee13cc12 tests/net/socket/af_packet: Fix typo
Just a typo

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Jukka Rissanen
75860479cd tests: net: ipv6: Fix deprecated address selection
Make sure the IPv6 address selection works as specified.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-21 09:30:22 +02:00
Shrek Wang
20489a1f18 net: tcp: Fix TCP reset issue
According to RFC793 chapter3.5 with the 'Reset Processing' part,
"In the SYN-SENT state (a RST received in response to an initial
SYN), the RST is acceptable if the ACK field acknowledges the SYN."
So, in the net_tcp_reply_rst() we should use 'ack++' if no ACK
flag but have SYN flag.
And, all the RST packet should use net_tcp_reply_rst() instead of
tcp_out().

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-21 08:01:55 +02:00
Anas Nashif
e48c90700d doc: remove more occurances of Nios II
Remove all occurances of Nios II from docs and code.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00