[PHP-CVS] cvs: php-src /ext/standard info.c winver.h
pajoye Fri Dec 12 10:33:05 2008 UTC Modified files: /php-src/ext/standard info.c winver.h Log: - late MFB (sry): fix VC6 build http://cvs.php.net/viewvc.cgi/php-src/ext/standard/info.c?r1=1.295r2=1.296diff_format=u Index: php-src/ext/standard/info.c diff -u php-src/ext/standard/info.c:1.295 php-src/ext/standard/info.c:1.296 --- php-src/ext/standard/info.c:1.295 Mon Dec 8 07:33:41 2008 +++ php-src/ext/standard/info.c Fri Dec 12 10:33:05 2008 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: info.c,v 1.295 2008/12/08 07:33:41 stas Exp $ */ +/* $Id: info.c,v 1.296 2008/12/12 10:33:05 pajoye Exp $ */ #include php.h #include php_ini.h @@ -38,6 +38,17 @@ #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) @@ -341,14 +352,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() { http://cvs.php.net/viewvc.cgi/php-src/ext/standard/winver.h?r1=1.2r2=1.3diff_format=u Index: php-src/ext/standard/winver.h diff -u php-src/ext/standard/winver.h:1.2 php-src/ext/standard/winver.h:1.3 --- php-src/ext/standard/winver.h:1.2 Mon Dec 8 07:33:41 2008 +++ php-src/ext/standard/winver.h Fri Dec 12 10:33:05 2008 @@ -57,8 +57,14 @@ #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 #ifndef PROCESSOR_ARCHITECTURE_AMD64 -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src /ext/standard info.c winver.h
stasMon Dec 8 07:33:41 2008 UTC Modified files: /php-src/ext/standard winver.h info.c Log: improve windows version detection http://cvs.php.net/viewvc.cgi/php-src/ext/standard/winver.h?r1=1.1r2=1.2diff_format=u Index: php-src/ext/standard/winver.h diff -u /dev/null php-src/ext/standard/winver.h:1.2 --- /dev/null Mon Dec 8 07:33:41 2008 +++ php-src/ext/standard/winver.h Mon Dec 8 07:33:41 2008 @@ -0,0 +1,82 @@ +#ifndef _PHP_WINVER_H +#define _PHP_WINVER_H + +#ifndef SM_SERVERR2 +#define SM_SERVERR2 89 +#endif +#ifndef VER_SUITE_WH_SERVER +#define VER_SUITE_WH_SERVER 0x8000 +#endif + +#ifndef PRODUCT_ULTIMATE +#define PRODUCT_UNDEFINED 0x +#define PRODUCT_ULTIMATE0x0001 +#define PRODUCT_HOME_BASIC 0x0002 +#define PRODUCT_HOME_PREMIUM0x0003 +#define PRODUCT_ENTERPRISE 0x0004 +#define PRODUCT_HOME_BASIC_N0x0005 +#define PRODUCT_BUSINESS0x0006 +#define PRODUCT_STANDARD_SERVER 0x0007 +#define PRODUCT_DATACENTER_SERVER 0x0008 +#define PRODUCT_SMALLBUSINESS_SERVER0x0009 +#define PRODUCT_ENTERPRISE_SERVER 0x000A +#define PRODUCT_STARTER 0x000B +#define PRODUCT_DATACENTER_SERVER_CORE 0x000C +#define PRODUCT_STANDARD_SERVER_CORE0x000D +#define PRODUCT_ENTERPRISE_SERVER_CORE 0x000E +#define PRODUCT_ENTERPRISE_SERVER_IA64 0x000F +#define PRODUCT_BUSINESS_N 0x0010 +#define PRODUCT_WEB_SERVER 0x0011 +#define PRODUCT_CLUSTER_SERVER 0x0012 +#define PRODUCT_HOME_SERVER 0x0013 +#define PRODUCT_STORAGE_EXPRESS_SERVER 0x0014 +#define PRODUCT_STORAGE_STANDARD_SERVER 0x0015 +#define PRODUCT_STORAGE_WORKGROUP_SERVER0x0016 +#define PRODUCT_STORAGE_ENTERPRISE_SERVER 0x0017 +#define PRODUCT_SERVER_FOR_SMALLBUSINESS0x0018 +#define PRODUCT_SMALLBUSINESS_SERVER_PREMIUM0x0019 +#endif + +#ifndef VER_NT_WORKSTATION +#define VER_NT_WORKSTATION 0x001 +#define VER_NT_DOMAIN_CONTROLLER0x002 +#define VER_NT_SERVER 0x003 +#endif + +#ifndef VER_SUITE_SMALLBUSINESS +#define VER_SUITE_SMALLBUSINESS 0x0001 +#define VER_SUITE_ENTERPRISE0x0002 +#define VER_SUITE_BACKOFFICE0x0004 +#define VER_SUITE_COMMUNICATIONS0x0008 +#define VER_SUITE_TERMINAL 0x0010 +#define VER_SUITE_SMALLBUSINESS_RESTRICTED 0x0020 +#define VER_SUITE_EMBEDDEDNT0x0040 +#define VER_SUITE_DATACENTER0x0080 +#define VER_SUITE_SINGLEUSERTS 0x0100 +#define VER_SUITE_PERSONAL 0x0200 +#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 PROCESSOR_ARCHITECTURE_AMD64 +#define PROCESSOR_ARCHITECTURE_AMD649 +#endif + +typedef struct _php_win_OSVERSIONINFOEXA { +DWORD dwOSVersionInfoSize; +DWORD dwMajorVersion; +DWORD dwMinorVersion; +DWORD dwBuildNumber; +DWORD dwPlatformId; +CHAR szCSDVersion[128]; +WORD wServicePackMajor; +WORD wServicePackMinor; +WORD wSuiteMask; +BYTE wProductType; +BYTE wReserved; +} php_win_OSVERSIONINFOEX; + +#endif \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/standard/info.c?r1=1.294r2=1.295diff_format=u Index: php-src/ext/standard/info.c diff -u php-src/ext/standard/info.c:1.294 php-src/ext/standard/info.c:1.295 --- php-src/ext/standard/info.c:1.294 Tue Oct 21 22:06:48 2008 +++ php-src/ext/standard/info.c Mon Dec 8 07:33:41 2008 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: info.c,v 1.294 2008/10/21 22:06:48 lbarnaud Exp $ */ +/* $Id: info.c,v 1.295 2008/12/08 07:33:41 stas Exp $ */ #include php.h #include php_ini.h @@ -339,6 +339,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,