Commit 59675772 authored by Siddharth Gupta's avatar Siddharth Gupta Committed by Masahiro Yamada
Browse files

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: default avatarSiddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
parent 0663c68c
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -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