<!DOCTYPE html public '-//W3C//DTD HTML 4.0 Transitional//EN'>
<html>
<head> 
  <meta name="robots" content="index,follow">
  <title>XML-RPC library for C and C++ - a RISC OS port</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<h1>XML-RPC library for C and C++ - version 0.9.9 - a RISC OS port</h1>
<h2><a href="http://xmlrpc-c.sourceforge.net/">http://xmlrpc-c.sourceforge.net/</a></h2>

<p>This is a test RISC OS port of the <a href="http://xmlrpc-c.sourceforge.net/">XML-RPC library for C and C++</a>. According (roughly) to the website (not a direct quote, though!):</p>

<dl><dd>
<p><a href="http://www.xmlrpc.com/">XML-RPC</a> is a quick-and-easy way to
make procedure calls over the Internet.  It converts the procedure call
into XML document, sends it to a remote server using HTTP, and gets back
the response as XML.</p>
<p>This library provides a modular implementation of XML-RPC for C and
C++.</p>
</dd></dl>

<p>XML-RPC can be used as a library to link other applications to. A number of examples are included in the !xmlrpcc.examples directory. Before using
XML-RPC please take a look at the copyright and license documents in the
!xmlrpcc.Docs directory (transcribed <a href="#copyright">below</a>).</p>

<p>To make use of this library you'll also need a copy of <a href="http://www.w3.org/Library/">libwww</a>. A suitable RISC OS port of libwww should be available from <a href="http://www.flypig.co.uk">my website</a>

<p>There are two versions of the library: a source distribution and a binary distribution. If you download both, you can safey copy one over the top of the other. The binary distribution can be used to link your own programs against and to build the example applications. The source can be used to build the binary distribution.</p>

<h2>Changes to the original source</h2>

<p>A source version of the library should be available from the same as the RISC OS binary version. At any rate, it should be available from <a href="http://www.flypig.co.uk/">my website</a>. However, this version has been tailored for use on RISC OS. The source files are all nearly identical to the original version available from the <a href="http://xmlrpc-c.sourceforge.net/">W3C website</a>, although it has been necessary to make one or two changes to get it to work under RISC OS using gcc and UnixLib. These can be found in <a href="Changes.txt">!xmlrpcc.Changes/txt</a>. The arrangement of the files in directories has been changed to suit RISC OS, but I've made an attempt to respect the layout of the original as much as possible.</p>

<h2>Usage</h2>

<p>To link your own programs or the example programs with the library, you will only need the binary distribution.</p>

<p>If you want to use compile some code and link it to the library using gcc, you could try something like this:</p>

<p><code>gcc -mthrowback -Werror -Ilibwww: -Ixmlrpcc: libwww:libwww.o xmlrpcc:xmlrpcc.o -DHAVE_CONFIG_H <filein.c> -o <fileout></code></p>

<p>The important points to know are:</p>

<ul>
<li> <code>&lt;xmlrpcc$Dir&gt;</code> points to the application directory
<li> <code>xmlrpcc:</code> or <code>&lt;xmlrpcc$path&gt;</code> points to all of the header include directories (and source directories if you have the full source version).
<li><code>xmlrpcc:xmlrpcc.o</code> can be used to link against.
<li>The <a href="http://www.w3.org/Library/">libwww</a> library is also required. See the helpfile included with libwww for information about its usage.
</ul>

<p>If you are using the libwww header files, you *must* <code>#define HAVE_CONFIG_H</code>. Either add the following line:</p>

<p><code>#define HAVE_CONFIG_H 1</code></p>

<p>to the top of the wwwsys.c file in linwww, or add the <code>-DHAVE_CONFIG_H</code> switch to your gcc command line (as I've done in the example above).</p>

<h2>Building from the source</h2>
<p>To build the library from the sources, you will need a copy of the source distribution, as well as <a href="http://gccsdk.riscos.info/">gcc and UnixLib</a>. You'll also need a copy of at least the binary distribution of libwww.</p>

<p>It should then simply be a case of executing the BuildAll obey file that you'll find inside the application directory (!xmlrpcc.BuildAll).</p>

<p>It's likely to take quite a long time, so be prepared, and ideally run it from a TaskWindow.</p>

<h2>Credits</h2>
<p>All credit for XML-RPC goes to those involved in creating the original code. See the <a href="http://xmlrpc-c.sourceforge.net/credits.php">credits page</a> on the XML-RPC-C</a> website for full details (I've included this as a link since the details might change, however you can also view the included <a href="Docs/credits">!xmlrpcc.Docs.credits</a> file).</p>
<p>However, any bugs caused by porting it to RISC OS are entirely my fault.</p>

<h2>Contact</h2>
<p>I don't know a great deal about xmlrpc-c, I just compiled it to run under RISC OS. However, if you want to contact me about it, I can be emailed at <a href="mailto:david-web01@flypig.co.uk">david-web01@flypig.co.uk</a>. For further information about contacting me, please see my website at <a href="http://www.flypig.co.uk">http://www.flypig.co.uk</a>.</p>

<a name="copyright">
<h2>Licenses</h2>
<p>This software package is covered by the XML-RPC C Library License.<\p>
<p>Additionally, certain parts of this library are derived from pre-existing code, which may carry its own license.</p>

<p>In particular, the Expat Licence applies to the contents of the directory
lib/expat, the ABYSS Web Server License applies to the contents of the
directory lib/abyss and parts of the file src/xmlrpc_abyss.c, and the
Python 1.5.2 license applies to parts of the file src/xmlrpc_base64.c.</p>

<h2>XML-RPC C Library License</h2>

<p>Copyright (C) 2001 by First Peer, Inc. All rights reserved.</p>
<p>Copyright (C) 2001 by Eric Kidd. All rights reserved.</p>

<p>Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:</p>
<ol>
<li>Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.</li>
<li>Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.</li>
<li>The name of the author may not be used to endorse or promote products
   derived from this software without specific prior written permission.</li>
</ol>

<p>THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.</p>


<h2>Expat License</h2>

<p>Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd</p>

<p>Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:</p>

<ul>
<li>The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.</li>
</ul>

<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>


<h2>ABYSS Web Server License</h2>

<p>Copyright (C) 2000 by Moez Mahfoudh <mmoez@bigfoot.com>. All rights reserved.</p>

<p>Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:</p>
<ol>
<li>Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.</li>
<li>Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.</li>
<li>The name of the author may not be used to endorse or promote products
   derived from this software without specific prior written permission.</li>
</ol>
 
<p>THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.</p>



<h2>Python 1.5.2 License</h2>

<p>Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum,
Amsterdam, The Netherlands.</p>

<p><center>All Rights Reserved</center></p>

<p>Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the names of Stichting Mathematisch
Centrum or CWI or Corporation for National Research Initiatives or
CNRI not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior
permission.<p>

<p>While CWI is the initial source for this software, a modified version
is made available by the Corporation for National Research Initiatives
(CNRI) at the Internet address <a href="ftp://ftp.python.org">ftp://ftp.python.org</a>.</p>

<p>STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH
CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.</p>



</body>
</html>
