From: Jeremie Courreges-Anglas Date: Sun, 5 Nov 2017 09:46:41 +0000 (+0100) Subject: Use long long to format time_t-related environment variables X-Git-Tag: v2.5_beta1~563 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c69693adbda2c6abf44b3430afd9ed22bf9e532;p=thirdparty%2Fopenvpn.git Use long long to format time_t-related environment variables Signed-off-by: Jeremie Courreges-Anglas Acked-by: Steffan Karger Message-Id: <20171105094641.55673-1-jca@wxcvbn.org> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg15750.html Signed-off-by: Gert Doering --- diff --git a/src/openvpn/misc.c b/src/openvpn/misc.c index 8c7f61169..001fe1c48 100644 --- a/src/openvpn/misc.c +++ b/src/openvpn/misc.c @@ -553,10 +553,10 @@ setenv_int(struct env_set *es, const char *name, int value) } void -setenv_unsigned(struct env_set *es, const char *name, unsigned int value) +setenv_long_long(struct env_set *es, const char *name, long long value) { char buf[64]; - openvpn_snprintf(buf, sizeof(buf), "%u", value); + openvpn_snprintf(buf, sizeof(buf), "%lld", value); setenv_str(es, name, buf); } diff --git a/src/openvpn/misc.h b/src/openvpn/misc.h index eb39ce3f4..f6c810a2b 100644 --- a/src/openvpn/misc.h +++ b/src/openvpn/misc.h @@ -98,7 +98,7 @@ void setenv_counter(struct env_set *es, const char *name, counter_type value); void setenv_int(struct env_set *es, const char *name, int value); -void setenv_unsigned(struct env_set *es, const char *name, unsigned int value); +void setenv_long_long(struct env_set *es, const char *name, long long value); void setenv_str(struct env_set *es, const char *name, const char *value); diff --git a/src/openvpn/multi.c b/src/openvpn/multi.c index 4545bce18..82a0b9d98 100644 --- a/src/openvpn/multi.c +++ b/src/openvpn/multi.c @@ -565,10 +565,7 @@ multi_client_disconnect_setenv(struct multi_context *m, setenv_stats(&mi->context); /* setenv connection duration */ - { - const unsigned int duration = (unsigned int) now - mi->created; - setenv_unsigned(mi->context.c2.es, "time_duration", duration); - } + setenv_long_long(mi->context.c2.es, "time_duration", now - mi->created); } static void @@ -1769,7 +1766,7 @@ multi_client_connect_setenv(struct multi_context *m, { const char *created_ascii = time_string(mi->created, 0, false, &gc); setenv_str(mi->context.c2.es, "time_ascii", created_ascii); - setenv_unsigned(mi->context.c2.es, "time_unix", (unsigned int)mi->created); + setenv_long_long(mi->context.c2.es, "time_unix", mi->created); } gc_free(&gc); diff --git a/src/openvpn/options.c b/src/openvpn/options.c index 7aa311aa0..641a26e2e 100644 --- a/src/openvpn/options.c +++ b/src/openvpn/options.c @@ -990,7 +990,7 @@ setenv_settings(struct env_set *es, const struct options *o) setenv_int(es, "verb", o->verbosity); setenv_int(es, "daemon", o->daemon); setenv_int(es, "daemon_log_redirect", o->log); - setenv_unsigned(es, "daemon_start_time", time(NULL)); + setenv_long_long(es, "daemon_start_time", time(NULL)); setenv_int(es, "daemon_pid", platform_getpid()); if (o->connection_list)