manual.xml 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. <?xml version='1.0'?> <!-- -*- nxml -*- -->
  2. <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
  4. <!ENTITY % isoent SYSTEM
  5. "http://www.oasis-open.org/docbook/xml/4.2/ent/iso-num.ent">
  6. <!ENTITY % isopub SYSTEM
  7. "http://www.oasis-open.org/docbook/xml/4.2/ent/iso-pub.ent">
  8. %isoent;
  9. %isopub;
  10. <!-- date/version stamp files created as release tarball is rolled -->
  11. <!ENTITY date SYSTEM "date.xml">
  12. <!ENTITY version SYSTEM "version.xml">
  13. <!ENTITY neon "neon">
  14. <!-- a useful entity for writing reference examples -->
  15. <!ENTITY egsess "ne_session *sess = ne_session_create(...);">
  16. <!ENTITY null "<literal>NULL</literal>">
  17. <!ENTITY nul "<literal>NUL</literal>">
  18. <!-- xml.xml entities: -->
  19. <!ENTITY startelm "<emphasis>start-element</emphasis>">
  20. <!ENTITY cdata "<emphasis>character-data</emphasis>">
  21. <!ENTITY endelm "<emphasis>end-element</emphasis>">
  22. <!ENTITY section.features SYSTEM "feat.xml">
  23. <!ENTITY section.using SYSTEM "using.xml">
  24. <!ENTITY section.xml SYSTEM "xml.xml">
  25. <!ENTITY section.security SYSTEM "security.xml">
  26. <!ENTITY section.ssl SYSTEM "ssl.xml">
  27. <!ENTITY biblio SYSTEM "biblio.xml">
  28. <!ENTITY refneon SYSTEM "ref/neon.xml">
  29. <!ENTITY refconfig SYSTEM "ref/config.xml">
  30. <!ENTITY refsess SYSTEM "ref/sess.xml">
  31. <!ENTITY refsessflags SYSTEM "ref/sessflags.xml">
  32. <!ENTITY referr SYSTEM "ref/err.xml">
  33. <!ENTITY refopts SYSTEM "ref/opts.xml">
  34. <!ENTITY refproxy SYSTEM "ref/proxy.xml">
  35. <!ENTITY refsslvfy SYSTEM "ref/sslvfy.xml">
  36. <!ENTITY refsslcert SYSTEM "ref/sslcert.xml">
  37. <!ENTITY refsslcert2 SYSTEM "ref/sslcert2.xml">
  38. <!ENTITY refsslcertio SYSTEM "ref/sslcertio.xml">
  39. <!ENTITY refssldname SYSTEM "ref/ssldname.xml">
  40. <!ENTITY refssltrust SYSTEM "ref/ssltrust.xml">
  41. <!ENTITY refreq SYSTEM "ref/req.xml">
  42. <!ENTITY refreqhdr SYSTEM "ref/reqhdr.xml">
  43. <!ENTITY refresphdr SYSTEM "ref/resphdr.xml">
  44. <!ENTITY refreqflags SYSTEM "ref/reqflags.xml">
  45. <!ENTITY refstatus SYSTEM "ref/status.xml">
  46. <!ENTITY refgetst SYSTEM "ref/getst.xml">
  47. <!ENTITY refreqbody SYSTEM "ref/reqbody.xml">
  48. <!ENTITY refauth SYSTEM "ref/auth.xml">
  49. <!ENTITY refalloc SYSTEM "ref/alloc.xml">
  50. <!ENTITY refbuf SYSTEM "ref/buf.xml">
  51. <!ENTITY refbufcr SYSTEM "ref/bufcr.xml">
  52. <!ENTITY refbufapp SYSTEM "ref/bufapp.xml">
  53. <!ENTITY refbufdest SYSTEM "ref/bufdest.xml">
  54. <!ENTITY refbufutil SYSTEM "ref/bufutil.xml">
  55. <!ENTITY reftok SYSTEM "ref/tok.xml">
  56. <!ENTITY refshave SYSTEM "ref/shave.xml">
  57. <!ENTITY refvers SYSTEM "ref/vers.xml">
  58. <!ENTITY refinit SYSTEM "ref/init.xml">
  59. <!ENTITY refi18n SYSTEM "ref/i18n.xml">
  60. <!ENTITY reffeat SYSTEM "ref/feat.xml">
  61. <!ENTITY refresolve SYSTEM "ref/resolve.xml">
  62. <!ENTITY refiaddr SYSTEM "ref/iaddr.xml">
  63. <!ENTITY refclicert SYSTEM "ref/clicert.xml">
  64. <!ENTITY refxml SYSTEM "ref/xml.xml">
  65. ]>
  66. <book>
  67. <bookinfo>
  68. <title>neon HTTP/WebDAV client library</title>
  69. <author>
  70. <personname>
  71. <firstname>Joe</firstname><surname>Orton</surname>
  72. </personname>
  73. <email>[email protected]</email>
  74. </author>
  75. <copyright><year>2001-2008</year><holder>Joe Orton</holder></copyright>
  76. <legalnotice>
  77. <para>This document is free documentation; you can redistribute
  78. it and/or modify it under the terms of the <ulink
  79. url="http://www.gnu.org/copyleft/gpl.html">GNU General Public
  80. License</ulink> as published by the Free Software Foundation;
  81. either version 2 of the License, or (at your option) any later
  82. version.</para>
  83. <para>This document is distributed in the hope that it will be
  84. useful, but <emphasis>without any warranty</emphasis>; without
  85. even the implied warranty of
  86. <emphasis>merchantability</emphasis> or <emphasis>fitness for a
  87. particular purpose</emphasis>. See the GNU General Public
  88. License for more details.</para>
  89. <para>You should have received a copy of the GNU General Public
  90. License along with this program; if not, write to the Free
  91. Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
  92. USA.</para>
  93. </legalnotice>
  94. </bookinfo>
  95. <chapter id="intro">
  96. <title>Introduction</title>
  97. <para>This chapter provides an introduction to neon, giving an
  98. overview of the range of features offered, and some general guidelines
  99. for using the neon API.</para>
  100. <para>neon aims to provide a modern, flexible, and simple API
  101. in the C programming language for implementing HTTP and WebDAV
  102. support. The WebDAV functionality is entirely separate from the basic
  103. HTTP functionality; neon can be used simply as an HTTP client library,
  104. ignoring the WebDAV support if desired.</para>
  105. &section.features;
  106. &section.using;
  107. &section.security;
  108. </chapter>
  109. <chapter id="api">
  110. <title>The &neon; C language interface</title>
  111. <para>The documentation for the &neon; interface is split between
  112. this chapter, which gives a broad introduction to the abstractions
  113. exposed by the library, and <xref linkend="ref"/>, which gives a
  114. function-by-function breakdown of the interface.</para>
  115. &section.xml;
  116. <!-- &section.ssl; -->
  117. </chapter>
  118. <reference id="ref">
  119. <!-- these are used in the man page header/footers -->
  120. <referenceinfo>
  121. <title>neon API reference</title>
  122. <date>&date;</date>
  123. <productname>neon</productname>
  124. <productnumber>&version;</productnumber>
  125. </referenceinfo>
  126. <title>neon API reference</title>
  127. &refneon; <!-- neon -->
  128. &refconfig; <!-- neon-config -->
  129. &refresolve; <!-- ne_addr_resolve -->
  130. &refbuf; <!-- ne_buffer -->
  131. &refbufapp; <!-- ne_buffer_append -->
  132. &refbufutil; <!-- ne_buffer_clear -->
  133. &refbufcr; <!-- ne_buffer_create -->
  134. &refbufdest; <!-- ne_buffer_destroy -->
  135. &referr; <!-- ne_get_error -->
  136. &refgetst; <!-- ne_get_status -->
  137. &reffeat; <!-- ne_has_support -->
  138. &refi18n; <!-- ne_i18n_init -->
  139. &refiaddr; <!-- ne_iaddr_make -->
  140. &refalloc; <!-- ne_malloc -->
  141. &refsess; <!-- ne_session_create -->
  142. &refproxy; <!-- ne_session_proxy -->
  143. &refsessflags; <!-- ne_set_session_flag -->
  144. &refreq; <!-- ne_request_create -->
  145. &refreqhdr; <!-- ne_add_request_header -->
  146. &refresphdr; <!-- ne_add_request_header -->
  147. &refopts; <!-- ne_set_useragent -->
  148. &refreqflags; <!-- ne_set_request_flag -->
  149. &refreqbody; <!-- ne_set_request_body_buffer -->
  150. &refauth; <!-- ne_set_server_auth -->
  151. &refshave; <!-- ne_shave -->
  152. &refinit; <!-- ne_sock_init -->
  153. &refsslcert; <!-- ne_ssl_cert_identity -->
  154. &refsslcert2; <!-- ne_ssl_cert_cmp -->
  155. &refsslcertio; <!-- ne_ssl_cert_read -->
  156. &refssldname; <!-- ne_ssl_dname -->
  157. &refssltrust; <!-- ne_ssl_load_ca -->
  158. &refsslvfy; <!-- ne_ssl_set_verify -->
  159. &refclicert; <!-- ne_ssl_client_cert -->
  160. &refstatus; <!-- ne_status -->
  161. &reftok; <!-- ne_token -->
  162. &refvers; <!-- ne_version_match -->
  163. &refxml; <!-- ne_xml_parser -->
  164. <!-- REFEND -->
  165. <!-- ******************************************************************* -->
  166. </reference>
  167. &biblio;
  168. </book>