Skip to content

lib: posix: path to deprecate POSIX_API #88541

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion drivers/wifi/nxp/Kconfig.nxp
Original file line number Diff line number Diff line change
Expand Up @@ -999,7 +999,7 @@ if NXP_WIFI_SMOKE_TESTS

config NXP_WIFI_SIGMA_AGENT
bool "Wi-Fi Alliance Sigma Agent Support"
select POSIX_API
select POSIX_SYSTEM_HEADERS
select POSIX_THREADS
select PTHREAD_CREATE_BARRIER
select POSIX_TIMERS
Expand Down
2 changes: 1 addition & 1 deletion lib/posix/options/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ set(GEN_DIR ${ZEPHYR_BINARY_DIR}/include/generated)

zephyr_syscall_header_ifdef(CONFIG_POSIX_TIMERS posix_clock.h)

if(CONFIG_POSIX_API)
if(CONFIG_POSIX_SYSTEM_HEADERS)
zephyr_include_directories(${ZEPHYR_BASE}/include/zephyr/posix)
endif()

Expand Down
9 changes: 9 additions & 0 deletions lib/posix/options/Kconfig.profile
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,18 @@
#
# SPDX-License-Identifier: Apache-2.0

config POSIX_SYSTEM_HEADERS
bool
depends on !NATIVE_APPLICATION
select NATIVE_LIBC_INCOMPATIBLE
help
Make POSIX headers available to the system without the "zephyr/posix" prefix.

config POSIX_API
bool "POSIX APIs"
depends on !NATIVE_APPLICATION
select NATIVE_LIBC_INCOMPATIBLE
select POSIX_SYSTEM_HEADERS
select POSIX_BASE_DEFINITIONS # clock_gettime(), pthread_create(), sem_get(), etc
select POSIX_AEP_REALTIME_MINIMAL # CLOCK_MONOTONIC, pthread_attr_setstack(), etc
select POSIX_NETWORKING if NETWORKING # inet_ntoa(), socket(), etc
Expand Down Expand Up @@ -98,6 +106,7 @@ endchoice # POSIX_AEP_CHOICE
# Base Definitions (System Interfaces)
config POSIX_BASE_DEFINITIONS
bool
select POSIX_SYSTEM_HEADERS
select POSIX_ASYNCHRONOUS_IO
select POSIX_BARRIERS
select POSIX_CLOCK_SELECTION
Expand Down
2 changes: 2 additions & 0 deletions lib/posix/options/signal.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@
#define SIGNO_WORD_IDX(_signo) (_signo / BITS_PER_LONG)
#define SIGNO_WORD_BIT(_signo) (_signo & BIT_MASK(LOG2(BITS_PER_LONG)))

#ifdef CONFIG_POSIX_REALTIME_SIGNALS
BUILD_ASSERT(CONFIG_POSIX_RTSIG_MAX >= 0);
#endif

