FreeBSD capsicum / timezones

Bryan Drewery bdrewery at FreeBSD.org
Tue May 24 03:29:12 AEST 2022


On 4/18/2022 12:02 AM, Darren Tucker wrote:
> On Sun, Apr 17, 2022 at 06:00:11PM -0400, Ed Maste wrote:
>> Part of FreeBSD commit r339216 / fc3c19a9fceeea48a9259ac3833a125804342c0e
>>
>>      * Cache timezone data via caph_cache_tzdata() as we cannot access the
>>        timezone file.
>>
>> caph_cache_tzdata exists in all supported FreeBSD versions (12.0+, and
>> 11.2 and later), although I suspect there is a desire to build OpenSSH
>> on older versions as well. This could be addressed with an autoconf
>> check for the existence of capsicum_helpers.h -- I'll create a patch
>> for that, if desired.
> Looks like at least in FreeBSD 12.2 caph_cache_tzdata is an inline
> function so AC_CHECK_FUNCS doesn't work:
> 
> static __inline void
> caph_cache_tzdata(void)
> {
>          tzset();
> }
> 
> Is an inline in the other versions and is it likely to remain so in
> future?
> 
> diff --git a/configure.ac b/configure.ac
> index c285ea32..f25a638e 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -504,12 +504,20 @@ AC_CHECK_HEADERS([sys/audit.h], [], [], [
>   ])
>   
>   # sys/capsicum.h requires sys/types.h
> -AC_CHECK_HEADERS([sys/capsicum.h], [], [], [
> +AC_CHECK_HEADERS([sys/capsicum.h capsicum_helpers.h], [], [], [
>   #ifdef HAVE_SYS_TYPES_H
>   # include <sys/types.h>
>   #endif
>   ])
>   
> +AC_MSG_CHECKING([for caph_cache_tzdata])
> +AC_LINK_IFELSE(
> +    [AC_LANG_PROGRAM([[ #include <capsicum_helpers.h> ]],
> +	[[caph_cache_tzdata();]])],
> +    [ AC_MSG_RESULT([yes]) ],
> +    [ AC_MSG_RESULT([no]) ]
> +)
> +

I think something is missing here. There is no HAVE_CAPH_CACHE_TZDATA in 
config.h.in.

checking for caph_cache_tzdata... yes

# grep CAPH *
sandbox-capsicum.c:#ifdef HAVE_CAPH_CACHE_TZDATA


-- 
Bryan Drewery
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mindrot.org/pipermail/openssh-unix-dev/attachments/20220523/a7e964af/attachment-0001.asc>


More information about the openssh-unix-dev mailing list