mirror of https://gitee.com/openkylin/linux.git
scripts: headers_install: Exit with error on config leak
Misuse of CONFIG_* in UAPI headers should result in an error. These config options can be set in userspace by the user application which includes these headers to control the APIs and structures being used in a kernel which supports multiple targets. Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
parent
0663c68c4d
commit
5967577231
|
@ -64,7 +64,7 @@ configs=$(sed -e '
|
|||
d
|
||||
' $OUTFILE)
|
||||
|
||||
# The entries in the following list are not warned.
|
||||
# The entries in the following list do not result in an error.
|
||||
# Please do not add a new entry. This list is only for existing ones.
|
||||
# The list will be reduced gradually, and deleted eventually. (hopefully)
|
||||
#
|
||||
|
@ -98,18 +98,19 @@ include/uapi/linux/raw.h:CONFIG_MAX_RAW_DEVS
|
|||
|
||||
for c in $configs
|
||||
do
|
||||
warn=1
|
||||
leak_error=1
|
||||
|
||||
for ignore in $config_leak_ignores
|
||||
do
|
||||
if echo "$INFILE:$c" | grep -q "$ignore$"; then
|
||||
warn=
|
||||
leak_error=
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "$warn" = 1 ]; then
|
||||
echo "warning: $INFILE: leak $c to user-space" >&2
|
||||
if [ "$leak_error" = 1 ]; then
|
||||
echo "error: $INFILE: leak $c to user-space" >&2
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
|
|
Loading…
Reference in New Issue