Re: FreeBSD capsicum / timezones

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

 



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

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

_______________________________________________
openssh-unix-dev mailing list
openssh-unix-dev@xxxxxxxxxxx
https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux