OSDN Git Service

* cygcheck.cc (dump_sysinfo): Recognize XP Media Center and Tablet PC
authorcorinna <corinna>
Mon, 30 May 2005 15:49:30 +0000 (15:49 +0000)
committercorinna <corinna>
Mon, 30 May 2005 15:49:30 +0000 (15:49 +0000)
Editions. Change .NET to 2003 throughout.  Recognize 2003 Web Server
and Datacenter Server. Report when running in terminal server session.

winsup/utils/ChangeLog
winsup/utils/cygcheck.cc

index d1c27f3..f1ed833 100644 (file)
@@ -1,3 +1,9 @@
+2005-05-30  Corinna Vinschen  <corinna@vinschen.de>
+
+       * cygcheck.cc (dump_sysinfo): Recognize XP Media Center and Tablet PC
+       Editions. Change .NET to 2003 throughout.  Recognize 2003 Web Server
+       and Datacenter Server. Report when running in terminal server session.
+
 2005-05-27  Christopher Faylor  <cgf@timesys.com>
 
        * cygcheck.cc (load_cygwin): Make half-hearted attempt to work with
index ca30ce7..264fd50 100644 (file)
@@ -1017,10 +1017,9 @@ dump_sysinfo ()
              if (!more_info)
                osname = (char *) "2000";
              else if (osversionex.wProductType == VER_NT_SERVER
-                      || osversionex.wProductType ==
-                      VER_NT_DOMAIN_CONTROLLER)
+                      || osversionex.wProductType == VER_NT_DOMAIN_CONTROLLER)
                {
-                 if (osversionex.wSuiteMask &VER_SUITE_DATACENTER)
+                 if (osversionex.wSuiteMask & VER_SUITE_DATACENTER)
                    osname = (char *) "2000 Datacenter Server";
                  else if (osversionex.wSuiteMask & VER_SUITE_ENTERPRISE)
                    osname = (char *) "2000 Advanced Server";
@@ -1030,24 +1029,31 @@ dump_sysinfo ()
              else
                osname = (char *) "2000 Professional";
            }
-         else
+         else if (osversion.dwMinorVersion == 1)
            {
-             if (!more_info)
+             if (GetSystemMetrics (SM_MEDIACENTER))
+               osname = (char *) "XP Media Center Edition";
+             else if (GetSystemMetrics (SM_TABLETPC))
+               osname = (char *) "XP Tablet PC Edition";
+             else if (!more_info)
                osname = (char *) "XP";
-             else if (osversionex.wProductType == VER_NT_SERVER
-                      || osversionex.wProductType ==
-                      VER_NT_DOMAIN_CONTROLLER)
-               {
-                 if (osversionex.wSuiteMask & VER_SUITE_ENTERPRISE)
-                   osname = (char *) ".NET Enterprise Server";
-                 else
-                   osname = (char *) ".NET Server";
-               }
              else if (osversionex.wSuiteMask & VER_SUITE_PERSONAL)
-               osname = (char *) "XP Home Edition";
+               osname = (char *) "XP Home Edition";
              else
-               osname = (char *) "XP Professional";
-
+               osname = (char *) "XP Professional";
+           }
+         else if (osversion.dwMinorVersion == 2)
+           {
+             if (!more_info)
+               osname = (char *) "2003 Server";
+             else if (osversionex.wSuiteMask & VER_SUITE_BLADE)
+               osname = (char *) "2003 Web Server";
+             else if (osversionex.wSuiteMask & VER_SUITE_DATACENTER)
+               osname = (char *) "2003 Datacenter Server";
+             else if (osversionex.wSuiteMask & VER_SUITE_ENTERPRISE)
+               osname = (char *) "2003 Enterprise Server";
+             else
+               osname = (char *) "2003 Server";
            }
        }
       else
@@ -1063,6 +1069,8 @@ dump_sysinfo ()
          osversion.dwBuildNumber : (osversion.dwBuildNumber & 0xffff),
          osversion.dwPlatformId == VER_PLATFORM_WIN32_NT ?
          osversion.szCSDVersion : "");
+  if (GetSystemMetrics (SM_REMOTESESSION))
+    printf ("Running in Terminal Service session\n\n");
 
   printf ("Path:");
   char *s = getenv ("PATH"), *e;