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
21#ifndef ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_
22#define ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_
23
24#if defined(_POSIX_C_SOURCE) || defined(__DOXYGEN__)
25
26/*
27 * clang-format and checkpatch disagree on formatting here, so rely on checkpatch and disable
28 * clang-format since checkpatch cannot be selectively disabled.
29 */
30
31/* clang-format off */
32
34#define _POSIX_CLOCKRES_MIN (20000000L)
36#define _POSIX_AIO_LISTIO_MAX (2)
37#define _POSIX_AIO_MAX (1)
38#define _POSIX_ARG_MAX (4096)
39#define _POSIX_CHILD_MAX (25)
40#define _POSIX_DELAYTIMER_MAX (32)
41#define _POSIX_HOST_NAME_MAX (255)
42#define _POSIX_LINK_MAX (8)
43#define _POSIX_LOGIN_NAME_MAX (9)
44#define _POSIX_MAX_CANON (255)
45#define _POSIX_MAX_INPUT (255)
46#define _POSIX_MQ_OPEN_MAX (8)
47#define _POSIX_MQ_PRIO_MAX (32)
48#define _POSIX_NAME_MAX (14)
49#define _POSIX_NGROUPS_MAX (8)
50#define _POSIX_OPEN_MAX (20)
51#define _POSIX_PATH_MAX (256)
52#define _POSIX_PIPE_BUF (512)
53#define _POSIX_RE_DUP_MAX (255)
54#define _POSIX_RTSIG_MAX (8)
55#define _POSIX_SEM_NSEMS_MAX (256)
56#define _POSIX_SEM_VALUE_MAX (32767)
57#define _POSIX_SIGQUEUE_MAX (32)
58#define _POSIX_SSIZE_MAX (32767)
59#define _POSIX_SS_REPL_MAX (4)
60#define _POSIX_STREAM_MAX (8)
61#define _POSIX_SYMLINK_MAX (255)
62#define _POSIX_SYMLOOP_MAX (8)
63#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS (4)
64#define _POSIX_THREAD_KEYS_MAX (128)
65#define _POSIX_THREAD_THREADS_MAX (64)
66#define _POSIX_TIMER_MAX (32)
67#define _POSIX_TRACE_EVENT_NAME_MAX (30)
68#define _POSIX_TRACE_NAME_MAX (8)
69#define _POSIX_TRACE_SYS_MAX (8)
70#define _POSIX_TRACE_USER_EVENT_MAX (32)
71#define _POSIX_TTY_NAME_MAX (9)
72#define _POSIX_TZNAME_MAX (6)
73#define _POSIX2_BC_BASE_MAX (99)
74#define _POSIX2_BC_DIM_MAX (2048)
75#define _POSIX2_BC_SCALE_MAX (99)
76#define _POSIX2_BC_STRING_MAX (1000)
77#define _POSIX2_CHARCLASS_NAME_MAX (14)
78#define _POSIX2_COLL_WEIGHTS_MAX (2)
79#define _POSIX2_EXPR_NEST_MAX (32)
80#define _POSIX2_LINE_MAX (2048)
81#define _XOPEN_IOV_MAX (16)
82#define _XOPEN_NAME_MAX (255)
83#define _XOPEN_PATH_MAX (1024)
84
85
87#define NL_LANGMAX (14)
89#define NL_MSGMAX (32767)
91#define NL_SETMAX (255)
93#define NL_TEXTMAX (_POSIX2_LINE_MAX)
95#define NZERO (20)
96#define AIO_LISTIO_MAX _POSIX_AIO_LISTIO_MAX
97#define AIO_MAX _POSIX_AIO_MAX
98#define AIO_PRIO_DELTA_MAX (0)
99#define ARG_MAX _POSIX_ARG_MAX
100#define ATEXIT_MAX (32)
101#define DELAYTIMER_MAX \
102 COND_CODE_1(CONFIG_POSIX_TIMERS, (CONFIG_POSIX_DELAYTIMER_MAX), (0))
103#define HOST_NAME_MAX \
104 COND_CODE_1(CONFIG_POSIX_NETWORKING, (CONFIG_POSIX_HOST_NAME_MAX), (0))
105#define LOGIN_NAME_MAX _POSIX_LOGIN_NAME_MAX
106#define MQ_OPEN_MAX \
107 COND_CODE_1(CONFIG_POSIX_MESSAGE_PASSING, (CONFIG_POSIX_MQ_OPEN_MAX), (0))
108#define MQ_PRIO_MAX _POSIX_MQ_PRIO_MAX
109#define OPEN_MAX CONFIG_POSIX_OPEN_MAX
110#define PAGE_SIZE CONFIG_POSIX_PAGE_SIZE
111#define PAGESIZE CONFIG_POSIX_PAGE_SIZE
112#define PATH_MAX _POSIX_PATH_MAX
113#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS
114#define PTHREAD_KEYS_MAX \
115 COND_CODE_1(CONFIG_POSIX_THREADS, (CONFIG_POSIX_THREAD_KEYS_MAX), (0))
116#define PTHREAD_STACK_MIN K_KERNEL_STACK_LEN(CONFIG_IDLE_STACK_SIZE)
117#define PTHREAD_THREADS_MAX \
118 COND_CODE_1(CONFIG_POSIX_THREADS, (CONFIG_POSIX_THREAD_THREADS_MAX), (0))
119#define RTSIG_MAX \
120 COND_CODE_1(CONFIG_POSIX_REALTIME_SIGNALS, (CONFIG_POSIX_RTSIG_MAX), (0))
121#define SEM_NSEMS_MAX \
122 COND_CODE_1(CONFIG_POSIX_SEMAPHORES, (CONFIG_POSIX_SEM_NSEMS_MAX), (0))
123#define SEM_VALUE_MAX \
124 COND_CODE_1(CONFIG_POSIX_SEMAPHORES, (CONFIG_POSIX_SEM_VALUE_MAX), (0))
125#define SIGQUEUE_MAX _POSIX_SIGQUEUE_MAX
126#define STREAM_MAX _POSIX_STREAM_MAX
127#define SYMLOOP_MAX _POSIX_SYMLOOP_MAX
128#define TIMER_MAX \
129 COND_CODE_1(CONFIG_POSIX_TIMERS, (CONFIG_POSIX_TIMER_MAX), (0))
130#define TTY_NAME_MAX _POSIX_TTY_NAME_MAX
131#define TZNAME_MAX _POSIX_TZNAME_MAX
132
133
135#define FILESIZEBITS (32)
136#define POSIX_ALLOC_SIZE_MIN (256)
137#define POSIX_REC_INCR_XFER_SIZE (1024)
138#define POSIX_REC_MAX_XFER_SIZE (32767)
139#define POSIX_REC_MIN_XFER_SIZE (1)
140#define POSIX_REC_XFER_ALIGN (4)
141#define SYMLINK_MAX _POSIX_SYMLINK_MAX
142
143
144/* clang-format on */
145
146
147#endif
148
149#endif /* ZEPHYR_INCLUDE_ZEPHYR_POSIX_POSIX_LIMITS_H_ */