static inline bool signo_valid(int signo)
{
Expand Down
5 changes: 4 additions & 1 deletion modules/hostap/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,12 @@

config WIFI_NM_WPA_SUPPLICANT
bool "WPA Suplicant from hostap project [EXPERIMENTAL]"
select POSIX_SYSTEM_HEADERS
select POSIX_NETWORKING
select POSIX_TIMERS
select POSIX_SIGNALS
select POSIX_API
select POSIX_FD_MGMT
select POSIX_DEVICE_IO
select NET_SOCKETS
select NET_SOCKETS_PACKET
select NET_SOCKETPAIR
Expand Down
3 changes: 3 additions & 0 deletions modules/mbedtls/configs/config-mbedtls.h
Original file line number Diff line number Diff line change
Expand Up @@ -404,6 +404,9 @@
defined(MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED) || \
defined(MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_EPHEMERAL_ENABLED)
#define MBEDTLS_X509_CRT_PARSE_C
#ifndef CONFIG_POSIX_NETWORKING
#define MBEDTLS_TEST_SW_INET_PTON
#endif
#endif

#if defined(CONFIG_MBEDTLS_PEM_CERTIFICATE_FORMAT) && \
Expand Down
2 changes: 2 additions & 0 deletions samples/drivers/video/tcpserversink/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ CONFIG_NET_IPV4=y
CONFIG_NET_SOCKETS=y
CONFIG_ZVFS_OPEN_MAX=6
CONFIG_POSIX_API=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_NETWORKING=y

# Kernel options
CONFIG_MAIN_STACK_SIZE=2048
Expand Down
2 changes: 2 additions & 0 deletions samples/modules/thrift/hello/client/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ CONFIG_CPP=y
CONFIG_STD_CPP17=y
CONFIG_CPP_EXCEPTIONS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE53=y
CONFIG_XOPEN_STREAMS=y
CONFIG_COMMON_LIBC_THRD=y
CONFIG_DYNAMIC_THREAD=y
Expand Down
2 changes: 2 additions & 0 deletions samples/modules/thrift/hello/server/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ CONFIG_CPP=y
CONFIG_STD_CPP17=y
CONFIG_CPP_EXCEPTIONS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE53=y
CONFIG_XOPEN_STREAMS=y
CONFIG_NET_SOCKETPAIR=y
CONFIG_HEAP_MEM_POOL_SIZE=16384
Expand Down
2 changes: 2 additions & 0 deletions samples/net/cellular_modem/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# SPDX-License-Identifier: Apache-2.0

CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_DEVICE_IO=y

# Networking
CONFIG_NETWORKING=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/cloud/aws_iot_mqtt/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ CONFIG_HW_STACK_PROTECTION=y
CONFIG_REQUIRES_FULL_LIBC=y
CONFIG_JSON_LIBRARY=y
CONFIG_POSIX_API=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_NETWORKING=y

# DNS
CONFIG_DNS_RESOLVER=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/cloud/mqtt_azure/prj.conf
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
CONFIG_NETWORKING=y
CONFIG_POSIX_API=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_NETWORKING=y

# Disable IPv6 support
CONFIG_NET_IPV6=n
Expand Down
2 changes: 2 additions & 0 deletions samples/net/cloud/tagoio_http_post/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ CONFIG_MAIN_STACK_SIZE=4096
CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=4096

CONFIG_POSIX_API=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_NETWORKING=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/dsa/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ CONFIG_NET_DSA_LOG_LEVEL_INF=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_PACKET=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# How many traffic classes to enable
CONFIG_NET_TC_TX_COUNT=6
Expand Down
2 changes: 2 additions & 0 deletions samples/net/mdns_responder/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,5 @@ CONFIG_NET_CONFIG_MY_IPV4_GW="192.0.2.2"

CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_NETWORKING=y
2 changes: 2 additions & 0 deletions samples/net/mqtt_publisher/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ CONFIG_NET_IF_MCAST_IPV6_ADDR_COUNT=2
CONFIG_PRINTK=y
CONFIG_STDOUT_CONSOLE=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_DEVICE_IO=y

# Enable IPv6 support
CONFIG_NET_IPV6=n
Expand Down
1 change: 1 addition & 0 deletions samples/net/mqtt_sn_publisher/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ CONFIG_NET_IPV4=y
CONFIG_NET_IPV6=n
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_ZVFS_OPEN_MAX=6
CONFIG_NET_CONNECTION_MANAGER=y

Expand Down
1 change: 1 addition & 0 deletions samples/net/secure_mqtt_sensor_actuator/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ CONFIG_NET_HOSTNAME_ENABLE=y

# Enable Posix API functionality
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y

# Enable sensor API
CONFIG_SENSOR=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/big_http_download/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ CONFIG_NET_IPV6=y
CONFIG_NET_TCP=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_NET_CONTEXT_RCVTIMEO=y
CONFIG_NET_CONTEXT_SNDTIMEO=y

Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/can/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ CONFIG_NET_CANBUS=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_CAN=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_DEVICE_IO=y

CONFIG_NET_IPV6=n
CONFIG_NET_IPV4=n
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/coap_client/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ CONFIG_NET_UDP=y
CONFIG_NET_SOCKETS=y
CONFIG_ZVFS_POLL_MAX=4
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

CONFIG_COAP=y

Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/coap_server/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ CONFIG_NET_UDP=y
# Socket
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_ZVFS_POLL_MAX=4

# CoAP
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/dumb_http_server/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ CONFIG_NET_IPV6=n
CONFIG_NET_TCP=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Network driver config
CONFIG_TEST_RANDOM_GENERATOR=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/dumb_http_server_mt/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ CONFIG_TEST_RANDOM_GENERATOR=y
# POSIX options
CONFIG_ZVFS_OPEN_MAX=20
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/echo/prj.conf
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# General config
CONFIG_MAIN_STACK_SIZE=1200
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
3 changes: 3 additions & 0 deletions samples/net/sockets/echo_async/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ CONFIG_NET_SOCKETS=y
CONFIG_ZVFS_POLL_MAX=5

CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_FD_MGMT=y

# Network driver config
CONFIG_TEST_RANDOM_GENERATOR=y
Expand Down
3 changes: 3 additions & 0 deletions samples/net/sockets/echo_async_select/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
CONFIG_REQUIRES_FULL_LIBC=y
CONFIG_MAIN_STACK_SIZE=1200
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_POSIX_FD_MGMT=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
3 changes: 3 additions & 0 deletions samples/net/sockets/echo_client/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,11 @@ CONFIG_NET_IPV4=y
CONFIG_NET_SOCKETS=y
CONFIG_ZVFS_POLL_MAX=5
CONFIG_NET_CONNECTION_MANAGER=y
CONFIG_EVENTFD=y

CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Kernel options
CONFIG_MAIN_STACK_SIZE=2048
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/echo_server/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ CONFIG_NET_IPV6=y
CONFIG_NET_IPV4=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_NET_CONNECTION_MANAGER=y

# Kernel options
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/echo_service/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# The async method used in the sample needs more stack for the workqueue
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1500
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/http_client/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ CONFIG_NET_SHELL=y
CONFIG_NET_SOCKETS=y
CONFIG_ZVFS_POLL_MAX=4
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Network driver config
CONFIG_TEST_RANDOM_GENERATOR=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/http_get/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ CONFIG_NET_TCP=y
CONFIG_NET_SOCKETS=y

CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

CONFIG_DNS_RESOLVER=y
CONFIG_DNS_SERVER_IP_ADDRESSES=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/http_server/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_INIT_STACKS=y
CONFIG_ZVFS_OPEN_MAX=32
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_FDTABLE=y
CONFIG_ZVFS_POLL_MAX=32

Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/net_mgmt/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ CONFIG_NET_IPV6=y
CONFIG_NET_IPV4=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_ZVFS_OPEN_MAX=6
CONFIG_NET_SOCKETS_NET_MGMT=y
CONFIG_NET_MGMT_EVENT=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/packet/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ CONFIG_NET_IPV4=n
CONFIG_NET_MAX_CONTEXTS=10
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_ZVFS_OPEN_MAX=6
CONFIG_NET_CONTEXT_RCVTIMEO=y
CONFIG_NET_MGMT=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/sntp_client/prj.conf
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# General config
CONFIG_REQUIRES_FULL_LIBC=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

# Networking config
CONFIG_NETWORKING=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/socketpair/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ CONFIG_HEAP_MEM_POOL_SIZE=2048

# socketpair dependencies
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_NET_SOCKETPAIR=y

# Networking config (network subsystem dependencies)
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/tcp/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ CONFIG_NETWORKING=y

CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y

CONFIG_NET_IPV4=y
CONFIG_NET_IPV6=y
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/txtime/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ CONFIG_NET_IPV6=y
CONFIG_NET_IPV4=y
CONFIG_NET_SOCKETS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
CONFIG_NET_CONTEXT_PRIORITY=y
CONFIG_NET_CONTEXT_TXTIME=y
CONFIG_NET_TC_TX_COUNT=7
Expand Down
2 changes: 2 additions & 0 deletions samples/net/sockets/websocket_client/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,5 @@ CONFIG_NET_LOG=y
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_HEAP_MEM_POOL_SIZE=1500
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y
CONFIG_POSIX_AEP_CHOICE_PSE51=y
1 change: 1 addition & 0 deletions samples/net/vlan/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ CONFIG_NET_UDP=y
CONFIG_NET_TCP=y
CONFIG_NET_STATISTICS=y
CONFIG_POSIX_API=y
CONFIG_POSIX_NETWORKING=y

CONFIG_TEST_RANDOM_GENERATOR=y

Expand Down
1 change: 1 addition & 0 deletions samples/posix/env/prj.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
CONFIG_POSIX_API=y
CONFIG_POSIX_THREADS=y
CONFIG_SHELL=y
CONFIG_POSIX_ENV_SHELL=y
CONFIG_DYNAMIC_THREAD=y
Expand Down
Loading
Loading