[Buildroot] [PATCH next] tpm2-abrmd: fix build without stack smashing protection (SSP)

Carlos Santos casantos at datacom.com.br
Fri Nov 23 14:01:24 UTC 2018


> From: "DATACOM" <casantos at datacom.com.br>
> To: "Thomas Petazzoni" <thomas.petazzoni at bootlin.com>
> Cc: "buildroot" <buildroot at buildroot.org>
> Sent: Quarta-feira, 21 de novembro de 2018 23:46:58
> Subject: Re: [Buildroot] [PATCH next] tpm2-abrmd: fix build without stack smashing protection (SSP)

>> From: "Thomas Petazzoni" <thomas.petazzoni at bootlin.com>
>> To: "DATACOM" <casantos at datacom.com.br>
>> Cc: "buildroot" <buildroot at buildroot.org>
>> Sent: Quarta-feira, 21 de novembro de 2018 18:06:52
>> Subject: Re: [Buildroot] [PATCH next] tpm2-abrmd: fix build without stack
>> smashing protection (SSP)
> 
>> Hello,
>> 
>> On Wed, 21 Nov 2018 15:43:37 -0200, Carlos Santos wrote:
>>> The configuration environment setup that disables SSP if the toolchain
>>> does not support it must be updated after the bump to version 2.0.3.
>>> 
>>> Fixes:
>>>   http://autobuild.buildroot.net/results/bd9005eeb24678aa530179a80bbc99b2176f8559
>>>   http://autobuild.buildroot.net/results/feff61dcb481a94f5f030117830984c5e09727ea
>>> 
>>> Signed-off-by: Carlos Santos <casantos at datacom.com.br>
>>> ---
>>>  package/tpm2-abrmd/tpm2-abrmd.mk | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>> 
>>> diff --git a/package/tpm2-abrmd/tpm2-abrmd.mk b/package/tpm2-abrmd/tpm2-abrmd.mk
>>> index a4d9cfb384..74cc66ba20 100644
>>> --- a/package/tpm2-abrmd/tpm2-abrmd.mk
>>> +++ b/package/tpm2-abrmd/tpm2-abrmd.mk
>>> @@ -13,7 +13,7 @@ TPM2_ABRMD_DEPENDENCIES = dbus libglib2 tpm2-tss host-pkgconf
>>>  
>>>  # configure.ac doesn't contain a link test, so it doesn't detect when
>>>  # libssp is missing.
>>> -TPM2_ABRMD_CONF_ENV = ax_cv_check_cflags___fstack_protector_all=$(if
>>> $(BR2_TOOLCHAIN_HAS_SSP),yes,no)
>>> +TPM2_ABRMD_CONF_ENV =
>>> ax_cv_check_cflags___________Werror_______fstack_protector_all=$(if
>>> $(BR2_TOOLCHAIN_HAS_SSP),yes,no)
>> 
>> It's a bit annoying to fix this once in a while, what about the
>> following change instead:
>> 
>> diff --git a/m4/flags.m4 b/m4/flags.m4
>> index 1b01198..59b6d5b 100644
>> --- a/m4/flags.m4
>> +++ b/m4/flags.m4
>> @@ -5,7 +5,7 @@ dnl   mandatory (configure will fail).
>> dnl $1: C compiler flag to add to EXTRA_CFLAGS.
>> dnl $2: Set to "required" to cause configure failure if flag not supported..
>> AC_DEFUN([AX_ADD_COMPILER_FLAG],[
>> -    AX_CHECK_COMPILE_FLAG([$1],[
>> +    AX_CHECK_LINK_FLAG([$1],[
>>         EXTRA_CFLAGS="$EXTRA_CFLAGS $1"
>>         AC_SUBST([EXTRA_CFLAGS])],[
>>         AS_IF([test x$2 != xrequired],[
>> 
>> (entirely untested). It could be submitted upstream.
> 
> I can forward your suggestion upstream but for the moment I'd keep
> the CONF_ENV approach.
> 
> Patching flags.m4 would require AUTORECONF, which in its turn would
> require adding host-autoconf-archive as a build dependency. So more
> dependencies, a larger build to time and exactly the same result.

Pull request created:

    https://github.com/tpm2-software/tpm2-abrmd/pull/556

-- 
Carlos Santos (Casantos) - DATACOM, P&D
“Marched towards the enemy, spear upright, armed with the certainty
that only the ignorant can have.” — Epitaph of a volunteer



More information about the buildroot mailing list