summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/queue.c4
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xml_element.c4
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xml_to_dandarpc.c3
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xml_to_soap.c3
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xml_to_xmlrpc.c3
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xmlrpc.c3
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xmlrpc_introspection.c3
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xmlrpc_private.h2
-rw-r--r--ext/rpc/xmlrpc/libxmlrpc/xmlrpc_win32.h11
-rw-r--r--ext/rpc/xmlrpc/php_xmlrpc.h1
-rw-r--r--ext/rpc/xmlrpc/xmlrpc-epi-php.c4
-rw-r--r--ext/rpc/xmlrpc/xmlrpc.dsp211
-rw-r--r--ext/xmlrpc/libxmlrpc/queue.c4
-rw-r--r--ext/xmlrpc/libxmlrpc/xml_element.c4
-rw-r--r--ext/xmlrpc/libxmlrpc/xml_to_dandarpc.c3
-rw-r--r--ext/xmlrpc/libxmlrpc/xml_to_soap.c3
-rw-r--r--ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.c3
-rw-r--r--ext/xmlrpc/libxmlrpc/xmlrpc.c3
-rw-r--r--ext/xmlrpc/libxmlrpc/xmlrpc_introspection.c3
-rw-r--r--ext/xmlrpc/libxmlrpc/xmlrpc_private.h2
-rw-r--r--ext/xmlrpc/libxmlrpc/xmlrpc_win32.h11
-rw-r--r--ext/xmlrpc/php_xmlrpc.h1
-rw-r--r--ext/xmlrpc/xmlrpc-epi-php.c4
-rw-r--r--ext/xmlrpc/xmlrpc.dsp211
24 files changed, 498 insertions, 6 deletions
diff --git a/ext/rpc/xmlrpc/libxmlrpc/queue.c b/ext/rpc/xmlrpc/libxmlrpc/queue.c
index 7ae4c46078..ecef90caf6 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/queue.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/queue.c
@@ -97,7 +97,9 @@ static const char rcsid[] = "#(@) $Id$";
*
****************************************************************/
-
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdlib.h>
#include "queue.h"
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xml_element.c b/ext/rpc/xmlrpc/libxmlrpc/xml_element.c
index 255c0c572e..2625e99913 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xml_element.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xml_element.c
@@ -71,7 +71,9 @@ static const char rcsid[] = "#(@) $Id$";
* there must be some.
******/
-
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdlib.h>
#include <string.h>
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xml_to_dandarpc.c b/ext/rpc/xmlrpc/libxmlrpc/xml_to_dandarpc.c
index 773eca5ecc..b51d991723 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xml_to_dandarpc.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xml_to_dandarpc.c
@@ -30,6 +30,9 @@
*/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_dandarpc.h"
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xml_to_soap.c b/ext/rpc/xmlrpc/libxmlrpc/xml_to_soap.c
index 6aae027313..fada389fb6 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xml_to_soap.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xml_to_soap.c
@@ -23,6 +23,9 @@
static const char rcsid[] = "#(@) $Id:";
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_soap.h"
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xml_to_xmlrpc.c b/ext/rpc/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
index 02f3d430cd..8bace4dab6 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
@@ -33,6 +33,9 @@
static const char rcsid[] = "#(@) $Id$";
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_xmlrpc.h"
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.c b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.c
index 596ca622d3..cfac12d496 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.c
@@ -96,6 +96,9 @@ static const char rcsid[] = "#(@) $Id$";
*******/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_introspection.c b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_introspection.c
index 5b15d4b071..d9251b2709 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_introspection.c
+++ b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_introspection.c
@@ -41,6 +41,9 @@
*******/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include "queue.h"
#include "xmlrpc.h"
#include "xmlrpc_private.h"
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_private.h b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_private.h
index 65c6b136a6..afb1cd2479 100644
--- a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_private.h
+++ b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_private.h
@@ -160,7 +160,7 @@ typedef struct _server_method {
/*----------------------------------------------------------------------------
* Functions
*/
-server_method* find_method(XMLRPC_SERVER server, const char* name);
+extern server_method* find_method(XMLRPC_SERVER server, const char* name);
const char* type_to_str(XMLRPC_VALUE_TYPE type, XMLRPC_VECTOR_TYPE vtype);
/*----------------------------------------------------------------------------
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_win32.h b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_win32.h
new file mode 100644
index 0000000000..58c54bbb80
--- /dev/null
+++ b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc_win32.h
@@ -0,0 +1,11 @@
+#ifndef _XMLRPC_WIN32_H
+#define _XMLRPC_WIN32_H
+/* just some things needed to compile win32 */
+#include <windows.h>
+#include <stdlib.h>
+#define inline __inline
+#define snprintf _snprintf
+#define strcasecmp(s1, s2) stricmp(s1, s2)
+
+
+#endif \ No newline at end of file
diff --git a/ext/rpc/xmlrpc/php_xmlrpc.h b/ext/rpc/xmlrpc/php_xmlrpc.h
index a8dff2cd57..b20225c93a 100644
--- a/ext/rpc/xmlrpc/php_xmlrpc.h
+++ b/ext/rpc/xmlrpc/php_xmlrpc.h
@@ -93,6 +93,7 @@ PHP_FUNCTION(xmlrpc_server_register_introspection_callback);
for thread safety instead of using true globals.
*/
typedef struct {
+ int x; /* fix error in msvc, cannot have empty structs */
} zend_xmlrpc_globals;
/* In every function that needs to use variables in zend_xmlrpc_globals,
diff --git a/ext/rpc/xmlrpc/xmlrpc-epi-php.c b/ext/rpc/xmlrpc/xmlrpc-epi-php.c
index c73fe67413..a36399c05e 100644
--- a/ext/rpc/xmlrpc/xmlrpc-epi-php.c
+++ b/ext/rpc/xmlrpc/xmlrpc-epi-php.c
@@ -64,7 +64,9 @@
#include "ext/standard/info.h"
#include "php_ini.h"
#include "php_xmlrpc.h"
+#ifndef PHP_WIN32
#include "php_config.h"
+#endif
#include "xmlrpc.h"
#define PHP_EXT_VERSION "0.50"
@@ -317,6 +319,8 @@ static int add_pval(pval* list, const char* id, pval** val) {
if(id) return zend_hash_update(Z_ARRVAL_P(list), (char*)id, strlen(id)+1, (void *) val, sizeof(pval **), NULL);
else return zend_hash_next_index_insert(Z_ARRVAL_P(list), (void *) val, sizeof(pval **), NULL);
}
+ /* what is the correct return on error? */
+ return 0;
}
#if ZEND_MODULE_API_NO >= 20001222
diff --git a/ext/rpc/xmlrpc/xmlrpc.dsp b/ext/rpc/xmlrpc/xmlrpc.dsp
new file mode 100644
index 0000000000..f5164ae3da
--- /dev/null
+++ b/ext/rpc/xmlrpc/xmlrpc.dsp
@@ -0,0 +1,211 @@
+# Microsoft Developer Studio Project File - Name="xmlrpc" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
+
+CFG=xmlrpc - Win32 Debug_TS
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "xmlrpc.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "xmlrpc.mak" CFG="xmlrpc - Win32 Debug_TS"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "xmlrpc - Win32 Debug_TS" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "xmlrpc - Win32 Release_TS" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "xmlrpc - Win32 Debug_TS"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug_TS"
+# PROP BASE Intermediate_Dir "Debug_TS"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug_TS"
+# PROP Intermediate_Dir "Debug_TS"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /GZ /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\TSRM" /I "libxmlrpc" /I "..\xml\expat" /D HAVE_XMLRPC=1 /D "ZEND_WIN32" /D "PHP_WIN32" /D ZEND_DEBUG=1 /D ZTS=1 /D COMPILE_DL_XMLRPC=1 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /GZ /c
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x1009 /d "_DEBUG"
+# ADD RSC /l 0x1009 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 iconv.lib php4ts_debug.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"..\..\Debug_TS/php_xmlrpc.dll" /pdbtype:sept /libpath:"..\..\Debug_TS"
+
+!ELSEIF "$(CFG)" == "xmlrpc - Win32 Release_TS"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release_TS"
+# PROP BASE Intermediate_Dir "Release_TS"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release_TS"
+# PROP Intermediate_Dir "Release_TS"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\TSRM" /I "libxmlrpc" /I "..\xml\expat" /D HAVE_XMLRPC=1 /D "ZEND_WIN32" /D ZEND_DEBUG=0 /D "PHP_WIN32" /D ZTS=1 /D COMPILE_DL_XMLRPC=1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x1009 /d "NDEBUG"
+# ADD RSC /l 0x1009 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
+# ADD LINK32 iconv.lib php4ts.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"..\..\Release_TS/php_xmlrpc.dll" /libpath:"..\..\Release_TS"
+
+!ENDIF
+
+# Begin Target
+
+# Name "xmlrpc - Win32 Debug_TS"
+# Name "xmlrpc - Win32 Release_TS"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=".\xmlrpc-epi-php.c"
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=.\php_xmlrpc.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# Begin Group "libxmlrpc"
+
+# PROP Default_Filter ""
+# Begin Source File
+
+SOURCE=.\libxmlrpc\base64.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\base64.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\encodings.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\encodings.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\queue.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\queue.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\simplestring.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\simplestring.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\system_methods.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\system_methods_private.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_element.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_element.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_dandarpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_dandarpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_soap.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_soap.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_xmlrpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_xmlrpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection_private.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_private.h
+# End Source File
+# End Group
+# End Target
+# End Project
diff --git a/ext/xmlrpc/libxmlrpc/queue.c b/ext/xmlrpc/libxmlrpc/queue.c
index 7ae4c46078..ecef90caf6 100644
--- a/ext/xmlrpc/libxmlrpc/queue.c
+++ b/ext/xmlrpc/libxmlrpc/queue.c
@@ -97,7 +97,9 @@ static const char rcsid[] = "#(@) $Id$";
*
****************************************************************/
-
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdlib.h>
#include "queue.h"
diff --git a/ext/xmlrpc/libxmlrpc/xml_element.c b/ext/xmlrpc/libxmlrpc/xml_element.c
index 255c0c572e..2625e99913 100644
--- a/ext/xmlrpc/libxmlrpc/xml_element.c
+++ b/ext/xmlrpc/libxmlrpc/xml_element.c
@@ -71,7 +71,9 @@ static const char rcsid[] = "#(@) $Id$";
* there must be some.
******/
-
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdlib.h>
#include <string.h>
diff --git a/ext/xmlrpc/libxmlrpc/xml_to_dandarpc.c b/ext/xmlrpc/libxmlrpc/xml_to_dandarpc.c
index 773eca5ecc..b51d991723 100644
--- a/ext/xmlrpc/libxmlrpc/xml_to_dandarpc.c
+++ b/ext/xmlrpc/libxmlrpc/xml_to_dandarpc.c
@@ -30,6 +30,9 @@
*/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_dandarpc.h"
diff --git a/ext/xmlrpc/libxmlrpc/xml_to_soap.c b/ext/xmlrpc/libxmlrpc/xml_to_soap.c
index 6aae027313..fada389fb6 100644
--- a/ext/xmlrpc/libxmlrpc/xml_to_soap.c
+++ b/ext/xmlrpc/libxmlrpc/xml_to_soap.c
@@ -23,6 +23,9 @@
static const char rcsid[] = "#(@) $Id:";
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_soap.h"
diff --git a/ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.c b/ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
index 02f3d430cd..8bace4dab6 100644
--- a/ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
+++ b/ext/xmlrpc/libxmlrpc/xml_to_xmlrpc.c
@@ -33,6 +33,9 @@
static const char rcsid[] = "#(@) $Id$";
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <string.h>
#include <stdlib.h>
#include "xml_to_xmlrpc.h"
diff --git a/ext/xmlrpc/libxmlrpc/xmlrpc.c b/ext/xmlrpc/libxmlrpc/xmlrpc.c
index 596ca622d3..cfac12d496 100644
--- a/ext/xmlrpc/libxmlrpc/xmlrpc.c
+++ b/ext/xmlrpc/libxmlrpc/xmlrpc.c
@@ -96,6 +96,9 @@ static const char rcsid[] = "#(@) $Id$";
*******/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/ext/xmlrpc/libxmlrpc/xmlrpc_introspection.c b/ext/xmlrpc/libxmlrpc/xmlrpc_introspection.c
index 5b15d4b071..d9251b2709 100644
--- a/ext/xmlrpc/libxmlrpc/xmlrpc_introspection.c
+++ b/ext/xmlrpc/libxmlrpc/xmlrpc_introspection.c
@@ -41,6 +41,9 @@
*******/
+#ifdef _WIN32
+#include "xmlrpc_win32.h"
+#endif
#include "queue.h"
#include "xmlrpc.h"
#include "xmlrpc_private.h"
diff --git a/ext/xmlrpc/libxmlrpc/xmlrpc_private.h b/ext/xmlrpc/libxmlrpc/xmlrpc_private.h
index 65c6b136a6..afb1cd2479 100644
--- a/ext/xmlrpc/libxmlrpc/xmlrpc_private.h
+++ b/ext/xmlrpc/libxmlrpc/xmlrpc_private.h
@@ -160,7 +160,7 @@ typedef struct _server_method {
/*----------------------------------------------------------------------------
* Functions
*/
-server_method* find_method(XMLRPC_SERVER server, const char* name);
+extern server_method* find_method(XMLRPC_SERVER server, const char* name);
const char* type_to_str(XMLRPC_VALUE_TYPE type, XMLRPC_VECTOR_TYPE vtype);
/*----------------------------------------------------------------------------
diff --git a/ext/xmlrpc/libxmlrpc/xmlrpc_win32.h b/ext/xmlrpc/libxmlrpc/xmlrpc_win32.h
new file mode 100644
index 0000000000..58c54bbb80
--- /dev/null
+++ b/ext/xmlrpc/libxmlrpc/xmlrpc_win32.h
@@ -0,0 +1,11 @@
+#ifndef _XMLRPC_WIN32_H
+#define _XMLRPC_WIN32_H
+/* just some things needed to compile win32 */
+#include <windows.h>
+#include <stdlib.h>
+#define inline __inline
+#define snprintf _snprintf
+#define strcasecmp(s1, s2) stricmp(s1, s2)
+
+
+#endif \ No newline at end of file
diff --git a/ext/xmlrpc/php_xmlrpc.h b/ext/xmlrpc/php_xmlrpc.h
index a8dff2cd57..b20225c93a 100644
--- a/ext/xmlrpc/php_xmlrpc.h
+++ b/ext/xmlrpc/php_xmlrpc.h
@@ -93,6 +93,7 @@ PHP_FUNCTION(xmlrpc_server_register_introspection_callback);
for thread safety instead of using true globals.
*/
typedef struct {
+ int x; /* fix error in msvc, cannot have empty structs */
} zend_xmlrpc_globals;
/* In every function that needs to use variables in zend_xmlrpc_globals,
diff --git a/ext/xmlrpc/xmlrpc-epi-php.c b/ext/xmlrpc/xmlrpc-epi-php.c
index c73fe67413..a36399c05e 100644
--- a/ext/xmlrpc/xmlrpc-epi-php.c
+++ b/ext/xmlrpc/xmlrpc-epi-php.c
@@ -64,7 +64,9 @@
#include "ext/standard/info.h"
#include "php_ini.h"
#include "php_xmlrpc.h"
+#ifndef PHP_WIN32
#include "php_config.h"
+#endif
#include "xmlrpc.h"
#define PHP_EXT_VERSION "0.50"
@@ -317,6 +319,8 @@ static int add_pval(pval* list, const char* id, pval** val) {
if(id) return zend_hash_update(Z_ARRVAL_P(list), (char*)id, strlen(id)+1, (void *) val, sizeof(pval **), NULL);
else return zend_hash_next_index_insert(Z_ARRVAL_P(list), (void *) val, sizeof(pval **), NULL);
}
+ /* what is the correct return on error? */
+ return 0;
}
#if ZEND_MODULE_API_NO >= 20001222
diff --git a/ext/xmlrpc/xmlrpc.dsp b/ext/xmlrpc/xmlrpc.dsp
new file mode 100644
index 0000000000..f5164ae3da
--- /dev/null
+++ b/ext/xmlrpc/xmlrpc.dsp
@@ -0,0 +1,211 @@
+# Microsoft Developer Studio Project File - Name="xmlrpc" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
+
+CFG=xmlrpc - Win32 Debug_TS
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "xmlrpc.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "xmlrpc.mak" CFG="xmlrpc - Win32 Debug_TS"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "xmlrpc - Win32 Debug_TS" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "xmlrpc - Win32 Release_TS" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "xmlrpc - Win32 Debug_TS"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug_TS"
+# PROP BASE Intermediate_Dir "Debug_TS"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug_TS"
+# PROP Intermediate_Dir "Debug_TS"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /GZ /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\TSRM" /I "libxmlrpc" /I "..\xml\expat" /D HAVE_XMLRPC=1 /D "ZEND_WIN32" /D "PHP_WIN32" /D ZEND_DEBUG=1 /D ZTS=1 /D COMPILE_DL_XMLRPC=1 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /GZ /c
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x1009 /d "_DEBUG"
+# ADD RSC /l 0x1009 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 iconv.lib php4ts_debug.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"..\..\Debug_TS/php_xmlrpc.dll" /pdbtype:sept /libpath:"..\..\Debug_TS"
+
+!ELSEIF "$(CFG)" == "xmlrpc - Win32 Release_TS"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release_TS"
+# PROP BASE Intermediate_Dir "Release_TS"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release_TS"
+# PROP Intermediate_Dir "Release_TS"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\TSRM" /I "libxmlrpc" /I "..\xml\expat" /D HAVE_XMLRPC=1 /D "ZEND_WIN32" /D ZEND_DEBUG=0 /D "PHP_WIN32" /D ZTS=1 /D COMPILE_DL_XMLRPC=1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "XMLRPC_EXPORTS" /YX /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x1009 /d "NDEBUG"
+# ADD RSC /l 0x1009 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
+# ADD LINK32 iconv.lib php4ts.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"..\..\Release_TS/php_xmlrpc.dll" /libpath:"..\..\Release_TS"
+
+!ENDIF
+
+# Begin Target
+
+# Name "xmlrpc - Win32 Debug_TS"
+# Name "xmlrpc - Win32 Release_TS"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=".\xmlrpc-epi-php.c"
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=.\php_xmlrpc.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# Begin Group "libxmlrpc"
+
+# PROP Default_Filter ""
+# Begin Source File
+
+SOURCE=.\libxmlrpc\base64.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\base64.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\encodings.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\encodings.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\queue.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\queue.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\simplestring.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\simplestring.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\system_methods.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\system_methods_private.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_element.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_element.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_dandarpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_dandarpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_soap.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_soap.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_xmlrpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xml_to_xmlrpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_introspection_private.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\libxmlrpc\xmlrpc_private.h
+# End Source File
+# End Group
+# End Target
+# End Project