[Spice-devel] [PATCH vdagent-win 2/6] vdservice: extract supported_system_version() to vdcommon

Arnon Gilboa agilboa at redhat.com
Mon Mar 18 06:42:00 PDT 2013


rhbz #919451 preparation
---
 common/vdcommon.cpp        |   36 ++++++++++++++++++++++++++++++++++++
 common/vdcommon.h          |    8 ++++++++
 vdservice/vdservice.cpp    |   24 ------------------------
 vdservice/vdservice.vcproj |    4 ++++
 4 files changed, 48 insertions(+), 24 deletions(-)
 create mode 100644 common/vdcommon.cpp

diff --git a/common/vdcommon.cpp b/common/vdcommon.cpp
new file mode 100644
index 0000000..4dc50b4
--- /dev/null
+++ b/common/vdcommon.cpp
@@ -0,0 +1,36 @@
+/*
+   Copyright (C) 2013 Red Hat, Inc.
+
+   This program is free software; you can redistribute it and/or
+   modify it under the terms of the GNU General Public License as
+   published by the Free Software Foundation; either version 2 of
+   the License, or (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "vdcommon.h"
+
+int supported_system_version()
+{
+    OSVERSIONINFOEX osvi;
+
+    ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));
+    osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
+    if (!GetVersionEx((OSVERSIONINFO*)&osvi)) {
+        vd_printf("GetVersionEx() failed: %lu", GetLastError());
+        return 0;
+    }
+    if (osvi.dwMajorVersion == 5 && (osvi.dwMinorVersion == 1 || osvi.dwMinorVersion == 2)) {
+        return SYS_VER_WIN_XP_CLASS;
+    } else if (osvi.dwMajorVersion == 6 && osvi.dwMinorVersion >= 0 && osvi.dwMinorVersion <= 2) {
+        return SYS_VER_WIN_7_CLASS;
+    }
+    return 0;
+}
diff --git a/common/vdcommon.h b/common/vdcommon.h
index 605153d..177721c 100644
--- a/common/vdcommon.h
+++ b/common/vdcommon.h
@@ -51,5 +51,13 @@ typedef CRITICAL_SECTION mutex_t;
 #define _ftime_s(timeb) _ftime(timeb)
 #endif
 
+enum SystemVersion {
+    SYS_VER_UNSUPPORTED,
+    SYS_VER_WIN_XP_CLASS, // also Server 2003/R2
+    SYS_VER_WIN_7_CLASS,  // also Windows 8, Server 2012, Server 2008/R2 & Vista
+};
+
+int supported_system_version();
+
 #endif
 
diff --git a/vdservice/vdservice.cpp b/vdservice/vdservice.cpp
index 90a3b26..9134c4b 100644
--- a/vdservice/vdservice.cpp
+++ b/vdservice/vdservice.cpp
@@ -119,30 +119,6 @@ VDService* VDService::get()
     return (VDService*)_singleton;
 }
 
-enum SystemVersion {
-    SYS_VER_UNSUPPORTED,
-    SYS_VER_WIN_XP_CLASS, // also Server 2003/R2
-    SYS_VER_WIN_7_CLASS,  // also Windows 8, Server 2012, Server 2008/R2 & Vista
-};
-
-int supported_system_version()
-{
-    OSVERSIONINFOEX osvi;
-
-    ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));
-    osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
-    if (!GetVersionEx((OSVERSIONINFO*)&osvi)) {
-        vd_printf("GetVersionEx() failed: %lu", GetLastError());
-        return 0;
-    }
-    if (osvi.dwMajorVersion == 5 && (osvi.dwMinorVersion == 1 || osvi.dwMinorVersion == 2)) {
-        return SYS_VER_WIN_XP_CLASS;
-    } else if (osvi.dwMajorVersion == 6 && osvi.dwMinorVersion >= 0 && osvi.dwMinorVersion <= 2) {
-        return SYS_VER_WIN_7_CLASS;
-    }
-    return 0;
-}
-
 VDService::VDService()
     : _status_handle (0)
     , _events (NULL)
diff --git a/vdservice/vdservice.vcproj b/vdservice/vdservice.vcproj
index 45af4c5..736f425 100644
--- a/vdservice/vdservice.vcproj
+++ b/vdservice/vdservice.vcproj
@@ -363,6 +363,10 @@
 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
 			>
 			<File
+				RelativePath="..\common\vdcommon.cpp"
+				>
+			</File>
+			<File
 				RelativePath="..\common\vdlog.cpp"
 				>
 			</File>
-- 
1.7.7.6



More information about the Spice-devel mailing list