Trac #599
Signed-off-by: Lev Stipakov <[email protected]>
---
src/openvpn/win32.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/openvpn/win32.c b/src/openvpn/win32.c
index 6c6ac4c..5702304 100644
--- a/src/openvpn/win32.c
+++ b/src/openvpn/win32.c
@@ -1323,6 +1323,20 @@ win32_version_info()
}
}
+bool
+win32_is_64bit()
+{
+#if defined(_WIN64)
+ return true; // 64-bit programs run only on Win64
+#elif defined(_WIN32)
+ // 32-bit programs run on both 32-bit and 64-bit Windows
+ BOOL f64 = FALSE;
+ return IsWow64Process(GetCurrentProcess(), &f64) && f64;
+#else
+ return false; // Win64 does not support Win16
+#endif
+}
+
const char *
win32_version_string(struct gc_arena *gc, bool add_name)
{
@@ -1349,6 +1363,8 @@ win32_version_string(struct gc_arena *gc, bool add_name)
break;
}
+ buf_printf (&out, win32_is_64bit() ? " 64bit" : " 32bit");
+
return (const char *)out.data;
}
--
1.9.1