summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/src/os.c33
-rw-r--r--src/src/tlscert-openssl.c2
2 files changed, 34 insertions, 1 deletions
diff --git a/src/src/os.c b/src/src/os.c
index 6e02b8fe2..2b6f79c3f 100644
--- a/src/src/os.c
+++ b/src/src/os.c
@@ -836,6 +836,39 @@ os_get_dns_resolver_res(void)
/* ----------------------------------------------------------------------- */
+/***********************************************************
+* Time-related functions *
+***********************************************************/
+
+/* At least Solaris, and probably others, don't have this */
+
+#ifndef _BSD_SOURCE
+
+# include <time.h>
+# include <stdlib.h>
+
+time_t
+timegm(struct tm * tm)
+{
+time_t ret;
+char *tz;
+
+tz = getenv("TZ");
+setenv("TZ", "", 1);
+tzset();
+ret = mktime(tm);
+if (tz)
+ setenv("TZ", tz, 1);
+else
+ unsetenv("TZ");
+tzset();
+return ret;
+}
+
+#endif
+
+/* ----------------------------------------------------------------------- */
+
diff --git a/src/src/tlscert-openssl.c b/src/src/tlscert-openssl.c
index a57980df0..9444b6d7c 100644
--- a/src/src/tlscert-openssl.c
+++ b/src/src/tlscert-openssl.c
@@ -344,7 +344,7 @@ while (sk_GENERAL_NAME_num(san) > 0)
if (ele[len]) /* not nul-terminated */
ele = string_copyn(ele, len);
- if (strnlen(CS ele, len) == len) /* ignore any with embedded nul */
+ if (Ustrlen(ele) == len) /* ignore any with embedded nul */
list = string_append_listele(list, sep,
match == -1 ? string_sprintf("%s=%s", tag, ele) : ele);
}