aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristof Provost2023-03-09 13:23:32 +0100
committerGert Doering2023-03-13 17:42:49 +0100
commit5617f0f01837ffa01b81dfb2c5c7da8ee4c42072 (patch)
treeb7ffc39586aed26880fed9b6a23abbcaad2c350a
parent9bd6fff74cf34892339fcab2fb3fc3cee54a2051 (diff)
downloadopenvpn-5617f0f01837ffa01b81dfb2c5c7da8ee4c42072.zip
openvpn-5617f0f01837ffa01b81dfb2c5c7da8ee4c42072.tar.gz
dco: print FreeBSD version
Implement dco_version_string() for FreeBSD. Unlike Linux and Windows the DCO driver is built into the operating system itself, so we log the OS version as a proxy for the DCO version. Signed-off-by: Kristof Provost <kp@FreeBSD.org> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <20230309122332.92490-1-kprovost@netgate.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26367.html Signed-off-by: Gert Doering <gert@greenie.muc.de> (cherry picked from commit fe0853d2e72dd3a639a95e420ad7eeed6b49e81b)
-rw-r--r--src/openvpn/dco_freebsd.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/openvpn/dco_freebsd.c b/src/openvpn/dco_freebsd.c
index cbd2ce2..ecca2a0 100644
--- a/src/openvpn/dco_freebsd.c
+++ b/src/openvpn/dco_freebsd.c
@@ -31,6 +31,8 @@
#include <sys/param.h>
#include <sys/linker.h>
#include <sys/nv.h>
+#include <sys/utsname.h>
+
#include <netinet/in.h>
#include "dco_freebsd.h"
@@ -617,7 +619,15 @@ out:
const char *
dco_version_string(struct gc_arena *gc)
{
- return "v0";
+ struct utsname *uts;
+ ALLOC_OBJ_GC(uts, struct utsname, gc);
+
+ if (uname(uts) != 0)
+ {
+ return "N/A";
+ }
+
+ return uts->version;
}
void