lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 10 Oct 2012 02:17:09 +0200
From:	Martin Walch <walch.martin@....de>
To:	linux-kernel@...r.kernel.org
Cc:	linux-kbuild@...r.kernel.org
Subject: Documentation of kconfig language differs from implementation regarding existence of symbols

The file linux/Documentation/kbuild/kconfig-language.txt says:

> The following two methods produce the same kconfig symbol dependencies
> but differ greatly in kconfig symbol existence (production) in the
> generated config file.
>
> case 1:
>
> config FOO
>         tristate "about foo"
>         depends on BAR
>
> vs. case 2:
>
> if BAR
> config FOO
>         tristate "about foo"
> endif
>
> In case 1, the symbol FOO will always exist in the config file (given
> no other dependencies).  In case 2, the symbol FOO will only exist in
> the config file if BAR is enabled.

However, I can not reproduce this. The attached file contains both cases. When 
running make menuconfig, setting BAR0 and BAR1 both to n, and saving the 
configuration, there is neither FOO0 nor FOO1 in the resulting configuration 
file.

According to the documentation, at least FOO0 should exist, even if BAR0 is 
set to n. But this is not the case. AFAICS, both versions behave equivalently. 
I suggest changing the documentation accordingly.

Regards
Martin Walch
-- 

View attachment "FOO.kconf" of type "text/plain" (188 bytes)

Download attachment "signature.asc" of type "application/pgp-signature" (491 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