posix-next API 0.1.0
Out-of-tree Zephyr POSIX module
Loading...
Searching...
No Matches
posix_limits.h
Go to the documentation of this file.
1/*
2 * Copyright The Zephyr Project Contributors
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
19#ifndef ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_
20#define ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_
21
22#if defined(_POSIX_C_SOURCE) || defined(__DOXYGEN__)
23
24/*
25 * clang-format and checkpatch disagree on formatting here, so rely on checkpatch and disable
26 * clang-format since checkpatch cannot be selectively disabled.
27 */
28
29/* clang-format off */
30
31#undef _POSIX_CLOCKRES_MIN
33#define _POSIX_CLOCKRES_MIN (20000000L)
34#undef _POSIX_AIO_LISTIO_MAX
36#define _POSIX_AIO_LISTIO_MAX (2)
37#undef _POSIX_AIO_MAX
38#define _POSIX_AIO_MAX (1)
39#undef _POSIX_ARG_MAX
40#define _POSIX_ARG_MAX (4096)
41#undef _POSIX_CHILD_MAX
42#define _POSIX_CHILD_MAX (25)
43#undef _POSIX_DELAYTIMER_MAX
44#define _POSIX_DELAYTIMER_MAX (32)
45#undef _POSIX_HOST_NAME_MAX
46#define _POSIX_HOST_NAME_MAX (255)
47#undef _POSIX_LINK_MAX
48#define _POSIX_LINK_MAX (8)
49#undef _POSIX_LOGIN_NAME_MAX
50#define _POSIX_LOGIN_NAME_MAX (9)
51#undef _POSIX_MAX_CANON
52#define _POSIX_MAX_CANON (255)
53#undef _POSIX_MAX_INPUT
54#define _POSIX_MAX_INPUT (255)
55#undef _POSIX_MQ_OPEN_MAX
56#define _POSIX_MQ_OPEN_MAX (8)
57#undef _POSIX_MQ_PRIO_MAX
58#define _POSIX_MQ_PRIO_MAX (32)
59#undef _POSIX_NAME_MAX
60#define _POSIX_NAME_MAX (14)
61#undef _POSIX_NGROUPS_MAX
62#define _POSIX_NGROUPS_MAX (8)
63#undef _POSIX_OPEN_MAX
64#define _POSIX_OPEN_MAX (20)
65#undef _POSIX_PATH_MAX
66#define _POSIX_PATH_MAX (256)
67#undef _POSIX_PIPE_BUF
68#define _POSIX_PIPE_BUF (512)
69#undef _POSIX_RE_DUP_MAX
70#define _POSIX_RE_DUP_MAX (255)
71#undef _POSIX_RTSIG_MAX
72#define _POSIX_RTSIG_MAX (8)
73#undef _POSIX_SEM_NSEMS_MAX
74#define _POSIX_SEM_NSEMS_MAX (256)
75#undef _POSIX_SEM_VALUE_MAX
76#define _POSIX_SEM_VALUE_MAX (32767)
77#undef _POSIX_SIGQUEUE_MAX
78#define _POSIX_SIGQUEUE_MAX (32)
79#undef _POSIX_SSIZE_MAX
80#define _POSIX_SSIZE_MAX (32767)
81#undef _POSIX_SS_REPL_MAX
82#define _POSIX_SS_REPL_MAX (4)
83#undef _POSIX_STREAM_MAX
84#define _POSIX_STREAM_MAX (8)
85#undef _POSIX_SYMLINK_MAX
86#define _POSIX_SYMLINK_MAX (255)
87#undef _POSIX_SYMLOOP_MAX
88#define _POSIX_SYMLOOP_MAX (8)
89#undef _POSIX_THREAD_DESTRUCTOR_ITERATIONS
90#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS (4)
91#undef _POSIX_THREAD_KEYS_MAX
92#define _POSIX_THREAD_KEYS_MAX (128)
93#undef _POSIX_THREAD_THREADS_MAX
94#define _POSIX_THREAD_THREADS_MAX (64)
95#undef _POSIX_TIMER_MAX
96#define _POSIX_TIMER_MAX (32)
97#undef _POSIX_TRACE_EVENT_NAME_MAX
98#define _POSIX_TRACE_EVENT_NAME_MAX (30)
99#undef _POSIX_TRACE_NAME_MAX
100#define _POSIX_TRACE_NAME_MAX (8)
101#undef _POSIX_TRACE_SYS_MAX
102#define _POSIX_TRACE_SYS_MAX (8)
103#undef _POSIX_TRACE_USER_EVENT_MAX
104#define _POSIX_TRACE_USER_EVENT_MAX (32)
105#undef _POSIX_TTY_NAME_MAX
106#define _POSIX_TTY_NAME_MAX (9)
107#undef _POSIX_TZNAME_MAX
108#define _POSIX_TZNAME_MAX (6)
109#undef _POSIX2_BC_BASE_MAX
110#define _POSIX2_BC_BASE_MAX (99)
111#undef _POSIX2_BC_DIM_MAX
112#define _POSIX2_BC_DIM_MAX (2048)
113#undef _POSIX2_BC_SCALE_MAX
114#define _POSIX2_BC_SCALE_MAX (99)
115#undef _POSIX2_BC_STRING_MAX
116#define _POSIX2_BC_STRING_MAX (1000)
117#undef _POSIX2_CHARCLASS_NAME_MAX
118#define _POSIX2_CHARCLASS_NAME_MAX (14)
119#undef _POSIX2_COLL_WEIGHTS_MAX
120#define _POSIX2_COLL_WEIGHTS_MAX (2)
121#undef _POSIX2_EXPR_NEST_MAX
122#define _POSIX2_EXPR_NEST_MAX (32)
123#undef _POSIX2_LINE_MAX
124#define _POSIX2_LINE_MAX (2048)
125#undef _XOPEN_IOV_MAX
126#define _XOPEN_IOV_MAX (16)
127#undef _XOPEN_NAME_MAX
128#define _XOPEN_NAME_MAX (255)
129#undef _XOPEN_PATH_MAX
130#define _XOPEN_PATH_MAX (1024)
131
132
133#undef NL_LANGMAX
135#define NL_LANGMAX (14)
136#undef NL_MSGMAX
138#define NL_MSGMAX (32767)
139#undef NL_SETMAX
141#define NL_SETMAX (255)
142#undef NL_TEXTMAX
144#define NL_TEXTMAX (_POSIX2_LINE_MAX)
145#undef NZERO
147#define NZERO (20)
148#undef AIO_LISTIO_MAX
149#define AIO_LISTIO_MAX \
150 COND_CODE_1(CONFIG_POSIX_ASYNCHRONOUS_IO, (CONFIG_POSIX_AIO_LISTIO_MAX), (0))
151#undef AIO_MAX
152#define AIO_MAX \
153 COND_CODE_1(CONFIG_POSIX_ASYNCHRONOUS_IO, (CONFIG_POSIX_AIO_MAX), (0))
154#undef AIO_PRIO_DELTA_MAX
155#define AIO_PRIO_DELTA_MAX \
156 COND_CODE_1(CONFIG_POSIX_PRIORITIZED_IO, \
157 (CONFIG_NUM_COOP_PRIORITIES + CONFIG_NUM_PREEMPT_PRIORITIES - 1), (0))
158#undef ARG_MAX
159#define ARG_MAX _POSIX_ARG_MAX
160#undef ATEXIT_MAX
161#define ATEXIT_MAX (32)
162#undef DELAYTIMER_MAX
163#define DELAYTIMER_MAX \
164 COND_CODE_1(CONFIG_POSIX_TIMERS, (CONFIG_POSIX_DELAYTIMER_MAX), (0))
165#undef HOST_NAME_MAX
166#define HOST_NAME_MAX \
167 COND_CODE_1(CONFIG_POSIX_NETWORKING, (CONFIG_POSIX_HOST_NAME_MAX), (0))
168#undef LOGIN_NAME_MAX
169#define LOGIN_NAME_MAX _POSIX_LOGIN_NAME_MAX
170#undef MQ_OPEN_MAX
171#define MQ_OPEN_MAX \
172 COND_CODE_1(CONFIG_POSIX_MESSAGE_PASSING, (CONFIG_POSIX_MQ_OPEN_MAX), (0))
173#undef MQ_PRIO_MAX
174#define MQ_PRIO_MAX _POSIX_MQ_PRIO_MAX
175#undef OPEN_MAX
176#define OPEN_MAX CONFIG_POSIX_OPEN_MAX
177#undef PAGE_SIZE
178#define PAGE_SIZE CONFIG_POSIX_PAGE_SIZE
179#undef PAGESIZE
180#define PAGESIZE CONFIG_POSIX_PAGE_SIZE
181#undef PATH_MAX
182#define PATH_MAX _POSIX_PATH_MAX
183#undef PIPE_BUF
184#define PIPE_BUF \
185 COND_CODE_1(CONFIG_POSIX_PIPE, (CONFIG_ZVFS_PIPE_BUF_SIZE), (0))
186#undef PTHREAD_DESTRUCTOR_ITERATIONS
187#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS
188#undef PTHREAD_KEYS_MAX
189#define PTHREAD_KEYS_MAX \
190 COND_CODE_1(CONFIG_POSIX_THREADS, (CONFIG_POSIX_THREAD_KEYS_MAX), (0))
191#undef PTHREAD_STACK_MIN
192#define PTHREAD_STACK_MIN CONFIG_IDLE_STACK_SIZE
193#undef PTHREAD_THREADS_MAX
194#define PTHREAD_THREADS_MAX \
195 COND_CODE_1(CONFIG_POSIX_THREADS, (CONFIG_POSIX_THREAD_THREADS_MAX), (0))
196#undef RTSIG_MAX
197#define RTSIG_MAX \
198 COND_CODE_1(CONFIG_POSIX_REALTIME_SIGNALS, (CONFIG_POSIX_RTSIG_MAX), (0))
199#undef SEM_NSEMS_MAX
200#define SEM_NSEMS_MAX \
201 COND_CODE_1(CONFIG_POSIX_SEMAPHORES, (CONFIG_POSIX_SEM_NSEMS_MAX), (0))
202#undef SEM_VALUE_MAX
203#define SEM_VALUE_MAX \
204 COND_CODE_1(CONFIG_POSIX_SEMAPHORES, (CONFIG_POSIX_SEM_VALUE_MAX), (0))
205#undef SIGQUEUE_MAX
206#define SIGQUEUE_MAX _POSIX_SIGQUEUE_MAX
207#undef SS_REPL_MAX
208#define SS_REPL_MAX _POSIX_SS_REPL_MAX
209#undef STREAM_MAX
210#define STREAM_MAX _POSIX_STREAM_MAX
211#undef SYMLOOP_MAX
212#define SYMLOOP_MAX _POSIX_SYMLOOP_MAX
213#undef TIMER_MAX
214#define TIMER_MAX \
215 COND_CODE_1(CONFIG_POSIX_TIMERS, (CONFIG_POSIX_TIMER_MAX), (0))
216#undef TTY_NAME_MAX
217#define TTY_NAME_MAX _POSIX_TTY_NAME_MAX
218#undef TZNAME_MAX
219#define TZNAME_MAX _POSIX_TZNAME_MAX
220
221
222#undef FILESIZEBITS
224#define FILESIZEBITS (32)
225#undef POSIX_ALLOC_SIZE_MIN
226#define POSIX_ALLOC_SIZE_MIN (256)
227#undef POSIX_REC_INCR_XFER_SIZE
228#define POSIX_REC_INCR_XFER_SIZE (1024)
229#undef POSIX_REC_MAX_XFER_SIZE
230#define POSIX_REC_MAX_XFER_SIZE (32767)
231#undef POSIX_REC_MIN_XFER_SIZE
232#define POSIX_REC_MIN_XFER_SIZE (1)
233#undef POSIX_REC_XFER_ALIGN
234#define POSIX_REC_XFER_ALIGN (4)
235#undef SYMLINK_MAX
236#define SYMLINK_MAX _POSIX_SYMLINK_MAX
237
238
239/* clang-format on */
240
241
242#endif
243
244#endif /* ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_ */