nuttx/libs/libc/misc/Kconfig
hujun5 8fe8417ffb libc/fdcheck: add fdcheck module
In embedded development environments, due to the lack of address isolation between processes,
fd may be passed between processes and lead to misuse,

We have designed an fd cross-process automatic detection tool,
fdcheck_protect returns the fd containing the pid information,
indicating that the ownership of the current fd belongs to the pid and is not allowed to be used by other processes.
fdcheck_restore will obtain the true fd and check if the ownership of the fd is legal

For ease of understanding, let's give an example where
the following information is represented in 32-bit binary format

fd        00000000 00000000 00000000 10001010
pid       00000000 00000000 00000011 01010101
ret       00000000 00000011 01010101 10001010

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2023-06-10 02:19:58 +08:00

89 lines
3.1 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
comment "Non-standard Library Support"
config LIBC_CRC64_FAST
bool "Fast CRC64"
default n
---help---
Enable the CRC64 lookup table to compute the CRC64 faster.
config LIBC_KBDCODEC
bool "Keyboard CODEC"
default n
---help---
In NuttX, a keyboard/keypad driver is simply a character driver that
may have an (optional) encoding/decoding layer on the data returned
by the character driver. A keyboard may return simple text data
(alphabetic, numeric, and punctuation) or control characters
(enter, control-C, etc.). However, in addition, most keyboards
support actions that cannot be represented as text data. Such
actions include things like cursor controls (home, up arrow,
page down, etc.), editing functions (insert, delete, etc.), volume
controls, (mute, volume up, etc.) and other special functions.
Some special encoding may be required to multiplex these two classes
of data.
This option enables the functions that implement the encoding and
decoding of keyboard data. These are the interfaces prototyped in
include/nuttx/input/kbd_codec.h. While not correctly a part of
the C library, it is included here because the decoding side of this
interface must be accessible by end user programs.
config LIBC_SLCDCODEC
bool "Segment LCD CODEC"
default n
---help---
In NuttX, a character-oriented, segment LCD (SLCD) driver is simply
a character device that may have an (optional) encoding/decoding
layer on the data provided to the SLCD driver. The application may
provide simple text data (alphabetic, numeric, and punctuation) or
control characters (enter, control-C, etc.). However, in addition,
most SLCDs support actions that cannot be represented as text data.
Such actions include things like cursor controls (home, up arrow,
page down, etc.) and other special functions (e.g., blinking). Some
special encoding may be required to multiplex these two classes of
data.
This option enables the functions that implement the encoding and
decoding of SLCD data. These are the interfaces prototyped in
include/nuttx/lcd/slcd_codec.h. While not correctly a part of the C
library, it is included here because the encoding side of this
interface must be accessible by end user programs.
config LIBC_ENVPATH
bool "Support PATH Environment Variable"
default n
depends on !DISABLE_ENVIRON
---help---
Use the contents of the common environment variable to locate executable
or library files. Default: n
config FDSAN
bool "Enable Fdsan"
default n
---help---
Enable the fdsan support
config FDCHECK
bool "Enable fdcheck"
default n
---help---
Enable the fdcheck support
config LIBC_FTOK_VFS_PATH
string "Relative path to ftok storage"
default "/var/ftok"
---help---
The relative path to where ftok will exist in the root namespace.
config LIBC_MEM_FD_VFS_PATH
string "Relative path to memfd storage"
default "memfd"
depends on FS_TMPFS
---help---
The relative path to where memfd will exist in the tmpfs namespace.