summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2014-09-29 11:50:06 +0100
committerJeremy Harris <jgh146exb@wizmail.org>2014-09-29 11:50:06 +0100
commit9acf6b941e1356590e94e8e4a0bcf5dd3318087c (patch)
tree9fef861042add11a457e7b0f83e4274bf988ab59
parent0eb9153b250c9569733efaf67e4fd1a3588faa5e (diff)
Fix Solaris build
-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);
}