[sldev] Patches to xmlrpc-epi

Phoenix phoenix at secondlife.com
Fri Mar 21 11:31:17 PDT 2008


We will eventually deprecate the use of xmlrpc. We are switching to a  
REST style instead of using rpc semantics for service interaction.

That said, all of our patches should be on the wiki. I'm surprised to  
see a difference between the wiki documentation and our repository.

For the record here are all of the patches we apply to third party  
libraries:

http://wiki.secondlife.com/wiki/Patch_xmlrpc-epi
http://wiki.secondlife.com/wiki/Patch_TUT
http://wiki.secondlife.com/wiki/Patch_jpeglib


On 2008-03-21, at 10:57, Rob Lanphier wrote:
> Hi folks,
>
> Robin Cornelius has been doing some work on xmlrpc-epi, and asked  
> me on IRC if we had patched the library.  Looking at our internal  
> repository, I discovered that we had, though the patches were  
> integration patches, and not terribly useful in the broad sense.   
> However, it's still bad form to use a patched library without at  
> least publishing the patches, so I'm mailing them out now.
>
> This raises a more general issue of how and where to publish this  
> and other similar patches.  Where should we put 'em?
>
> Rob
>
> diff -ur xmlrpc-epi-0.51-old/Makefile xmlrpc-epi-0.51-new/Makefile
> --- xmlrpc-epi-0.51-old/Makefile	2006-04-27 14:55:33.000000000 -0700
> +++ xmlrpc-epi-0.51-new/Makefile	2006-04-27 15:16:19.886773976 -0700
> @@ -77,7 +77,7 @@
>  STRIP = strip
>  VERSION = 0.51
>
> -SUBDIRS = expat src sample
> +SUBDIRS = src
>
>  CHANGE_LOG_GEN_BIN = scripts/cvs2cl.pl
>  CHANGE_LOG_GEN_FLAGS = -t -r -b --accum -I ChangeLog --gmt --prune
> Only in xmlrpc-epi-0.51-old/expat: .cvsignore
> Only in xmlrpc-epi-0.51-old/expat: Makefile
> Only in xmlrpc-epi-0.51-old/expat: Makefile.am
> Only in xmlrpc-epi-0.51-old/expat: Makefile.in
> Only in xmlrpc-epi-0.51-old/expat: bin
> Only in xmlrpc-epi-0.51-old/expat: expat.dsw
> Only in xmlrpc-epi-0.51-new/expat: expat.h
> Only in xmlrpc-epi-0.51-old/expat: expat.html
> Only in xmlrpc-epi-0.51-old/expat: expat.mak
> Only in xmlrpc-epi-0.51-new/expat: expat_external.h
> Only in xmlrpc-epi-0.51-old/expat: gennmtab
> Only in xmlrpc-epi-0.51-old/expat: lib
> Only in xmlrpc-epi-0.51-old/expat: sample
> Only in xmlrpc-epi-0.51-old/expat: xmlparse
> Only in xmlrpc-epi-0.51-old/expat: xmltok
> Only in xmlrpc-epi-0.51-old/expat: xmlwf
> diff -ur xmlrpc-epi-0.51-old/src/Makefile xmlrpc-epi-0.51-new/src/ 
> Makefile
> --- xmlrpc-epi-0.51-old/src/Makefile	2006-04-27 14:55:33.000000000  
> -0700
> +++ xmlrpc-epi-0.51-new/src/Makefile	2006-04-27 15:16:55.809678179  
> -0700
> @@ -75,12 +75,10 @@
>  STRIP = strip
>  VERSION = 0.51
>
> -INCLUDES = -I../liblm -I../expat/xmltok -I../expat/xmlparse -I/usr/ 
> local/ssl/include
> +INCLUDES = -I../liblm -I../expat -I/usr/local/ssl/include
>
>  lib_LTLIBRARIES = libxmlrpc.la
>
> -libxmlrpc_la_LIBADD = ../expat/xmltok/libexpat_tok.la ../expat/ 
> xmlparse/libexpat_parse.la
> -
>  libxmlrpc_la_SOURCES =  	base64.c 	encodings.c 	queue.c 	 
> simplestring.c 	xml_element.c 	xml_to_dandarpc.c 	 
> xml_to_xmlrpc.c         xml_to_soap.c 	xmlrpc.c 	 
> xmlrpc_introspection.c         system_methods.c
>
>
> @@ -130,8 +128,6 @@
>  CPPFLAGS =
>  LDFLAGS =
>  LIBS = -L/usr/local/lib
> -libxmlrpc_la_DEPENDENCIES =  ../expat/xmltok/libexpat_tok.la \
> -../expat/xmlparse/libexpat_parse.la
>  libxmlrpc_la_OBJECTS =  base64.lo encodings.lo queue.lo  
> simplestring.lo \
>  xml_element.lo xml_to_dandarpc.lo xml_to_xmlrpc.lo xml_to_soap.lo \
>  xmlrpc.lo xmlrpc_introspection.lo system_methods.lo
> diff -ur xmlrpc-epi-0.51-old/src/xml_element.c xmlrpc-epi-0.51-new/ 
> src/xml_element.c
> --- xmlrpc-epi-0.51-old/src/xml_element.c	2002-05-23  
> 10:46:51.000000000 -0700
> +++ xmlrpc-epi-0.51-new/src/xml_element.c	2006-04-27  
> 15:17:10.777888167 -0700
> @@ -91,7 +91,7 @@
>
>  #include "xml_element.h"
>  #include "queue.h"
> -#include "xmlparse.h"
> +#include "expat.h"
>  #include "encodings.h"
>
>  #define my_free(thing)  if(thing) {free(thing); thing = 0;}
> diff -ur xmlrpc-epi-0.51-old/src/xmlrpc.c xmlrpc-epi-0.51-new/src/ 
> xmlrpc.c
> --- xmlrpc-epi-0.51-old/src/xmlrpc.c	2002-03-09 15:15:44.000000000  
> -0800
> +++ xmlrpc-epi-0.51-new/src/xmlrpc.c	2006-04-27 15:17:25.464169532  
> -0700
> @@ -120,7 +120,7 @@
>
>  #include "queue.h"
>  #include "xmlrpc.h"
> -#include "xmlparse.h"
> +#include "expat.h"
>  #include "base64.h"
>
>  #include "xml_to_xmlrpc.h"
>
> --- xmlrpc-epi-0.51-old/src/queue.h	2001-05-18 10:29:09.000000000  
> -0700
> +++ xmlrpc-epi-0.51-new/src/queue.h	2006-05-02 14:25:30.573246791  
> -0700
> @@ -24,6 +24,9 @@
>     #define True_ 1
>  #endif
>
> +/* 2006-05-02 Inserted to enable compilation of rpcserver on  
> linux. Phoenix */
> +#define queue xmlrpc_queue
> +
>  typedef struct nodeptr datanode;
>
>  typedef struct nodeptr {
>
> --- xmlrpc-epi-0.51/src/encodings.c	2002-03-12 10:08:18.000000000  
> -0800
> +++ src/src/encodings.c	2006-05-02 08:16:07.000000000 -0700
> @@ -35,12 +35,18 @@
>
>  #include <stdlib.h>
>  #include <errno.h>
> -#include <iconv.h>
> +//#include <iconv.h>
>  #include "encodings.h"
>
>  static char* convert(const char* src, int src_len, int *new_len,  
> const char* from_enc, const char* to_enc) {
>     char* outbuf = 0;
>
> +   /*
> +	*
> +	*NOTE: Removed becuase windows does not have iconv, and mac
> +	*      has link problems with it. For now, always use UTF8.
> +	*
> +
>     if(src && src_len && from_enc && to_enc) {
>        int outlenleft = src_len;
>        int outlen = src_len;
> @@ -87,6 +93,7 @@
>           outbuf[outlen] = 0;
>        }
>     }
> +   */
>     return outbuf;
>  }
>
>
> _______________________________________________
> Click here to unsubscribe or manage your list subscription:
> /index.html

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : http://lists.secondlife.com/pipermail/sldev/attachments/20080321/9a6c4b36/PGP.pgp


More information about the SLDev mailing list