summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.ac1
-rw-r--r--openbsd-compat/bsd-misc.c10
-rw-r--r--openbsd-compat/bsd-misc.h4
3 files changed, 15 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index ea99887fd..9b4a7ee62 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1763,6 +1763,7 @@ AC_CHECK_FUNCS([ \
inet_ntop \
innetgr \
llabs \
+ localtime_r \
login_getcapbool \
md5_crypt \
memmem \
diff --git a/openbsd-compat/bsd-misc.c b/openbsd-compat/bsd-misc.c
index 7a26ee40c..829e0c075 100644
--- a/openbsd-compat/bsd-misc.c
+++ b/openbsd-compat/bsd-misc.c
@@ -426,3 +426,13 @@ int _ssh_compat_fflush(FILE *f)
return fflush(f);
}
#endif
+
+#ifndef HAVE_LOCALTIME_R
+struct tm *
+localtime_r(const time_t *timep, struct tm *result)
+{
+ struct tm *tm = localtime(timep);
+ *result = *tm;
+ return result;
+}
+#endif
diff --git a/openbsd-compat/bsd-misc.h b/openbsd-compat/bsd-misc.h
index f5b032bbc..5a369d9de 100644
--- a/openbsd-compat/bsd-misc.h
+++ b/openbsd-compat/bsd-misc.h
@@ -178,4 +178,8 @@ int flock(int, int);
# define fflush(x) (_ssh_compat_fflush(x))
#endif
+#ifndef HAVE_LOCALTIME_R
+struct tm *localtime_r(const time_t *, struct tm *);
+#endif
+
#endif /* _BSD_MISC_H */