[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard info.c winver.h

2008-12-09 Thread Pierre-Alain Joye
pajoye  Tue Dec  9 17:54:01 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/standard   info.c winver.h 
  Log:
  - fix VC6 build
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/info.c?r1=1.249.2.10.2.14.2.14r2=1.249.2.10.2.14.2.15diff_format=u
Index: php-src/ext/standard/info.c
diff -u php-src/ext/standard/info.c:1.249.2.10.2.14.2.14 
php-src/ext/standard/info.c:1.249.2.10.2.14.2.15
--- php-src/ext/standard/info.c:1.249.2.10.2.14.2.14Mon Dec  8 07:32:14 2008
+++ php-src/ext/standard/info.c Tue Dec  9 17:54:01 2008
@@ -18,7 +18,7 @@
+--+
 */
 
-/* $Id: info.c,v 1.249.2.10.2.14.2.14 2008/12/08 07:32:14 stas Exp $ */
+/* $Id: info.c,v 1.249.2.10.2.14.2.15 2008/12/09 17:54:01 pajoye Exp $ */
 
 #include php.h
 #include php_ini.h
@@ -38,6 +38,18 @@
 #include sys/utsname.h
 #endif
 
+#ifdef PHP_WIN32
+typedef void (WINAPI *PGNSI)(LPSYSTEM_INFO);
+typedef BOOL (WINAPI *PGPI)(DWORD, DWORD, DWORD, DWORD, PDWORD);
+
+# include winver.h
+
+#if _MSC_VER  1300
+# define OSVERSIONINFOEX php_win_OSVERSIONINFOEX
+#endif
+
+#endif
+
 #if HAVE_MBSTRING
 #include ext/mbstring/mbstring.h
 ZEND_EXTERN_MODULE_GLOBALS(mbstring)
@@ -343,9 +355,9 @@
if ( osvi.dwMajorVersion == 5  osvi.dwMinorVersion == 2 ) 
{
if (GetSystemMetrics(SM_SERVERR2))
major = Windows Server 2003 R2;
-   else if (osvi.wSuiteMask==VER_SUITE_STORAGE_SERVER)
+   else if (osvi.wSuiteMask == VER_SUITE_STORAGE_SERVER)
major = Windows Storage Server 2003;
-   else if (osvi.wSuiteMask==VER_SUITE_WH_SERVER)
+   else if (osvi.wSuiteMask == VER_SUITE_WH_SERVER)
major = Windows Home Server;
else if (osvi.wProductType == VER_NT_WORKSTATION 

si.wProcessorArchitecture==PROCESSOR_ARCHITECTURE_AMD64) {
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/winver.h?r1=1.1.2.1r2=1.1.2.2diff_format=u
Index: php-src/ext/standard/winver.h
diff -u php-src/ext/standard/winver.h:1.1.2.1 
php-src/ext/standard/winver.h:1.1.2.2
--- php-src/ext/standard/winver.h:1.1.2.1   Mon Dec  8 07:32:14 2008
+++ php-src/ext/standard/winver.h   Tue Dec  9 17:54:01 2008
@@ -57,10 +57,20 @@
 #define VER_SUITE_BLADE 0x0400
 #define VER_SUITE_EMBEDDED_RESTRICTED   0x0800
 #define VER_SUITE_SECURITY_APPLIANCE0x1000
-#define VER_SUITE_STORAGE_SERVER0x2000
-#define VER_SUITE_COMPUTE_SERVER0x4000
 #endif
 
+#ifndef VER_SUITE_STORAGE_SERVER
+# define VER_SUITE_STORAGE_SERVER0x2000
+#endif
+
+#ifndef VER_SUITE_COMPUTE_SERVER
+# define VER_SUITE_COMPUTE_SERVER0x4000
+#endif
+/*
+ext\standard\info.c(346) : error C2065: 'VER_SUITE_STORAGE_SERVER' : 
undeclared identifier
+ext\standard\info.c(373) : error C2065: 'VER_SUITE_COMPUTE_SERVER' : 
undeclared identifier
+*/
+
 #ifndef PROCESSOR_ARCHITECTURE_AMD64
 #define PROCESSOR_ARCHITECTURE_AMD649
 #endif



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard info.c winver.h

2008-12-09 Thread Pierre-Alain Joye
pajoye  Tue Dec  9 17:58:00 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/standard   info.c winver.h 
  Log:
  - double declaration and comments cleanup
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/info.c?r1=1.249.2.10.2.14.2.15r2=1.249.2.10.2.14.2.16diff_format=u
Index: php-src/ext/standard/info.c
diff -u php-src/ext/standard/info.c:1.249.2.10.2.14.2.15 
php-src/ext/standard/info.c:1.249.2.10.2.14.2.16
--- php-src/ext/standard/info.c:1.249.2.10.2.14.2.15Tue Dec  9 17:54:01 2008
+++ php-src/ext/standard/info.c Tue Dec  9 17:57:59 2008
@@ -18,7 +18,7 @@
+--+
 */
 
-/* $Id: info.c,v 1.249.2.10.2.14.2.15 2008/12/09 17:54:01 pajoye Exp $ */
+/* $Id: info.c,v 1.249.2.10.2.14.2.16 2008/12/09 17:57:59 pajoye Exp $ */
 
 #include php.h
 #include php_ini.h
@@ -252,15 +252,6 @@
 
 #ifdef PHP_WIN32
 /* {{{  */
-typedef void (WINAPI *PGNSI)(LPSYSTEM_INFO);
-typedef BOOL (WINAPI *PGPI)(DWORD, DWORD, DWORD, DWORD, PDWORD);
-
-#include winver.h
-
-#if _MSC_VER  1300
-#define OSVERSIONINFOEX php_win_OSVERSIONINFOEX
-#endif
-
 char* php_get_windows_name()
 {
OSVERSIONINFOEX osvi;
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/winver.h?r1=1.1.2.2r2=1.1.2.3diff_format=u
Index: php-src/ext/standard/winver.h
diff -u php-src/ext/standard/winver.h:1.1.2.2 
php-src/ext/standard/winver.h:1.1.2.3
--- php-src/ext/standard/winver.h:1.1.2.2   Tue Dec  9 17:54:01 2008
+++ php-src/ext/standard/winver.h   Tue Dec  9 17:57:59 2008
@@ -66,10 +66,6 @@
 #ifndef VER_SUITE_COMPUTE_SERVER
 # define VER_SUITE_COMPUTE_SERVER0x4000
 #endif
-/*
-ext\standard\info.c(346) : error C2065: 'VER_SUITE_STORAGE_SERVER' : 
undeclared identifier
-ext\standard\info.c(373) : error C2065: 'VER_SUITE_COMPUTE_SERVER' : 
undeclared identifier
-*/
 
 #ifndef PROCESSOR_ARCHITECTURE_AMD64
 #define PROCESSOR_ARCHITECTURE_AMD649



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard info.c winver.h

2008-12-07 Thread Stanislav Malyshev
stasMon Dec  8 07:32:14 2008 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/standard   winver.h 

  Modified files:  
/php-src/ext/standard   info.c 
  Log:
  improve Windows version detection
  
  http://cvs.php.net/viewvc.cgi/php-src/ext/standard/info.c?r1=1.249.2.10.2.14.2.13r2=1.249.2.10.2.14.2.14diff_format=u
Index: php-src/ext/standard/info.c
diff -u php-src/ext/standard/info.c:1.249.2.10.2.14.2.13 
php-src/ext/standard/info.c:1.249.2.10.2.14.2.14
--- php-src/ext/standard/info.c:1.249.2.10.2.14.2.13Tue Oct 21 22:08:37 2008
+++ php-src/ext/standard/info.c Mon Dec  8 07:32:14 2008
@@ -18,7 +18,7 @@
+--+
 */
 
-/* $Id: info.c,v 1.249.2.10.2.14.2.13 2008/10/21 22:08:37 lbarnaud Exp $ */
+/* $Id: info.c,v 1.249.2.10.2.14.2.14 2008/12/08 07:32:14 stas Exp $ */
 
 #include php.h
 #include php_ini.h
@@ -238,6 +238,220 @@
 /* }}} */
 
 
+#ifdef PHP_WIN32
+/* {{{  */
+typedef void (WINAPI *PGNSI)(LPSYSTEM_INFO);
+typedef BOOL (WINAPI *PGPI)(DWORD, DWORD, DWORD, DWORD, PDWORD);
+
+#include winver.h
+
+#if _MSC_VER  1300
+#define OSVERSIONINFOEX php_win_OSVERSIONINFOEX
+#endif
+
+char* php_get_windows_name()
+{
+   OSVERSIONINFOEX osvi;
+   SYSTEM_INFO si;
+   PGNSI pGNSI;
+   PGPI pGPI;
+   BOOL bOsVersionInfoEx;
+   DWORD dwType;
+   char *major = NULL, *sub = NULL, *retval;
+
+   ZeroMemory(si, sizeof(SYSTEM_INFO));
+   ZeroMemory(osvi, sizeof(OSVERSIONINFOEX));
+   osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
+
+   if (!(bOsVersionInfoEx = GetVersionEx ((OSVERSIONINFO *) osvi))) {
+   return NULL;
+   }
+
+   pGNSI = (PGNSI) GetProcAddress(GetModuleHandle(kernel32.dll), 
GetNativeSystemInfo);
+   if(NULL != pGNSI) {
+   pGNSI(si);
+   } else {
+   GetSystemInfo(si);
+   }
+
+   if (VER_PLATFORM_WIN32_NT==osvi.dwPlatformId  osvi.dwMajorVersion  4 
) {
+   if (osvi.dwMajorVersion == 6  osvi.dwMinorVersion == 0 )  
{
+   if (osvi.wProductType == VER_NT_WORKSTATION) {
+   major = Windows Vista;
+   } else {
+   major = Windows Server 2008;
+   }
+
+   pGPI = (PGPI) 
GetProcAddress(GetModuleHandle(kernel32.dll), GetProductInfo);
+   pGPI(6, 0, 0, 0, dwType);
+
+   switch (dwType) {
+   case PRODUCT_ULTIMATE:
+   sub = Ultimate Edition;
+   break;
+   case PRODUCT_HOME_PREMIUM:
+   sub = Home Premium Edition;
+   break;
+   case PRODUCT_HOME_BASIC:
+   sub = Home Basic Edition;
+   break;
+   case PRODUCT_ENTERPRISE:
+   sub = Enterprise Edition;
+   break;
+   case PRODUCT_BUSINESS:
+   sub = Business Edition;
+   break;
+   case PRODUCT_STARTER:
+   sub = Starter Edition;
+   break;
+   case PRODUCT_CLUSTER_SERVER:
+   sub = Cluster Server Edition;
+   break;
+   case PRODUCT_DATACENTER_SERVER:
+   sub = Datacenter Edition;
+   break;
+   case PRODUCT_DATACENTER_SERVER_CORE:
+   sub = Datacenter Edition (core 
installation);
+   break;
+   case PRODUCT_ENTERPRISE_SERVER:
+   sub = Enterprise Edition;
+   break;
+   case PRODUCT_ENTERPRISE_SERVER_CORE:
+   sub = Enterprise Edition (core 
installation);
+   break;
+   case PRODUCT_ENTERPRISE_SERVER_IA64:
+   sub = Enterprise Edition for 
Itanium-based Systems;
+   break;
+   case PRODUCT_SMALLBUSINESS_SERVER:
+   sub = Small Business Server;
+   break;
+   case PRODUCT_SMALLBUSINESS_SERVER_PREMIUM:
+