The sample uses net_config library, so there's no need for the sample to
configure unicast IP addresses manually.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Refactor the code to comply with:
Violation to rule 5.7 (Tag name should be unique) tag: data
Rename the structure to avoid excessive refactoring.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Building the sample with IPv4 only gives the following warning:
tcp.c:99:37: warning: array subscript 'struct sockaddr[0]' is partly
outside array bounds of 'struct sockaddr_in[1]' [-Warray-bounds]
data->tcp.sock = socket(addr->sa_family, SOCK_STREAM, IPPROTO_TCP);
This doesn't really seem like a valid one, but to get rid of it
workaround by specifying address family explicitly.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The sample currently doesn't build for non-secure nRF platforms due to
mbed TLS misconfiguration - TFM enforces PSA crypto API, while the
default configuration for supplicant uses legacy crypto configuration.
In result, build fails due to unsatisfied dependencies. Therefore,
disable this variant from building temporarily to unblock the CI, until
the issue is resolved.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Use the CMake variable for iterable section's subalignment instead of a
global defined macro.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Make sure that CONFIG_ZVFS_OPEN_MAX in the tests and samples is at
least the same value as CONFIG_NET_SOCKETS_POLL_MAX so that we
cannot have more polled sockets than there are available file
descriptors.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Evaluate CONFIG_LINKER_ITERABLE_SUBALIGN in CMake instead of in the
linker script.
It cannot be assumed that a linker generator implementation is
pre-processed and therefore Kconfig settings cannot be used in those
but must be evaluated in CMake.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
native_posix is already filtered in the common
part. No need to remove it also per test.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
native_posix is now deprecated.
Building these samples in both native_sim and native_posix
does not improve coverage for these samples but doubles CI time.
As anyhow native_posix will be removed all together in
2 releases, let's remove it already for this sample.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
After introduction of struct http_response_ctx, the dynamic resource
data buffer is no longer needed for transferring data between the
application callback and the server. It is therefore removed to avoid
unnecessary copying of data.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Allow the application to send headers and response codes from a dynamic
resource callback by filling out a response context structure.
This also allows simple requests to be completed in a single execution
of the callback, by setting the final_chunk flag.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
This commit uses the new .. zephyr:code-sample-category directive to
categorize code samples across the tree.
Updates existing legacy references to manually defined targets to now
use :zephyr:code-sample-category: role instead.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Remove the system heap override config from the board sample config.
Remove the memory saving restrictions.
Signed-off-by: Marek Matej <marek.matej@espressif.com>
This adds a dt overlay to enable support of cc1352p7 lp
to the openthread coprocessor sample application.
Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
The http_client sample ignored connect() errors and attempted to run
HTTP query even if the connection failed.
Additionally, in case the query failed, the sample called `exit(1)`
directly, causing busy-looping in the sample. This prevented the logger
output from being printed.
Both of those issues made the sample behavior very confusing when it
encountered connection problems. The sample did not print any output at
all (due to busy looping) or printed several connect failures (due to
ignoring connect() results). This commit fixes those problems.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Without the IPv6-prefix set, the net_if_ipv6_addr_onlink() check
will always fail. The packets with DIP in the local link will go
to 'try_send' code branch, which is not expected.
Signed-off-by: Shrek Wang <shrek.wang@nxp.com>
The second Security object instance for bootstrap case isn't really
needed, as the bootstrap server creates own Security object instances
anyway. As that object instance had no Short Server ID assigned, it
caused failures during bootstrap discovery.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Move the network buffer header file from zephyr/net/buf.h to
zephyr/net_buf.h as the implementation now lives outside of the networking
subsystem.
Add (deprecated) zephyr/net/buf.h header to maintain compatibility with old
file path.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Enabled Network shell and Ethernet L2 interface
with XGMAC driver in CLI application
Enabled MDIO shelll with dwcxgmac mdio driver.
Enabled TCP and UDP over IPV4.
Added intel_socfpga socdk support for echo_client and
echo_server sample applications.
Signed-off-by: Santosh Male <santosh.male@intel.com>
Updates references to the net-tools project to refer to the correct
placement of net-tools under tools.
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
[Reproduce issue]
1. Connect In-STA to Ex-AP
wifi connect WiFi_STA_HE_1.1.8 1234567890 3 2 2
2. Start APUT with ACS using below commands
wifi ap enable nxp-AP 161 1234567890 3
3. Connect Ex-STA to APUT and verify association using ping traffic
4. Now start two TCP server
zperf tcp download -I ml 5001 192.168.0.252
zperf tcp download -I up 6002 192.168.10.1
Observed behavior:
=============
Second TCP server fails to start
[Analysis]
1. After starting uap and a tcp server,
there is only one allocatable fd resource
left in the fdtable.
2. When two TCP clients try to establish a connection
with the server at the same time, the second client
cannot be assigned an fd, resulting in a failure.
[Fix]
Increase the maximum number of open file descriptors.
Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
1) After the wifi driver successfully connects to the AP,
the dormant state should be set to OFF.
Once a deauth/disassoc frame is received or link lost occurs,
the dormant state should be set to ON.
2) Enable CONFIG_NET_TC_SKIP_FOR_HIGH_PRIO and CONFIG_NET_CONTEXT_PRIORITY
to push high priority packets directly to network driver.
Signed-off-by: Gang Li <gang.li_1@nxp.com>
Added new flag CONFIG_WIFI_NM_HOSTAPD_AP for hostapd support. Once this
flag is enabled, softAP will be setup by hostapd. Both wpa_supplicant
and hostapd uses same task and eloop.
Included necessary hostapd files when compiling wifi samples if
CONFIG_WIFI_NM_HOSTAPD_AP is enabled. Added hostapd support for all
softAP command of L2 wifi shell commands.
Signed-off-by: Hui Bai <hui.bai@nxp.com>
IPPROTO_IPV6 option was set on TCP socket (besides doing it already in
tcp.c) instead of UDP. Fix that.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
Low throughput links (e.g. IEEE 802.15.4) require additional stack and
buffering resources. Therefore some stack and buffer pool sizes were
increased to cater for over-the-air scenarios.
Fixes: #77287
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
Add basic WPA2 EAP-TLS support.
Also, add test infrasturcture esp. the certification handling,
non-certificate credentials are take as runtime input and certificated
are build time input for testing.
A real application can set certificates at runtime too.
Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
DHCPv4 server will probe the offered IP address (send ICMP echo request)
and wait for 1s (default) before offering the address. STA sends out DHCP
discover, but gets no response. Windows automatically assigns the network
card an IP address of 169.254.xx.xx.
So set timeout for ICMP probe sent by the server to 100ms.
Signed-off-by: Gang Li <gang.li_1@nxp.com>
In order to mitigate side channel attacks, even if the PWE is found the WPA
supplicant goes through full iterations, but in some low-resource systems
this can be intensive, so, add an option to exit early.
Note that this is highly insecure and shouldn't be used in production
Signed-off-by: Gang Li <gang.li_1@nxp.com>
The OK response should be processed before entering CMUX mode.
Use UART ISR mode by default.
Fix warnings and errors produced by the sample.
Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
Added a websocket connection sending network statistics to a client, to
demonstrate how this can be used to push data to the client as an
alternative to GET requests triggered by a Javascript timer.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Accept JSON payload including LED number and state, to demonstrate JSON
parsing and allow control of multiple LEDs if the board supports this.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Previously the dynamic resource in the http_server sample simply echo'd
the received data back to the sender. This doesn't demonstrate how the
dynamic handlers would be used in a more typical use case, where the
application may need to wait for the full request before acting on it or
creating a response.
Therefore two new dynamic resources have bee added: a '/led' resource
which can be used to control the board's LED (if present) via a POST
request, and a '/uptime' resource which can be used to query the kernel
uptime via a GET request.
The static resources are updated with some javascript to support
demonstrating the new dynamic resouces via a web browser.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Provide information how to configure mosquitto >= 2.0
for the mqtt publisher sample. Secondly, how to
configure ethernet interface in case the board is
connected directly to the host computer through LAN.
Signed-off-by: Jasper Jonker <jjasper.jonker@gmail.com>
Wi-Fi sample is stack heavy, so, by default increase the stack sizes to
work with any driver, esp. those use WPA supplicant like nRF Wi-Fi.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Wi-Fi shell prints scan results to the console taking time and this puts
pressure on net_mgmt Queue, so, increase both timeout and Queue depth to
handle crowded Wi-Fi channel (~200 APs).
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Added a sample application demonstrating how to use the coap_client API
to download a resource via GET request.
Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Clean up before deprecating legacy device support.
The Linux kernel driver for this example has never been upstreamed or
implemented upstream. In general, 15.4 development does not seem to be a
big success, but if it comes up again, the protocol used by the example
will need to be redesigned anyway.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
If config library is disabled but DHCPv4 client is enabled,
then start DHCPv4 when zperf application starts.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
A hard fault occurs when the `sample_echo_packet` function attempts
to print the average time per successful echo and no packets have
been sent, resulting in a division by zero error. This fix adds a check
to ensure that `packets_sent` is greater than 0 before performing
the division. This prevents the system from halting due to a usage fault.
Signed-off-by: Natalia Pluta <pluta.natalia.m@gmail.com>
As found in PR #75525, we should not modify the polled fd array
in multiple places. Because of this fix, the async version of
the socket service could start to trigger while it is being handled
by the async handler. This basically means that the async version
cannot work as intended so remove its support.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Increase the number of network packets and buffers for better TCP
performance in the sample out-of-the-box.
Decrease the network buffer data size for better buffer management in
the sample (less buffer space wasted for L2 header). The only drawback
of this is reduced TCP TX performance, but less than 2 Mbps in my case.
Finally, enable speed optimizations for another small performance boost.
As the RAM requirements of the sample now increase considerably in the
default configuration, add a note in the readme file about it, and how
to make it fit into smaller boards.
Tested on nucleo_h723zg:
Before (current defaults):
UDP TX RX
76.47 Mbps 93.48 Mbps
TCP TX RX
76.18 Mbps 67.75 Mbps
After (new defaults):
UDP TX RX
76.08 Mbps 93.62 Mbps
TCP TX RX
74.19 Mbps 85.51 Mbps
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
EVENTFD is not anymore compatible with these targets so let's
disable them with this sample to avoid a failure in twister
otherwise.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The DHCP server can distribute DNS addresses, hence enable DNS resolver
in the sample to show this functionality.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Currently used DHCP server in the sample, dhcpd, is no longer maintained
and reached EOL. Therefore, update the sample's readme file with a
sample configuration for its successor, kea.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The txtime can be run manually with qemu_x86 but it is enough
to have native_sim compiled with twister.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
When setting boolean options using setsockopt(), the option
type should be int as the size of the option type is checked
and only int is accepted.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Sockets service thread need to be cooperative for best performance.
Enable CACHE_MANAGEMENT as some boards don't do it by default, it has
devastating impact on the performance as well.
Finally, increase FDS count, so that uploads still work when both TCP
and UDP receiver are enabled.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
`checkpatch.pl` requires that dts sources are indented with tabs,
fix all the spaces that slipped in while checkpatch wasn't watching.
Signed-off-by: Jordan Yates <jordan@embeint.com>
Recent POSIX changes caused that 3 file descriptors are now preallocated
for stdin/out/err. This caused file descriptor shortage in all-in TLS
configuration of the sample, hence increase the maximum FD count.
In the server sample this manifested itself as an accept() error. This
triggered a busy loop though in the sample, as in case of accept()
errors it'd just try again w/o any delay. This made this issue hard to
investigate, so to avoid such cases in the future, make the accept()
failure fatal in the echo_server sample.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Echo samples exchange data fragments longer than the default DTLS max
fragment length introduced in commit
f033cd5601. Hence, need to increase this
config value for the sample.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Commit 3046e95d85 introduced eventfd use
in the sample, increasing the pollfd array size, however the config
indicating maximum number of monitored events remained intact, so the
sample didn't really work.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The NRF91_SLM has no additional AT channel for the AT shell to
use. This commit disables the AT shell for boards which use
the NRF91_SLM.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
net_mgmt sockets do not implement internal queue but use
net_mgmt_event_wait() internally to receive events. As a consequence,
in case of events burst, some events may be lost if the receiving
thread has lower priority than the net_mgmt thread.
This was visible in the sample, where only DAD event was reported
properly, as IPv6 Add/Remove events were triggered in pair with
corresponding multicast events (from solicited-node multicast
address).
We can mitigate this by increasing main thread priority to be at the
same priority as net_mgmt thread, so that the receiving thread (main)
has a chance to run in between event reports.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
After enabled POSIX_API in the sample, not all headers were included in
the build due to #ifdefs around header inclusions. This commit fixes
this.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The multicast IPv6 address count was too low to create all
solicited-node multicast address, resulting in an error being
printed on boot:
Cannot join solicit node address ff02::1:ff00:1 for 1 (-12)
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Fix two issues with the current configuration:
* The log buffer was too small for the sample, causing part of the stats
printout to be dropped
* The sample set CONFIG_NET_CONFIG_NEED_IPV4 but did not actually set
any IPv4 address, nor enable DHCP, causing the NET_CONFIG
initialization failure.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The multicast IPv6 address count was too low to create all
solicited-node multicast address, resulting in an error being
printed on boot:
Cannot join solicit node address ff02::1:ff00:1 for 1 (-12)
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Current NET_SOCKETS_POLL_MAX and ZVFS_OPEN_MAX values were too low for
the sample after the DNS refactoring, making the sample unusable in
current state.
Bump those values accordingly to make the sample functional again.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Achieve proper syntax highlighting using "console"
language when command snippets start with a prompt.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
config file snippets should use "cfg" pygment to get proper highlighting
This commit updates all occurences where "kconfig" or other languages
were used.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Include new AT shell alongside the PM device shell to allow
for powering back up the modem after the sample has completed
to test out the at shell.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
The sample won't build with PSA crypto enabled on non-secure platform,
causing disturbances in the CI.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
A few samples were not limiting the CI execution scope in any reasonable
way, they should at least limit the execution to platforms that support
netif capability.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Align the name of the ETH PTP Config Status values
depending on the stm32HAL serie
to be the HAL_ETH_PTP_NOT_CONFIGURATED/HAL_ETH_PTP_CONFIGURATED
or HAL_ETH_PTP_NOT_CONFIGURED/HAL_ETH_PTP_CONFIGURED
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Support NXP ENET_1G on mimxrt1170_evk/mimxrt1176/cm7 platform.
Added test configuration sample.net.zperf.nxp_enet1g and
documented the usage of the ethernet driver with ENET_1G
peripheral.
Fixes: #66348
Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
The POSIX_MAX_FDS option does not correspond to any standard
POSIX option. It was used to define the size of the file
descriptor table, which is by no means exclusively used by
POSIX (also net, fs, ...).
POSIX_MAX_FDS is being deprecated in order to ensure that
Zephyr's POSIX Kconfig variables correspond to those defined in
the specification, as of IEEE 1003.1-2017. Namely,
POSIX_OPEN_MAX. CONFIG_POSIX_MAX_OPEN_FILES is being deprecated
for the same reason.
To mitigate any possible layering violations, that option is
not user selectable. It tracks the newly added
CONFIG_ZVFS_OPEN_MAX option, which is native to Zephyr.
With this deprecation, we introduce the following Kconfig
options that map directly to standard POSIX Option Groups by
simply removing "CONFIG_":
* CONFIG_POSIX_DEVICE_IO
Similarly, with this deprecation, we introduce the following
Kconfig options that map directly to standard POSIX Options by
simply removing "CONFIG":
* CONFIG_POSIX_OPEN_MAX
In order to maintain parity with the current feature set, we
introduce the following Kconfig options.
* CONFIG_POSIX_DEVICE_IO_ALIAS_CLOSE
* CONFIG_POSIX_DEVICE_IO_ALIAS_OPEN
* CONFIG_POSIX_DEVICE_IO_ALIAS_READ
* CONFIG_POSIX_DEVICE_IO_ALIAS_WRITE
Gate open(), close(), read(), and write() via the
CONFIG_POSIX_DEVICE_IO Kconfig option and move
implementations into device_io.c, to be conformant with the
spec.
Lastly, stage function names for upcoming ZVFS work, to be
completed as part of the LTSv3 Roadmap (e.g. zvfs_open(), ..).
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
The POSIX_CLOCK option does not correspond to any standard
option. It was used to active features of several distinct
POSIX Options and Option Groups, which complicated API and
application configuration as a result.
POSIX_CLOCK is being deprecated in order to ensure that Zephyr's
POSIX Kconfig variables correspond to those defined in the
specification, as of IEEE 1003.1-2017.
Additionally, CONFIG_TIMER is being deprecated because it does
not match the corresponding POSIX Option (_POSIX_TIMERS).
With this deprecation, we introduce the following Kconfig
options that map directly to standard POSIX Option Groups by
simply removing "CONFIG_":
* CONFIG_POSIX_TIMERS
Similarly, we introduce the following Kconfig options that
map directly to standard POSIX Options by simply removing
"CONFIG":
* CONFIG_POSIX_CLOCK_SELECTION
* CONFIG_POSIX_CPUTIME
* CONFIG_POSIX_DELAYTIMER_MAX
* CONFIG_POSIX_MONOTONIC_CLOCK
* CONFIG_POSIX_TIMEOUTS
* CONFIG_POSIX_TIMER_MAX
In order to maintain parity with the current feature set, we
introduce the following Kconfig options that map directly to
standard POSIX Option Groups by simply removing "CONFIG_":
* CONFIG_POSIX_MULTI_PROCESS - sleep()
Similarly, in order to maintain parity with the current feature
set, we introduce the following additional Kconfig options that
map directly to standard POSIX Options by simply removing
"CONFIG":
* CONFIG_XSI_SINGLE_PROCESS - gettimeofday()
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Due to the recent changes in mbed TLS area, and due to adding new
certificates to the sample, the mbed TLS configuration has to be update
to be able to support them all.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Baltimore certificate expires in 2025 and Azure is in the transition
period for the time being to the new certificates. Add support for all
certificates needed in the sample.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
The number of suitable network IPv6/4 configurations in interfaces
affect the number of pollable sockets. So need to increase the value
from the default value of 3.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
according to the latest build log, we need increase the MAX_THREEED
/usr/bin/python3 scripts/build/gen_kobject_list.py \
--kernel twister-out/frdm_k64f/samples/net/mqtt_publisher/\
sample.net.mqtt_publisher.userspace/zephyr/zephyr_pre0.elf \
--gperf-output kobject_prebuilt_hash.gperf --include-subsystem-list \
twister-out/frdm_k64f/samples/net/mqtt_publisher/\
sample.net.mqtt_publisher.userspace/zephyr/misc/generated/struct_tags.json
Too many thread objects (17)
Increase CONFIG_MAX_THREAD_BYTES to 3
Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
In an effort to shave off code size, remove out-of-the-box
enabling of crypto features (except SHA-256).
Configurations are adjusted to enable what they need.
Bonuses:
- When enabled, AES now defaults to using a smaller version
(`CONFIG_MBEDTLS_AES_ROM_TABLES` isn't default enabled anymore,
and if enabled, `CONFIG_MBEDTLS_AES_FEWER_TABLES` defaults to y).
- Conditions around Mbed TLS Kconfig options have been improved
to reflect the reality of the dependencies.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
The gsm modem driver is deprecated and will be removed. Remove
the build overlay and dependency on the gsm modem from the
tagoio sample.
The new cellular modem driver and subsystem use the native
networking stack and the pm subsystem, so just like ethernet,
enabling the cellular modem is up to the board configuration.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
The gsm_modem driver is deprecated, and will be removed. Remove
the gsm modem sample which depends on the deprecated driver.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
In order to be compatible with Linux AF_PACKET socket calls, the
protocol field needs to be in network byte order.
So for example, if user wants to receive all packets, then the
protocol field needs to be set as "htons(ETH_P_ALL)".
See Linux manual page at
https://www.man7.org/linux/man-pages/man7/packet.7.html
for details.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Socket service library uses eventfd, which does not work with
native_posix platform, hence need to exclude it from samples that now
rely on socket services.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
CONFIG_POSIX_API depends on !CONFIG_NATIVE_APPLICATION, which is
incompatible with the native_posix platforms.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Remove the `_MAC` part because those Kconfig options enable only hash
algorithms, nothing MAC-related, and the `_ENABLED` part to align the
naming to the Mbed TLS defines (plus we don't need such a part).
As a bonus, enabling SHA-256 does not automatically enable SHA-224
anymore.
See the migration guide entries for more details on the practical
changes.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
This sample demonstrates the implementation of an (industrial) IoT
sensor/actuator device. The application uses the MQTT protocol to
securely send sensor data to a remote MQTT broker, while responding
to commands received over the MQTT connection.
Signed-off-by: Jason Murphy <jason.murphy@analog.com>
As native_posix is no longer supported, due to incompatibility with
CONFIG_POSIX_API, remove a dedicated config for it.
A config for qemu_cortex_m3 needed to enable RNG, as otherwise it's not
available for the platform and gives build error.
Finally, enable qemu_cortex_m3 build in the CI.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
select modem backend statistics and enable shell in cellular
modem sample. This will help advertise the feature, and can
help quickly identify issues with to small buffers.
Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me>
Because of changes in other network header files, the net_if.h
was not included so add it directly to the echo-client and
mqtt_azure sources.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Instead of using net_context API directly, the LLMNR responder is
changed to use the socket service API. This allows DNS access
for offloaded sockets and can lower overall memory consumption.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Improve navigability in the documentation by adding a link to the main
HTTP Server documentation page to the HTTP Server sample.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This sample assumes that two separate sockets can be bound on IPv4 and
IPv6. On Linux (via Native Simulator Offloaded Sockets) this is possible
when there is no IPv4 to IPv6 mapping. Same can be true to other offloaded
sockets.
CONFIG_NET_IPV4_MAPPING_TO_IPV6 is disabled for this sample, so IPv4 to
IPv6 mapping is disabled for Zephyr native IPv6 layer. For offloaded
sockets this option does not define whether mapping is enabled or not, so
try to unconditionally (and without error checking) disable it.
This patch fixes compatibility with NSOS, since two separate sockets can be
bound on the same address and port, one for IPv4 and second for IPv6.
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
When Block-Wise transfer restarts, the post-write callback should
receive some indication that the block is actually a beginning of new,
instead of part of previous transfer.
Fixes#71351
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
Add documentation page for HTTP server functionality.
Rename existing HTTP documentation to HTTP client, as it only covers the
client library.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Currently wifi sample code contains a pair of .conf and .overlay
for every single esp32-based board. Files are usually identical.
This PR remove all esp32* board files and use common socs instead.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Do not print progress report so that makes debugging things
a lot harder. It is still possible to enable printouts if needed
by setting PRINT_PROGRESS symbol.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If the IPv6 address that our socket is bound to deprecates, then
re-create the socket so that we avoid using deprecated IPv6 address.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Fix the failures introduced in #72078 by manually enabling all the
hash algorithms as they used to be.
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
A scheduler fix for free memory usage on aborted threads is now using
a per-CPU dummy thread instead of a single stack-based one at startup.
These static thread objects need spots in the kobj bitmasks, and a few
tests are sitting right at the default limit (16 threads).
Signed-off-by: Andy Ross <andyross@google.com>
A simple HTTP server sample application.
Signed-off-by: Emna Rekik <emna.rekik007@gmail.com>
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
There are several esp32-based boards that its conf and overlay
files are missing proper renaming to match cpu cluster.
This also removes all _SOC_ name from files.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Updates the linker script fragments under 'samples' to use
Z_LINK_ITERABLE_SUBALIGN for the subalignment instead of
a hardcoded value of 4.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
The last parameter to getsockopt() should be a socklen_t *
not an int *.
Let's fix it to avoid a build warning which breaks this tests
in CI.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Convert all of the NXP SOCs with ENET to use the new
binding scheme, which is used by the new driver.
Convert any boards using this SOC to the new scheme as well,
and remove from the documentation the bit about the experimental
nature of the new driver and the overlay that shall no longer exist.
Some of the boards I do not have the hardware of, so apologies
if something breaks, as I have no way to know. All the boards
were made sure to at least build.
Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Deprecate ETH_MCUX, by:
- Marking it as DEPRECATED in Kconfig, obviously.
- Unmarking the new driver as experimental.
- Putting the new and old drivers in the same folder.
- Reworking the menu appearance of the driver selection.
Note that technically now it is possible to choose the wrong
driver than what is enabled in DT, this is intentional, but
the correct one will obviously be enabled by default.
- Convert all sample overlays to the new Kconfigs. This was
part of the motivation for the shared overlays, as it was
causing twister/CI logs to look ugly and misleading due
to Kconfig warnings.
Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Because CONFIG_POSIX_API (required) cannot be selected on that platform,
resulting in build failures.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The native_posix compilations fail with various socket
errors like this:
samples/net/sockets/can/src/main.c:65:9: error: implicit \
declaration of function ‘send’ [-Werror=implicit-function-declaration]
65 | ret = send(fd, &sframe, sizeof(sframe), 0);
| ^~~~
So disable the native_posix board from networking samples as
native_posix board is not compatible with CONFIG_POSIX_API
This is related to commit b8fc1c4c3e ("samples: net: Disable
native_posix target in samples") but disables more network samples
for native_posix board.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
- TCP should not be disbled by default for subg in this particular
sample since it is mostly used to test network rather than
performance.
Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com>
- TCP should not be disbled by default for subg in this particular
sample since it is mostly used to test network rather than
performance.
Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com>
Remove IPSP support from the tree.
It has no maintainers, and is regularly broken. The fact that it's
nontrivial to set-up in linux makes it hard to fix reported issues.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Adjustments of overlay and conf files to adjust for the MERGE removal.
The revert of MERGE requires specific overlay and conf files for boards
which relied on the MERGE feature.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
For demonstration purposes add a way to capture some arbitrary
data and send it in cooked mode for analysis.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
If there are multiple tunnels, then use the tunnel device name
to select the correct one. Note that this tunnel is only used
for network packet capture in this sample application.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The CONFIG_MAX_THREAD_BYTES=3 needs to be set for multiple
boards like mr_canhubk3 and xiao_ble when running in usermode.
Too many thread objects (18)
Increase CONFIG_MAX_THREAD_BYTES to 3
Fixes#70955
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
The native_posix compilations fail with various socket
errors like this:
samples/net/sockets/echo_server/src/udp.c:45:26: error: implicit \
declaration of function ‘socket’ [-Werror=implicit-function-declaration]
45 | data->udp.sock = socket(bind_addr->sa_family, SOCK_DGRAM,
| IPPROTO_UDP);
Disable the native_posix board from networking samples so that CI can pass.
Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>