summaryrefslogtreecommitdiff
path: root/docs/reference
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2008-01-15 17:40:47 +0000
committerDan Winship <danw@src.gnome.org>2008-01-15 17:40:47 +0000
commit96d28e7f42ead1ddde6bccca9fba6831710a531f (patch)
tree8b3fd4ae679d19656aef6264cfcf260e515a8eec /docs/reference
parent3f957a48574e9ac8eba06cf91fb2f101ffcf982d (diff)
downloadlibsoup-96d28e7f42ead1ddde6bccca9fba6831710a531f.tar.gz
libsoup-96d28e7f42ead1ddde6bccca9fba6831710a531f.tar.bz2
libsoup-96d28e7f42ead1ddde6bccca9fba6831710a531f.zip
Merge libsoup-2.4 branch to trunk
* Merge libsoup-2.4 branch to trunk svn path=/trunk/; revision=1041
Diffstat (limited to 'docs/reference')
-rw-r--r--docs/reference/Makefile.am14
-rw-r--r--docs/reference/client-howto.xml180
-rw-r--r--docs/reference/libsoup-docs.sgml24
-rw-r--r--docs/reference/libsoup-overrides.txt5
-rw-r--r--docs/reference/libsoup-sections.txt762
-rw-r--r--docs/reference/libsoup.types33
-rw-r--r--docs/reference/porting-2.2-2.4.xml878
-rw-r--r--docs/reference/server-howto.xml205
-rw-r--r--docs/reference/tmpl/libsoup-unused.sgml497
-rw-r--r--docs/reference/tmpl/soup-address.sgml162
-rw-r--r--docs/reference/tmpl/soup-auth.sgml117
-rw-r--r--docs/reference/tmpl/soup-connection-ntlm.sgml26
-rw-r--r--docs/reference/tmpl/soup-connection.sgml254
-rw-r--r--docs/reference/tmpl/soup-dns.sgml123
-rw-r--r--docs/reference/tmpl/soup-md5-utils.sgml49
-rw-r--r--docs/reference/tmpl/soup-message-filter.sgml28
-rw-r--r--docs/reference/tmpl/soup-message-private.sgml82
-rw-r--r--docs/reference/tmpl/soup-message-queue.sgml102
-rw-r--r--docs/reference/tmpl/soup-message.sgml522
-rw-r--r--docs/reference/tmpl/soup-misc.sgml277
-rw-r--r--docs/reference/tmpl/soup-server-auth.sgml127
-rw-r--r--docs/reference/tmpl/soup-server-message.sgml95
-rw-r--r--docs/reference/tmpl/soup-server.sgml249
-rw-r--r--docs/reference/tmpl/soup-session-async.sgml45
-rw-r--r--docs/reference/tmpl/soup-session-sync.sgml49
-rw-r--r--docs/reference/tmpl/soup-session.sgml219
-rw-r--r--docs/reference/tmpl/soup-soap-message.sgml333
-rw-r--r--docs/reference/tmpl/soup-soap-response.sgml200
-rw-r--r--docs/reference/tmpl/soup-socket.sgml348
-rw-r--r--docs/reference/tmpl/soup-ssl.sgml110
-rw-r--r--docs/reference/tmpl/soup-status.sgml152
-rw-r--r--docs/reference/tmpl/soup-uri.sgml146
-rw-r--r--docs/reference/tmpl/soup-xmlrpc-message.sgml216
-rw-r--r--docs/reference/tmpl/soup-xmlrpc-response.sgml231
34 files changed, 1442 insertions, 5418 deletions
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
index 0dae9709..f34e154a 100644
--- a/docs/reference/Makefile.am
+++ b/docs/reference/Makefile.am
@@ -29,7 +29,13 @@ HFILE_GLOB=
CFILE_GLOB=
# Header files to ignore when scanning.
-IGNORE_HFILES= soup.h soup-marshal.h soup-types.h
+IGNORE_HFILES= soup.h soup-marshal.h \
+ soup-message-private.h soup-session-private.h \
+ soup-types.h soup-enum-types.h \
+ soup-auth-basic.h soup-auth-digest.h soup-auth-ntlm.h \
+ soup-connection.h soup-connection-ntlm.h \
+ soup-dns.h soup-auth-manager.h soup-md5-utils.h \
+ soup-message-queue.h soup-path-map.h soup-ssl.h
# Images to copy into HTML directory.
HTML_IMAGES =
@@ -51,7 +57,11 @@ GTKDOC_CFLAGS = \
GTKDOC_LIBS = $(top_builddir)/libsoup/libsoup-$(SOUP_API_VERSION).la
-
# include common portion ...
include $(top_srcdir)/gtk-doc.make
+# kludges
+tmpl/*.sgml:
+
+clean: clean-am
+ rm -rf tmpl
diff --git a/docs/reference/client-howto.xml b/docs/reference/client-howto.xml
index ac7caa06..c52f6353 100644
--- a/docs/reference/client-howto.xml
+++ b/docs/reference/client-howto.xml
@@ -44,7 +44,7 @@ slightly different behavior:
</itemizedlist>
<para>
-If you want to do a mix of synchronous and asynchronous I/O, you will
+If you want to do a mix of mainloop-based and blocking I/O, you will
need to create two different session objects.
</para>
@@ -142,8 +142,10 @@ only need to create the message and it's ready to send:
<para>
In more complicated cases, you can use various <link
-linkend="SoupMessage">SoupMessage</link> methods to set the request
-headers and body of the message:
+linkend="SoupMessage">SoupMessage</link>, <link
+linkend="SoupMessageHeaders">SoupMessageHeaders</link>, and <link
+linkend="SoupMessageBody">SoupMessageBody</link> methods to set the
+request headers and body of the message:
</para>
<informalexample><programlisting>
@@ -151,8 +153,8 @@ headers and body of the message:
msg = soup_message_new ("POST", "http://example.com/form.cgi");
soup_message_set_request (msg, "application/x-www-form-urlencoded",
- SOUP_BUFFER_USER_OWNED, formdata, strlen (formdata));
- soup_message_add_header (msg->request_headers, "Referer", referring_url);
+ SOUP_MEMORY_COPY, formdata, strlen (formdata));
+ soup_message_headers_append (msg->request_headers, "Referer", referring_url);
</programlisting></informalexample>
<para>
@@ -180,20 +182,18 @@ linkend="soup-session-send-message"><function>soup_session_send_message</functio
</programlisting></informalexample>
<para>
-<literal>session</literal> can be either a <link
-linkend="SoupSessionSync"><type>SoupSessionSync</type></link> or a
-<link linkend="SoupSessionAsync"><type>SoupSessionAsync</type></link>;
-if you use <function>soup_session_send_message</function> on an async
-session, it will run the main loop itself until the message is
-complete.
+(If you use <function>soup_session_send_message</function> with a
+<link linkend="SoupSessionAsync"><type>SoupSessionAsync</type></link>,
+it will run the main loop itself until the message is complete.)
</para>
<para>
-The return value from <function>soup_session_send</function> is a <link
-linkend="soup-status">soup status code</link>, indicating either a
-transport error that prevented the message from being sent, or the
+The return value from <function>soup_session_send</function> is a
+<link linkend="soup-status">soup status code</link>, indicating either
+a transport error that prevented the message from being sent, or the
HTTP status that was returned by the server in response to the
-message.
+message. (The status is also available as
+<literal>msg->status_code</literal>.)
</para>
</refsect3>
@@ -202,10 +202,8 @@ message.
<title>Sending a Message Asynchronously</title>
<para>
-To send a message asynchronously (which can only be done if you're
-using <link
-linkend="SoupSessionAsync"><type>SoupSessionAsync</type></link>), use
-<link linkend="soup-session-queue-message"><function>soup_session_queue_message</function></link>:
+To send a message asynchronously, use <link
+linkend="soup-session-queue-message"><function>soup_session_queue_message</function></link>:
</para>
<informalexample><programlisting>
@@ -215,7 +213,7 @@ linkend="SoupSessionAsync"><type>SoupSessionAsync</type></link>), use
}
static void
-my_callback (SoupMessage *msg, gpointer user_data)
+my_callback (SoupSession, *session, SoupMessage *msg, gpointer user_data)
{
/* Handle the response here */
}
@@ -229,6 +227,15 @@ response be will be read. When the message is complete,
passed to <function>soup_session_queue_message</function>.
</para>
+<para>
+(If you use <link
+linkend="soup-session-queue-message"><function>soup_session_queue_message</function></link>
+with a <link
+linkend="SoupSessionSync"><type>SoupSessionSync</type></link>, the
+message will be sent in another thread, with the callback eventually
+being invoked in the session's <link linkend="SOUP-SESSION-ASYNC-CONTEXT:CAPS"><literal>SOUP_SESSION_ASYNC_CONTEXT</literal></link>.)
+</para>
+
</refsect3>
</refsect2>
@@ -245,11 +252,11 @@ asynchronously, you can look at the response fields in the
status and textual status response from the server.
<structfield>response_headers</structfield> contains the response
headers, which you can investigate using <link
-linkend="soup-message-get-header"><function>soup_message_get_header</function></link> and
+linkend="soup-message-headers-get"><function>soup_message_headers_get</function></link> and
<link
- linkend="soup-message-foreach-header"><function>soup_message_foreach_header</function></link>.
+ linkend="soup-message-headers-foreach"><function>soup_message_headers_foreach</function></link>.
The response body (if any) is in the
-<structfield>response</structfield> field.
+<structfield>response_body</structfield> field.
</para>
<para>
@@ -272,17 +279,17 @@ it.
<title>Intermediate/Automatic Processing</title>
<para>
-You can also connect to various <literal>SoupMessage</literal>
-signals, or set up handlers using <link
-linkend="soup-message-add-handler"><function>soup_message_add_handler</function></link>
-and the other handler methods. Notably, <link
+You can also connect to various <literal>SoupMessage</literal> signals
+to do processing at intermediate stages of HTTP I/O.
+<literal>SoupMessage</literal> also provides two convenience methods,
+<link
linkend="soup-message-add-header-handler"><function>soup_message_add_header_handler</function></link>,
-<link linkend="soup-message-add-status-code-handler"><function>soup_message_add_status_code_handler</function></link>,
-and
-<link linkend="soup-message-add-status-class-handler"><function>soup_message_add_status_class_handler</function></link>
-allow you to invoke a handler automatically for messages with certain
-response headers or status codes. <type>SoupSession</type> uses
-this internally to handle authentication and redirection.
+and <link
+linkend="soup-message-add-status-code-handler"><function>soup_message_add_status_code_handler</function></link>,
+which allow you to set up a signal handler that will only be invoked
+for messages with certain response headers or status codes.
+<type>SoupSession</type> uses this internally to handle authentication
+and redirection.
</para>
<para>
@@ -293,10 +300,9 @@ linkend="soup-session-send-message"><function>soup_session_send_message</functio
<para>
To automatically set up handlers on all messages sent via a session,
-you can create a <link
-linkend="SoupMessageFilter">SoupMessageFilter</link> and attach it to
-the session with <link
-linkend="soup-session-add-filter"><function>soup_session_add_filter</function></link>.
+you can connect to the session's <link
+linkend="SoupSession-request-started"><literal>request_started</literal></link>
+signal, and add handlers to each message from there.
</para>
</refsect2>
@@ -309,76 +315,36 @@ linkend="soup-session-add-filter"><function>soup_session_add_filter</function></
authentication for you. If it receives a 401 ("Unauthorized") or 407
("Proxy Authentication Required") response, the session will emit the
<link linkend="SoupSession-authenticate">authenticate</link> signal,
-indicating the authentication type ("Basic", "Digest", or "NTLM") and
-the realm name provided by the server. You should connect to this
-signal and, if possible, fill in the <parameter>username</parameter>
-and <parameter>password</parameter> parameters with authentication
-information. (The session will <function>g_free</function> the strings
-when it is done with them.) If the handler doesn't fill in those
-parameters, then the session will just return the message to the
-application with its 401 or 407 status.
+providing you with a <link
+linkend="SoupAuth"><type>SoupAuth</type></link> object indicating the
+authentication type ("Basic", "Digest", or "NTLM") and the realm name
+provided by the server. If you have a username and password available
+(or can generate one), call <link
+linkend="soup-auth-authenticate"><function>soup_auth_authenticate</function></link>
+to give the information to libsoup. The session will automatically
+requeue the message and try it again with that authentication
+information. (If you don't call
+<function>soup_auth_authenticate</function>, the session will just
+return the message to the application with its 401 or 407 status.)
</para>
<para>
-If the <literal>authenticate</literal> handler returns a username and
-password, but the request still gets an authorization error using that
-information, then the session will emit the <link
-linkend="SoupSession-reauthenticate">reauthenticate</link> signal.
-This lets the application know that the information it provided
-earlier was incorrect, and gives it a chance to try again. If this
+If the server doesn't accept the username and password provided, the
+session will emit <link
+linkend="SoupSession-authenticate">authenticate</link> again, with the
+<literal>retrying</literal> parameter set to <link
+linkend="TRUE:CAPS"><literal>TRUE</literal></link>. This lets the
+application know that the information it provided earlier was
+incorrect, and gives it a chance to try again. If this
username/password pair also doesn't work, the session will contine to
-emit <literal>reauthenticate</literal> again and again until the
-returned username/password successfully authentications, or until the
-signal handler fails to provide a username, at which point
-<application>libsoup</application> will allow the message to fail
-(with status 401 or 407).
+emit <literal>authenticate</literal> again and again until the
+provided username/password successfully authenticates, or until the
+signal handler fails to call <link
+linkend="soup-auth-authenticate"><function>soup_auth_authenticate</function></link>,
+at which point <application>libsoup</application> will allow the
+message to fail (with status 401 or 407).
</para>
-<para>
-There are basically three ways an application might want to use
-the signals:
-</para>
-
-<itemizedlist>
- <listitem><para>
- An interactive application that doesn't cache passwords could
- just connect both <literal>authenticate</literal> and
- <literal>reauthenticate</literal> to the same signal handler,
- which would ask the user for a username and password and then
- return that to soup. This handler would be called repeatedly
- until the provided information worked, or until it failed to
- return any information (eg, because the user hit "Cancel"
- instead of "OK").
- </para></listitem>
-
- <listitem><para>
- A slightly cleverer interactive application would look in its
- password cache from the <literal>authenticate</literal>
- handler, and return a password from there if one was
- available. If no password was cached, it would just call its
- <literal>reauthenticate</literal> handler to prompt the user.
- The <literal>reauthenticate</literal> handler would first
- clear any cached password for this host, auth type, and realm,
- then ask the user as in the case above, and then store that
- information in its cache before returning it to soup. (If the
- password turns out to be incorrect, then
- <literal>reauthenticate</literal> will be called again to
- force it to be uncached.)
- </para></listitem>
-
- <listitem><para>
- A non-interactive program that only has access to cached
- passwords would only connect to
- <literal>authenticate</literal>. If the username and password
- that <literal>authenticate</literal> returns fail, the session
- will emit <literal>reauthenticate</literal>, but since the
- application is not listening to that signal, no new username
- and password will be returned there, so the message will be
- returned to the application with a 401 or 407 status, which
- the application can deal with as it needs to.
- </para></listitem>
-</itemizedlist>
-
</refsect2>
<refsect2>
@@ -396,12 +362,12 @@ A few sample programs are available in the
</para></listitem>
<listitem><para>
- <emphasis role="bold"><literal>dict</literal></emphasis> and
- <emphasis role="bold"><literal>getbug</literal></emphasis> are trivial
- demonstrations of the <link
- linkend="SoupSoapMessage">SOAP</link> and <link
- linkend="SoupXmlrpcMessage">XMLRPC</link> interfaces,
- respectively.
+ <emphasis role="bold"><literal>getbug</literal></emphasis> is a trivial
+ demonstration of the <link
+ linkend="libsoup-XMLRPC-Support">XMLRPC</link> interface.
+ (<emphasis
+ role="bold"><literal>xmlrpc-test</literal></emphasis> provides
+ a slightly more complicated example.)
</para></listitem>
<listitem><para>
diff --git a/docs/reference/libsoup-docs.sgml b/docs/reference/libsoup-docs.sgml
index 6c8011f8..ce97a913 100644
--- a/docs/reference/libsoup-docs.sgml
+++ b/docs/reference/libsoup-docs.sgml
@@ -10,36 +10,32 @@
<title>libsoup Tutorial</title>
<xi:include href="client-howto.xml"/>
<xi:include href="server-howto.xml"/>
+ <xi:include href="porting-2.2-2.4.xml"/>
</chapter>
<chapter>
<title>libsoup API Reference</title>
<xi:include href="xml/soup-address.xml"/>
<xi:include href="xml/soup-auth.xml"/>
- <xi:include href="xml/soup-connection.xml"/>
- <xi:include href="xml/soup-connection-ntlm.xml"/>
+ <xi:include href="xml/soup-auth-domain.xml"/>
+ <xi:include href="xml/soup-auth-domain-basic.xml"/>
+ <xi:include href="xml/soup-auth-domain-digest.xml"/>
+ <xi:include href="xml/soup-logger.xml"/>
<xi:include href="xml/soup-message.xml"/>
- <xi:include href="xml/soup-message-filter.xml"/>
- <xi:include href="xml/soup-server-message.xml"/>
+ <xi:include href="xml/soup-message-headers.xml"/>
+ <xi:include href="xml/soup-message-body.xml"/>
+ <xi:include href="xml/soup-method.xml"/>
<xi:include href="xml/soup-server.xml"/>
<xi:include href="xml/soup-session.xml"/>
<xi:include href="xml/soup-session-async.xml"/>
<xi:include href="xml/soup-session-sync.xml"/>
- <xi:include href="xml/soup-soap-message.xml"/>
- <xi:include href="xml/soup-soap-response.xml"/>
<xi:include href="xml/soup-socket.xml"/>
<xi:include href="xml/soup-status.xml"/>
<xi:include href="xml/soup-uri.xml"/>
- <xi:include href="xml/soup-xmlrpc-message.xml"/>
- <xi:include href="xml/soup-xmlrpc-response.xml"/>
+ <xi:include href="xml/soup-value-utils.xml"/>
+ <xi:include href="xml/soup-xmlrpc.xml"/>
<xi:include href="xml/soup-misc.xml"/>
</chapter>
- <chapter>
- <title>libsoup internals</title>
- <xi:include href="xml/soup-dns.xml"/>
- <xi:include href="xml/soup-ssl.xml"/>
- </chapter>
-
<index></index>
</book>
diff --git a/docs/reference/libsoup-overrides.txt b/docs/reference/libsoup-overrides.txt
index 9828402a..06826ca5 100644
--- a/docs/reference/libsoup-overrides.txt
+++ b/docs/reference/libsoup-overrides.txt
@@ -1,9 +1,4 @@
<FUNCTION>
-<NAME>soup_dns_lookup_get_address</NAME>
-<RETURNS>struct sockaddr *</RETURNS>
-SoupDNSLookup *lookup
-</FUNCTION>
-<FUNCTION>
<NAME>soup_address_get_sockaddr</NAME>
<RETURNS>struct sockaddr *</RETURNS>
SoupAddress *addr,
diff --git a/docs/reference/libsoup-sections.txt b/docs/reference/libsoup-sections.txt
index c9f24c9a..afda49ff 100644
--- a/docs/reference/libsoup-sections.txt
+++ b/docs/reference/libsoup-sections.txt
@@ -2,26 +2,13 @@
<FILE>soup-message</FILE>
<TITLE>SoupMessage</TITLE>
SoupMessage
-SoupMessageStatus
-SOUP_MESSAGE_IS_STARTING
-SoupTransferEncoding
-SoupOwnership
-SoupDataBuffer
-SoupMessageCallbackFn
<SUBSECTION>
soup_message_new
soup_message_new_from_uri
soup_message_set_request
soup_message_set_response
<SUBSECTION>
-soup_message_add_header
-soup_message_get_header
-soup_message_get_header_list
-soup_message_foreach_header
-soup_message_remove_header
-soup_message_clear_headers
-<SUBSECTION>
-SoupHttpVersion
+SoupHTTPVersion
soup_message_set_http_version
soup_message_get_http_version
soup_message_get_uri
@@ -32,25 +19,17 @@ soup_message_get_flags
<SUBSECTION>
soup_message_set_status
soup_message_set_status_full
-soup_message_add_chunk
-soup_message_add_final_chunk
-soup_message_pop_chunk
soup_message_is_keepalive
-soup_message_get_request_encoding
-soup_message_get_response_encoding
<SUBSECTION>
-SoupHandlerPhase
-soup_message_add_handler
soup_message_add_header_handler
soup_message_add_status_code_handler
-soup_message_add_status_class_handler
-soup_message_remove_handler
-<SUBSECTION>
-soup_message_send_request
-soup_message_read_request
-soup_message_io_pause
-soup_message_io_unpause
-soup_message_io_stop
+<SUBSECTION>
+SOUP_MESSAGE_METHOD
+SOUP_MESSAGE_URI
+SOUP_MESSAGE_HTTP_VERSION
+SOUP_MESSAGE_FLAGS
+SOUP_MESSAGE_STATUS_CODE
+SOUP_MESSAGE_REASON_PHRASE
<SUBSECTION Standard>
SOUP_MESSAGE
SOUP_IS_MESSAGE
@@ -60,9 +39,21 @@ SOUP_MESSAGE_CLASS
SOUP_IS_MESSAGE_CLASS
SOUP_MESSAGE_GET_CLASS
SoupMessageClass
-SoupMessagePrivate
-SOUP_MESSAGE_GET_PRIVATE
<SUBSECTION Private>
+soup_message_wrote_informational
+soup_message_wrote_headers
+soup_message_wrote_chunk
+soup_message_wrote_body
+soup_message_got_informational
+soup_message_got_headers
+soup_message_got_chunk
+soup_message_got_body
+soup_message_finished
+soup_message_restarted
+</SECTION>
+
+<SECTION>
+<FILE>soup-method</FILE>
SOUP_METHOD_OPTIONS
SOUP_METHOD_GET
SOUP_METHOD_HEAD
@@ -79,35 +70,63 @@ SOUP_METHOD_MOVE
SOUP_METHOD_LOCK
SOUP_METHOD_UNLOCK
SOUP_METHOD_PATCH
-SoupMethodId
-soup_method_get_id
-soup_message_wrote_informational
-soup_message_wrote_headers
-soup_message_wrote_chunk
-soup_message_wrote_body
-soup_message_got_informational
-soup_message_got_headers
-soup_message_got_chunk
-soup_message_got_body
-soup_message_finished
-soup_message_restarted
-SoupMessageGetHeadersFn
-SoupMessageParseHeadersFn
-soup_message_cleanup_response
-soup_message_io_client
-soup_message_io_in_progress
-soup_message_io_server
-soup_message_run_handlers
-soup_message_send_request_internal
-soup_message_get_auth
-soup_message_get_proxy_auth
-soup_message_set_auth
-soup_message_set_proxy_auth
+</SECTION>
+
+<SECTION>
+<FILE>soup-message-headers</FILE>
+<TITLE>SoupMessageHeaders</TITLE>
+SoupMessageHeaders
+SoupMessageHeadersType
+soup_message_headers_new
+soup_message_headers_free
+<SUBSECTION>
+soup_message_headers_append
+soup_message_headers_replace
+soup_message_headers_remove
+soup_message_headers_clear
+soup_message_headers_get
+SoupMessageHeadersForeachFunc
+soup_message_headers_foreach
+<SUBSECTION>
+SoupEncoding
+soup_message_headers_get_encoding
+soup_message_headers_set_encoding
+soup_message_headers_get_content_length
+soup_message_headers_set_content_length
+<SUBSECTION>
+SoupExpectation
+soup_message_headers_get_expectations
+soup_message_headers_set_expectations
+</SECTION>
+
+<SECTION>
+<FILE>soup-message-body</FILE>
+<TITLE>SoupMessageBody</TITLE>
+SoupBuffer
+SoupMemoryUse
+soup_buffer_new
+soup_buffer_new_subbuffer
+soup_buffer_copy
+soup_buffer_free
+<SUBSECTION>
+SoupMessageBody
+soup_message_body_new
+soup_message_body_free
+<SUBSECTION>
+soup_message_body_append
+soup_message_body_append_buffer
+soup_message_body_truncate
+soup_message_body_complete
+soup_message_body_flatten
+soup_message_body_get_chunk
+<SUBSECTION Standard>
+SOUP_TYPE_BUFFER
+soup_buffer_get_type
</SECTION>
<SECTION>
<FILE>soup-status</FILE>
-SoupStatusClass
+SOUP_STATUS_IS_TRANSPORT_ERROR
SOUP_STATUS_IS_INFORMATIONAL
SOUP_STATUS_IS_SUCCESSFUL
SOUP_STATUS_IS_REDIRECTION
@@ -115,38 +134,48 @@ SOUP_STATUS_IS_CLIENT_ERROR
SOUP_STATUS_IS_SERVER_ERROR
SoupKnownStatusCode
soup_status_get_phrase
-<SUBSECTION Standard>
-SOUP_STATUS_IS_TRANSPORT_ERROR
+<SUBSECTION>
+SOUP_HTTP_ERROR
+<SUBSECTION Private>
+soup_http_error_quark
</SECTION>
<SECTION>
<FILE>soup-server</FILE>
<TITLE>SoupServer</TITLE>
SoupServer
-SoupServerContext
-SoupServerCallbackFn
-SoupServerUnregisterFn
soup_server_new
-soup_server_get_protocol
+soup_server_is_https
soup_server_get_port
soup_server_get_listener
soup_server_run
soup_server_run_async
soup_server_quit
+soup_server_get_async_context
<SUBSECTION>
-SoupServerHandler
+SoupServerCallback
soup_server_add_handler
soup_server_remove_handler
-soup_server_get_handler
-soup_server_list_handlers
-soup_server_context_get_client_address
-soup_server_context_get_client_host
+<SUBSECTION>
+SoupClientContext
+soup_client_context_get_socket
+soup_client_context_get_address
+soup_client_context_get_host
+soup_client_context_get_auth_domain
+soup_client_context_get_auth_user
+<SUBSECTION>
+soup_server_add_auth_domain
+soup_server_remove_auth_domain
+<SUBSECTION>
+soup_server_pause_message
+soup_server_unpause_message
<SUBSECTION>
SOUP_SERVER_PORT
SOUP_SERVER_INTERFACE
SOUP_SERVER_SSL_CERT_FILE
SOUP_SERVER_SSL_KEY_FILE
SOUP_SERVER_ASYNC_CONTEXT
+SOUP_SERVER_RAW_PATHS
<SUBSECTION Standard>
SOUP_SERVER
SOUP_IS_SERVER
@@ -156,18 +185,87 @@ SOUP_SERVER_CLASS
SOUP_IS_SERVER_CLASS
SOUP_SERVER_GET_CLASS
SoupServerClass
-<SUBSECTION Private>
-soup_server_auth_check_passwd
-soup_server_auth_context_challenge
-soup_server_auth_free
-soup_server_auth_get_user
-soup_server_auth_new
-SoupServerAuthBasic
-SoupServerAuthCallbackFn
-SoupServerAuthContext
-SoupServerAuthDigest
-SoupAuthType
-SoupDigestAlgorithm
+SOUP_TYPE_CLIENT_CONTEXT
+soup_client_context_get_type
+</SECTION>
+
+<SECTION>
+<FILE>soup-auth-domain</FILE>
+<TITLE>SoupAuthDomain</TITLE>
+SoupAuthDomain
+<SUBSECTION>
+soup_auth_domain_add_path
+soup_auth_domain_remove_path
+SoupAuthDomainFilter
+soup_auth_domain_set_filter
+soup_auth_domain_get_realm
+<SUBSECTION>
+soup_auth_domain_covers
+soup_auth_domain_accepts
+soup_auth_domain_challenge
+<SUBSECTION>
+SOUP_AUTH_DOMAIN_REALM
+SOUP_AUTH_DOMAIN_PROXY
+SOUP_AUTH_DOMAIN_ADD_PATH
+SOUP_AUTH_DOMAIN_REMOVE_PATH
+SOUP_AUTH_DOMAIN_FILTER
+SOUP_AUTH_DOMAIN_FILTER_DATA
+<SUBSECTION Standard>
+SOUP_AUTH_DOMAIN
+SOUP_IS_AUTH_DOMAIN
+SOUP_TYPE_AUTH_DOMAIN
+soup_auth_domain_get_type
+SOUP_AUTH_DOMAIN_CLASS
+SOUP_IS_AUTH_DOMAIN_CLASS
+SOUP_AUTH_DOMAIN_GET_CLASS
+SoupAuthDomainClass
+</SECTION>
+
+<SECTION>
+<FILE>soup-auth-domain-basic</FILE>
+<TITLE>SoupAuthDomainBasic</TITLE>
+SoupAuthDomainBasic
+soup_auth_domain_basic_new
+<SUBSECTION>
+SoupAuthDomainBasicAuthCallback
+soup_auth_domain_basic_set_auth_callback
+<SUBSECTION>
+SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK
+SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA
+<SUBSECTION Standard>
+SOUP_AUTH_DOMAIN_BASIC
+SOUP_IS_AUTH_DOMAIN_BASIC
+SOUP_TYPE_AUTH_DOMAIN_BASIC
+soup_auth_domain_basic_get_type
+SOUP_AUTH_DOMAIN_BASIC_CLASS
+SOUP_IS_AUTH_DOMAIN_BASIC_CLASS
+SOUP_AUTH_DOMAIN_BASIC_GET_CLASS
+SoupAuthDomainBasicClass
+</SECTION>
+
+<SECTION>
+<FILE>soup-auth-domain-digest</FILE>
+<TITLE>SoupAuthDomainDigest</TITLE>
+SoupAuthDomainDigest
+soup_auth_domain_digest_new
+<SUBSECTION>
+SoupAuthDomainDigestAuthCallback
+soup_auth_domain_digest_set_auth_callback
+soup_auth_domain_digest_encode_password
+<SUBSECTION>
+soup_auth_domain_digest_evil_check_password
+<SUBSECTION>
+SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK
+SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA
+<SUBSECTION Standard>
+SOUP_AUTH_DOMAIN_DIGEST
+SOUP_IS_AUTH_DOMAIN_DIGEST
+SOUP_TYPE_AUTH_DOMAIN_DIGEST
+soup_auth_domain_digest_get_type
+SOUP_AUTH_DOMAIN_DIGEST_CLASS
+SOUP_IS_AUTH_DOMAIN_DIGEST_CLASS
+SOUP_AUTH_DOMAIN_DIGEST_GET_CLASS
+SoupAuthDomainDigestClass
</SECTION>
<SECTION>
@@ -179,10 +277,11 @@ SOUP_ADDRESS_ANY_PORT
soup_address_new
soup_address_new_from_sockaddr
soup_address_new_any
+<SUBSECTION>
SoupAddressCallback
soup_address_resolve_async
-soup_address_resolve_async_full
soup_address_resolve_sync
+<SUBSECTION>
soup_address_get_name
soup_address_get_sockaddr
soup_address_get_physical
@@ -196,103 +295,27 @@ SOUP_ADDRESS_CLASS
SOUP_IS_ADDRESS_CLASS
SOUP_ADDRESS_GET_CLASS
SoupAddressClass
-</SECTION>
-
-<SECTION>
-<FILE>soup-soap-message</FILE>
-SoupSoapMessage
-<TITLE>SoupSoapMessage</TITLE>
-soup_soap_message_new
-soup_soap_message_new_from_uri
-soup_soap_message_start_envelope
-soup_soap_message_end_envelope
-soup_soap_message_start_body
-soup_soap_message_end_body
-soup_soap_message_start_element
-soup_soap_message_end_element
-soup_soap_message_start_fault
-soup_soap_message_end_fault
-soup_soap_message_start_fault_detail
-soup_soap_message_end_fault_detail
-soup_soap_message_start_header
-soup_soap_message_end_header
-soup_soap_message_start_header_element
-soup_soap_message_end_header_element
-soup_soap_message_write_int
-soup_soap_message_write_double
-soup_soap_message_write_base64
-soup_soap_message_write_time
-soup_soap_message_write_string
-soup_soap_message_write_buffer
-soup_soap_message_set_element_type
-soup_soap_message_set_null
-soup_soap_message_add_attribute
-soup_soap_message_add_namespace
-soup_soap_message_set_default_namespace
-soup_soap_message_set_encoding_style
-soup_soap_message_reset
-soup_soap_message_persist
-soup_soap_message_get_namespace_prefix
-soup_soap_message_get_xml_doc
-soup_soap_message_parse_response
-<SUBSECTION Standard>
-SOUP_IS_SOAP_MESSAGE
-SOUP_IS_SOAP_MESSAGE_CLASS
-SOUP_SOAP_MESSAGE
-SOUP_SOAP_MESSAGE_CLASS
-SOUP_SOAP_MESSAGE_GET_CLASS
-SOUP_TYPE_SOAP_MESSAGE
-SoupSoapMessageClass
-soup_soap_message_get_type
-</SECTION>
-
-<SECTION>
-<FILE>soup-soap-response</FILE>
-<TITLE>SoupSoapResponse</TITLE>
-SoupSoapResponse
-SoupSoapParameter
-soup_soap_response_new
-soup_soap_response_new_from_string
-soup_soap_response_set_method_name
-soup_soap_parameter_get_first_child
-soup_soap_parameter_get_first_child_by_name
-soup_soap_parameter_get_int_value
-soup_soap_parameter_get_name
-soup_soap_parameter_get_next_child
-soup_soap_parameter_get_next_child_by_name
-soup_soap_parameter_get_property
-soup_soap_parameter_get_string_value
-soup_soap_response_from_string
-soup_soap_response_get_first_parameter
-soup_soap_response_get_first_parameter_by_name
-soup_soap_response_get_method_name
-soup_soap_response_get_next_parameter
-soup_soap_response_get_next_parameter_by_name
-soup_soap_response_get_parameters
-<SUBSECTION Standard>
-SOUP_IS_SOAP_RESPONSE
-SOUP_IS_SOAP_RESPONSE_CLASS
-SOUP_SOAP_RESPONSE
-SOUP_SOAP_RESPONSE_CLASS
-SOUP_SOAP_RESPONSE_GET_CLASS
-SOUP_TYPE_SOAP_RESPONSE
-SoupSoapResponseClass
-soup_soap_response_get_type
+<SUBSECTION Private>
+AF_INET6
</SECTION>
<SECTION>
<FILE>soup-session</FILE>
<TITLE>SoupSession</TITLE>
SoupSession
+<SUBSECTION>
+SoupSessionCallback
soup_session_queue_message
soup_session_requeue_message
soup_session_send_message
-soup_session_abort
-soup_session_add_filter
soup_session_cancel_message
-soup_session_get_connection
-soup_session_remove_filter
-soup_session_try_prune_connection
+soup_session_abort
+<SUBSECTION>
+soup_session_pause_message
+soup_session_unpause_message
+<SUBSECTION>
+soup_session_get_async_context
+<SUBSECTION>
SOUP_SESSION_PROXY_URI
SOUP_SESSION_MAX_CONNS
SOUP_SESSION_MAX_CONNS_PER_HOST
@@ -309,17 +332,6 @@ SOUP_SESSION_GET_CLASS
SOUP_TYPE_SESSION
SoupSessionClass
soup_session_get_type
-<SUBSECTION Private>
-SoupMessageQueue
-SoupMessageQueueIter
-soup_message_queue_append
-soup_message_queue_destroy
-soup_message_queue_first
-soup_message_queue_free_iter
-soup_message_queue_new
-soup_message_queue_next
-soup_message_queue_remove
-soup_message_queue_remove_message
</SECTION>
<SECTION>
@@ -360,16 +372,27 @@ soup_session_sync_get_type
<FILE>soup-auth</FILE>
<TITLE>SoupAuth</TITLE>
SoupAuth
-SoupAuthBasic
-SoupAuthDigest
-soup_auth_new_from_header_list
+soup_auth_new
+soup_auth_update
+<SUBSECTION>
+soup_auth_is_for_proxy
soup_auth_get_scheme_name
+soup_auth_get_host
soup_auth_get_realm
+soup_auth_get_info
+<SUBSECTION>
soup_auth_authenticate
soup_auth_is_authenticated
+<SUBSECTION>
soup_auth_get_authorization
soup_auth_get_protection_space
soup_auth_free_protection_space
+<SUBSECTION>
+SOUP_AUTH_SCHEME_NAME
+SOUP_AUTH_REALM
+SOUP_AUTH_HOST
+SOUP_AUTH_IS_FOR_PROXY
+SOUP_AUTH_IS_AUTHENTICATED
<SUBSECTION Standard>
SOUP_AUTH
SOUP_IS_AUTH
@@ -379,22 +402,6 @@ SOUP_AUTH_CLASS
SOUP_IS_AUTH_CLASS
SOUP_AUTH_GET_CLASS
SoupAuthClass
-SOUP_AUTH_BASIC
-SOUP_IS_AUTH_BASIC
-SOUP_TYPE_AUTH_BASIC
-soup_auth_basic_get_type
-SOUP_AUTH_BASIC_CLASS
-SOUP_IS_AUTH_BASIC_CLASS
-SOUP_AUTH_BASIC_GET_CLASS
-SoupAuthBasicClass
-SOUP_AUTH_DIGEST
-SOUP_IS_AUTH_DIGEST
-SOUP_TYPE_AUTH_DIGEST
-soup_auth_digest_get_type
-SOUP_AUTH_DIGEST_CLASS
-SOUP_IS_AUTH_DIGEST_CLASS
-SOUP_AUTH_DIGEST_GET_CLASS
-SoupAuthDigestClass
</SECTION>
<SECTION>
@@ -402,31 +409,38 @@ SoupAuthDigestClass
<TITLE>SoupSocket</TITLE>
SoupSocket
soup_socket_new
-soup_socket_connect
+<SUBSECTION>
+SoupSocketCallback
+soup_socket_connect_async
+soup_socket_connect_sync
+<SUBSECTION>
soup_socket_listen
+<SUBSECTION>
soup_socket_start_ssl
soup_socket_start_proxy_ssl
+soup_socket_is_ssl
+<SUBSECTION>
soup_socket_disconnect
soup_socket_is_connected
-SoupSocketCallback
-SoupSocketListenerCallback
-soup_socket_client_new_async
-soup_socket_client_new_sync
-soup_socket_server_new
+<SUBSECTION>
soup_socket_get_local_address
soup_socket_get_remote_address
+<SUBSECTION>
SoupSocketIOStatus
soup_socket_read
soup_socket_read_until
soup_socket_write
+<SUBSECTION>
+SOUP_SSL_ERROR
+SoupSSLError
+<SUBSECTION>
+SOUP_SOCKET_LOCAL_ADDRESS
+SOUP_SOCKET_REMOTE_ADDRESS
SOUP_SOCKET_FLAG_NONBLOCKING
-SOUP_SOCKET_FLAG_NODELAY
-SOUP_SOCKET_FLAG_REUSEADDR
-SOUP_SOCKET_FLAG_CLOEXEC
-SOUP_SOCKET_TIMEOUT
SOUP_SOCKET_IS_SERVER
SOUP_SOCKET_SSL_CREDENTIALS
SOUP_SOCKET_ASYNC_CONTEXT
+SOUP_SOCKET_TIMEOUT
<SUBSECTION Standard>
SOUP_SOCKET
SOUP_IS_SOCKET
@@ -436,260 +450,154 @@ SOUP_SOCKET_CLASS
SOUP_IS_SOCKET_CLASS
SOUP_SOCKET_GET_CLASS
SoupSocketClass
-</SECTION>
-
-<SECTION>
-<FILE>soup-connection-ntlm</FILE>
-<TITLE>SoupConnectionNTLM</TITLE>
-SoupConnectionNTLM
-<SUBSECTION Standard>
-SOUP_CONNECTION_NTLM
-SOUP_IS_CONNECTION_NTLM
-SOUP_TYPE_CONNECTION_NTLM
-soup_connection_ntlm_get_type
-SOUP_CONNECTION_NTLM_CLASS
-SOUP_IS_CONNECTION_NTLM_CLASS
-SOUP_CONNECTION_NTLM_GET_CLASS
-SoupConnectionNTLMClass
-</SECTION>
-
-<SECTION>
-<FILE>soup-connection</FILE>
-<TITLE>SoupConnection</TITLE>
-SoupConnection
-soup_connection_new
-SoupConnectionCallback
-soup_connection_connect_async
-soup_connection_connect_sync
-soup_connection_disconnect
-soup_connection_is_in_use
-soup_connection_last_used
-soup_connection_send_request
-soup_connection_authenticate
-soup_connection_reauthenticate
-soup_connection_release
-soup_connection_reserve
-SOUP_CONNECTION_ORIGIN_URI
-SOUP_CONNECTION_PROXY_URI
-SOUP_CONNECTION_SSL_CREDENTIALS
-SOUP_CONNECTION_MESSAGE_FILTER
-SOUP_CONNECTION_ASYNC_CONTEXT
-SOUP_CONNECTION_TIMEOUT
-<SUBSECTION Standard>
-SOUP_CONNECTION
-SOUP_IS_CONNECTION
-SOUP_TYPE_CONNECTION
-soup_connection_get_type
-SOUP_CONNECTION_CLASS
-SOUP_IS_CONNECTION_CLASS
-SOUP_CONNECTION_GET_CLASS
-SoupConnectionClass
-</SECTION>
-
-<SECTION>
-<FILE>soup-server-message</FILE>
-<TITLE>SoupServerMessage</TITLE>
-SoupServerMessage
-soup_server_message_new
-soup_server_message_get_server
-soup_server_message_set_encoding
-soup_server_message_get_encoding
-soup_server_message_start
-soup_server_message_is_started
-soup_server_message_finish
-soup_server_message_is_finished
-<SUBSECTION Standard>
-SOUP_SERVER_MESSAGE
-SOUP_IS_SERVER_MESSAGE
-SOUP_TYPE_SERVER_MESSAGE
-soup_server_message_get_type
-SOUP_SERVER_MESSAGE_CLASS
-SOUP_IS_SERVER_MESSAGE_CLASS
-SOUP_SERVER_MESSAGE_GET_CLASS
-SoupServerMessageClass
-</SECTION>
-
-<SECTION>
-<FILE>soup-dns</FILE>
-soup_dns_init
-soup_dns_ntop
-SoupDNSLookup
-soup_dns_lookup_name
-soup_dns_lookup_address
-soup_dns_lookup_resolve
-SoupDNSCallback
-soup_dns_lookup_resolve_async
-soup_dns_lookup_cancel
-soup_dns_lookup_get_hostname
-soup_dns_lookup_get_address
-soup_dns_lookup_free
-</SECTION>
-
-<SECTION>
-<FILE>soup-ssl</FILE>
-soup_ssl_supported
-<SUBSECTION>
-SoupSSLType
-SoupSSLCredentials
-soup_ssl_get_client_credentials
-soup_ssl_free_client_credentials
-soup_ssl_get_server_credentials
-soup_ssl_free_server_credentials
-soup_ssl_wrap_iochannel
-SOUP_SSL_ERROR
+<SUBSECTION Private>
soup_ssl_error_quark
-SoupSocketError
</SECTION>
<SECTION>
<FILE>soup-uri</FILE>
-<TITLE>SoupUri</TITLE>
-SoupUri
-SoupProtocol
-SOUP_PROTOCOL_HTTP
-SOUP_PROTOCOL_HTTPS
+<TITLE>SoupURI</TITLE>
+SoupURI
soup_uri_new_with_base
soup_uri_new
soup_uri_to_string
+<SUBSECTION>
soup_uri_copy
-soup_uri_copy_root
soup_uri_equal
soup_uri_free
+<SUBSECTION>
soup_uri_encode
soup_uri_decode
+soup_uri_normalize
+<SUBSECTION>
+SOUP_URI_SCHEME_HTTP
+SOUP_URI_SCHEME_HTTPS
soup_uri_uses_default_port
-</SECTION>
-
-<SECTION>
-<FILE>soup-message-filter</FILE>
-<TITLE>SoupMessageFilter</TITLE>
-soup_message_filter_setup_message
+<SUBSECTION>
+soup_uri_set_scheme
+soup_uri_set_user
+soup_uri_set_password
+soup_uri_set_host
+soup_uri_set_port
+soup_uri_set_path
+soup_uri_set_query
+soup_uri_set_query_from_form
+soup_uri_set_fragment
<SUBSECTION Standard>
-SOUP_IS_MESSAGE_FILTER
-SOUP_IS_MESSAGE_FILTER_CLASS
-SOUP_MESSAGE_FILTER
-SOUP_MESSAGE_FILTER_CLASS
-SOUP_MESSAGE_FILTER_GET_CLASS
-SOUP_MESSAGE_FILTER_GET_CLASS
-SOUP_TYPE_MESSAGE_FILTER
-SoupMessageFilterClass
-soup_message_filter_get_type
+SOUP_TYPE_URI
+soup_uri_get_type
</SECTION>
<SECTION>
<FILE>soup-misc</FILE>
<TITLE>Soup Miscellaneous Utilities</TITLE>
-soup_base64_decode
-soup_base64_encode
-soup_base64_decode_step
-soup_base64_encode_step
-soup_base64_encode_close
-<SUBSECTION>
-soup_add_idle
-soup_add_io_watch
-soup_add_timeout
-soup_signal_connect_once
+SoupDate
+SoupDateFormat
+soup_date_new
+soup_date_new_from_string
+soup_date_new_from_time_t
+soup_date_new_from_now
+soup_date_to_string
+soup_date_free
<SUBSECTION>
-soup_date_parse
-soup_date_iso8601_parse
-soup_date_generate
-soup_gmtime
-soup_mktime_utc
+soup_form_decode_urlencoded
+soup_form_encode_urlencoded
+soup_form_encode_urlencoded_list
<SUBSECTION>
-soup_header_param_copy_token
-soup_header_param_decode_token
-soup_header_param_destroy_hash
-soup_header_param_parse_list
soup_headers_parse_request
soup_headers_parse_response
soup_headers_parse_status_line
<SUBSECTION>
+soup_header_parse_list
+soup_header_parse_quality_list
+soup_header_free_list
+soup_header_contains
+soup_header_parse_param_list
+soup_header_free_param_list
+<SUBSECTION>
soup_str_case_equal
soup_str_case_hash
<SUBSECTION>
-soup_xml_real_node
+soup_add_idle
+soup_add_io_watch
+soup_add_timeout
+<SUBSECTION>
+soup_ssl_supported
+<SUBSECTION Private>
+soup_date_copy
+soup_signal_connect_once
+SOUP_TYPE_DATE
+soup_date_get_type
</SECTION>
<SECTION>
-<FILE>soup-xmlrpc-message</FILE>
-<TITLE>SoupXmlrpcMessage</TITLE>
-SoupXmlrpcMessage
-soup_xmlrpc_message_new
-soup_xmlrpc_message_new_from_uri
-soup_xmlrpc_message_from_string
-<SUBSECTION>
-soup_xmlrpc_message_start_call
-soup_xmlrpc_message_end_call
-soup_xmlrpc_message_start_param
-soup_xmlrpc_message_end_param
-<SUBSECTION>
-soup_xmlrpc_message_write_int
-soup_xmlrpc_message_write_boolean
-soup_xmlrpc_message_write_string
-soup_xmlrpc_message_write_double
-soup_xmlrpc_message_write_datetime
-soup_xmlrpc_message_write_base64
-<SUBSECTION>
-soup_xmlrpc_message_start_struct
-soup_xmlrpc_message_end_struct
-soup_xmlrpc_message_start_member
-soup_xmlrpc_message_end_member
-<SUBSECTION>
-soup_xmlrpc_message_start_array
-soup_xmlrpc_message_end_array
-<SUBSECTION>
-soup_xmlrpc_message_to_string
-soup_xmlrpc_message_persist
-<SUBSECTION>
-soup_xmlrpc_message_parse_response
-<SUBSECTION Standard>
-SOUP_IS_XMLRPC_MESSAGE
-SOUP_IS_XMLRPC_MESSAGE_CLASS
-SOUP_TYPE_XMLRPC_MESSAGE
-SOUP_XMLRPC_MESSAGE
-SOUP_XMLRPC_MESSAGE_CLASS
-SOUP_XMLRPC_MESSAGE_GET_CLASS
-SoupXmlrpcMessageClass
-soup_xmlrpc_message_get_type
+<FILE>soup-xmlrpc</FILE>
+<TITLE>XMLRPC Support</TITLE>
+<SUBSECTION>
+soup_xmlrpc_build_method_call
+soup_xmlrpc_request_new
+soup_xmlrpc_parse_method_response
+soup_xmlrpc_extract_method_response
+<SUBSECTION>
+soup_xmlrpc_parse_method_call
+soup_xmlrpc_extract_method_call
+soup_xmlrpc_build_method_response
+soup_xmlrpc_build_fault
+soup_xmlrpc_set_response
+soup_xmlrpc_set_fault
+<SUBSECTION>
+SOUP_XMLRPC_ERROR
+SoupXMLRPCError
+SOUP_XMLRPC_FAULT
+<SUBSECTION Private>
+soup_xmlrpc_error_quark
+soup_xmlrpc_fault_quark
</SECTION>
<SECTION>
-<FILE>soup-xmlrpc-response</FILE>
-<TITLE>SoupXmlrpcResponse</TITLE>
-SoupXmlrpcResponse
-soup_xmlrpc_response_new
-soup_xmlrpc_response_new_from_string
-soup_xmlrpc_response_from_string
-soup_xmlrpc_response_to_string
-<SUBSECTION>
-SoupXmlrpcValue
-SoupXmlrpcValueType
-soup_xmlrpc_response_is_fault
-soup_xmlrpc_response_get_value
-<SUBSECTION>
-soup_xmlrpc_value_get_type
-soup_xmlrpc_value_get_int
-soup_xmlrpc_value_get_double
-soup_xmlrpc_value_get_boolean
-soup_xmlrpc_value_get_string
-soup_xmlrpc_value_get_datetime
-soup_xmlrpc_value_get_base64
-soup_xmlrpc_value_get_struct
-<SUBSECTION>
-SoupXmlrpcValueArrayIterator
-soup_xmlrpc_value_array_get_iterator
-soup_xmlrpc_value_array_iterator_prev
-soup_xmlrpc_value_array_iterator_next
-soup_xmlrpc_value_array_iterator_get_value
-<SUBSECTION>
-soup_xmlrpc_value_dump
+<FILE>soup-value-utils</FILE>
+<TITLE>GValue Support</TITLE>
+soup_value_hash_new
+soup_value_hash_insert_value
+soup_value_hash_insert
+soup_value_hash_lookup
+<SUBSECTION>
+soup_value_array_from_args
+soup_value_array_to_args
+soup_value_array_insert
+soup_value_array_append
+soup_value_array_get_nth
+<SUBSECTION>
+SOUP_VALUE_SETV
+SOUP_VALUE_GETV
+<SUBSECTION>
+SOUP_TYPE_BYTE_ARRAY
+<SUBSECTION Private>
+soup_byte_array_get_type
+</SECTION>
+
+<SECTION>
+<FILE>soup-logger</FILE>
+<TITLE>SoupLogger</TITLE>
+SoupLogger
+SoupLoggerLogLevel
+soup_logger_new
+soup_logger_attach
+soup_logger_detach
+<SUBSECTION>
+SoupLoggerFilter
+soup_logger_set_request_filter
+soup_logger_set_response_filter
+<SUBSECTION>
+SoupLoggerPrinter
+soup_logger_set_printer
<SUBSECTION Standard>
-SOUP_IS_XMLRPC_RESPONSE
-SOUP_IS_XMLRPC_RESPONSE_CLASS
-SOUP_TYPE_XMLRPC_RESPONSE
-SOUP_XMLRPC_RESPONSE
-SOUP_XMLRPC_RESPONSE_CLASS
-SOUP_XMLRPC_RESPONSE_GET_CLASS
-SoupXmlrpcResponseClass
-soup_xmlrpc_response_get_type
+SoupLoggerClass
+soup_logger_get_type
+SOUP_IS_LOGGER
+SOUP_IS_LOGGER_CLASS
+SOUP_LOGGER
+SOUP_LOGGER_CLASS
+SOUP_LOGGER_GET_CLASS
+SOUP_TYPE_LOGGER
</SECTION>
diff --git a/docs/reference/libsoup.types b/docs/reference/libsoup.types
index 7c6a4d23..9effee14 100644
--- a/docs/reference/libsoup.types
+++ b/docs/reference/libsoup.types
@@ -1,37 +1,14 @@
-#include <libsoup/soup-address.h>
-#include <libsoup/soup-auth.h>
-#include <libsoup/soup-auth-basic.h>
-#include <libsoup/soup-auth-digest.h>
-#include <libsoup/soup-connection.h>
-#include <libsoup/soup-connection-ntlm.h>
-#include <libsoup/soup-message.h>
-#include <libsoup/soup-message-filter.h>
-#include <libsoup/soup-server-message.h>
-#include <libsoup/soup-server.h>
-#include <libsoup/soup-session.h>
-#include <libsoup/soup-session-sync.h>
-#include <libsoup/soup-session-async.h>
-#include <libsoup/soup-soap-message.h>
-#include <libsoup/soup-soap-response.h>
-#include <libsoup/soup-socket.h>
-#include <libsoup/soup-xmlrpc-message.h>
-#include <libsoup/soup-xmlrpc-response.h>
+#include <libsoup/soup.h>
soup_address_get_type
soup_auth_get_type
-soup_auth_basic_get_type
-soup_auth_digest_get_type
-soup_connection_get_type
-soup_connection_ntlm_get_type
+soup_auth_domain_get_type
+soup_auth_domain_basic_get_type
+soup_auth_domain_digest_get_type
soup_message_get_type
-soup_message_filter_get_type
-soup_server_message_get_type
soup_server_get_type
soup_session_get_type
soup_session_sync_get_type
soup_session_async_get_type
-soup_soap_message_get_type
-soup_soap_response_get_type
soup_socket_get_type
-soup_xmlrpc_message_get_type
-soup_xmlrpc_response_get_type
+
diff --git a/docs/reference/porting-2.2-2.4.xml b/docs/reference/porting-2.2-2.4.xml
new file mode 100644
index 00000000..4e01880c
--- /dev/null
+++ b/docs/reference/porting-2.2-2.4.xml
@@ -0,0 +1,878 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="libsoup-porting-2.2-2.4">
+<refmeta>
+<refentrytitle>libsoup 2.2 to 2.4 porting notes</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>LIBSOUP Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>Porting notes</refname><refpurpose>Notes on porting from libsoup 2.2 to 2.4</refpurpose>
+</refnamediv>
+
+<refsect2>
+<title>Overview</title>
+
+<para>
+After many API-compatible releases in the 2.2 series,
+<application>libsoup</application> has now changed its API and bumped
+its version number to 2.4. Changes were made for a variety of reasons:
+</para>
+
+<itemizedlist>
+ <listitem><para>
+ To fix bugs and add features that couldn't be done ABI-compatibly.
+ </para></listitem>
+
+ <listitem><para>
+ To make it easier to generate bindings for libsoup for
+ languages other than C.
+ </para></listitem>
+
+ <listitem><para>
+ To clean up ugly/confusing old APIs
+ </para></listitem>
+
+ <listitem><para>
+ To be more glib/gobject/gtk-like in general.
+ </para></listitem>
+</itemizedlist>
+
+</refsect2>
+
+<refsect2>
+<title>SoupMessage</title>
+
+<para>
+<link linkend="SoupMessage"><type>SoupMessage</type></link> has had a
+number of API changes made, mostly to increase its
+language-bindability.
+</para>
+
+<refsect3>
+<title>SoupMessageHeaders</title>
+
+<para>
+ <type>SoupMessage</type>'s
+ <structfield>request_headers</structfield> and
+ <structfield>response_headers</structfield> fields are now an
+ opaque type (<link
+ linkend="SoupMessageHeaders"><type>SoupMessageHeaders</type></link>)
+ rather than being <type>GHashTables</type>. The method names have
+ changed slightly to reflect this:
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><function>soup_message_add_header</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-message-headers-append"><function>soup_message_headers_append</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_get_header</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-message-headers-get"><function>soup_message_headers_get</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_foreach_header</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-message-headers-foreach"><function>soup_message_headers_foreach</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_remove_header</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-message-headers-remove"><function>soup_message_headers_remove</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_clear_headers</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-message-headers-clear"><function>soup_message_headers_append</function></link>
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+
+<para>
+ <function>soup_message_get_header_list</function> has no equivalent;
+ if multiple copies of a header are present,
+ <function>soup_message_headers_get</function> will return all of
+ them, concatenated together and separated by commas; RFC 2616 says
+ that the two forms (multiple headers, and a single header with
+ comma-separated values) are equivalent; this change to libsoup
+ ensures that applications will treat them as equivalent.
+</para>
+
+<para>
+ In addition, certain important header fields now have
+ dedicated get/set methods:
+</para>
+
+<itemizedlist>
+ <listitem><para>
+ <link linkend="soup-message-headers-get-encoding"><function>soup_message_headers_get_encoding</function></link> / <link linkend="soup-message-headers-set-encoding"><function>soup_message_headers_set_encoding</function></link>
+ </para></listitem>
+
+ <listitem><para>
+ <link linkend="soup-message-headers-get-content-length"><function>soup_message_headers_get_content_length</function></link> / <link linkend="soup-message-headers-set-content-length"><function>soup_message_headers_set_content_length</function></link>
+ </para></listitem>
+
+ <listitem><para>
+ <link linkend="soup-message-headers-get-expectations"><function>soup_message_headers_get_expectations</function></link> / <link linkend="soup-message-headers-set-expectations"><function>soup_message_headers_set_expectations</function></link>
+ </para></listitem>
+</itemizedlist>
+
+<para>
+ (<literal>soup_message_headers_set_expectation(msg,&#160;SOUP_EXPECTATION_CONTINUE)</literal>
+ replaces the <literal>SOUP_MESSAGE_EXPECT_CONTINUE</literal>
+ message flag).
+</para>
+
+</refsect3>
+
+<refsect3>
+<title>SoupMessageBody</title>
+
+<para>
+ Similarly, the <structfield>request_body</structfield> and
+ <structfield>response</structfield> fields (renamed from
+ <structfield>request</structfield> and <structfield>response</structfield>) are
+ now a new type, <link
+ linkend="SoupMessageBody"><type>SoupMessageBody</type></link>,
+ implemented in terms of <link
+ linkend="SoupBuffer"><type>SoupBuffer</type></link>, a refcounted
+ memory buffer type with clearer semantics than the old
+ <type>SoupDataBuffer</type>/<type>SoupOwnership</type>.
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><literal>SOUP_BUFFER_STATIC</literal></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="SOUP-MEMORY-STATIC:CAPS"><literal>SOUP_MEMORY_STATIC</literal></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>SOUP_BUFFER_SYSTEM_OWNED</literal></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="SOUP-MEMORY-TAKE:CAPS"><literal>SOUP_MEMORY_TAKE</literal></link>
+ (meaning <application>libsoup</application>
+ should take ownership of the memory from your).
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>SOUP_BUFFER_USER_OWNED</literal></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="SOUP-MEMORY-COPY:CAPS"><literal>SOUP_MEMORY_COPY</literal></link>
+ (meaning <application>libsoup</application>
+ should make a copy of the memory, because you
+ can't make any guarantees about how long it will
+ last.)
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+
+<para>
+ A fourth <type>SoupMemoryUse</type> value is also available: <link
+ linkend="SOUP-MEMORY-TEMPORARY:CAPS"><literal>SOUP_MEMORY_TEMPORARY</literal></link>,
+ which helps to avoid extra copies in some cases.
+ <literal>SOUP_MEMORY_TEMPORARY</literal> means that the memory
+ will last at least as long as the object you are handing it to (a
+ <type>SoupBuffer</type>, <type>SoupMessageBody</type>, or
+ <type>SoupMessage</type>), and so doesn't need to be copied right
+ away, but that if anyone makes a copy of the buffer,
+ <application>libsoup</application> needs to make a new copy of the
+ memory for them at that point, since the original pointer may not
+ remain valid for the lifetime of the new copy.
+</para>
+
+<para>
+ (In the future, there may be additional <type>SoupBuffer</type>
+ and <type>SoupMessageBody</type> methods to work directly with
+ mmapped memory, splicing to file descriptors, etc.)
+</para>
+
+<para>
+ <link
+ linkend="soup-message-set-request"><function>soup_message_set_request</function></link>
+ and <link
+ linkend="soup-message-set-response"><function>soup_message_set_response</function></link>
+ still work roughly like they used to.
+</para>
+
+<para>
+ Unlike the old <structfield>request</structfield> and
+ <structfield>response</structfield> fields, the new
+ <structfield>request_body</structfield> and
+ <structfield>response_body</structfield> fields are not guaranteed
+ to be filled in at all times. (In particular, the
+ <structfield>response_body</structfield> is not filled in until it
+ has been fully read, although you can use <link
+ linkend="soup-message-body-get-chunk"><function>soup_message_body_get_chunk</function></link>
+ to iterate through the chunks before that point if you need to.)
+</para>
+
+<para>
+ When <structfield>request_body</structfield> and
+ <structfield>response_body</structfield> <emphasis>are</emphasis>
+ filled in, they are <literal>'\0'</literal>-terminated for your
+ processing convenience. (The terminating 0 byte is not included in
+ their length.)
+</para>
+
+</refsect3>
+
+<refsect3>
+<title>Chunked encoding</title>
+
+<para>
+ The prototype of the <link
+ linkend="SoupMessage-got-chunk"><literal>SoupMessage::got_chunk</literal></link>
+ signal has been changed; it now includes the chunk as a
+ <type>SoupBuffer</type> parameter (rather than storing the chunk
+ data in <literal>msg->response</literal> as in 2.2). <link
+ linkend="SoupMessageFlags"><literal>SOUP_MESSAGE_OVERWRITE_CHUNKS</literal></link>
+ is now somewhat poorly named, but still has essentially the same
+ semantics: if you set it, each chunk will be discarded after it is
+ read, and <literal>msg->response_body</literal> will not be filled
+ in with the complete response at the end of message processing.
+</para>
+
+<para>
+ The API for sending chunked responses from a
+ <type>SoupServer</type> is also slightly different now:
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><function>soup_server_message_set_encoding</function></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="soup-message-headers-set-encoding"><function>soup_message_headers_set_encoding</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_add_chunk</function></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="soup-message-body-append"><function>soup_message_body_append</function></link>
+ or <link
+ linkend="soup-message-body-append-buffer"><function>soup_message_body_append_buffer</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_add_final_chunk</function></term>
+ <listitem><para>
+ &#8594; <link
+ linkend="soup-message-body-complete"><function>soup_message_body_complete</function></link>
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+
+<para>
+ Since the new chunk-sending APIs require you to explicitly pass
+ the
+ <structfield>request_headers</structfield>/<structfield>request_body</structfield>
+ fields, rather than just assuming you're talking about the
+ response body, in theory it is now possible to use chunked
+ encoding with the request as well. As of the 2.3.0 release this
+ has not yet been tested.
+</para>
+
+</refsect3>
+
+<refsect3>
+<title>Methods</title>
+
+<para>
+ <type>SoupMessage</type>'s
+ <structfield>method</structfield> field is now an interned
+ string, and you can compare the method directly against
+ the defines such as <link
+ linkend="SOUP-METHOD-GET:CAPS"><literal>SOUP_METHOD_GET</literal></link>
+ (eg, in a <type>SoupServer</type> request handler).
+ <function>soup_method_get_id</function> and the
+ <literal>SOUP_METHOD_ID_*</literal> macros are now gone.
+</para>
+</refsect3>
+
+<refsect3>
+<title>Handlers</title>
+
+<para>
+ <link
+ linkend="soup-message-add-header-handler"><function>soup_message_add_header_handler</function></link>
+ and <link
+ linkend="soup-message-add-status-code-handler"><function>soup_message_add_status_code_handler</function></link>
+ are now just clever wrappers around
+ <function>g_signal_connect</function>. In particular, you now pass
+ a signal name to them rather than a <type>SoupHandlerPhase</type>,
+ and you remove them with the normal signal handler remove methods.
+ However, they still retain the special behavior that if the
+ message has been cancelled or requeued when the time comes for the
+ handler to run, then the handler will be skipped. (Use plain
+ <function>g_signal_connect</function> if you don't want that
+ behavior.)
+</para>
+</refsect3>
+
+<refsect3>
+<title>I/O-related <type>SoupMessage</type> methods</title>
+
+<para>
+ <function>soup_message_io_pause</function> and
+ <function>soup_message_io_unpause</function> have been moved to
+ <type>SoupSession</type> and <type>SoupServer</type>, to better
+ reflect the fact that the session/server control the I/O, and
+ <type>SoupMessage</type> is merely acted-upon by them.
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><function>soup_message_io_pause</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-session-pause-message"><function>soup_session_pause_message</function></link> / <link linkend="soup-server-pause-message"><function>soup_server_pause_message</function></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>soup_message_io_unpause</function></term>
+ <listitem><para>
+ &#8594; <link linkend="soup-session-unpause-message"><function>soup_session_unpause_message</function></link> / <link linkend="soup-server-unpause-message"><function>soup_server_unpause_message</function></link>
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+
+<para>
+ <literal>msg->status</literal> (the I/O status) is now
+ gone as well, because (a) it's really an internal state of
+ <type>SoupSession</type>, and (b) it's too easy to confuse
+ with <literal>msg->status_code</literal> (the HTTP status)
+ anyway. Code that used to check if status was
+ <literal>SOUP_MESSAGE_STATUS_FINISHED</literal> needs to
+ be rewritten to track whether or not the <link
+ linkend="SoupMessage-finished"><literal>finished</literal></link>
+ signal has been emitted.
+</para>
+
+</refsect3>
+
+<refsect3>
+<title>HTTP-Version</title>
+
+<para>
+ <type>SoupHttpVersion</type> is now <link
+ linkend="SoupHTTPVersion"><type>SoupHTTPVersion</type></link>
+</para>
+</refsect3>
+
+</refsect2>
+
+<refsect2>
+<title>SoupSession</title>
+
+<refsect3>
+<title><function>soup_session_queue_message</function> callback</title>
+
+<para>
+ <link
+ linkend="soup-session-queue-message"><function>soup_session_queue_message</function></link>'s
+ callback parameter now includes the <type>SoupSession</type> as a
+ parameter, reflecting the fact that it is a
+ <type>SoupSession</type> callback, not a <type>SoupMessage</type>
+ callback. (It has also been renamed, from
+ <type>SoupMessageCallbackFn</type> to <link
+ linkend="SoupSessionCallback"><type>SoupSessionCallback</type></link>.)
+</para>
+</refsect3>
+
+<refsect3>
+<title>Authentication</title>
+
+<para>
+ <type>SoupSession</type>'s <literal>authenticate</literal> and
+ <literal>reauthenticate</literal> signals have been merged into a
+ single <link
+ linkend="SoupSession-authenticate"><literal>authenticate</literal></link>
+ signal with a <parameter>retrying</parameter> parameter to indicate if
+ it's the second (or later) try. Also, the signal now includes a
+ <link linkend="SoupAuth"><type>SoupAuth</type></link> directly,
+ and you authenticate by calling <link
+ linkend="soup-auth-authenticate"><function>soup_auth_authenticate</function></link>
+ on the auth (rather than passing back a username and password from
+ the signal handler).
+</para>
+</refsect3>
+
+<refsect3>
+<title><type>SoupLogger</type></title>
+
+<para>
+<link linkend="libsoup-SoupLogger"><type>SoupLogger</type></link> is a
+new object that copies the behavior of
+<application>evolution-exchange</application>'s
+<literal>E2K_DEBUG</literal> and its clones. That is, it causes a
+<type>SoupSession</type> to start logging some or all of its HTTP
+traffic to stdout, for debugging purposes.
+</para>
+</refsect3>
+
+<refsect3>
+<title><type>SoupMessageFilter</type></title>
+
+<para>
+ <type>SoupMessageFilter</type> is gone; code that used to use it
+ can now connect to the <link
+ linkend="SoupSession-request-started"><literal>SoupSession::request-started</literal></link>
+ signal to get a chance to act on each message as it is sent.
+ (This is how <type>SoupLogger</type> works.)
+</para>
+</refsect3>
+
+<refsect3>
+<title>Internal types</title>
+
+<para>
+ The <type>SoupConnection</type> and <type>SoupMessageQueue</type>
+ types (which should always have been internal to
+ <type>SoupSession</type>) have been removed from the public API.
+</para>
+</refsect3>
+
+</refsect2>
+
+<refsect2>
+<title>SoupURI</title>
+
+<type>SoupUri</type> has been renamed <link
+linkend="SoupURI"><type>SoupURI</type></link>, and its behavior has
+changed in a few ways:
+
+<itemizedlist>
+ <listitem>
+ <para>
+ It no longer fully-decodes %-encoded URI components. This
+ is necessary to ensure that complicated URIs (eg, URIs
+ that include other URIs as query parameters) can be
+ round-tripped correctly. This corresponds to the old
+ <structfield>broken_encoding</structfield> behavior, but
+ that flag no longer exists, since it is the default and
+ there's no way to turn it off.
+ </para>
+
+ <para>
+ In theory, this is an ABI-breaking change, especially for
+ <link
+ linkend="SoupServer"><type>SoupServer</type></link>s.
+ However, it is unlikely to actually break anything. (And
+ in the <type>SoupServer</type> case, servers now
+ fully-decode the <structfield>path</structfield> component
+ themselves unless you set the <link
+ linkend="SOUP-SERVER-RAW-PATHS:CAPS"><literal>SOUP_SERVER_RAW_PATHS</literal></link>
+ flag on the server, so the behavior should still be the
+ same.
+ </para>
+ </listitem>
+
+ <listitem><para>
+ It uses the RFC3986 parsing rules, including support for IPv6 literal
+ addresses.
+ </para></listitem>
+
+ <listitem>
+ <para>
+ The field formerly called
+ <structfield>protocol</structfield> is now
+ <structfield>scheme</structfield>, to match the spec, and
+ it's an interned string rather than a quark. The names of
+ the predefined values have changed to match:
+ </para>
+
+ <variablelist>
+ <varlistentry>
+ <term><function>SOUP_PROTOCOL_HTTP</function></term>
+ <listitem><para>
+ &#8594; <link linkend="SOUP-URI-SCHEME-HTTP:CAPS"><literal>SOUP_URI_SCHEME_HTTP</literal></link>
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><function>SOUP_PROTOCOL_HTTPS</function></term>
+ <listitem><para>
+ &#8594; <link linkend="SOUP-URI-SCHEME-HTTPS:CAPS"><literal>SOUP_URI_SCHEME_HTTPS</literal></link>
+ </para></listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+</itemizedlist>
+
+<para>
+<link linkend="soup-uri-decode"><function>soup_uri_decode</function></link>
+now returns a new string rather than modifying its input string in
+place. The new method <link
+linkend="soup-uri-normalize"><function>soup_uri_normalize</function></link>,
+which removes some, but not all, %-encoding, behaves similarly.
+</para>
+
+<para>
+Finally, <type>SoupURI</type> (as well as most other struct types in
+<application>libsoup</application>) now uses the glib "slice"
+allocator, so any code that uses <link
+linkend="g-new"><function>g_new</function></link> to create
+<type>SoupURI</type>s is wrong. If you want to create a URI "by hand",
+you can call <link
+linkend="soup-uri-new"><function>soup_uri_new</function></link>,
+passing <literal>NULL</literal>, and you will get back an empty
+<type>SoupURI</type>. There are also now methods that can be used to
+set its fields (eg, <link
+linkend="soup-uri-set-scheme"><function>soup_uri_set_scheme</function></link>,
+<link
+linkend="soup-uri-set-path"><function>soup_uri_set_path</function></link>,
+etc) rather than mucking with the fields directly.
+</para>
+
+<refsect3>
+<title>Forms</title>
+
+<para>
+Related to <type>SoupURI</type>, there are some new helper methods for
+dealing with HTML forms. <link
+linkend="soup-form-decode-urlencoded">soup_form_decode_urlencoded</link>
+decodes a URI <structfield>query</structfield> component (or an
+<literal>application/x-www-form-urlencoded</literal> request body)
+into a <type>GHashTable</type>. <link
+linkend="soup-form-encode-urlencoded">soup_form_encode_urlencoded</link>
+reverses the process, allowing you to fill in a
+<literal>uri->query</literal> with a properly-encoded form dataset.
+(<type>SoupURI</type> also provides <link
+linkend="soup-uri-set-query-from-form"><function>soup_uri_set_query_from_form</function></link>
+to help with this.)
+</para>
+</refsect3>
+
+</refsect2>
+
+
+<refsect2>
+<title>XML-RPC and SOAP</title>
+
+<refsect3>
+<title>SOAP</title>
+<para>
+SOAP support has been removed; the existing methods covered only a
+teeny tiny subset of SOAP, which was really only useful to a single
+application. (The code that was formerly in libsoup has been moved to
+that application.). If you were using this code, you can resurrect a
+libsoup-2.4-compatible version of it from revision 1016 of libsoup
+svn.
+</para>
+</refsect3>
+
+<refsect3>
+<title>XML-RPC</title>
+<para>
+The XML-RPC code has been completely rewritten to make it simpler to
+implement XML-RPC clients and servers. (Note: the server-side code has
+not been heavily tested yet.) The <link
+linkend="libsoup-XMLRPC-Support">new XML-RPC API</link> makes use of
+<type>GValue</type>s, with the following type mappings:
+</para>
+
+<variablelist>
+ <varlistentry>
+ <term><literal>int</literal></term>
+ <listitem><para>
+ &#8594; <type>int</type> (<link linkend="G-TYPE-INT:CAPS"><literal>G_TYPE_INT</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>boolean</literal></term>
+ <listitem><para>
+ &#8594; <type>gboolean</type> (<link linkend="G-TYPE-BOOLEAN:CAPS"><literal>G_TYPE_BOOLEAN</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>string</literal></term>
+ <listitem><para>
+ &#8594; <type>char *</type> (<link linkend="G-TYPE-STRING:CAPS"><literal>G_TYPE_STRING</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>double</literal></term>
+ <listitem><para>
+ &#8594; <type>double</type> (<link linkend="G-TYPE-DOUBLE:CAPS"><literal>G_TYPE_DOUBLE</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>dateTime.iso8601</literal></term>
+ <listitem><para>
+ &#8594; <link linkend="SoupDate"><type>SoupDate</type></link> (<link linkend="SOUP-TYPE-DATE:CAPS"><literal>SOUP_TYPE_DATE</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>base64</literal></term>
+ <listitem><para>
+ &#8594; <type>GByteArray</type> (<link linkend="SOUP-TYPE-BYTE-ARRAY:CAPS"><literal>SOUP_TYPE_BYTE_ARRAY</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>struct</literal></term>
+ <listitem><para>
+ &#8594; <type>GHashTable</type> (<link linkend="G-TYPE-HASH-TABLE:CAPS"><literal>G_TYPE_HASH_TABLE</literal></link>)
+ </para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>array</literal></term>
+ <listitem><para>
+ &#8594; <type>GValueArray</type> (<link linkend="G-TYPE-VALUE-ARRAY:CAPS"><literal>G_TYPE_VALUE_ARRAY</literal></link>)
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+
+<para>
+<type>SoupDate</type> is discussed below.
+<literal>SOUP_TYPE_BYTE_ARRAY</literal> is just a new
+<type>GType</type> value defined by <application>libsoup</application>
+to represent <type>GByteArray</type>s, which glib does not define a
+<type>GType</type> for.
+</para>
+
+<para>
+<application>libsoup</application> provides some additional <link
+linkend="libsoup-GValue-Support"><type>GValue</type> support
+methods</link> for working with
+<type>GValueArray</type>s, and <type>GHashTable</type>s of
+<type>GValue</type>s, for the XML-RPC <literal>struct</literal> and
+<literal>array</literal> types. Eg, you can use <link
+linkend="soup-value-hash-new"><function>soup_value_hash_new</function></link>
+to create a <type>GHashTable</type> to use with the XML-RPC methods,
+and <link
+linkend="soup-value-hash-insert"><function>soup_value_hash_insert</function></link>
+to add values to it without needing to muck with <type>GValue</type>s
+directly.
+</para>
+
+<para>
+The <literal>getbug</literal> and <literal>xmlrpc-test</literal>
+programs in the <application>libsoup</application> sources provide
+examples of how to use the new API. (Beware that
+<literal>xmlrpc-test</literal>'s use of the API is a little
+complicated because of the way it sends all calls through a single
+<literal>do_xmlrpc</literal> method.)
+</para>
+
+</refsect3>
+</refsect2>
+
+<refsect2>
+<title>SoupServer</title>
+
+<refsect3>
+<title>SoupServer handlers</title>
+
+<para>
+ The prototypes for <link
+ linkend="soup-server-add-handler"><function>soup_server_add_handler</function></link>,
+ and for the <link
+ linkend="SoupServerCallback"><type>SoupServer</type>
+ handlers</link> themselves have changed:
+</para>
+
+<informalexample><programlisting>
+typedef void (*SoupServerCallback) (SoupServer *server,
+ SoupMessage *msg,
+ const char *path,
+ GHashTable *query,
+ SoupClientContext *client,
+ gpointer user_data);
+
+void soup_server_add_handler (SoupServer *server,
+ const char *path,
+ SoupServerCallback callback,
+ gpointer data,
+ GDestroyNotify destroy);
+</programlisting></informalexample>
+
+<para>
+ <function>soup_server_add_handler</function> no longer takes a
+ <type>SoupServerAuthContext</type> (see the discussion of server
+ authentication below), and the order of the final two arguments
+ has been swapped. (Additionally, <type>SoupServerCallbackFn</type>
+ has been renamed to <type>SoupServerCallback</type>, and the old
+ <parameter>unregister</parameter> parameter of type
+ <type>SoupServerUnregisterFn</type> is now a standard
+ <type>GDestroyNotify</type>. The change to
+ <type>GDestroyNotify</type> and the swapping of the final two
+ arguments is to make the method conform to standard glib/gtk
+ practices.)
+</para>
+
+<para>
+ In <type>SoupServerCallback</type>, several bits of data that used
+ to be part of the <parameter>context</parameter> argument are now
+ provided directly, and <parameter>context</parameter> specifically
+ only contains more specifically-client-related information (such
+ as the <type>SoupSocket</type> that the request arrived on, and
+ information about authentication).
+</para>
+
+<para>
+ <parameter>path</parameter> is the fully %-decoded path component
+ of <parameter>msg</parameter>'s URI, and
+ <parameter>query</parameter> is a hash table containing
+ <parameter>msg</parameter>'s URI's
+ <structfield>query</structfield> component decoded with <link
+ linkend="soup-form-decode-urlencoded">soup_form_decode_urlencoded</link>.
+ These are provided for your convenience; if you need the raw
+ query, you can get it out of <parameter>msg</parameter>'s URI
+ directly. If you need the raw path, you'll need to set the <link
+ linkend="SOUP-SERVER-RAW-PATHS:CAPS"><literal>SOUP_SERVER_RAW_PATHS</literal></link>
+ property on the server, which actually changes the behavior of the
+ server with respect to how paths are matched; see the
+ documentation for details.
+</para>
+</refsect3>
+
+<refsect3>
+<title>Server-side authentication</title>
+
+<para>
+ <type>SoupServer</type> authentication has been completely
+ rewritten, with <type>SoupServerAuthContext</type> being replaced
+ with <link
+ linkend="SoupAuthDomain"><type>SoupAuthDomain</type></link>. Among
+ other improvements, you no longer need to have the cleartext
+ password available to check against. See the
+ <type>SoupAuthDomain</type> documentation, the <link
+ linkend="libsoup-server-howto">server tutorial</link>, and
+ <literal>tests/server-auth-test.c</literal>.
+</para>
+</refsect3>
+
+<refsect3>
+<title><literal>Expect: 100-continue</literal> and other early <type>SoupMessage</type> processing</title>
+
+<para>
+ <type>SoupServer</type> now handles
+ "<literal>Expect:&#160;100-continue</literal>" correctly. In
+ particular, if the client passes that header, and your server
+ requires authentication, then authentication will be checked
+ before reading the request body.
+</para>
+
+<para>
+ If you want to do additional pre-request-body handling, you can
+ connect to <type>SoupServer</type>'s <link
+ linkend="SoupServer-request-started"><literal>request_started</literal></link>
+ signal, and connect to the request's <link
+ linkend="SoupMessage-got-headers"><literal>got_headers</literal></link>
+ signal from there. (See the description of
+ <literal>request_started</literal> for information about other
+ related <type>SoupServer</type> signals.)
+</para>
+</refsect3>
+
+<refsect3>
+<title>Date header</title>
+
+<para>
+ <type>SoupServer</type> now automatically sets the
+ <literal>Date</literal> header on all responses, as required by
+ RFC 2616.
+</para>
+</refsect3>
+
+<refsect3>
+<title>SoupServerMessage</title>
+
+<para>
+ <type>SoupServerMessage</type> is now merged into
+ <type>SoupMessage</type>.
+ <function>soup_server_message_set_encoding</function> is replaced
+ with <link
+ linkend="soup-message-headers-set-encoding"><function>soup_message_headers_set_encoding</function></link>
+ as described in the section on <type>SoupMessage</type> above.
+</para>
+</refsect3>
+
+<refsect3>
+<title><function>soup_server_run</function> / <function>soup_server_quit</function></title>
+
+<para>
+ <link
+ linkend="soup-server-run"><function>soup_server_run</function></link>
+ and <link
+ linkend="soup-server-run-async"><function>soup_server_run_async</function></link>
+ no longer <function>g_object_ref</function> the server, and
+ <link
+ linkend="soup-server-quit"><function>soup_server_quit</function></link>
+ no longer unrefs it.
+</para>
+</refsect3>
+
+</refsect2>
+
+<refsect2>
+<title>Miscellaneous</title>
+
+<refsect3>
+<title>SoupDate</title>
+
+<para>
+ The new <link linkend="SoupDate"><type>SoupDate</type></link> type
+ replaces the old <function>soup_date_*</function> methods, and has
+ an improved (more liberal) date parser.
+</para>
+</refsect3>
+
+<refsect3>
+<title>Header parsing</title>
+
+<para>
+ <literal>soup-headers.h</literal> now has a few additional methods
+ for parsing list-type headers.
+</para>
+</refsect3>
+
+<refsect3>
+<title>SoupAddress, SoupSocket</title>
+
+<para>
+ <type>SoupSocket</type> has had various simplifications made to
+ reflect the fact that this is specifically libsoup's socket
+ implementation, not some random generic socket API.
+</para>
+
+<para>
+ Various <type>SoupAddress</type> and <type>SoupSocket</type>
+ methods now take arguments of the new <link
+ linkend="GCancellable"><type>GCancellable</type></link> type, from
+ libgio. When porting old code, you can just pass
+ <literal>NULL</literal> for these. (<link
+ linkend="soup-address-resolve-async"><function>soup_address_resolve_async</function></link>
+ also takes another new argument, a <link
+ linkend="GMainContext"><type>GMainContext</type></link> that
+ you'll want to pass <literal>NULL</literal> for.) If you pass a
+ <type>GCancellable</type>, you can use it to cleanly cancel the
+ address resolution / socket operation.
+</para>
+
+</refsect3>
+
+<refsect3>
+<title>Base64 methods</title>
+
+<para>
+ The deprecated base64 methods are now gone; use glib's base64
+ methods instead.
+</para>
+</refsect3>
+
+</refsect2>
+
+</refentry>
diff --git a/docs/reference/server-howto.xml b/docs/reference/server-howto.xml
index 2d7971b6..76c19182 100644
--- a/docs/reference/server-howto.xml
+++ b/docs/reference/server-howto.xml
@@ -21,17 +21,6 @@ most of your interactions with libsoup. In this case, <link
linkend="SoupServer"><type>SoupServer</type></link>.
</para>
-<warning>
- <para>
- Note that <type>SoupServer</type> isn't as polished as
- <type>SoupSession</type>, and thus not as stable, and the APIs
- will likely change in incompatible (but not
- difficult-to-port-to) ways in the future to make things nicer.
- We apologize in advance for the inconvenience.
- </para>
-</warning>
-
-
<para>
You create the server with <link
linkend="soup-server-new"><function>soup_server_new</function></link>,
@@ -83,6 +72,16 @@ various additional options:
other than the main thread.
</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><link linkend="SOUP-SERVER-RAW-PATHS:CAPS"><literal>SOUP_SERVER_RAW_PATHS</literal></link></term>
+ <listitem><para>
+ Set this to <literal>TRUE</literal> if you don't want
+ <application>libsoup</application> to decode %-encoding
+ in the Request-URI. (Eg, because you need to treat
+ <literal>"/foo/bar"</literal> and
+ <literal>"/foo%2Fbar"</literal> as different paths.
+ </para></listitem>
+ </varlistentry>
</variablelist>
</refsect2>
@@ -100,8 +99,8 @@ to set a callback to handle certain URI paths.
</para>
<informalexample><programlisting>
-soup_server_add_handler (server, "/foo", NULL, server_callback,
- unregister_callback, data);
+ soup_server_add_handler (server, "/foo", server_callback,
+ data, destroy_notify);
</programlisting></informalexample>
<para>
@@ -131,18 +130,28 @@ A handler callback looks something like this:
<informalexample><programlisting>
static void
-server_callback (SoupServerContext *context, SoupMessage *msg, gpointer data)
+server_callback (SoupServer *server,
+ SoupMessage *msg,
+ const char *path,
+ GHashTable *query,
+ SoupClientContext *client,
+ gpointer user_data)
{
...
}
</programlisting></informalexample>
<para>
-<literal>msg</literal> is the request that has been received.
-<literal>data</literal> is the same data that was passed to <link
+<literal>msg</literal> is the request that has been received and
+<literal>user_data</literal> is the data that was passed to <link
linkend="soup-server-add-handler"><function>soup_server_add_handler</function></link>.
-The <link>context</link> argument contains some additional information
-related to the request.
+<literal>path</literal> is the path (from <literal>msg</literal>'s
+URI), and <literal>query</literal> contains the result of parsing the
+URI query field. (It is <literal>NULL</literal> if there was no
+query.) <literal>client</literal> is a <link
+linkend="SoupClientContext"><type>SoupClientContext</type></link>,
+which contains additional information about the client (including its
+IP address, and whether or not it used HTTP authentication).
</para>
<para>
@@ -151,10 +160,10 @@ completely finished processing the message when you return from the
callback, and that it can therefore begin sending the response. If you
are not ready to send a response immediately (eg, you have to contact
another server, or wait for data from a database), you must call <link
-linkend="soup-message-io-pause"><function>soup_message_io_pause</function></link>
+linkend="soup-server-pause-message"><function>soup_server_pause_message</function></link>
on the message before returning from the callback. This will delay
sending a response until you call <link
-linkend="soup-message-io-unpause"><function>soup_message_io_unpause</function></link>.
+linkend="soup-server-unpause-message"><function>soup_server_unpause_message</function></link>.
(You must also connect to the <link
linkend="SoupMessage-finished">finished</link> signal on the message
in this case, so that you can break off processing if the client
@@ -166,10 +175,8 @@ To set the response status, call <link
linkend="soup-message-set-status"><function>soup_message_set_status</function></link>
or <link
linkend="soup-message-set-status-full"><function>soup_message_set_status_full</function></link>.
-If the response requires a body, the callback must call <link
-linkend="soup-server-message-set-encoding"><function>soup_server_message_set_encoding</function></link>
-to indicate whether it will provide the response all at once with
-<literal>Content-Length</literal> encoding, or in pieces with
+If the response requires a body, you must decide whether to use
+<literal>Content-Length</literal> encoding (the default), or
<literal>chunked</literal> encoding.
</para>
@@ -184,29 +191,34 @@ data available at once.
<informalexample><programlisting>
static void
-server_callback (SoupServerContext *context, SoupMessage *msg, gpointer data)
+server_callback (SoupServer *server,
+ SoupMessage *msg,
+ const char *path,
+ GHashTable *query,
+ SoupClientContext *client,
+ gpointer user_data)
{
- MyServerData *server_data = data;
- SoupUri *uri = soup_message_get_uri (msg);
+ MyServerData *server_data = user_data;
const char *mime_type;
GByteArray *body;
- if (context->method_id != SOUP_METHOD_ID_GET) {
+ if (msg->method != SOUP_METHOD_GET) {
soup_message_set_status (msg, SOUP_STATUS_NOT_IMPLEMENTED);
return;
}
- body = g_hash_table_lookup (server_data->bodies, uri->path);
- mime_type = g_hash_table_lookup (server_data->mime_types, uri->path);
+ /* This is somewhat silly. Presumably your server will do
+ * something more interesting.
+ */
+ body = g_hash_table_lookup (server_data->bodies, path);
+ mime_type = g_hash_table_lookup (server_data->mime_types, path);
if (!body || !mime_type) {
soup_message_set_status (msg, SOUP_STATUS_NOT_FOUND);
return;
}
soup_message_set_status (msg, SOUP_STATUS_OK);
- soup_server_message_set_encoding (SOUP_SERVER_MESSAGE (msg),
- SOUP_TRANSFER_CONTENT_LENGTH);
- soup_message_set_response (msg, mime_type, SOUP_BUFFER_USER_OWNED,
+ soup_message_set_response (msg, mime_type, SOUP_MEMORY_COPY,
body->data, body->len);
}
</programlisting></informalexample>
@@ -219,16 +231,22 @@ server_callback (SoupServerContext *context, SoupMessage *msg, gpointer data)
<para>
If you want to supply the response body in chunks as it becomes
available, use <literal>chunked</literal> encoding instead. In this
-case, call <link
-linkend="soup-message-add-chunk"><function>soup_message_add_chunk</function></link> with
-each chunk of the response body as it becomes available, and call
-<link
-linkend="soup-message-add-final-chunk"><function>soup_message_add_final_chunk</function></link>
+case, first call <link
+linkend="soup-message-headers-set-encoding"><function>soup_message_headers_set_encoding</function></link>&#160;<literal>(msg->response_headers,&#160;<link
+linkend="SoupEncoding">SOUP_ENCODING_CHUNKED</link>)</literal>
+to tell <application>libsoup</application> that you'll be using
+chunked encoding. Then call <link
+linkend="soup-message-body-append"><function>soup_message_body_append</function></link>
+(or <link
+linkend="soup-message-body-append-buffer"><function>soup_message_body_append_buffer</function></link>)
+on <literal>msg->response_body</literal> with each chunk of the
+response body as it becomes available, and call <link
+linkend="soup-message-body-complete"><function>soup_message_body_complete</function></link>
when the response is complete. After each of these calls, you must
also call <link
-linkend="soup-message-io-unpause"><function>soup_message_io_unpause</function></link> to
-cause the chunk to be sent. (You do not normally need to call
-<link linkend="soup-message-io-pause"><function>soup_message_io_pause</function></link>,
+linkend="soup-server-unpause-message"><function>soup_server_unpause_message</function></link>
+to cause the chunk to be sent. (You do not normally need to call <link
+linkend="soup-server-pause-message"><function>soup_server_pause_message</function></link>,
because I/O is automatically paused when doing a
<literal>chunked</literal> transfer if no chunks are available.)
</para>
@@ -239,7 +257,9 @@ linkend="SoupMessage-finished">finished</link> signal on the message,
so that you will be notified if the client disconnects between two
chunks; <type>SoupServer</type> will unref the message if that
happens, so you must stop adding new chunks to the response at that
-point.
+point. (An alternate possibility is to write each new chunk only when
+the <link linkend="SoupMessage-wrote-chunk">wrote_chunk</link> signal
+is emitted indicating that the previous one was written successfully.)
</para>
<para>
@@ -257,59 +277,92 @@ using <literal>chunked</literal> encoding.
<para>
To have <link linkend="SoupServer"><type>SoupServer</type></link>
-handle HTTP authentication for you, pass a <link
-linkend="SoupAuthContext"><type>SoupAuthContext</type></link> to <link
-linkend="soup-server-add-handler"><function>soup_server_add_handler</function></link>:
+handle HTTP authentication for you, create a <link
+linkend="SoupAuthDomainBasic"><type>SoupAuthDomainBasic</type></link>
+or <link
+linkend="SoupAuthDomainDigest"><type>SoupAuthDomainDigest</type></link>,
+and pass it to <link
+linkend="soup-server-add-auth-domain"><function>soup_server_add_auth_domain</function></link>:
</para>
<informalexample><programlisting>
-SoupServerAuthContext auth_ctx;
-
-auth_ctx.types = SOUP_AUTH_TYPE_BASIC;
-auth_ctx.callback = auth_callback;
-auth_ctx.user_data = data;
-auth_ctx.basic_info.realm = "My Realm";
-
-soup_server_add_handler (server, "/bar", &amp;auth_ctx, server_callback,
- unregister_callback, data);
+ SoupAuthDomain *domain;
+
+ domain = soup_auth_domain_basic_new (
+ SOUP_AUTH_DOMAIN_REALM, "My Realm",
+ SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK, auth_callback,
+ SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA, auth_data,
+ SOUP_AUTH_DOMAIN_ADD_PATH, "/foo",
+ SOUP_AUTH_DOMAIN_ADD_PATH, "/bar/private",
+ NULL);
+ soup_server_add_auth_domain (server, domain);
+ g_object_unref (domain);
</programlisting></informalexample>
<para>
-Then, every request that matches that handler will be passed to the
-<literal>auth_callback</literal> first before being passed to the
-<literal>server_callback</literal>:
+Then, every request under one of the auth domain's paths will be
+passed to the <literal>auth_callback</literal> first before being
+passed to the <literal>server_callback</literal>:
</para>
<informalexample><programlisting>
static gboolean
-auth_callback (SoupServerAuthContext *auth_ctx, SoupServerAuth *auth,
- SoupMessage *msg, gpointer user_data)
+auth_callback (SoupAuthDomain *domain, SoupMessage *msg,
+ const char *username, const char *password,
+ gpointer user_data)
{
MyServerData *server_data = user_data;
- const char *username, *password;
+ MyUserData *user;
- if (!auth)
+ user = my_server_data_lookup_user (server_data, username);
+ if (!user)
return FALSE;
- username = soup_server_auth_get_user (auth);
- password = g_hash_table_lookup (server_data->passwords, username);
- if (!password)
- return FALSE;
-
- return soup_server_auth_check_passwd (auth, password);
+ /* FIXME: Don't do this. Keeping a cleartext password database
+ * is bad.
+ */
+ return strcmp (password, user->password) == 0;
}
</programlisting></informalexample>
<para>
-The <literal>auth</literal> parameter indicates the authentication
-information passed by the client. If no
-<literal>WWW-Authenticate</literal> header was present, this will be
-<literal>NULL</literal>, so we return <literal>FALSE</literal> from
-the callback to indicate that the server should return a <literal>401
-Unauthorized</literal> response. If it is non-<literal>NULL</literal>,
-we extract the username from it, and compare it against our stored
-password. Assuming it matches, we return <literal>TRUE</literal>, and
-the server callback is then invoked normally.
+The <link
+linkend="SoupAuthDomainBasicAuthCallback"><type>SoupAuthDomainBasicAuthCallback</type></link>
+is given the username and password from the
+<literal>Authorization</literal> header and must determine, in some
+server-specific manner, whether or not to accept them. (In this
+example we compare the password against a cleartext password database,
+but it would be better to store the password somehow encoded, as in
+the UNIX password database. Alternatively, you may need to delegate
+the password check to PAM or some other service.)
+</para>
+
+<para>
+If you are using Digest authentication, note that <link
+linkend="SoupAuthDomainDigestAuthCallback"><type>SoupAuthDomainDigestAuthCallback</type></link>
+works completely differently (since the server doesn't receive the
+cleartext password from the client in that case, so there's no way to
+compare it directly). See the documentation for <link
+linkend="SoupAuthDomainDigest"><type>SoupAuthDomainDigest</type></link>
+for more details.
+</para>
+
+<para>
+You can have multiple <type>SoupAuthDomain</type>s attached to a
+<literal>SoupServer</literal>, either in separate parts of the path
+hierarchy, or overlapping. (Eg, you might want to accept either Basic
+or Digest authentication for a given path.) When more than one auth
+domain covers a given path, the request will be accepted if the user
+authenticates successfully against <emphasis>any</emphasis> of the
+domains.
+</para>
+
+<para>
+If you want to require authentication for some requests under a
+certain path, but not all of them (eg, you want to authenticate
+<literal>PUT</literal>s, but not <literal>GET</literal>s), use a
+<link
+linkend="SoupAuthDomainFilter"><type>SoupAuthDomainFilter</type></link>.
</para>
</refsect2>
diff --git a/docs/reference/tmpl/libsoup-unused.sgml b/docs/reference/tmpl/libsoup-unused.sgml
deleted file mode 100644
index f4901ef4..00000000
--- a/docs/reference/tmpl/libsoup-unused.sgml
+++ /dev/null
@@ -1,497 +0,0 @@
-<!-- ##### SECTION ./tmpl/soup-auth-basic.sgml:Long_Description ##### -->
-<para>
-This implements the Basic HTTP Authentication mechanism, as described
-in RFC 2617. It is created automatically by #SoupSession when needed.
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-basic.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-basic.sgml:Short_Description ##### -->
-HTTP Basic Authentication
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-basic.sgml:Title ##### -->
-SoupAuthBasic
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-digest.sgml:Long_Description ##### -->
-<para>
-This implements the Digest HTTP Authentication mechanism, as described
-in RFC 2617. It is created automatically by #SoupSession when needed.
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-digest.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-digest.sgml:Short_Description ##### -->
-HTTP Digest Authentication
-
-
-<!-- ##### SECTION ./tmpl/soup-auth-digest.sgml:Title ##### -->
-SoupAuthDigest
-
-
-<!-- ##### SECTION ./tmpl/soup-md5-utils.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-md5-utils.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-md5-utils.sgml:Short_Description ##### -->
-MD5 hash utilities
-
-
-<!-- ##### SECTION ./tmpl/soup-md5-utils.sgml:Title ##### -->
-soup-md5-utils
-
-
-<!-- ##### SECTION ./tmpl/soup-message-filter.sgml.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-filter.sgml.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-filter.sgml.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/soup-message-filter.sgml.sgml:Stability_Level ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/soup-message-filter.sgml.sgml:Title ##### -->
-Soup Miscellaneous Utilities
-
-
-<!-- ##### SECTION ./tmpl/soup-message-private.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-private.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-private.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/soup-message-private.sgml:Title ##### -->
-soup-message-private
-
-
-<!-- ##### SECTION ./tmpl/soup-message-queue.sgml:Long_Description ##### -->
-<para>
-#SoupMessageQueue maintains the queue of pending messages in a
-#SoupSession.
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-queue.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-message-queue.sgml:Short_Description ##### -->
-Message queue object
-
-
-<!-- ##### SECTION ./tmpl/soup-message-queue.sgml:Title ##### -->
-soup-message-queue
-
-
-<!-- ##### SECTION ./tmpl/soup-server-auth.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-server-auth.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/soup-server-auth.sgml:Short_Description ##### -->
-Server-side authentication structures
-
-
-<!-- ##### SECTION ./tmpl/soup-server-auth.sgml:Title ##### -->
-soup-server-auth
-
-
-<!-- ##### ENUM SoupAuthType ##### -->
-<para>
-
-</para>
-
-@SOUP_AUTH_TYPE_BASIC:
-@SOUP_AUTH_TYPE_DIGEST:
-
-<!-- ##### ENUM SoupDigestAlgorithm ##### -->
-<para>
-
-</para>
-
-@SOUP_ALGORITHM_MD5:
-@SOUP_ALGORITHM_MD5_SESS:
-
-<!-- ##### STRUCT SoupMD5Context ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### USER_FUNCTION SoupMessageGetHeadersFn ##### -->
-<para>
-
-</para>
-
-@msg:
-@headers:
-@encoding:
-@user_data:
-
-<!-- ##### USER_FUNCTION SoupMessageParseHeadersFn ##### -->
-<para>
-
-</para>
-
-@msg:
-@headers:
-@header_len:
-@encoding:
-@content_len:
-@user_data:
-@Returns:
-
-<!-- ##### TYPEDEF SoupMessageQueue ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT SoupMessageQueueIter ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT SoupServerAuthBasic ##### -->
-<para>
-
-</para>
-
-@type:
-@user:
-@passwd:
-
-<!-- ##### USER_FUNCTION SoupServerAuthCallbackFn ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@auth:
-@msg:
-@data:
-@Returns:
-
-<!-- ##### STRUCT SoupServerAuthContext ##### -->
-<para>
-
-</para>
-
-@types:
-@callback:
-@user_data:
-
-<!-- ##### STRUCT SoupServerAuthDigest ##### -->
-<para>
-
-</para>
-
-@type:
-@algorithm:
-@integrity:
-@realm:
-@user:
-@nonce:
-@nonce_count:
-@cnonce:
-@digest_uri:
-@digest_response:
-@request_method:
-
-<!-- ##### FUNCTION soup_md5_final ##### -->
-<para>
-
-</para>
-
-@ctx:
-@digest:
-
-<!-- ##### FUNCTION soup_md5_final_hex ##### -->
-<para>
-
-</para>
-
-@ctx:
-@digest:
-
-<!-- ##### FUNCTION soup_md5_init ##### -->
-<para>
-
-</para>
-
-@ctx:
-
-<!-- ##### FUNCTION soup_md5_update ##### -->
-<para>
-
-</para>
-
-@ctx:
-@buf:
-@len:
-
-<!-- ##### FUNCTION soup_message_cleanup_response ##### -->
-<para>
-
-</para>
-
-@req:
-
-<!-- ##### FUNCTION soup_message_finished ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_got_body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_got_chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_got_headers ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_got_informational ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_io_client ##### -->
-<para>
-
-</para>
-
-@msg:
-@sock:
-@get_headers_cb:
-@parse_headers_cb:
-@user_data:
-
-<!-- ##### FUNCTION soup_message_io_server ##### -->
-<para>
-
-</para>
-
-@msg:
-@sock:
-@get_headers_cb:
-@parse_headers_cb:
-@user_data:
-
-<!-- ##### FUNCTION soup_message_queue_append ##### -->
-<para>
-
-</para>
-
-@queue:
-@msg:
-
-<!-- ##### FUNCTION soup_message_queue_destroy ##### -->
-<para>
-
-</para>
-
-@queue:
-
-<!-- ##### FUNCTION soup_message_queue_first ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-<!-- ##### FUNCTION soup_message_queue_free_iter ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-
-<!-- ##### FUNCTION soup_message_queue_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-<!-- ##### FUNCTION soup_message_queue_next ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-<!-- ##### FUNCTION soup_message_queue_remove ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-<!-- ##### FUNCTION soup_message_queue_remove_message ##### -->
-<para>
-
-</para>
-
-@queue:
-@msg:
-
-<!-- ##### FUNCTION soup_message_restarted ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_run_handlers ##### -->
-<para>
-
-</para>
-
-@msg:
-@phase:
-
-<!-- ##### FUNCTION soup_message_wrote_body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_wrote_chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_wrote_headers ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_message_wrote_informational ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### FUNCTION soup_server_auth_check_passwd ##### -->
-<para>
-
-</para>
-
-@auth:
-@passwd:
-@Returns:
-
-<!-- ##### FUNCTION soup_server_auth_context_challenge ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@msg:
-@header_name:
-
-<!-- ##### FUNCTION soup_server_auth_free ##### -->
-<para>
-
-</para>
-
-@auth:
-
-<!-- ##### FUNCTION soup_server_auth_get_user ##### -->
-<para>
-
-</para>
-
-@auth:
-@Returns:
-
-<!-- ##### FUNCTION soup_server_auth_new ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@auth_hdrs:
-@msg:
-@Returns:
-
diff --git a/docs/reference/tmpl/soup-address.sgml b/docs/reference/tmpl/soup-address.sgml
deleted file mode 100644
index 5cebb3bc..00000000
--- a/docs/reference/tmpl/soup-address.sgml
+++ /dev/null
@@ -1,162 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupAddress
-
-<!-- ##### SECTION Short_Description ##### -->
-Higher-level IP address object
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupAddress represents the address of a TCP connection endpoint; both
-the IP address and the port. (It is somewhat like an object-oriented
-version of struct #sockaddr.)
-</para>
-
-<para>
-If libsoup was built with IPv6 support, #SoupAddress will allow both
-IPv4 and IPv6 addresses.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupAddress ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL SoupAddress::dns-result ##### -->
-<para>
-
-</para>
-
-@addr:
-@status:
-
-<!-- ##### ENUM SoupAddressFamily ##### -->
-<para>
-
-</para>
-
-@SOUP_ADDRESS_FAMILY_IPV4:
-@SOUP_ADDRESS_FAMILY_IPV6:
-
-<!-- ##### MACRO SOUP_ADDRESS_ANY_PORT ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### FUNCTION soup_address_new ##### -->
-<para>
-
-</para>
-
-@name:
-@port:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_new_from_sockaddr ##### -->
-<para>
-
-</para>
-
-@sa:
-@len:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_new_any ##### -->
-<para>
-
-</para>
-
-@family:
-@port:
-@Returns:
-
-
-<!-- ##### USER_FUNCTION SoupAddressCallback ##### -->
-<para>
-
-</para>
-
-@addr:
-@status:
-@data:
-
-
-<!-- ##### FUNCTION soup_address_resolve_async ##### -->
-<para>
-
-</para>
-
-@addr:
-@callback:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_address_resolve_async_full ##### -->
-<para>
-
-</para>
-
-@addr:
-@async_context:
-@callback:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_address_resolve_sync ##### -->
-<para>
-
-</para>
-
-@addr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_get_name ##### -->
-<para>
-
-</para>
-
-@addr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_get_sockaddr ##### -->
-<para>
-
-</para>
-
-@addr:
-@len:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_get_physical ##### -->
-<para>
-
-</para>
-
-@addr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_address_get_port ##### -->
-<para>
-
-</para>
-
-@addr:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-auth.sgml b/docs/reference/tmpl/soup-auth.sgml
deleted file mode 100644
index e612ffbb..00000000
--- a/docs/reference/tmpl/soup-auth.sgml
+++ /dev/null
@@ -1,117 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupAuth
-
-<!-- ##### SECTION Short_Description ##### -->
-HTTP Authentication support
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupAuth objects store the authentication data associated with a
-given bit of webspace. They are created and maintained automatically
-by #SoupSession.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-#SoupSession, #SoupConnectionNTLM
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupAuth ##### -->
-<para>
-The abstract base class for handling authentication. Specific HTTP
-Authentication mechanisms are implemented by its subclasses. (NTLM
-authentication, which works quite differently from normal HTTP
-authentication, is handled by #SoupConnectionNTLM.)
-</para>
-
-
-<!-- ##### STRUCT SoupAuthBasic ##### -->
-<para>
-An object representing Basic HTTP authentication.
-</para>
-
-
-<!-- ##### STRUCT SoupAuthDigest ##### -->
-<para>
-An object representing Digest HTTP authentication.
-</para>
-
-
-<!-- ##### FUNCTION soup_auth_new_from_header_list ##### -->
-<para>
-
-</para>
-
-@vals:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_get_scheme_name ##### -->
-<para>
-
-</para>
-
-@auth:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_get_realm ##### -->
-<para>
-
-</para>
-
-@auth:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_authenticate ##### -->
-<para>
-
-</para>
-
-@auth:
-@username:
-@password:
-
-
-<!-- ##### FUNCTION soup_auth_is_authenticated ##### -->
-<para>
-
-</para>
-
-@auth:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_get_authorization ##### -->
-<para>
-
-</para>
-
-@auth:
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_get_protection_space ##### -->
-<para>
-
-</para>
-
-@auth:
-@source_uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_auth_free_protection_space ##### -->
-<para>
-
-</para>
-
-@auth:
-@space:
-
-
diff --git a/docs/reference/tmpl/soup-connection-ntlm.sgml b/docs/reference/tmpl/soup-connection-ntlm.sgml
deleted file mode 100644
index f72ad2aa..00000000
--- a/docs/reference/tmpl/soup-connection-ntlm.sgml
+++ /dev/null
@@ -1,26 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupConnectionNTLM
-
-<!-- ##### SECTION Short_Description ##### -->
-NTLM-authenticated connection
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupSession automatically creates #SoupConnectionNTLM rather than
-#SoupConnection if you set the %SOUP_SESSION_USE_NTLM flag.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupConnectionNTLM ##### -->
-<para>
-
-</para>
-
-
diff --git a/docs/reference/tmpl/soup-connection.sgml b/docs/reference/tmpl/soup-connection.sgml
deleted file mode 100644
index 3af9305f..00000000
--- a/docs/reference/tmpl/soup-connection.sgml
+++ /dev/null
@@ -1,254 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupConnection
-
-<!-- ##### SECTION Short_Description ##### -->
-a single possibly-persistent HTTP connection
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupConnection represents a single connection to an HTTP server
-(possibly via a proxy). Connection objects are created and destroyed
-automatically by #SoupSession.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupConnection ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL SoupConnection::authenticate ##### -->
-<para>
-
-</para>
-
-@conn:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-<!-- ##### SIGNAL SoupConnection::connect-result ##### -->
-<para>
-
-</para>
-
-@conn:
-@status:
-
-<!-- ##### SIGNAL SoupConnection::disconnected ##### -->
-<para>
-
-</para>
-
-@conn:
-
-<!-- ##### SIGNAL SoupConnection::reauthenticate ##### -->
-<para>
-
-</para>
-
-@conn:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-<!-- ##### ARG SoupConnection:async-context ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupConnection:message-filter ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupConnection:origin-uri ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupConnection:proxy-uri ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupConnection:ssl-creds ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupConnection:timeout ##### -->
-<para>
-
-</para>
-
-<!-- ##### FUNCTION soup_connection_new ##### -->
-<para>
-
-</para>
-
-@propname1:
-@Varargs:
-@Returns:
-
-
-<!-- ##### USER_FUNCTION SoupConnectionCallback ##### -->
-<para>
-
-</para>
-
-@conn:
-@status:
-@data:
-
-
-<!-- ##### FUNCTION soup_connection_connect_async ##### -->
-<para>
-
-</para>
-
-@conn:
-@callback:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_connection_connect_sync ##### -->
-<para>
-
-</para>
-
-@conn:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_connection_disconnect ##### -->
-<para>
-
-</para>
-
-@conn:
-
-
-<!-- ##### FUNCTION soup_connection_is_in_use ##### -->
-<para>
-
-</para>
-
-@conn:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_connection_last_used ##### -->
-<para>
-
-</para>
-
-@conn:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_connection_send_request ##### -->
-<para>
-
-</para>
-
-@conn:
-@req:
-
-
-<!-- ##### FUNCTION soup_connection_authenticate ##### -->
-<para>
-
-</para>
-
-@conn:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-
-<!-- ##### FUNCTION soup_connection_reauthenticate ##### -->
-<para>
-
-</para>
-
-@conn:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-
-<!-- ##### FUNCTION soup_connection_release ##### -->
-<para>
-
-</para>
-
-@conn:
-
-
-<!-- ##### FUNCTION soup_connection_reserve ##### -->
-<para>
-
-</para>
-
-@conn:
-
-
-<!-- ##### MACRO SOUP_CONNECTION_ORIGIN_URI ##### -->
-<para>
-An alias for the "origin-uri" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_CONNECTION_PROXY_URI ##### -->
-<para>
-An alias for the "proxy-uri" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_CONNECTION_SSL_CREDENTIALS ##### -->
-<para>
-An alias for the "ssl-creds" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_CONNECTION_MESSAGE_FILTER ##### -->
-<para>
-An alias for the "message-filter" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_CONNECTION_ASYNC_CONTEXT ##### -->
-<para>
-An alias for the "async-context" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_CONNECTION_TIMEOUT ##### -->
-<para>
-An alias for the "timeout" property.
-</para>
-
-
-
diff --git a/docs/reference/tmpl/soup-dns.sgml b/docs/reference/tmpl/soup-dns.sgml
deleted file mode 100644
index bc13b525..00000000
--- a/docs/reference/tmpl/soup-dns.sgml
+++ /dev/null
@@ -1,123 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-dns
-
-<!-- ##### SECTION Short_Description ##### -->
-Low-level DNS routines
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### FUNCTION soup_dns_init ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### FUNCTION soup_dns_ntop ##### -->
-<para>
-
-</para>
-
-@sa:
-@Returns:
-
-
-<!-- ##### TYPEDEF SoupDNSLookup ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_dns_lookup_name ##### -->
-<para>
-
-</para>
-
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_address ##### -->
-<para>
-
-</para>
-
-@sockaddr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_resolve ##### -->
-<para>
-
-</para>
-
-@lookup:
-@Returns:
-
-
-<!-- ##### USER_FUNCTION SoupDNSCallback ##### -->
-<para>
-
-</para>
-
-@lookup:
-@success:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_resolve_async ##### -->
-<para>
-
-</para>
-
-@lookup:
-@async_context:
-@callback:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_cancel ##### -->
-<para>
-
-</para>
-
-@lookup:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_get_hostname ##### -->
-<para>
-
-</para>
-
-@lookup:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_get_address ##### -->
-<para>
-
-</para>
-
-@lookup:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_dns_lookup_free ##### -->
-<para>
-
-</para>
-
-@lookup:
-
-
diff --git a/docs/reference/tmpl/soup-md5-utils.sgml b/docs/reference/tmpl/soup-md5-utils.sgml
deleted file mode 100644
index afb42b2b..00000000
--- a/docs/reference/tmpl/soup-md5-utils.sgml
+++ /dev/null
@@ -1,49 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-md5-utils
-
-<!-- ##### SECTION Short_Description ##### -->
-MD5 hash utilities
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### STRUCT SoupMD5Context ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_md5_init ##### -->
-<para>
-
-</para>
-
-@ctx:
-
-
-<!-- ##### FUNCTION soup_md5_update ##### -->
-<para>
-
-</para>
-
-@ctx:
-@buf:
-@len:
-
-
-<!-- ##### FUNCTION soup_md5_final ##### -->
-<para>
-
-</para>
-
-@ctx:
-@digest:
-
-
diff --git a/docs/reference/tmpl/soup-message-filter.sgml b/docs/reference/tmpl/soup-message-filter.sgml
deleted file mode 100644
index f1c02af5..00000000
--- a/docs/reference/tmpl/soup-message-filter.sgml
+++ /dev/null
@@ -1,28 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupMessageFilter
-
-<!-- ##### SECTION Short_Description ##### -->
-Automatic message processing
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### FUNCTION soup_message_filter_setup_message ##### -->
-<para>
-
-</para>
-
-@filter:
-@msg:
-
-
diff --git a/docs/reference/tmpl/soup-message-private.sgml b/docs/reference/tmpl/soup-message-private.sgml
deleted file mode 100644
index 581531f2..00000000
--- a/docs/reference/tmpl/soup-message-private.sgml
+++ /dev/null
@@ -1,82 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-message-private
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### FUNCTION soup_message_run_handlers ##### -->
-<para>
-
-</para>
-
-@msg:
-@phase:
-
-
-<!-- ##### FUNCTION soup_message_cleanup_response ##### -->
-<para>
-
-</para>
-
-@req:
-
-
-<!-- ##### USER_FUNCTION SoupMessageGetHeadersFn ##### -->
-<para>
-
-</para>
-
-@msg:
-@headers:
-@encoding:
-@user_data:
-
-
-<!-- ##### USER_FUNCTION SoupMessageParseHeadersFn ##### -->
-<para>
-
-</para>
-
-@msg:
-@headers:
-@header_len:
-@encoding:
-@content_len:
-@user_data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_io_client ##### -->
-<para>
-
-</para>
-
-@msg:
-@sock:
-@get_headers_cb:
-@parse_headers_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_io_server ##### -->
-<para>
-
-</para>
-
-@msg:
-@sock:
-@get_headers_cb:
-@parse_headers_cb:
-@user_data:
-
-
diff --git a/docs/reference/tmpl/soup-message-queue.sgml b/docs/reference/tmpl/soup-message-queue.sgml
deleted file mode 100644
index 468f0d68..00000000
--- a/docs/reference/tmpl/soup-message-queue.sgml
+++ /dev/null
@@ -1,102 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-message-queue
-
-<!-- ##### SECTION Short_Description ##### -->
-Message queue object
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupMessageQueue maintains the queue of pending messages in a
-#SoupSession.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### TYPEDEF SoupMessageQueue ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT SoupMessageQueueIter ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_message_queue_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_queue_append ##### -->
-<para>
-
-</para>
-
-@queue:
-@msg:
-
-
-<!-- ##### FUNCTION soup_message_queue_first ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_queue_next ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_queue_remove ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_queue_free_iter ##### -->
-<para>
-
-</para>
-
-@queue:
-@iter:
-
-
-<!-- ##### FUNCTION soup_message_queue_destroy ##### -->
-<para>
-
-</para>
-
-@queue:
-
-
-<!-- ##### FUNCTION soup_message_queue_remove_message ##### -->
-<para>
-
-</para>
-
-@queue:
-@msg:
-
-
diff --git a/docs/reference/tmpl/soup-message.sgml b/docs/reference/tmpl/soup-message.sgml
deleted file mode 100644
index 195a394f..00000000
--- a/docs/reference/tmpl/soup-message.sgml
+++ /dev/null
@@ -1,522 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupMessage
-
-<!-- ##### SECTION Short_Description ##### -->
-An HTTP request and response.
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupMessage ##### -->
-<para>
-
-</para>
-
-@method:
-@status_code:
-@reason_phrase:
-@request:
-@request_headers:
-@response:
-@response_headers:
-@status:
-
-<!-- ##### SIGNAL SoupMessage::finished ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::got-body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::got-chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::got-headers ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::got-informational ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::restarted ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::wrote-body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::wrote-chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::wrote-headers ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### SIGNAL SoupMessage::wrote-informational ##### -->
-<para>
-
-</para>
-
-@msg:
-
-<!-- ##### ENUM SoupMessageStatus ##### -->
-<para>
-
-</para>
-
-@SOUP_MESSAGE_STATUS_IDLE:
-@SOUP_MESSAGE_STATUS_QUEUED:
-@SOUP_MESSAGE_STATUS_CONNECTING:
-@SOUP_MESSAGE_STATUS_RUNNING:
-@SOUP_MESSAGE_STATUS_FINISHED:
-
-<!-- ##### MACRO SOUP_MESSAGE_IS_STARTING ##### -->
-
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### ENUM SoupTransferEncoding ##### -->
-<para>
-
-</para>
-
-@SOUP_TRANSFER_UNKNOWN:
-@SOUP_TRANSFER_CHUNKED:
-@SOUP_TRANSFER_CONTENT_LENGTH:
-@SOUP_TRANSFER_BYTERANGES:
-@SOUP_TRANSFER_NONE:
-@SOUP_TRANSFER_EOF:
-
-<!-- ##### ENUM SoupOwnership ##### -->
-<para>
-
-</para>
-
-@SOUP_BUFFER_SYSTEM_OWNED:
-@SOUP_BUFFER_USER_OWNED:
-@SOUP_BUFFER_STATIC:
-
-<!-- ##### STRUCT SoupDataBuffer ##### -->
-<para>
-
-</para>
-
-@owner:
-@body:
-@length:
-
-<!-- ##### USER_FUNCTION SoupMessageCallbackFn ##### -->
-<para>
-
-</para>
-
-@req:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_new ##### -->
-<para>
-
-</para>
-
-@method:
-@uri_string:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_new_from_uri ##### -->
-<para>
-
-</para>
-
-@method:
-@uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_set_request ##### -->
-<para>
-
-</para>
-
-@msg:
-@content_type:
-@req_owner:
-@req_body:
-@req_length:
-
-
-<!-- ##### FUNCTION soup_message_set_response ##### -->
-<para>
-
-</para>
-
-@msg:
-@content_type:
-@resp_owner:
-@resp_body:
-@resp_length:
-
-
-<!-- ##### FUNCTION soup_message_add_header ##### -->
-<para>
-
-</para>
-
-@hash:
-@name:
-@value:
-
-
-<!-- ##### FUNCTION soup_message_get_header ##### -->
-<para>
-
-</para>
-
-@hash:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_get_header_list ##### -->
-<para>
-
-</para>
-
-@hash:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_foreach_header ##### -->
-<para>
-
-</para>
-
-@hash:
-@func:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_remove_header ##### -->
-<para>
-
-</para>
-
-@hash:
-@name:
-
-
-<!-- ##### FUNCTION soup_message_clear_headers ##### -->
-<para>
-
-</para>
-
-@hash:
-
-
-<!-- ##### ENUM SoupHttpVersion ##### -->
-<para>
-
-</para>
-
-@SOUP_HTTP_1_0:
-@SOUP_HTTP_1_1:
-
-<!-- ##### FUNCTION soup_message_set_http_version ##### -->
-<para>
-
-</para>
-
-@msg:
-@version:
-
-
-<!-- ##### FUNCTION soup_message_get_http_version ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_get_uri ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_set_uri ##### -->
-<para>
-
-</para>
-
-@msg:
-@uri:
-
-
-<!-- ##### ENUM SoupMessageFlags ##### -->
-<para>
-
-</para>
-
-@SOUP_MESSAGE_NO_REDIRECT:
-@SOUP_MESSAGE_OVERWRITE_CHUNKS:
-@SOUP_MESSAGE_EXPECT_CONTINUE:
-
-<!-- ##### FUNCTION soup_message_set_flags ##### -->
-<para>
-
-</para>
-
-@msg:
-@flags:
-
-
-<!-- ##### FUNCTION soup_message_get_flags ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_set_status ##### -->
-<para>
-
-</para>
-
-@msg:
-@status_code:
-
-
-<!-- ##### FUNCTION soup_message_set_status_full ##### -->
-<para>
-
-</para>
-
-@msg:
-@status_code:
-@reason_phrase:
-
-
-<!-- ##### FUNCTION soup_message_add_chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-@owner:
-@body:
-@length:
-
-
-<!-- ##### FUNCTION soup_message_add_final_chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_message_pop_chunk ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_is_keepalive ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_get_request_encoding ##### -->
-<para>
-
-</para>
-
-@msg:
-@content_length:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_message_get_response_encoding ##### -->
-<para>
-
-</para>
-
-@msg:
-@content_length:
-@Returns:
-
-
-<!-- ##### ENUM SoupHandlerPhase ##### -->
-<para>
-
-</para>
-
-@SOUP_HANDLER_POST_REQUEST:
-@SOUP_HANDLER_PRE_BODY:
-@SOUP_HANDLER_BODY_CHUNK:
-@SOUP_HANDLER_POST_BODY:
-
-<!-- ##### FUNCTION soup_message_add_handler ##### -->
-<para>
-
-</para>
-
-@msg:
-@phase:
-@handler_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_add_header_handler ##### -->
-<para>
-
-</para>
-
-@msg:
-@header:
-@phase:
-@handler_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_add_status_code_handler ##### -->
-<para>
-
-</para>
-
-@msg:
-@status_code:
-@phase:
-@handler_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_add_status_class_handler ##### -->
-<para>
-
-</para>
-
-@msg:
-@status_class:
-@phase:
-@handler_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_remove_handler ##### -->
-<para>
-
-</para>
-
-@msg:
-@phase:
-@handler_cb:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_message_send_request ##### -->
-<para>
-
-</para>
-
-@req:
-@sock:
-@is_via_proxy:
-
-
-<!-- ##### FUNCTION soup_message_read_request ##### -->
-<para>
-
-</para>
-
-@req:
-@sock:
-
-
-<!-- ##### FUNCTION soup_message_io_pause ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_message_io_unpause ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_message_io_stop ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
diff --git a/docs/reference/tmpl/soup-misc.sgml b/docs/reference/tmpl/soup-misc.sgml
deleted file mode 100644
index 7f949d01..00000000
--- a/docs/reference/tmpl/soup-misc.sgml
+++ /dev/null
@@ -1,277 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-misc
-
-<!-- ##### SECTION Short_Description ##### -->
-Miscellaneous functions
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### FUNCTION soup_base64_decode ##### -->
-<para>
-
-</para>
-
-@text:
-@out_len:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_base64_encode ##### -->
-<para>
-
-</para>
-
-@text:
-@len:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_base64_decode_step ##### -->
-<para>
-
-</para>
-
-@in:
-@len:
-@out:
-@state:
-@save:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_base64_encode_step ##### -->
-<para>
-
-</para>
-
-@in:
-@len:
-@break_lines:
-@out:
-@state:
-@save:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_base64_encode_close ##### -->
-<para>
-
-</para>
-
-@in:
-@inlen:
-@break_lines:
-@out:
-@state:
-@save:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_add_idle ##### -->
-<para>
-
-</para>
-
-@async_context:
-@function:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_add_io_watch ##### -->
-<para>
-
-</para>
-
-@async_context:
-@chan:
-@condition:
-@function:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_add_timeout ##### -->
-<para>
-
-</para>
-
-@async_context:
-@interval:
-@function:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_signal_connect_once ##### -->
-<para>
-
-</para>
-
-@instance:
-@detailed_signal:
-@c_handler:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_date_parse ##### -->
-<para>
-
-</para>
-
-@timestamp:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_date_iso8601_parse ##### -->
-<para>
-
-</para>
-
-@timestamp:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_date_generate ##### -->
-<para>
-
-</para>
-
-@when:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_gmtime ##### -->
-<para>
-
-</para>
-
-@when:
-@tm:
-
-
-<!-- ##### FUNCTION soup_mktime_utc ##### -->
-<para>
-
-</para>
-
-@tm:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_header_param_copy_token ##### -->
-<para>
-
-</para>
-
-@tokens:
-@t:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_header_param_decode_token ##### -->
-<para>
-
-</para>
-
-@in:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_header_param_destroy_hash ##### -->
-<para>
-
-</para>
-
-@table:
-
-
-<!-- ##### FUNCTION soup_header_param_parse_list ##### -->
-<para>
-
-</para>
-
-@header:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_headers_parse_request ##### -->
-<para>
-
-</para>
-
-@str:
-@len:
-@dest:
-@req_method:
-@req_path:
-@ver:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_headers_parse_response ##### -->
-<para>
-
-</para>
-
-@str:
-@len:
-@dest:
-@ver:
-@status_code:
-@reason_phrase:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_headers_parse_status_line ##### -->
-<para>
-
-</para>
-
-@status_line:
-@ver:
-@status_code:
-@reason_phrase:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_str_case_equal ##### -->
-<para>
-
-</para>
-
-@v1:
-@v2:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_str_case_hash ##### -->
-<para>
-
-</para>
-
-@key:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xml_real_node ##### -->
-<para>
-
-</para>
-
-@node:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-server-auth.sgml b/docs/reference/tmpl/soup-server-auth.sgml
deleted file mode 100644
index cbe22e33..00000000
--- a/docs/reference/tmpl/soup-server-auth.sgml
+++ /dev/null
@@ -1,127 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-server-auth
-
-<!-- ##### SECTION Short_Description ##### -->
-Server-side authentication structures
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### STRUCT SoupServerAuthContext ##### -->
-<para>
-
-</para>
-
-@types:
-@callback:
-@user_data:
-
-<!-- ##### USER_FUNCTION SoupServerAuthCallbackFn ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@auth:
-@msg:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_auth_context_challenge ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@msg:
-@header_name:
-
-
-<!-- ##### ENUM SoupAuthType ##### -->
-<para>
-
-</para>
-
-@SOUP_AUTH_TYPE_BASIC:
-@SOUP_AUTH_TYPE_DIGEST:
-
-<!-- ##### STRUCT SoupServerAuthBasic ##### -->
-<para>
-
-</para>
-
-@type:
-@user:
-@passwd:
-
-<!-- ##### ENUM SoupDigestAlgorithm ##### -->
-<para>
-
-</para>
-
-@SOUP_ALGORITHM_MD5:
-@SOUP_ALGORITHM_MD5_SESS:
-
-<!-- ##### STRUCT SoupServerAuthDigest ##### -->
-<para>
-
-</para>
-
-@type:
-@algorithm:
-@integrity:
-@realm:
-@user:
-@nonce:
-@nonce_count:
-@cnonce:
-@digest_uri:
-@digest_response:
-@request_method:
-
-<!-- ##### FUNCTION soup_server_auth_new ##### -->
-<para>
-
-</para>
-
-@auth_ctx:
-@auth_hdrs:
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_auth_free ##### -->
-<para>
-
-</para>
-
-@auth:
-
-
-<!-- ##### FUNCTION soup_server_auth_get_user ##### -->
-<para>
-
-</para>
-
-@auth:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_auth_check_passwd ##### -->
-<para>
-
-</para>
-
-@auth:
-@passwd:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-server-message.sgml b/docs/reference/tmpl/soup-server-message.sgml
deleted file mode 100644
index d5ed721c..00000000
--- a/docs/reference/tmpl/soup-server-message.sgml
+++ /dev/null
@@ -1,95 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupServerMessage
-
-<!-- ##### SECTION Short_Description ##### -->
-Server-side #SoupMessage
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupServerMessage ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_server_message_new ##### -->
-<para>
-
-</para>
-
-@server:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_message_get_server ##### -->
-<para>
-
-</para>
-
-@smsg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_message_set_encoding ##### -->
-<para>
-
-</para>
-
-@smsg:
-@encoding:
-
-
-<!-- ##### FUNCTION soup_server_message_get_encoding ##### -->
-<para>
-
-</para>
-
-@smsg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_message_start ##### -->
-<para>
-
-</para>
-
-@smsg:
-
-
-<!-- ##### FUNCTION soup_server_message_is_started ##### -->
-<para>
-
-</para>
-
-@smsg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_message_finish ##### -->
-<para>
-
-</para>
-
-@smsg:
-
-
-<!-- ##### FUNCTION soup_server_message_is_finished ##### -->
-<para>
-
-</para>
-
-@smsg:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-server.sgml b/docs/reference/tmpl/soup-server.sgml
deleted file mode 100644
index 29babd83..00000000
--- a/docs/reference/tmpl/soup-server.sgml
+++ /dev/null
@@ -1,249 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupServer
-
-<!-- ##### SECTION Short_Description ##### -->
-HTTP server
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupServer implements a simple HTTP server.
-</para>
-
-<para>
-This API is less stable than the soup client API, and will most likely
-change in the next release.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupServer ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG SoupServer:async-context ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupServer:interface ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupServer:port ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupServer:ssl-cert-file ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupServer:ssl-key-file ##### -->
-<para>
-
-</para>
-
-<!-- ##### STRUCT SoupServerContext ##### -->
-<para>
-
-</para>
-
-@msg:
-@path:
-@method_id:
-@auth:
-@server:
-@handler:
-@sock:
-
-<!-- ##### USER_FUNCTION SoupServerCallbackFn ##### -->
-<para>
-
-</para>
-
-@context:
-@msg:
-@user_data:
-
-
-<!-- ##### USER_FUNCTION SoupServerUnregisterFn ##### -->
-<para>
-
-</para>
-
-@server:
-@handler:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_server_new ##### -->
-<para>
-
-</para>
-
-@optname1:
-@Varargs:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_get_protocol ##### -->
-<para>
-
-</para>
-
-@serv:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_get_port ##### -->
-<para>
-
-</para>
-
-@serv:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_get_listener ##### -->
-<para>
-
-</para>
-
-@serv:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_run ##### -->
-<para>
-
-</para>
-
-@serv:
-
-
-<!-- ##### FUNCTION soup_server_run_async ##### -->
-<para>
-
-</para>
-
-@serv:
-
-
-<!-- ##### FUNCTION soup_server_quit ##### -->
-<para>
-
-</para>
-
-@serv:
-
-
-<!-- ##### TYPEDEF SoupServerHandler ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_server_add_handler ##### -->
-<para>
-
-</para>
-
-@serv:
-@path:
-@auth_ctx:
-@callback:
-@unreg:
-@data:
-
-
-<!-- ##### FUNCTION soup_server_remove_handler ##### -->
-<para>
-
-</para>
-
-@serv:
-@path:
-
-
-<!-- ##### FUNCTION soup_server_get_handler ##### -->
-<para>
-
-</para>
-
-@serv:
-@path:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_list_handlers ##### -->
-<para>
-
-</para>
-
-@serv:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_context_get_client_address ##### -->
-<para>
-
-</para>
-
-@ctx:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_server_context_get_client_host ##### -->
-<para>
-
-</para>
-
-@ctx:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_SERVER_PORT ##### -->
-<para>
-An alias for the "port" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SERVER_INTERFACE ##### -->
-<para>
-An alias for the "interface" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SERVER_SSL_CERT_FILE ##### -->
-<para>
-An alias for the "ssl-cert-file" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SERVER_SSL_KEY_FILE ##### -->
-<para>
-An alias for the "ssl-key-file" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SERVER_ASYNC_CONTEXT ##### -->
-<para>
-An alias for the "async-context" property.
-</para>
-
-
-
diff --git a/docs/reference/tmpl/soup-session-async.sgml b/docs/reference/tmpl/soup-session-async.sgml
deleted file mode 100644
index 54533242..00000000
--- a/docs/reference/tmpl/soup-session-async.sgml
+++ /dev/null
@@ -1,45 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSessionAsync
-
-<!-- ##### SECTION Short_Description ##### -->
-Soup session for asynchronous (main-loop-based) I/O.
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupSessionASync is an implementation of #SoupSession that uses
-non-blocking I/O via the glib main loop. It is intended for use in
-single-threaded programs.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSessionAsync ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_session_async_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### FUNCTION soup_session_async_new_with_options ##### -->
-<para>
-
-</para>
-
-@optname1:
-@Varargs:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-session-sync.sgml b/docs/reference/tmpl/soup-session-sync.sgml
deleted file mode 100644
index 63e3093f..00000000
--- a/docs/reference/tmpl/soup-session-sync.sgml
+++ /dev/null
@@ -1,49 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSessionSync
-
-<!-- ##### SECTION Short_Description ##### -->
-Soup session for blocking I/O in multithreaded programs.
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-#SoupSessionSync is an implementation of #SoupSession that uses
-synchronous I/O, intended for use in multi-threaded programs.
-</para>
-
-<para>
-Note that you cannot use soup_session_queue_message() with a
-synchronous session. You can only use soup_session_send_message().
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSessionSync ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_session_sync_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### FUNCTION soup_session_sync_new_with_options ##### -->
-<para>
-
-</para>
-
-@optname1:
-@Varargs:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-session.sgml b/docs/reference/tmpl/soup-session.sgml
deleted file mode 100644
index 4c5d80d9..00000000
--- a/docs/reference/tmpl/soup-session.sgml
+++ /dev/null
@@ -1,219 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSession
-
-<!-- ##### SECTION Short_Description ##### -->
-Soup session state object
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSession ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL SoupSession::authenticate ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-<!-- ##### SIGNAL SoupSession::reauthenticate ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-@auth_type:
-@auth_realm:
-@username:
-@password:
-
-<!-- ##### ARG SoupSession:async-context ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:max-conns ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:max-conns-per-host ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:proxy-uri ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:ssl-ca-file ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:timeout ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSession:use-ntlm ##### -->
-<para>
-
-</para>
-
-<!-- ##### FUNCTION soup_session_queue_message ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-@callback:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_session_requeue_message ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-
-
-<!-- ##### FUNCTION soup_session_send_message ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_session_abort ##### -->
-<para>
-
-</para>
-
-@session:
-
-
-<!-- ##### FUNCTION soup_session_add_filter ##### -->
-<para>
-
-</para>
-
-@session:
-@filter:
-
-
-<!-- ##### FUNCTION soup_session_cancel_message ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-
-
-<!-- ##### FUNCTION soup_session_get_connection ##### -->
-<para>
-
-</para>
-
-@session:
-@msg:
-@try_pruning:
-@is_new:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_session_remove_filter ##### -->
-<para>
-
-</para>
-
-@session:
-@filter:
-
-
-<!-- ##### FUNCTION soup_session_try_prune_connection ##### -->
-<para>
-
-</para>
-
-@session:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_SESSION_PROXY_URI ##### -->
-<para>
-An alias for the "proxy-uri" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_MAX_CONNS ##### -->
-<para>
-An alias for the "max-conns" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_MAX_CONNS_PER_HOST ##### -->
-<para>
-An alias for the "max-conns-per-host" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_USE_NTLM ##### -->
-<para>
-An alias for the "use-ntlm" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_SSL_CA_FILE ##### -->
-<para>
-An alias for the "ssl-ca-file" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_ASYNC_CONTEXT ##### -->
-<para>
-An alias for the "async-context" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SESSION_TIMEOUT ##### -->
-<para>
-An alias for the "timeout" property.
-</para>
-
-
-
diff --git a/docs/reference/tmpl/soup-soap-message.sgml b/docs/reference/tmpl/soup-soap-message.sgml
deleted file mode 100644
index 72c83ed4..00000000
--- a/docs/reference/tmpl/soup-soap-message.sgml
+++ /dev/null
@@ -1,333 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSoapMessage
-
-<!-- ##### SECTION Short_Description ##### -->
-A SOAP request
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSoapMessage ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_soap_message_new ##### -->
-<para>
-
-</para>
-
-@method:
-@uri_string:
-@standalone:
-@xml_encoding:
-@env_prefix:
-@env_uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_message_new_from_uri ##### -->
-<para>
-
-</para>
-
-@method:
-@uri:
-@standalone:
-@xml_encoding:
-@env_prefix:
-@env_uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_envelope ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_envelope ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_body ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_element ##### -->
-<para>
-
-</para>
-
-@msg:
-@name:
-@prefix:
-@ns_uri:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_element ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_fault ##### -->
-<para>
-
-</para>
-
-@msg:
-@faultcode:
-@faultstring:
-@faultfactor:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_fault ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_fault_detail ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_fault_detail ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_header ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_header ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_start_header_element ##### -->
-<para>
-
-</para>
-
-@msg:
-@name:
-@must_understand:
-@actor_uri:
-@prefix:
-@ns_uri:
-
-
-<!-- ##### FUNCTION soup_soap_message_end_header_element ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_int ##### -->
-<para>
-
-</para>
-
-@msg:
-@i:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_double ##### -->
-<para>
-
-</para>
-
-@msg:
-@d:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_base64 ##### -->
-<para>
-
-</para>
-
-@msg:
-@string:
-@len:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_time ##### -->
-<para>
-
-</para>
-
-@msg:
-@timeval:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_string ##### -->
-<para>
-
-</para>
-
-@msg:
-@string:
-
-
-<!-- ##### FUNCTION soup_soap_message_write_buffer ##### -->
-<para>
-
-</para>
-
-@msg:
-@buffer:
-@len:
-
-
-<!-- ##### FUNCTION soup_soap_message_set_element_type ##### -->
-<para>
-
-</para>
-
-@msg:
-@xsi_type:
-
-
-<!-- ##### FUNCTION soup_soap_message_set_null ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_add_attribute ##### -->
-<para>
-
-</para>
-
-@msg:
-@name:
-@value:
-@prefix:
-@ns_uri:
-
-
-<!-- ##### FUNCTION soup_soap_message_add_namespace ##### -->
-<para>
-
-</para>
-
-@msg:
-@prefix:
-@ns_uri:
-
-
-<!-- ##### FUNCTION soup_soap_message_set_default_namespace ##### -->
-<para>
-
-</para>
-
-@msg:
-@ns_uri:
-
-
-<!-- ##### FUNCTION soup_soap_message_set_encoding_style ##### -->
-<para>
-
-</para>
-
-@msg:
-@enc_style:
-
-
-<!-- ##### FUNCTION soup_soap_message_reset ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_persist ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_soap_message_get_namespace_prefix ##### -->
-<para>
-
-</para>
-
-@msg:
-@ns_uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_message_get_xml_doc ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_message_parse_response ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-soap-response.sgml b/docs/reference/tmpl/soup-soap-response.sgml
deleted file mode 100644
index 0bde3c00..00000000
--- a/docs/reference/tmpl/soup-soap-response.sgml
+++ /dev/null
@@ -1,200 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSoapResponse
-
-<!-- ##### SECTION Short_Description ##### -->
-A SOAP response
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSoapResponse ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF SoupSoapParameter ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_soap_response_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_new_from_string ##### -->
-<para>
-
-</para>
-
-@xmlstr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_set_method_name ##### -->
-<para>
-
-</para>
-
-@response:
-@method_name:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_first_child ##### -->
-<para>
-
-</para>
-
-@param:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_first_child_by_name ##### -->
-<para>
-
-</para>
-
-@param:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_int_value ##### -->
-<para>
-
-</para>
-
-@param:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_name ##### -->
-<para>
-
-</para>
-
-@param:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_next_child ##### -->
-<para>
-
-</para>
-
-@param:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_next_child_by_name ##### -->
-<para>
-
-</para>
-
-@param:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_property ##### -->
-<para>
-
-</para>
-
-@param:
-@prop_name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_parameter_get_string_value ##### -->
-<para>
-
-</para>
-
-@param:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_from_string ##### -->
-<para>
-
-</para>
-
-@response:
-@xmlstr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_first_parameter ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_first_parameter_by_name ##### -->
-<para>
-
-</para>
-
-@response:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_method_name ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_next_parameter ##### -->
-<para>
-
-</para>
-
-@response:
-@from:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_next_parameter_by_name ##### -->
-<para>
-
-</para>
-
-@response:
-@from:
-@name:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_soap_response_get_parameters ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-socket.sgml b/docs/reference/tmpl/soup-socket.sgml
deleted file mode 100644
index 0a86e703..00000000
--- a/docs/reference/tmpl/soup-socket.sgml
+++ /dev/null
@@ -1,348 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupSocket
-
-<!-- ##### SECTION Short_Description ##### -->
-a network socket
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupSocket ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL SoupSocket::connect-result ##### -->
-<para>
-
-</para>
-
-@sock:
-@status:
-
-<!-- ##### SIGNAL SoupSocket::disconnected ##### -->
-<para>
-
-</para>
-
-@sock:
-
-<!-- ##### SIGNAL SoupSocket::new-connection ##### -->
-<para>
-
-</para>
-
-@sock:
-@new:
-
-<!-- ##### SIGNAL SoupSocket::readable ##### -->
-<para>
-
-</para>
-
-@sock:
-
-<!-- ##### SIGNAL SoupSocket::writable ##### -->
-<para>
-
-</para>
-
-@sock:
-
-<!-- ##### ARG SoupSocket:async-context ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:cloexec ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:is-server ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:nodelay ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:non-blocking ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:reuseaddr ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:ssl-creds ##### -->
-<para>
-
-</para>
-
-<!-- ##### ARG SoupSocket:timeout ##### -->
-<para>
-
-</para>
-
-<!-- ##### FUNCTION soup_socket_new ##### -->
-<para>
-
-</para>
-
-@optname1:
-@Varargs:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_connect ##### -->
-<para>
-
-</para>
-
-@sock:
-@remote_addr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_listen ##### -->
-<para>
-
-</para>
-
-@sock:
-@local_addr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_start_ssl ##### -->
-<para>
-
-</para>
-
-@sock:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_start_proxy_ssl ##### -->
-<para>
-
-</para>
-
-@sock:
-@ssl_host:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_disconnect ##### -->
-<para>
-
-</para>
-
-@sock:
-
-
-<!-- ##### FUNCTION soup_socket_is_connected ##### -->
-<para>
-
-</para>
-
-@sock:
-@Returns:
-
-
-<!-- ##### USER_FUNCTION SoupSocketCallback ##### -->
-<para>
-
-</para>
-
-@sock:
-@status:
-@user_data:
-
-
-<!-- ##### USER_FUNCTION SoupSocketListenerCallback ##### -->
-<para>
-
-</para>
-
-@listener:
-@sock:
-@user_data:
-
-
-<!-- ##### FUNCTION soup_socket_client_new_async ##### -->
-<para>
-
-</para>
-
-@hostname:
-@port:
-@ssl_creds:
-@callback:
-@user_data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_client_new_sync ##### -->
-<para>
-
-</para>
-
-@hostname:
-@port:
-@ssl_creds:
-@status_ret:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_server_new ##### -->
-<para>
-
-</para>
-
-@local_addr:
-@ssl_creds:
-@callback:
-@user_data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_get_local_address ##### -->
-<para>
-
-</para>
-
-@sock:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_get_remote_address ##### -->
-<para>
-
-</para>
-
-@sock:
-@Returns:
-
-
-<!-- ##### ENUM SoupSocketIOStatus ##### -->
-<para>
-
-</para>
-
-@SOUP_SOCKET_OK:
-@SOUP_SOCKET_WOULD_BLOCK:
-@SOUP_SOCKET_EOF:
-@SOUP_SOCKET_ERROR:
-
-<!-- ##### FUNCTION soup_socket_read ##### -->
-<para>
-
-</para>
-
-@sock:
-@buffer:
-@len:
-@nread:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_read_until ##### -->
-<para>
-
-</para>
-
-@sock:
-@buffer:
-@len:
-@boundary:
-@boundary_len:
-@nread:
-@got_boundary:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_socket_write ##### -->
-<para>
-
-</para>
-
-@sock:
-@buffer:
-@len:
-@nwrote:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_SOCKET_FLAG_NONBLOCKING ##### -->
-<para>
-An alias for the "non-blocking" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_FLAG_NODELAY ##### -->
-<para>
-An alias for the "nodelay" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_FLAG_REUSEADDR ##### -->
-<para>
-An alias for the "reuseaddr" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_FLAG_CLOEXEC ##### -->
-<para>
-An alias for the "cloexec" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_TIMEOUT ##### -->
-<para>
-An alias for the "timeout" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_IS_SERVER ##### -->
-<para>
-An alias for the "is-server" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_SSL_CREDENTIALS ##### -->
-<para>
-An alias for the "ssl-creds" property.
-</para>
-
-
-
-<!-- ##### MACRO SOUP_SOCKET_ASYNC_CONTEXT ##### -->
-<para>
-An alias for the "async-context" property.
-</para>
-
-
-
diff --git a/docs/reference/tmpl/soup-ssl.sgml b/docs/reference/tmpl/soup-ssl.sgml
deleted file mode 100644
index 714c88eb..00000000
--- a/docs/reference/tmpl/soup-ssl.sgml
+++ /dev/null
@@ -1,110 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-ssl
-
-<!-- ##### SECTION Short_Description ##### -->
-SSL/TLS handling
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### VARIABLE soup_ssl_supported ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ENUM SoupSSLType ##### -->
-<para>
-
-</para>
-
-@SOUP_SSL_TYPE_CLIENT:
-@SOUP_SSL_TYPE_SERVER:
-
-<!-- ##### TYPEDEF SoupSSLCredentials ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_ssl_get_client_credentials ##### -->
-<para>
-
-</para>
-
-@ca_file:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_ssl_free_client_credentials ##### -->
-<para>
-
-</para>
-
-@creds:
-
-
-<!-- ##### FUNCTION soup_ssl_get_server_credentials ##### -->
-<para>
-
-</para>
-
-@cert_file:
-@key_file:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_ssl_free_server_credentials ##### -->
-<para>
-
-</para>
-
-@creds:
-
-
-<!-- ##### FUNCTION soup_ssl_wrap_iochannel ##### -->
-<para>
-
-</para>
-
-@sock:
-@type:
-@remote_host:
-@creds:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_SSL_ERROR ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### FUNCTION soup_ssl_error_quark ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### ENUM SoupSocketError ##### -->
-<para>
-
-</para>
-
-@SOUP_SSL_ERROR_HANDSHAKE_NEEDS_READ:
-@SOUP_SSL_ERROR_HANDSHAKE_NEEDS_WRITE:
-@SOUP_SSL_ERROR_CERTIFICATE:
-
diff --git a/docs/reference/tmpl/soup-status.sgml b/docs/reference/tmpl/soup-status.sgml
deleted file mode 100644
index b5d8f179..00000000
--- a/docs/reference/tmpl/soup-status.sgml
+++ /dev/null
@@ -1,152 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-status
-
-<!-- ##### SECTION Short_Description ##### -->
-HTTP and Soup status codes
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### ENUM SoupStatusClass ##### -->
-<para>
-
-</para>
-
-@SOUP_STATUS_CLASS_TRANSPORT_ERROR:
-@SOUP_STATUS_CLASS_INFORMATIONAL:
-@SOUP_STATUS_CLASS_SUCCESS:
-@SOUP_STATUS_CLASS_REDIRECT:
-@SOUP_STATUS_CLASS_CLIENT_ERROR:
-@SOUP_STATUS_CLASS_SERVER_ERROR:
-
-<!-- ##### MACRO SOUP_STATUS_IS_INFORMATIONAL ##### -->
-<para>
-
-</para>
-
-@status:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_STATUS_IS_SUCCESSFUL ##### -->
-<para>
-
-</para>
-
-@status:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_STATUS_IS_REDIRECTION ##### -->
-<para>
-
-</para>
-
-@status:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_STATUS_IS_CLIENT_ERROR ##### -->
-<para>
-
-</para>
-
-@status:
-@Returns:
-
-
-<!-- ##### MACRO SOUP_STATUS_IS_SERVER_ERROR ##### -->
-<para>
-
-</para>
-
-@status:
-@Returns:
-
-
-<!-- ##### ENUM SoupKnownStatusCode ##### -->
-<para>
-
-</para>
-
-@SOUP_STATUS_NONE:
-@SOUP_STATUS_CANCELLED:
-@SOUP_STATUS_CANT_RESOLVE:
-@SOUP_STATUS_CANT_RESOLVE_PROXY:
-@SOUP_STATUS_CANT_CONNECT:
-@SOUP_STATUS_CANT_CONNECT_PROXY:
-@SOUP_STATUS_SSL_FAILED:
-@SOUP_STATUS_IO_ERROR:
-@SOUP_STATUS_MALFORMED:
-@SOUP_STATUS_TRY_AGAIN:
-@SOUP_STATUS_CONTINUE:
-@SOUP_STATUS_SWITCHING_PROTOCOLS:
-@SOUP_STATUS_PROCESSING:
-@SOUP_STATUS_OK:
-@SOUP_STATUS_CREATED:
-@SOUP_STATUS_ACCEPTED:
-@SOUP_STATUS_NON_AUTHORITATIVE:
-@SOUP_STATUS_NO_CONTENT:
-@SOUP_STATUS_RESET_CONTENT:
-@SOUP_STATUS_PARTIAL_CONTENT:
-@SOUP_STATUS_MULTI_STATUS:
-@SOUP_STATUS_MULTIPLE_CHOICES:
-@SOUP_STATUS_MOVED_PERMANENTLY:
-@SOUP_STATUS_FOUND:
-@SOUP_STATUS_MOVED_TEMPORARILY:
-@SOUP_STATUS_SEE_OTHER:
-@SOUP_STATUS_NOT_MODIFIED:
-@SOUP_STATUS_USE_PROXY:
-@SOUP_STATUS_NOT_APPEARING_IN_THIS_PROTOCOL:
-@SOUP_STATUS_TEMPORARY_REDIRECT:
-@SOUP_STATUS_BAD_REQUEST:
-@SOUP_STATUS_UNAUTHORIZED:
-@SOUP_STATUS_PAYMENT_REQUIRED:
-@SOUP_STATUS_FORBIDDEN:
-@SOUP_STATUS_NOT_FOUND:
-@SOUP_STATUS_METHOD_NOT_ALLOWED:
-@SOUP_STATUS_NOT_ACCEPTABLE:
-@SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED:
-@SOUP_STATUS_PROXY_UNAUTHORIZED:
-@SOUP_STATUS_REQUEST_TIMEOUT:
-@SOUP_STATUS_CONFLICT:
-@SOUP_STATUS_GONE:
-@SOUP_STATUS_LENGTH_REQUIRED:
-@SOUP_STATUS_PRECONDITION_FAILED:
-@SOUP_STATUS_REQUEST_ENTITY_TOO_LARGE:
-@SOUP_STATUS_REQUEST_URI_TOO_LONG:
-@SOUP_STATUS_UNSUPPORTED_MEDIA_TYPE:
-@SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE:
-@SOUP_STATUS_INVALID_RANGE:
-@SOUP_STATUS_EXPECTATION_FAILED:
-@SOUP_STATUS_UNPROCESSABLE_ENTITY:
-@SOUP_STATUS_LOCKED:
-@SOUP_STATUS_FAILED_DEPENDENCY:
-@SOUP_STATUS_INTERNAL_SERVER_ERROR:
-@SOUP_STATUS_NOT_IMPLEMENTED:
-@SOUP_STATUS_BAD_GATEWAY:
-@SOUP_STATUS_SERVICE_UNAVAILABLE:
-@SOUP_STATUS_GATEWAY_TIMEOUT:
-@SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED:
-@SOUP_STATUS_INSUFFICIENT_STORAGE:
-@SOUP_STATUS_NOT_EXTENDED:
-
-<!-- ##### FUNCTION soup_status_get_phrase ##### -->
-<para>
-
-</para>
-
-@status_code:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-uri.sgml b/docs/reference/tmpl/soup-uri.sgml
deleted file mode 100644
index a3814d7b..00000000
--- a/docs/reference/tmpl/soup-uri.sgml
+++ /dev/null
@@ -1,146 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-soup-uri
-
-<!-- ##### SECTION Short_Description ##### -->
-URIs
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupUri ##### -->
-<para>
-
-</para>
-
-@protocol:
-@user:
-@passwd:
-@host:
-@port:
-@path:
-@query:
-@fragment:
-@broken_encoding:
-
-<!-- ##### TYPEDEF SoupProtocol ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SOUP_PROTOCOL_HTTP ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO SOUP_PROTOCOL_HTTPS ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### FUNCTION soup_uri_new_with_base ##### -->
-<para>
-
-</para>
-
-@base:
-@uri_string:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_new ##### -->
-<para>
-
-</para>
-
-@uri_string:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_to_string ##### -->
-<para>
-
-</para>
-
-@uri:
-@just_path:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_copy ##### -->
-<para>
-
-</para>
-
-@uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_copy_root ##### -->
-<para>
-
-</para>
-
-@uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_equal ##### -->
-<para>
-
-</para>
-
-@uri1:
-@uri2:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_free ##### -->
-<para>
-
-</para>
-
-@uri:
-
-
-<!-- ##### FUNCTION soup_uri_encode ##### -->
-<para>
-
-</para>
-
-@part:
-@escape_extra:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_uri_decode ##### -->
-<para>
-
-</para>
-
-@part:
-
-
-<!-- ##### FUNCTION soup_uri_uses_default_port ##### -->
-<para>
-
-</para>
-
-@uri:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-xmlrpc-message.sgml b/docs/reference/tmpl/soup-xmlrpc-message.sgml
deleted file mode 100644
index 93e4ce63..00000000
--- a/docs/reference/tmpl/soup-xmlrpc-message.sgml
+++ /dev/null
@@ -1,216 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupXmlrpcMessage
-
-<!-- ##### SECTION Short_Description ##### -->
-An XML-RPC Message
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupXmlrpcMessage ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_new ##### -->
-<para>
-
-</para>
-
-@uri_string:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_new_from_uri ##### -->
-<para>
-
-</para>
-
-@uri:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_from_string ##### -->
-<para>
-
-</para>
-
-@message:
-@xmlstr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_start_call ##### -->
-<para>
-
-</para>
-
-@msg:
-@method_name:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_end_call ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_start_param ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_end_param ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_int ##### -->
-<para>
-
-</para>
-
-@msg:
-@Param2:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_boolean ##### -->
-<para>
-
-</para>
-
-@msg:
-@b:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_string ##### -->
-<para>
-
-</para>
-
-@msg:
-@str:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_double ##### -->
-<para>
-
-</para>
-
-@msg:
-@d:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_datetime ##### -->
-<para>
-
-</para>
-
-@msg:
-@timeval:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_write_base64 ##### -->
-<para>
-
-</para>
-
-@msg:
-@buf:
-@len:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_start_struct ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_end_struct ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_start_member ##### -->
-<para>
-
-</para>
-
-@msg:
-@name:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_end_member ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_start_array ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_end_array ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_to_string ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_persist ##### -->
-<para>
-
-</para>
-
-@msg:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_message_parse_response ##### -->
-<para>
-
-</para>
-
-@msg:
-@Returns:
-
-
diff --git a/docs/reference/tmpl/soup-xmlrpc-response.sgml b/docs/reference/tmpl/soup-xmlrpc-response.sgml
deleted file mode 100644
index 2f678b28..00000000
--- a/docs/reference/tmpl/soup-xmlrpc-response.sgml
+++ /dev/null
@@ -1,231 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-SoupXmlrpcResponse
-
-<!-- ##### SECTION Short_Description ##### -->
-An XML-RPC response
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### STRUCT SoupXmlrpcResponse ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_xmlrpc_response_new ##### -->
-<para>
-
-</para>
-
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_response_new_from_string ##### -->
-<para>
-
-</para>
-
-@xmlstr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_response_from_string ##### -->
-<para>
-
-</para>
-
-@response:
-@xmlstr:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_response_to_string ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
-<!-- ##### TYPEDEF SoupXmlrpcValue ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ENUM SoupXmlrpcValueType ##### -->
-<para>
-
-</para>
-
-@SOUP_XMLRPC_VALUE_TYPE_BAD:
-@SOUP_XMLRPC_VALUE_TYPE_INT:
-@SOUP_XMLRPC_VALUE_TYPE_BOOLEAN:
-@SOUP_XMLRPC_VALUE_TYPE_STRING:
-@SOUP_XMLRPC_VALUE_TYPE_DOUBLE:
-@SOUP_XMLRPC_VALUE_TYPE_DATETIME:
-@SOUP_XMLRPC_VALUE_TYPE_BASE64:
-@SOUP_XMLRPC_VALUE_TYPE_STRUCT:
-@SOUP_XMLRPC_VALUE_TYPE_ARRAY:
-
-<!-- ##### FUNCTION soup_xmlrpc_response_is_fault ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_response_get_value ##### -->
-<para>
-
-</para>
-
-@response:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_type ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_int ##### -->
-<para>
-
-</para>
-
-@value:
-@i:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_double ##### -->
-<para>
-
-</para>
-
-@value:
-@b:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_boolean ##### -->
-<para>
-
-</para>
-
-@value:
-@b:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_string ##### -->
-<para>
-
-</para>
-
-@value:
-@str:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_datetime ##### -->
-<para>
-
-</para>
-
-@value:
-@timeval:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_base64 ##### -->
-<para>
-
-</para>
-
-@value:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_get_struct ##### -->
-<para>
-
-</para>
-
-@value:
-@table:
-@Returns:
-
-
-<!-- ##### TYPEDEF SoupXmlrpcValueArrayIterator ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_array_get_iterator ##### -->
-<para>
-
-</para>
-
-@value:
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_array_iterator_prev ##### -->
-<para>
-
-</para>
-
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_array_iterator_next ##### -->
-<para>
-
-</para>
-
-@iter:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_array_iterator_get_value ##### -->
-<para>
-
-</para>
-
-@iter:
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION soup_xmlrpc_value_dump ##### -->
-<para>
-
-</para>
-
-@value:
-
-