5a7ee667bcb10230e944614ae3ffb80af05fdfc0
[profile/ivi/libsoup2.4.git] / docs / reference / html / SoupMessage.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>SoupMessage</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="libsoup Reference Manual">
8 <link rel="up" href="ch02.html" title="Core API">
9 <link rel="prev" href="SoupCookie.html" title="SoupCookie">
10 <link rel="next" href="SoupMessageHeaders.html" title="SoupMessageHeaders">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="SoupCookie.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">libsoup Reference Manual</th>
21 <td><a accesskey="n" href="SoupMessageHeaders.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#SoupMessage.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#SoupMessage.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#SoupMessage.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#SoupMessage.properties" class="shortcut">Properties</a>
31                    | 
32                   <a href="#SoupMessage.signals" class="shortcut">Signals</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="SoupMessage"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="SoupMessage.top_of_page"></a>SoupMessage</span></h2>
40 <p>SoupMessage — An HTTP request and response.</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="SoupMessage.synopsis"></a><h2>Synopsis</h2>
46 <pre class="synopsis">
47 #include &lt;libsoup/soup.h&gt;
48
49                     <a class="link" href="SoupMessage.html#SoupMessage-struct" title="SoupMessage">SoupMessage</a>;
50
51 <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="returnvalue">SoupMessage</span></a> *       <a class="link" href="SoupMessage.html#soup-message-new" title="soup_message_new ()">soup_message_new</a>                    (<em class="parameter"><code>const <span class="type">char</span> *method</code></em>,
52                                                          <em class="parameter"><code>const <span class="type">char</span> *uri_string</code></em>);
53 <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="returnvalue">SoupMessage</span></a> *       <a class="link" href="SoupMessage.html#soup-message-new-from-uri" title="soup_message_new_from_uri ()">soup_message_new_from_uri</a>           (<em class="parameter"><code>const <span class="type">char</span> *method</code></em>,
54                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>);
55 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-request" title="soup_message_set_request ()">soup_message_set_request</a>            (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
56                                                          <em class="parameter"><code>const <span class="type">char</span> *content_type</code></em>,
57                                                          <em class="parameter"><code><a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> req_use</code></em>,
58                                                          <em class="parameter"><code>const <span class="type">char</span> *req_body</code></em>,
59                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> req_length</code></em>);
60 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-response" title="soup_message_set_response ()">soup_message_set_response</a>           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
61                                                          <em class="parameter"><code>const <span class="type">char</span> *content_type</code></em>,
62                                                          <em class="parameter"><code><a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> resp_use</code></em>,
63                                                          <em class="parameter"><code>const <span class="type">char</span> *resp_body</code></em>,
64                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> resp_length</code></em>);
65
66 enum                <a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion">SoupHTTPVersion</a>;
67 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-http-version" title="soup_message_set_http_version ()">soup_message_set_http_version</a>       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
68                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="type">SoupHTTPVersion</span></a> version</code></em>);
69 <a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="returnvalue">SoupHTTPVersion</span></a>     <a class="link" href="SoupMessage.html#soup-message-get-http-version" title="soup_message_get_http_version ()">soup_message_get_http_version</a>       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
70 <a class="link" href="SoupURI.html" title="SoupURI"><span class="returnvalue">SoupURI</span></a> *           <a class="link" href="SoupMessage.html#soup-message-get-uri" title="soup_message_get_uri ()">soup_message_get_uri</a>                (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
71 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-uri" title="soup_message_set_uri ()">soup_message_set_uri</a>                (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
72                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>);
73 <a class="link" href="SoupAddress.html" title="SoupAddress"><span class="returnvalue">SoupAddress</span></a> *       <a class="link" href="SoupMessage.html#soup-message-get-address" title="soup_message_get_address ()">soup_message_get_address</a>            (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
74
75 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-status" title="soup_message_set_status ()">soup_message_set_status</a>             (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
76                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>);
77 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-status-full" title="soup_message_set_status_full ()">soup_message_set_status_full</a>        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
78                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
79                                                          <em class="parameter"><code>const <span class="type">char</span> *reason_phrase</code></em>);
80 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-redirect" title="soup_message_set_redirect ()">soup_message_set_redirect</a>           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
81                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
82                                                          <em class="parameter"><code>const <span class="type">char</span> *redirect_uri</code></em>);
83 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupMessage.html#soup-message-is-keepalive" title="soup_message_is_keepalive ()">soup_message_is_keepalive</a>           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
84 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupMessage.html#soup-message-get-https-status" title="soup_message_get_https_status ()">soup_message_get_https_status</a>       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
85                                                          <em class="parameter"><code><span class="type">GTlsCertificate</span> **certificate</code></em>,
86                                                          <em class="parameter"><code><span class="type">GTlsCertificateFlags</span> *errors</code></em>);
87
88 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-first-party" title="soup_message_set_first_party ()">soup_message_set_first_party</a>        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
89                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *first_party</code></em>);
90 <a class="link" href="SoupURI.html" title="SoupURI"><span class="returnvalue">SoupURI</span></a> *           <a class="link" href="SoupMessage.html#soup-message-get-first-party" title="soup_message_get_first_party ()">soup_message_get_first_party</a>        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
91
92 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupMessage.html#soup-message-add-header-handler" title="soup_message_add_header_handler ()">soup_message_add_header_handler</a>     (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
93                                                          <em class="parameter"><code>const <span class="type">char</span> *signal</code></em>,
94                                                          <em class="parameter"><code>const <span class="type">char</span> *header</code></em>,
95                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> callback</code></em>,
96                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
97 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupMessage.html#soup-message-add-status-code-handler" title="soup_message_add_status_code_handler ()">soup_message_add_status_code_handler</a>
98                                                         (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
99                                                          <em class="parameter"><code>const <span class="type">char</span> *signal</code></em>,
100                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
101                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> callback</code></em>,
102                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
103
104 enum                <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags">SoupMessageFlags</a>;
105 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-flags" title="soup_message_set_flags ()">soup_message_set_flags</a>              (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
106                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a> flags</code></em>);
107 <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="returnvalue">SoupMessageFlags</span></a>    <a class="link" href="SoupMessage.html#soup-message-get-flags" title="soup_message_get_flags ()">soup_message_get_flags</a>              (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
108 <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="returnvalue">SoupBuffer</span></a> *        (<a class="link" href="SoupMessage.html#SoupChunkAllocator" title="SoupChunkAllocator ()">*SoupChunkAllocator</a>)               (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
109                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> max_len</code></em>,
110                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
111 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-chunk-allocator" title="soup_message_set_chunk_allocator ()">soup_message_set_chunk_allocator</a>    (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
112                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupChunkAllocator" title="SoupChunkAllocator ()"><span class="type">SoupChunkAllocator</span></a> allocator</code></em>,
113                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
114                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_notify</code></em>);
115
116 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-disable-feature" title="soup_message_disable_feature ()">soup_message_disable_feature</a>        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
117                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> feature_type</code></em>);
118
119 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-METHOD:CAPS" title="SOUP_MESSAGE_METHOD">SOUP_MESSAGE_METHOD</a>
120 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-URI:CAPS" title="SOUP_MESSAGE_URI">SOUP_MESSAGE_URI</a>
121 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-HTTP-VERSION:CAPS" title="SOUP_MESSAGE_HTTP_VERSION">SOUP_MESSAGE_HTTP_VERSION</a>
122 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-FLAGS:CAPS" title="SOUP_MESSAGE_FLAGS">SOUP_MESSAGE_FLAGS</a>
123 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-STATUS-CODE:CAPS" title="SOUP_MESSAGE_STATUS_CODE">SOUP_MESSAGE_STATUS_CODE</a>
124 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-REASON-PHRASE:CAPS" title="SOUP_MESSAGE_REASON_PHRASE">SOUP_MESSAGE_REASON_PHRASE</a>
125 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-SERVER-SIDE:CAPS" title="SOUP_MESSAGE_SERVER_SIDE">SOUP_MESSAGE_SERVER_SIDE</a>
126 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-FIRST-PARTY:CAPS" title="SOUP_MESSAGE_FIRST_PARTY">SOUP_MESSAGE_FIRST_PARTY</a>
127 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-REQUEST-BODY:CAPS" title="SOUP_MESSAGE_REQUEST_BODY">SOUP_MESSAGE_REQUEST_BODY</a>
128 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-REQUEST-HEADERS:CAPS" title="SOUP_MESSAGE_REQUEST_HEADERS">SOUP_MESSAGE_REQUEST_HEADERS</a>
129 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-RESPONSE-BODY:CAPS" title="SOUP_MESSAGE_RESPONSE_BODY">SOUP_MESSAGE_RESPONSE_BODY</a>
130 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-RESPONSE-HEADERS:CAPS" title="SOUP_MESSAGE_RESPONSE_HEADERS">SOUP_MESSAGE_RESPONSE_HEADERS</a>
131 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-TLS-CERTIFICATE:CAPS" title="SOUP_MESSAGE_TLS_CERTIFICATE">SOUP_MESSAGE_TLS_CERTIFICATE</a>
132 #define             <a class="link" href="SoupMessage.html#SOUP-MESSAGE-TLS-ERRORS:CAPS" title="SOUP_MESSAGE_TLS_ERRORS">SOUP_MESSAGE_TLS_ERRORS</a>
133 </pre>
134 </div>
135 <div class="refsect1">
136 <a name="SoupMessage.object-hierarchy"></a><h2>Object Hierarchy</h2>
137 <pre class="synopsis">
138   <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
139    +----SoupMessage
140 </pre>
141 </div>
142 <div class="refsect1">
143 <a name="SoupMessage.properties"></a><h2>Properties</h2>
144 <pre class="synopsis">
145   "<a class="link" href="SoupMessage.html#SoupMessage--first-party" title='The "first-party" property'>first-party</a>"              <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>*              : Read / Write
146   "<a class="link" href="SoupMessage.html#SoupMessage--flags" title='The "flags" property'>flags</a>"                    <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a>      : Read / Write
147   "<a class="link" href="SoupMessage.html#SoupMessage--http-version" title='The "http-version" property'>http-version</a>"             <a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="type">SoupHTTPVersion</span></a>       : Read / Write
148   "<a class="link" href="SoupMessage.html#SoupMessage--method" title='The "method" property'>method</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write
149   "<a class="link" href="SoupMessage.html#SoupMessage--reason-phrase" title='The "reason-phrase" property'>reason-phrase</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write
150   "<a class="link" href="SoupMessage.html#SoupMessage--request-body" title='The "request-body" property'>request-body</a>"             <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a>*      : Read
151   "<a class="link" href="SoupMessage.html#SoupMessage--request-headers" title='The "request-headers" property'>request-headers</a>"          <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>*   : Read
152   "<a class="link" href="SoupMessage.html#SoupMessage--response-body" title='The "response-body" property'>response-body</a>"            <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a>*      : Read
153   "<a class="link" href="SoupMessage.html#SoupMessage--response-headers" title='The "response-headers" property'>response-headers</a>"         <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>*   : Read
154   "<a class="link" href="SoupMessage.html#SoupMessage--server-side" title='The "server-side" property'>server-side</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
155   "<a class="link" href="SoupMessage.html#SoupMessage--status-code" title='The "status-code" property'>status-code</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
156   "<a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <span class="type">GTlsCertificate</span>*      : Read / Write
157   "<a class="link" href="SoupMessage.html#SoupMessage--tls-errors" title='The "tls-errors" property'>tls-errors</a>"               <span class="type">GTlsCertificateFlags</span>  : Read / Write
158   "<a class="link" href="SoupMessage.html#SoupMessage--uri" title='The "uri" property'>uri</a>"                      <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>*              : Read / Write
159 </pre>
160 </div>
161 <div class="refsect1">
162 <a name="SoupMessage.signals"></a><h2>Signals</h2>
163 <pre class="synopsis">
164   "<a class="link" href="SoupMessage.html#SoupMessage-content-sniffed" title='The "content-sniffed" signal'>content-sniffed</a>"                                : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
165   "<a class="link" href="SoupMessage.html#SoupMessage-finished" title='The "finished" signal'>finished</a>"                                       : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
166   "<a class="link" href="SoupMessage.html#SoupMessage-got-body" title='The "got-body" signal'>got-body</a>"                                       : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
167   "<a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'>got-chunk</a>"                                      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
168   "<a class="link" href="SoupMessage.html#SoupMessage-got-headers" title='The "got-headers" signal'>got-headers</a>"                                    : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
169   "<a class="link" href="SoupMessage.html#SoupMessage-got-informational" title='The "got-informational" signal'>got-informational</a>"                              : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
170   "<a class="link" href="SoupMessage.html#SoupMessage-network-event" title='The "network-event" signal'>network-event</a>"                                  : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
171   "<a class="link" href="SoupMessage.html#SoupMessage-restarted" title='The "restarted" signal'>restarted</a>"                                      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
172   "<a class="link" href="SoupMessage.html#SoupMessage-wrote-body" title='The "wrote-body" signal'>wrote-body</a>"                                     : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
173   "<a class="link" href="SoupMessage.html#SoupMessage-wrote-body-data" title='The "wrote-body-data" signal'>wrote-body-data</a>"                                : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
174   "<a class="link" href="SoupMessage.html#SoupMessage-wrote-chunk" title='The "wrote-chunk" signal'>wrote-chunk</a>"                                    : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
175   "<a class="link" href="SoupMessage.html#SoupMessage-wrote-headers" title='The "wrote-headers" signal'>wrote-headers</a>"                                  : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
176   "<a class="link" href="SoupMessage.html#SoupMessage-wrote-informational" title='The "wrote-informational" signal'>wrote-informational</a>"                            : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
177 </pre>
178 </div>
179 <div class="refsect1">
180 <a name="SoupMessage.description"></a><h2>Description</h2>
181 <p>
182 A <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> represents an HTTP message that is being sent or
183 received.
184 </p>
185 <p>
186 For client-side usage, you would create a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> with
187 <a class="link" href="SoupMessage.html#soup-message-new" title="soup_message_new ()"><code class="function">soup_message_new()</code></a> or <a class="link" href="SoupMessage.html#soup-message-new-from-uri" title="soup_message_new_from_uri ()"><code class="function">soup_message_new_from_uri()</code></a>, set up its
188 fields appropriate, and send it via a <a class="link" href="SoupSession.html" title="SoupSession"><span class="type">SoupSession</span></a>.
189 </p>
190 <p>
191 For server-side usage, <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a> will create <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>s automatically for incoming requests, which your application
192 will receive via handlers.
193 </p>
194 <p>
195 Note that libsoup's terminology here does not quite match the HTTP
196 specification: in RFC 2616, an "HTTP-message" is
197 <span class="emphasis"><em>either</em></span> a Request, <span class="emphasis"><em>or</em></span> a
198 Response. In libsoup, a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> combines both the request and
199 the response.
200 </p>
201 </div>
202 <div class="refsect1">
203 <a name="SoupMessage.details"></a><h2>Details</h2>
204 <div class="refsect2">
205 <a name="SoupMessage-struct"></a><h3>SoupMessage</h3>
206 <pre class="programlisting">typedef struct {
207         const char         *method;
208
209         guint               status_code;
210         char               *reason_phrase;
211
212         SoupMessageBody    *request_body;
213         SoupMessageHeaders *request_headers;
214
215         SoupMessageBody    *response_body;
216         SoupMessageHeaders *response_headers;
217 } SoupMessage;
218 </pre>
219 <p>
220 Represents an HTTP message being sent or received.
221 </p>
222 <p>
223 <em class="parameter"><code>status_code</code></em> will normally be a <a class="link" href="libsoup-2.4-soup-status.html#SoupKnownStatusCode" title="enum SoupKnownStatusCode"><span class="type">SoupKnownStatusCode</span></a>, eg,
224 <a class="link" href="libsoup-2.4-soup-status.html#SOUP-STATUS-OK:CAPS"><code class="literal">SOUP_STATUS_OK</code></a>, though of course it might actually be an unknown
225 status code. <em class="parameter"><code>reason_phrase</code></em> is the actual text returned from the
226 server, which may or may not correspond to the "standard"
227 description of <em class="parameter"><code>status_code</code></em>. At any rate, it is almost certainly
228 not localized, and not very descriptive even if it is in the user's
229 language; you should not use <em class="parameter"><code>reason_phrase</code></em> in user-visible
230 messages. Rather, you should look at <em class="parameter"><code>status_code</code></em>, and determine an
231 end-user-appropriate message based on that and on what you were
232 trying to do.
233 </p>
234 <p>
235 As described in the <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a> documentation, the
236 <em class="parameter"><code>request_body</code></em> and <em class="parameter"><code>response_body</code></em> <code class="literal">data</code> fields
237 will not necessarily be filled in at all times. When they are
238 filled in, they will be terminated with a '\0' byte (which is not
239 included in the <code class="literal">length</code>), so you can use them as
240 ordinary C strings (assuming that you know that the body doesn't
241 have any other '\0' bytes).
242 </p>
243 <p>
244 For a client-side <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, <em class="parameter"><code>request_body</code></em>'s <code class="literal">data</code> is usually
245 filled in right before libsoup writes the request to the network,
246 but you should not count on this; use <a class="link" href="SoupMessageBody.html#soup-message-body-flatten" title="soup_message_body_flatten ()"><code class="function">soup_message_body_flatten()</code></a>
247 if you want to ensure that <code class="literal">data</code> is filled in. <em class="parameter"><code>response_body</code></em>'s
248 <code class="literal">data</code> will be filled in before <a class="link" href="SoupMessage.html#SoupMessage-finished" title='The "finished" signal'><span class="type">"finished"</span></a> is emitted.
249 </p>
250 <p>
251 For a server-side <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, <em class="parameter"><code>request_body</code></em>'s <code class="literal">data</code> will be
252 filled in before <a class="link" href="SoupMessage.html#SoupMessage-got-body" title='The "got-body" signal'><span class="type">"got_body"</span></a> is emitted.
253 </p>
254 <p>
255 To prevent the <code class="literal">data</code> field from being filled in at all (eg, if you
256 are handling the data from a <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a>, and so don't
257 need to see it all at the end), call
258 <a class="link" href="SoupMessageBody.html#soup-message-body-set-accumulate" title="soup_message_body_set_accumulate ()"><code class="function">soup_message_body_set_accumulate()</code></a> on <em class="parameter"><code>response_body</code></em> or
259 <em class="parameter"><code>request_body</code></em> as appropriate, passing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.
260 </p>
261 <div class="variablelist"><table border="0">
262 <col align="left" valign="top">
263 <tbody>
264 <tr>
265 <td><p><span class="term">const <span class="type">char</span> *<em class="structfield"><code><a name="SoupMessage-struct.method"></a>method</code></em>;</span></p></td>
266 <td>the HTTP method</td>
267 </tr>
268 <tr>
269 <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="SoupMessage-struct.status-code"></a>status_code</code></em>;</span></p></td>
270 <td>the HTTP status code</td>
271 </tr>
272 <tr>
273 <td><p><span class="term"><span class="type">char</span> *<em class="structfield"><code><a name="SoupMessage-struct.reason-phrase"></a>reason_phrase</code></em>;</span></p></td>
274 <td>the status phrase associated with <em class="parameter"><code>status_code</code></em>
275 </td>
276 </tr>
277 <tr>
278 <td><p><span class="term"><a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a> *<em class="structfield"><code><a name="SoupMessage-struct.request-body"></a>request_body</code></em>;</span></p></td>
279 <td>the request body</td>
280 </tr>
281 <tr>
282 <td><p><span class="term"><a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a> *<em class="structfield"><code><a name="SoupMessage-struct.request-headers"></a>request_headers</code></em>;</span></p></td>
283 <td>the request headers</td>
284 </tr>
285 <tr>
286 <td><p><span class="term"><a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a> *<em class="structfield"><code><a name="SoupMessage-struct.response-body"></a>response_body</code></em>;</span></p></td>
287 <td>the response body</td>
288 </tr>
289 <tr>
290 <td><p><span class="term"><a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a> *<em class="structfield"><code><a name="SoupMessage-struct.response-headers"></a>response_headers</code></em>;</span></p></td>
291 <td>the response headers</td>
292 </tr>
293 </tbody>
294 </table></div>
295 </div>
296 <hr>
297 <div class="refsect2">
298 <a name="soup-message-new"></a><h3>soup_message_new ()</h3>
299 <pre class="programlisting"><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="returnvalue">SoupMessage</span></a> *       soup_message_new                    (<em class="parameter"><code>const <span class="type">char</span> *method</code></em>,
300                                                          <em class="parameter"><code>const <span class="type">char</span> *uri_string</code></em>);</pre>
301 <p>
302 Creates a new empty <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, which will connect to <em class="parameter"><code>uri</code></em>
303 </p>
304 <div class="variablelist"><table border="0">
305 <col align="left" valign="top">
306 <tbody>
307 <tr>
308 <td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
309 <td>the HTTP method for the created request</td>
310 </tr>
311 <tr>
312 <td><p><span class="term"><em class="parameter"><code>uri_string</code></em> :</span></p></td>
313 <td>the destination endpoint (as a string)</td>
314 </tr>
315 <tr>
316 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
317 <td>the new <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> (or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>uri</code></em> could not
318 be parsed).</td>
319 </tr>
320 </tbody>
321 </table></div>
322 </div>
323 <hr>
324 <div class="refsect2">
325 <a name="soup-message-new-from-uri"></a><h3>soup_message_new_from_uri ()</h3>
326 <pre class="programlisting"><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="returnvalue">SoupMessage</span></a> *       soup_message_new_from_uri           (<em class="parameter"><code>const <span class="type">char</span> *method</code></em>,
327                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>);</pre>
328 <p>
329 Creates a new empty <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, which will connect to <em class="parameter"><code>uri</code></em>
330 </p>
331 <div class="variablelist"><table border="0">
332 <col align="left" valign="top">
333 <tbody>
334 <tr>
335 <td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
336 <td>the HTTP method for the created request</td>
337 </tr>
338 <tr>
339 <td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
340 <td>the destination endpoint (as a <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>)</td>
341 </tr>
342 <tr>
343 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
344 <td>the new <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
345 </td>
346 </tr>
347 </tbody>
348 </table></div>
349 </div>
350 <hr>
351 <div class="refsect2">
352 <a name="soup-message-set-request"></a><h3>soup_message_set_request ()</h3>
353 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_request            (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
354                                                          <em class="parameter"><code>const <span class="type">char</span> *content_type</code></em>,
355                                                          <em class="parameter"><code><a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> req_use</code></em>,
356                                                          <em class="parameter"><code>const <span class="type">char</span> *req_body</code></em>,
357                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> req_length</code></em>);</pre>
358 <p>
359 Convenience function to set the request body of a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>. If
360 <em class="parameter"><code>content_type</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the request body must be empty as well.
361 </p>
362 <div class="variablelist"><table border="0">
363 <col align="left" valign="top">
364 <tbody>
365 <tr>
366 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
367 <td>the message</td>
368 </tr>
369 <tr>
370 <td><p><span class="term"><em class="parameter"><code>content_type</code></em> :</span></p></td>
371 <td>MIME Content-Type of the body</td>
372 </tr>
373 <tr>
374 <td><p><span class="term"><em class="parameter"><code>req_use</code></em> :</span></p></td>
375 <td>a <a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> describing how to handle <em class="parameter"><code>req_body</code></em>
376 </td>
377 </tr>
378 <tr>
379 <td><p><span class="term"><em class="parameter"><code>req_body</code></em> :</span></p></td>
380 <td>a data buffer containing the body of the message request.</td>
381 </tr>
382 <tr>
383 <td><p><span class="term"><em class="parameter"><code>req_length</code></em> :</span></p></td>
384 <td>the byte length of <em class="parameter"><code>req_body</code></em>.</td>
385 </tr>
386 </tbody>
387 </table></div>
388 </div>
389 <hr>
390 <div class="refsect2">
391 <a name="soup-message-set-response"></a><h3>soup_message_set_response ()</h3>
392 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_response           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
393                                                          <em class="parameter"><code>const <span class="type">char</span> *content_type</code></em>,
394                                                          <em class="parameter"><code><a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> resp_use</code></em>,
395                                                          <em class="parameter"><code>const <span class="type">char</span> *resp_body</code></em>,
396                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> resp_length</code></em>);</pre>
397 <p>
398 Convenience function to set the response body of a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>. If
399 <em class="parameter"><code>content_type</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the response body must be empty as well.
400 </p>
401 <div class="variablelist"><table border="0">
402 <col align="left" valign="top">
403 <tbody>
404 <tr>
405 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
406 <td>the message</td>
407 </tr>
408 <tr>
409 <td><p><span class="term"><em class="parameter"><code>content_type</code></em> :</span></p></td>
410 <td>MIME Content-Type of the body. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
411 </td>
412 </tr>
413 <tr>
414 <td><p><span class="term"><em class="parameter"><code>resp_use</code></em> :</span></p></td>
415 <td>a <a class="link" href="SoupMessageBody.html#SoupMemoryUse" title="enum SoupMemoryUse"><span class="type">SoupMemoryUse</span></a> describing how to handle <em class="parameter"><code>resp_body</code></em>
416 </td>
417 </tr>
418 <tr>
419 <td><p><span class="term"><em class="parameter"><code>resp_body</code></em> :</span></p></td>
420 <td>a data buffer
421 containing the body of the message response. <span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=resp_length][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8]</span>
422 </td>
423 </tr>
424 <tr>
425 <td><p><span class="term"><em class="parameter"><code>resp_length</code></em> :</span></p></td>
426 <td>the byte length of <em class="parameter"><code>resp_body</code></em>.</td>
427 </tr>
428 </tbody>
429 </table></div>
430 </div>
431 <hr>
432 <div class="refsect2">
433 <a name="SoupHTTPVersion"></a><h3>enum SoupHTTPVersion</h3>
434 <pre class="programlisting">typedef enum {
435         SOUP_HTTP_1_0 = 0, /*&lt; nick=http-1-0 &gt;*/
436         SOUP_HTTP_1_1 = 1  /*&lt; nick=http-1-1 &gt;*/
437 } SoupHTTPVersion;
438 </pre>
439 <p>
440 Indicates the HTTP protocol version being used.
441 </p>
442 <div class="variablelist"><table border="0">
443 <col align="left" valign="top">
444 <tbody>
445 <tr>
446 <td><p><a name="SOUP-HTTP-1-0:CAPS"></a><span class="term"><code class="literal">SOUP_HTTP_1_0</code></span></p></td>
447 <td>HTTP 1.0 (RFC 1945)
448 </td>
449 </tr>
450 <tr>
451 <td><p><a name="SOUP-HTTP-1-1:CAPS"></a><span class="term"><code class="literal">SOUP_HTTP_1_1</code></span></p></td>
452 <td>HTTP 1.1 (RFC 2616)
453 </td>
454 </tr>
455 </tbody>
456 </table></div>
457 </div>
458 <hr>
459 <div class="refsect2">
460 <a name="soup-message-set-http-version"></a><h3>soup_message_set_http_version ()</h3>
461 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_http_version       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
462                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="type">SoupHTTPVersion</span></a> version</code></em>);</pre>
463 <p>
464 Sets the HTTP version on <em class="parameter"><code>msg</code></em>. The default version is
465 <a class="link" href="SoupMessage.html#SOUP-HTTP-1-1:CAPS"><code class="literal">SOUP_HTTP_1_1</code></a>. Setting it to <a class="link" href="SoupMessage.html#SOUP-HTTP-1-0:CAPS"><code class="literal">SOUP_HTTP_1_0</code></a> will prevent certain
466 functionality from being used.
467 </p>
468 <div class="variablelist"><table border="0">
469 <col align="left" valign="top">
470 <tbody>
471 <tr>
472 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
473 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
474 </td>
475 </tr>
476 <tr>
477 <td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
478 <td>the HTTP version</td>
479 </tr>
480 </tbody>
481 </table></div>
482 </div>
483 <hr>
484 <div class="refsect2">
485 <a name="soup-message-get-http-version"></a><h3>soup_message_get_http_version ()</h3>
486 <pre class="programlisting"><a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="returnvalue">SoupHTTPVersion</span></a>     soup_message_get_http_version       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
487 <p>
488 Gets the HTTP version of <em class="parameter"><code>msg</code></em>. This is the minimum of the
489 version from the request and the version from the response.
490 </p>
491 <div class="variablelist"><table border="0">
492 <col align="left" valign="top">
493 <tbody>
494 <tr>
495 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
496 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
497 </td>
498 </tr>
499 <tr>
500 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
501 <td>the HTTP version</td>
502 </tr>
503 </tbody>
504 </table></div>
505 </div>
506 <hr>
507 <div class="refsect2">
508 <a name="soup-message-get-uri"></a><h3>soup_message_get_uri ()</h3>
509 <pre class="programlisting"><a class="link" href="SoupURI.html" title="SoupURI"><span class="returnvalue">SoupURI</span></a> *           soup_message_get_uri                (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
510 <p>
511 Gets <em class="parameter"><code>msg</code></em>'s URI
512 </p>
513 <div class="variablelist"><table border="0">
514 <col align="left" valign="top">
515 <tbody>
516 <tr>
517 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
518 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
519 </td>
520 </tr>
521 <tr>
522 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
523 <td>the URI <em class="parameter"><code>msg</code></em> is targeted for. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
524 </td>
525 </tr>
526 </tbody>
527 </table></div>
528 </div>
529 <hr>
530 <div class="refsect2">
531 <a name="soup-message-set-uri"></a><h3>soup_message_set_uri ()</h3>
532 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_uri                (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
533                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>);</pre>
534 <p>
535 Sets <em class="parameter"><code>msg</code></em>'s URI to <em class="parameter"><code>uri</code></em>. If <em class="parameter"><code>msg</code></em> has already been sent and you want
536 to re-send it with the new URI, you need to call
537 <a class="link" href="SoupSession.html#soup-session-requeue-message" title="soup_session_requeue_message ()"><code class="function">soup_session_requeue_message()</code></a>.
538 </p>
539 <div class="variablelist"><table border="0">
540 <col align="left" valign="top">
541 <tbody>
542 <tr>
543 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
544 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
545 </td>
546 </tr>
547 <tr>
548 <td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
549 <td>the new <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>
550 </td>
551 </tr>
552 </tbody>
553 </table></div>
554 </div>
555 <hr>
556 <div class="refsect2">
557 <a name="soup-message-get-address"></a><h3>soup_message_get_address ()</h3>
558 <pre class="programlisting"><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="returnvalue">SoupAddress</span></a> *       soup_message_get_address            (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
559 <p>
560 Gets the address <em class="parameter"><code>msg</code></em>'s URI points to. After first setting the
561 URI on a message, this will be unresolved, although the message's
562 session will resolve it before sending the message.
563 </p>
564 <div class="variablelist"><table border="0">
565 <col align="left" valign="top">
566 <tbody>
567 <tr>
568 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
569 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
570 </td>
571 </tr>
572 <tr>
573 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
574 <td>the address <em class="parameter"><code>msg</code></em>'s URI points to. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
575 </td>
576 </tr>
577 </tbody>
578 </table></div>
579 <p class="since">Since 2.26</p>
580 </div>
581 <hr>
582 <div class="refsect2">
583 <a name="soup-message-set-status"></a><h3>soup_message_set_status ()</h3>
584 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_status             (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
585                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>);</pre>
586 <p>
587 Sets <em class="parameter"><code>msg</code></em>'s status code to <em class="parameter"><code>status_code</code></em>. If <em class="parameter"><code>status_code</code></em> is a
588 known value, it will also set <em class="parameter"><code>msg</code></em>'s reason_phrase.
589 </p>
590 <div class="variablelist"><table border="0">
591 <col align="left" valign="top">
592 <tbody>
593 <tr>
594 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
595 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
596 </td>
597 </tr>
598 <tr>
599 <td><p><span class="term"><em class="parameter"><code>status_code</code></em> :</span></p></td>
600 <td>an HTTP status code</td>
601 </tr>
602 </tbody>
603 </table></div>
604 </div>
605 <hr>
606 <div class="refsect2">
607 <a name="soup-message-set-status-full"></a><h3>soup_message_set_status_full ()</h3>
608 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_status_full        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
609                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
610                                                          <em class="parameter"><code>const <span class="type">char</span> *reason_phrase</code></em>);</pre>
611 <p>
612 Sets <em class="parameter"><code>msg</code></em>'s status code and reason phrase.
613 </p>
614 <div class="variablelist"><table border="0">
615 <col align="left" valign="top">
616 <tbody>
617 <tr>
618 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
619 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
620 </td>
621 </tr>
622 <tr>
623 <td><p><span class="term"><em class="parameter"><code>status_code</code></em> :</span></p></td>
624 <td>an HTTP status code</td>
625 </tr>
626 <tr>
627 <td><p><span class="term"><em class="parameter"><code>reason_phrase</code></em> :</span></p></td>
628 <td>a description of the status</td>
629 </tr>
630 </tbody>
631 </table></div>
632 </div>
633 <hr>
634 <div class="refsect2">
635 <a name="soup-message-set-redirect"></a><h3>soup_message_set_redirect ()</h3>
636 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_redirect           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
637                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
638                                                          <em class="parameter"><code>const <span class="type">char</span> *redirect_uri</code></em>);</pre>
639 <p>
640 Sets <em class="parameter"><code>msg</code></em>'s status_code to <em class="parameter"><code>status_code</code></em> and adds a Location header
641 pointing to <em class="parameter"><code>redirect_uri</code></em>. Use this from a <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a> when you
642 want to redirect the client to another URI.
643 </p>
644 <p>
645 <em class="parameter"><code>redirect_uri</code></em> can be a relative URI, in which case it is
646 interpreted relative to <em class="parameter"><code>msg</code></em>'s current URI. In particular, if
647 <em class="parameter"><code>redirect_uri</code></em> is just a path, it will replace the path
648 <span class="emphasis"><em>and query</em></span> of <em class="parameter"><code>msg</code></em>'s URI.
649 </p>
650 <div class="variablelist"><table border="0">
651 <col align="left" valign="top">
652 <tbody>
653 <tr>
654 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
655 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
656 </td>
657 </tr>
658 <tr>
659 <td><p><span class="term"><em class="parameter"><code>status_code</code></em> :</span></p></td>
660 <td>a 3xx status code</td>
661 </tr>
662 <tr>
663 <td><p><span class="term"><em class="parameter"><code>redirect_uri</code></em> :</span></p></td>
664 <td>the URI to redirect <em class="parameter"><code>msg</code></em> to</td>
665 </tr>
666 </tbody>
667 </table></div>
668 <p class="since">Since 2.38</p>
669 </div>
670 <hr>
671 <div class="refsect2">
672 <a name="soup-message-is-keepalive"></a><h3>soup_message_is_keepalive ()</h3>
673 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_message_is_keepalive           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
674 <p>
675 Determines whether or not <em class="parameter"><code>msg</code></em>'s connection can be kept alive for
676 further requests after processing <em class="parameter"><code>msg</code></em>, based on the HTTP version,
677 Connection header, etc.
678 </p>
679 <div class="variablelist"><table border="0">
680 <col align="left" valign="top">
681 <tbody>
682 <tr>
683 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
684 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
685 </td>
686 </tr>
687 <tr>
688 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
689 <td>
690 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</td>
691 </tr>
692 </tbody>
693 </table></div>
694 </div>
695 <hr>
696 <div class="refsect2">
697 <a name="soup-message-get-https-status"></a><h3>soup_message_get_https_status ()</h3>
698 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_message_get_https_status       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
699                                                          <em class="parameter"><code><span class="type">GTlsCertificate</span> **certificate</code></em>,
700                                                          <em class="parameter"><code><span class="type">GTlsCertificateFlags</span> *errors</code></em>);</pre>
701 <p>
702 If <em class="parameter"><code>msg</code></em> is using https, this retrieves the <span class="type">GTlsCertificate</span>
703 associated with its connection, and the <span class="type">GTlsCertificateFlags</span> showing
704 what problems, if any, have been found with that certificate.
705 </p>
706 <div class="variablelist"><table border="0">
707 <col align="left" valign="top">
708 <tbody>
709 <tr>
710 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
711 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
712 </td>
713 </tr>
714 <tr>
715 <td><p><span class="term"><em class="parameter"><code>certificate</code></em> :</span></p></td>
716 <td>
717 <em class="parameter"><code>msg</code></em>'s TLS certificate. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
718 </td>
719 </tr>
720 <tr>
721 <td><p><span class="term"><em class="parameter"><code>errors</code></em> :</span></p></td>
722 <td>the verification status of <em class="parameter"><code>certificate</code></em>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
723 </td>
724 </tr>
725 <tr>
726 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
727 <td>
728 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>msg</code></em> uses https, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</td>
729 </tr>
730 </tbody>
731 </table></div>
732 <p class="since">Since 2.34</p>
733 </div>
734 <hr>
735 <div class="refsect2">
736 <a name="soup-message-set-first-party"></a><h3>soup_message_set_first_party ()</h3>
737 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_first_party        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
738                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *first_party</code></em>);</pre>
739 <p>
740 Sets <em class="parameter"><code>first_party</code></em> as the main document <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> for <em class="parameter"><code>msg</code></em>. For
741 details of when and how this is used refer to the documentation for
742 <a class="link" href="SoupCookieJar.html#SoupCookieJarAcceptPolicy" title="enum SoupCookieJarAcceptPolicy"><span class="type">SoupCookieJarAcceptPolicy</span></a>.
743 </p>
744 <div class="variablelist"><table border="0">
745 <col align="left" valign="top">
746 <tbody>
747 <tr>
748 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
749 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
750 </td>
751 </tr>
752 <tr>
753 <td><p><span class="term"><em class="parameter"><code>first_party</code></em> :</span></p></td>
754 <td>the <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> for the <em class="parameter"><code>msg</code></em>'s first party</td>
755 </tr>
756 </tbody>
757 </table></div>
758 <p class="since">Since 2.30</p>
759 </div>
760 <hr>
761 <div class="refsect2">
762 <a name="soup-message-get-first-party"></a><h3>soup_message_get_first_party ()</h3>
763 <pre class="programlisting"><a class="link" href="SoupURI.html" title="SoupURI"><span class="returnvalue">SoupURI</span></a> *           soup_message_get_first_party        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
764 <p>
765 Gets <em class="parameter"><code>msg</code></em>'s first-party <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>
766 </p>
767 <div class="variablelist"><table border="0">
768 <col align="left" valign="top">
769 <tbody>
770 <tr>
771 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
772 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
773 </td>
774 </tr>
775 <tr>
776 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
777 <td>the <em class="parameter"><code>msg</code></em>'s first party <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
778 </td>
779 </tr>
780 </tbody>
781 </table></div>
782 <p class="since">Since 2.30</p>
783 </div>
784 <hr>
785 <div class="refsect2">
786 <a name="soup-message-add-header-handler"></a><h3>soup_message_add_header_handler ()</h3>
787 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               soup_message_add_header_handler     (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
788                                                          <em class="parameter"><code>const <span class="type">char</span> *signal</code></em>,
789                                                          <em class="parameter"><code>const <span class="type">char</span> *header</code></em>,
790                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> callback</code></em>,
791                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
792 <p>
793 Adds a signal handler to <em class="parameter"><code>msg</code></em> for <em class="parameter"><code>signal</code></em>, as with
794 <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect"><code class="function">g_signal_connect()</code></a>, but with two differences: the <em class="parameter"><code>callback</code></em> will
795 only be run if <em class="parameter"><code>msg</code></em> has a header named <em class="parameter"><code>header</code></em>, and it will only be
796 run if no earlier handler cancelled or requeued the message.
797 </p>
798 <p>
799 If <em class="parameter"><code>signal</code></em> is one of the "got" signals (eg, "got_headers"), or
800 "finished" or "restarted", then <em class="parameter"><code>header</code></em> is matched against the
801 incoming message headers (that is, the <span class="type">request_headers</span> for a
802 client <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, or the <span class="type">response_headers</span> for a server
803 <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>). If <em class="parameter"><code>signal</code></em> is one of the "wrote" signals, then
804 <em class="parameter"><code>header</code></em> is matched against the outgoing message headers.
805 </p>
806 <div class="variablelist"><table border="0">
807 <col align="left" valign="top">
808 <tbody>
809 <tr>
810 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
811 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
812 </td>
813 </tr>
814 <tr>
815 <td><p><span class="term"><em class="parameter"><code>signal</code></em> :</span></p></td>
816 <td>signal to connect the handler to.</td>
817 </tr>
818 <tr>
819 <td><p><span class="term"><em class="parameter"><code>header</code></em> :</span></p></td>
820 <td>HTTP response header to match against</td>
821 </tr>
822 <tr>
823 <td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
824 <td>the header handler</td>
825 </tr>
826 <tr>
827 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
828 <td>data to pass to <em class="parameter"><code>handler_cb</code></em>
829 </td>
830 </tr>
831 <tr>
832 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
833 <td>the handler ID from <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect"><code class="function">g_signal_connect()</code></a>
834 </td>
835 </tr>
836 </tbody>
837 </table></div>
838 </div>
839 <hr>
840 <div class="refsect2">
841 <a name="soup-message-add-status-code-handler"></a><h3>soup_message_add_status_code_handler ()</h3>
842 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               soup_message_add_status_code_handler
843                                                         (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
844                                                          <em class="parameter"><code>const <span class="type">char</span> *signal</code></em>,
845                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>,
846                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> callback</code></em>,
847                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
848 <p>
849 Adds a signal handler to <em class="parameter"><code>msg</code></em> for <em class="parameter"><code>signal</code></em>, as with
850 <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect"><code class="function">g_signal_connect()</code></a> but with two differences: the <em class="parameter"><code>callback</code></em> will
851 only be run if <em class="parameter"><code>msg</code></em> has the status <em class="parameter"><code>status_code</code></em>, and it will only
852 be run if no earlier handler cancelled or requeued the message.
853 </p>
854 <p>
855 <em class="parameter"><code>signal</code></em> must be a signal that will be emitted after <em class="parameter"><code>msg</code></em>'s status
856 is set. For a client <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, this means it can't be a "wrote"
857 signal. For a server <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>, this means it can't be a "got"
858 signal.
859 </p>
860 <div class="variablelist"><table border="0">
861 <col align="left" valign="top">
862 <tbody>
863 <tr>
864 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
865 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
866 </td>
867 </tr>
868 <tr>
869 <td><p><span class="term"><em class="parameter"><code>signal</code></em> :</span></p></td>
870 <td>signal to connect the handler to.</td>
871 </tr>
872 <tr>
873 <td><p><span class="term"><em class="parameter"><code>status_code</code></em> :</span></p></td>
874 <td>status code to match against</td>
875 </tr>
876 <tr>
877 <td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
878 <td>the header handler</td>
879 </tr>
880 <tr>
881 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
882 <td>data to pass to <em class="parameter"><code>handler_cb</code></em>
883 </td>
884 </tr>
885 <tr>
886 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
887 <td>the handler ID from <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect"><code class="function">g_signal_connect()</code></a>
888 </td>
889 </tr>
890 </tbody>
891 </table></div>
892 </div>
893 <hr>
894 <div class="refsect2">
895 <a name="SoupMessageFlags"></a><h3>enum SoupMessageFlags</h3>
896 <pre class="programlisting">typedef enum {
897         SOUP_MESSAGE_NO_REDIRECT          = (1 &lt;&lt; 1),
898         SOUP_MESSAGE_CAN_REBUILD          = (1 &lt;&lt; 2),
899 #ifndef LIBSOUP_DISABLE_DEPRECATED
900         SOUP_MESSAGE_OVERWRITE_CHUNKS     = (1 &lt;&lt; 3),
901 #endif
902         SOUP_MESSAGE_CONTENT_DECODED      = (1 &lt;&lt; 4),
903         SOUP_MESSAGE_CERTIFICATE_TRUSTED  = (1 &lt;&lt; 5),
904         SOUP_MESSAGE_NEW_CONNECTION       = (1 &lt;&lt; 6)
905 } SoupMessageFlags;
906 </pre>
907 <p>
908 Various flags that can be set on a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> to alter its
909 behavior.
910 </p>
911 <div class="variablelist"><table border="0">
912 <col align="left" valign="top">
913 <tbody>
914 <tr>
915 <td><p><a name="SOUP-MESSAGE-NO-REDIRECT:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_NO_REDIRECT</code></span></p></td>
916 <td>The session should not follow redirect
917   (3xx) responses received by this message.
918 </td>
919 </tr>
920 <tr>
921 <td><p><a name="SOUP-MESSAGE-CAN-REBUILD:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_CAN_REBUILD</code></span></p></td>
922 <td>The caller will rebuild the request
923   body if the message is restarted; see
924   <a class="link" href="SoupMessageBody.html#soup-message-body-set-accumulate" title="soup_message_body_set_accumulate ()"><code class="function">soup_message_body_set_accumulate()</code></a> for more details.
925 </td>
926 </tr>
927 <tr>
928 <td><p><a name="SOUP-MESSAGE-OVERWRITE-CHUNKS:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_OVERWRITE_CHUNKS</code></span></p></td>
929 <td>Deprecated: equivalent to calling
930   <a class="link" href="SoupMessageBody.html#soup-message-body-set-accumulate" title="soup_message_body_set_accumulate ()"><code class="function">soup_message_body_set_accumulate()</code></a> on the incoming message body
931   (ie, <a class="link" href="SoupMessage.html#SoupMessage--response-body" title='The "response-body" property'><span class="type">"response_body"</span></a> for a client-side request),
932   passing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.
933 </td>
934 </tr>
935 <tr>
936 <td><p><a name="SOUP-MESSAGE-CONTENT-DECODED:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_CONTENT_DECODED</code></span></p></td>
937 <td>Set by <a class="link" href="SoupContentDecoder.html" title="SoupContentDecoder"><span class="type">SoupContentDecoder</span></a> to
938   indicate that it has removed the Content-Encoding on a message (and
939   so headers such as Content-Length may no longer accurately describe
940   the body).
941 </td>
942 </tr>
943 <tr>
944 <td><p><a name="SOUP-MESSAGE-CERTIFICATE-TRUSTED:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_CERTIFICATE_TRUSTED</code></span></p></td>
945 <td>if set after an https response
946   has been received, indicates that the server's SSL certificate is
947   trusted according to the session's CA.
948 </td>
949 </tr>
950 <tr>
951 <td><p><a name="SOUP-MESSAGE-NEW-CONNECTION:CAPS"></a><span class="term"><code class="literal">SOUP_MESSAGE_NEW_CONNECTION</code></span></p></td>
952 <td>The message should be sent on a
953   newly-created connection, not reusing an existing persistent
954   connection. Note that messages with non-idempotent
955   <a class="link" href="SoupMessage.html#SoupMessage--method" title='The "method" property'><span class="type">"method"</span></a>s behave this way by default.
956 </td>
957 </tr>
958 </tbody>
959 </table></div>
960 </div>
961 <hr>
962 <div class="refsect2">
963 <a name="soup-message-set-flags"></a><h3>soup_message_set_flags ()</h3>
964 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_flags              (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
965                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a> flags</code></em>);</pre>
966 <p>
967 Sets the specified flags on <em class="parameter"><code>msg</code></em>.
968 </p>
969 <div class="variablelist"><table border="0">
970 <col align="left" valign="top">
971 <tbody>
972 <tr>
973 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
974 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
975 </td>
976 </tr>
977 <tr>
978 <td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
979 <td>a set of <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a> values</td>
980 </tr>
981 </tbody>
982 </table></div>
983 </div>
984 <hr>
985 <div class="refsect2">
986 <a name="soup-message-get-flags"></a><h3>soup_message_get_flags ()</h3>
987 <pre class="programlisting"><a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="returnvalue">SoupMessageFlags</span></a>    soup_message_get_flags              (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);</pre>
988 <p>
989 Gets the flags on <em class="parameter"><code>msg</code></em>
990 </p>
991 <div class="variablelist"><table border="0">
992 <col align="left" valign="top">
993 <tbody>
994 <tr>
995 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
996 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
997 </td>
998 </tr>
999 <tr>
1000 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1001 <td>the flags</td>
1002 </tr>
1003 </tbody>
1004 </table></div>
1005 </div>
1006 <hr>
1007 <div class="refsect2">
1008 <a name="SoupChunkAllocator"></a><h3>SoupChunkAllocator ()</h3>
1009 <pre class="programlisting"><a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="returnvalue">SoupBuffer</span></a> *        (*SoupChunkAllocator)               (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
1010                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> max_len</code></em>,
1011                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
1012 <p>
1013 The prototype for a chunk allocation callback. This should allocate
1014 a new <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="type">SoupBuffer</span></a> and return it for the I/O layer to read message
1015 body data off the network into.
1016 </p>
1017 <p>
1018 If <em class="parameter"><code>max_len</code></em> is non-0, it indicates the maximum number of bytes that
1019 could be read, based on what is known about the message size. Note
1020 that this might be a very large number, and you should not simply
1021 try to allocate that many bytes blindly. If <em class="parameter"><code>max_len</code></em> is 0, that
1022 means that libsoup does not know how many bytes remain to be read,
1023 and the allocator should return a buffer of a size that it finds
1024 convenient.
1025 </p>
1026 <p>
1027 If the allocator returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the message will be paused. It is
1028 up to the application to make sure that it gets unpaused when it
1029 becomes possible to allocate a new buffer.
1030 </p>
1031 <div class="variablelist"><table border="0">
1032 <col align="left" valign="top">
1033 <tbody>
1034 <tr>
1035 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1036 <td>the <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> the chunk is being allocated for</td>
1037 </tr>
1038 <tr>
1039 <td><p><span class="term"><em class="parameter"><code>max_len</code></em> :</span></p></td>
1040 <td>the maximum length that will be read, or 0.</td>
1041 </tr>
1042 <tr>
1043 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1044 <td>the data passed to <a class="link" href="SoupMessage.html#soup-message-set-chunk-allocator" title="soup_message_set_chunk_allocator ()"><code class="function">soup_message_set_chunk_allocator()</code></a>
1045 </td>
1046 </tr>
1047 <tr>
1048 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1049 <td>the new buffer (or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>)</td>
1050 </tr>
1051 </tbody>
1052 </table></div>
1053 </div>
1054 <hr>
1055 <div class="refsect2">
1056 <a name="soup-message-set-chunk-allocator"></a><h3>soup_message_set_chunk_allocator ()</h3>
1057 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_set_chunk_allocator    (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
1058                                                          <em class="parameter"><code><a class="link" href="SoupMessage.html#SoupChunkAllocator" title="SoupChunkAllocator ()"><span class="type">SoupChunkAllocator</span></a> allocator</code></em>,
1059                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
1060                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy_notify</code></em>);</pre>
1061 <p>
1062 Sets an alternate chunk-allocation function to use when reading
1063 <em class="parameter"><code>msg</code></em>'s body. Every time data is available to read, libsoup will
1064 call <em class="parameter"><code>allocator</code></em>, which should return a <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="type">SoupBuffer</span></a>. (See
1065 <a class="link" href="SoupMessage.html#SoupChunkAllocator" title="SoupChunkAllocator ()"><span class="type">SoupChunkAllocator</span></a> for additional details.) Libsoup will then read
1066 data from the network into that buffer, and update the buffer's
1067 <code class="literal">length</code> to indicate how much data it read.
1068 </p>
1069 <p>
1070 Generally, a custom chunk allocator would be used in conjunction
1071 with <a class="link" href="SoupMessageBody.html#soup-message-body-set-accumulate" title="soup_message_body_set_accumulate ()"><code class="function">soup_message_body_set_accumulate()</code></a> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and
1072 <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a>, as part of a strategy to avoid unnecessary
1073 copying of data. However, you cannot assume that every call to the
1074 allocator will be followed by a call to your
1075 <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a> handler; if an I/O error occurs, then the
1076 buffer will be unreffed without ever having been used. If your
1077 buffer-allocation strategy requires special cleanup, use
1078 <a class="link" href="SoupMessageBody.html#soup-buffer-new-with-owner" title="soup_buffer_new_with_owner ()"><code class="function">soup_buffer_new_with_owner()</code></a> rather than doing the cleanup from the
1079 <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a> handler.
1080 </p>
1081 <p>
1082 The other thing to remember when using non-accumulating message
1083 bodies is that the buffer passed to the <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a>
1084 handler will be unreffed after the handler returns, just as it
1085 would be in the non-custom-allocated case. If you want to hand the
1086 chunk data off to some other part of your program to use later,
1087 you'll need to ref the <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="type">SoupBuffer</span></a> (or its owner, in the
1088 <a class="link" href="SoupMessageBody.html#soup-buffer-new-with-owner" title="soup_buffer_new_with_owner ()"><code class="function">soup_buffer_new_with_owner()</code></a> case) to ensure that the data remains
1089 valid.
1090 </p>
1091 <div class="variablelist"><table border="0">
1092 <col align="left" valign="top">
1093 <tbody>
1094 <tr>
1095 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1096 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
1097 </td>
1098 </tr>
1099 <tr>
1100 <td><p><span class="term"><em class="parameter"><code>allocator</code></em> :</span></p></td>
1101 <td>the chunk allocator callback</td>
1102 </tr>
1103 <tr>
1104 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1105 <td>data to pass to <em class="parameter"><code>allocator</code></em>
1106 </td>
1107 </tr>
1108 <tr>
1109 <td><p><span class="term"><em class="parameter"><code>destroy_notify</code></em> :</span></p></td>
1110 <td>destroy notifier to free <em class="parameter"><code>user_data</code></em> when <em class="parameter"><code>msg</code></em> is
1111 destroyed</td>
1112 </tr>
1113 </tbody>
1114 </table></div>
1115 </div>
1116 <hr>
1117 <div class="refsect2">
1118 <a name="soup-message-disable-feature"></a><h3>soup_message_disable_feature ()</h3>
1119 <pre class="programlisting"><span class="returnvalue">void</span>                soup_message_disable_feature        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
1120                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> feature_type</code></em>);</pre>
1121 <p>
1122 This disables the actions of <a class="link" href="SoupSessionFeature.html" title="SoupSessionFeature"><span class="type">SoupSessionFeature</span></a>s with the
1123 given <em class="parameter"><code>feature_type</code></em> (or a subclass of that type) on <em class="parameter"><code>msg</code></em>, so that
1124 <em class="parameter"><code>msg</code></em> is processed as though the feature(s) hadn't been added to the
1125 session. Eg, passing <span class="type">SOUP_TYPE_PROXY_URI_RESOLVER</span> for <em class="parameter"><code>feature_type</code></em>
1126 will disable proxy handling and cause <em class="parameter"><code>msg</code></em> to be sent directly to
1127 the indicated origin server, regardless of system proxy
1128 configuration.
1129 </p>
1130 <p>
1131 You must call this before queueing <em class="parameter"><code>msg</code></em> on a session; calling it on
1132 a message that has already been queued is undefined. In particular,
1133 you cannot call this on a message that is being requeued after a
1134 redirect or authentication.
1135 </p>
1136 <div class="variablelist"><table border="0">
1137 <col align="left" valign="top">
1138 <tbody>
1139 <tr>
1140 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1141 <td>a <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>
1142 </td>
1143 </tr>
1144 <tr>
1145 <td><p><span class="term"><em class="parameter"><code>feature_type</code></em> :</span></p></td>
1146 <td>the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> of a <a class="link" href="SoupSessionFeature.html" title="SoupSessionFeature"><span class="type">SoupSessionFeature</span></a>
1147 </td>
1148 </tr>
1149 </tbody>
1150 </table></div>
1151 <p class="since">Since 2.28</p>
1152 </div>
1153 <hr>
1154 <div class="refsect2">
1155 <a name="SOUP-MESSAGE-METHOD:CAPS"></a><h3>SOUP_MESSAGE_METHOD</h3>
1156 <pre class="programlisting">#define SOUP_MESSAGE_METHOD           "method"
1157 </pre>
1158 <p>
1159 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--method" title='The "method" property'><span class="type">"method"</span></a> property. (The message's
1160 HTTP method.)
1161 </p>
1162 </div>
1163 <hr>
1164 <div class="refsect2">
1165 <a name="SOUP-MESSAGE-URI:CAPS"></a><h3>SOUP_MESSAGE_URI</h3>
1166 <pre class="programlisting">#define SOUP_MESSAGE_URI              "uri"
1167 </pre>
1168 <p>
1169 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--uri" title='The "uri" property'><span class="type">"uri"</span></a> property. (The message's
1170 <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>.)
1171 </p>
1172 </div>
1173 <hr>
1174 <div class="refsect2">
1175 <a name="SOUP-MESSAGE-HTTP-VERSION:CAPS"></a><h3>SOUP_MESSAGE_HTTP_VERSION</h3>
1176 <pre class="programlisting">#define SOUP_MESSAGE_HTTP_VERSION     "http-version"
1177 </pre>
1178 <p>
1179 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--http-version" title='The "http-version" property'><span class="type">"http-version"</span></a> property. (The
1180 message's <a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="type">SoupHTTPVersion</span></a>.)
1181 </p>
1182 </div>
1183 <hr>
1184 <div class="refsect2">
1185 <a name="SOUP-MESSAGE-FLAGS:CAPS"></a><h3>SOUP_MESSAGE_FLAGS</h3>
1186 <pre class="programlisting">#define SOUP_MESSAGE_FLAGS            "flags"
1187 </pre>
1188 <p>
1189 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--flags" title='The "flags" property'><span class="type">"flags"</span></a> property. (The message's
1190 <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a>.)
1191 </p>
1192 </div>
1193 <hr>
1194 <div class="refsect2">
1195 <a name="SOUP-MESSAGE-STATUS-CODE:CAPS"></a><h3>SOUP_MESSAGE_STATUS_CODE</h3>
1196 <pre class="programlisting">#define SOUP_MESSAGE_STATUS_CODE      "status-code"
1197 </pre>
1198 <p>
1199 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--status-code" title='The "status-code" property'><span class="type">"status-code"</span></a> property. (The
1200 message's HTTP response status code.)
1201 </p>
1202 </div>
1203 <hr>
1204 <div class="refsect2">
1205 <a name="SOUP-MESSAGE-REASON-PHRASE:CAPS"></a><h3>SOUP_MESSAGE_REASON_PHRASE</h3>
1206 <pre class="programlisting">#define SOUP_MESSAGE_REASON_PHRASE    "reason-phrase"
1207 </pre>
1208 <p>
1209 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--reason-phrase" title='The "reason-phrase" property'><span class="type">"reason-phrase"</span></a> property. (The
1210 message's HTTP response reason phrase.)
1211 </p>
1212 </div>
1213 <hr>
1214 <div class="refsect2">
1215 <a name="SOUP-MESSAGE-SERVER-SIDE:CAPS"></a><h3>SOUP_MESSAGE_SERVER_SIDE</h3>
1216 <pre class="programlisting">#define SOUP_MESSAGE_SERVER_SIDE      "server-side"
1217 </pre>
1218 <p>
1219 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--server-side" title='The "server-side" property'><span class="type">"server-side"</span></a> property. (<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if
1220 the message was created by <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a>.)
1221 </p>
1222 </div>
1223 <hr>
1224 <div class="refsect2">
1225 <a name="SOUP-MESSAGE-FIRST-PARTY:CAPS"></a><h3>SOUP_MESSAGE_FIRST_PARTY</h3>
1226 <pre class="programlisting">#define SOUP_MESSAGE_FIRST_PARTY      "first-party"
1227 </pre>
1228 <p>
1229 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--first-party" title='The "first-party" property'><span class="type">"first-party"</span></a> property. (The
1230 <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> loaded in the application when the message was
1231 queued.)
1232 </p>
1233 <p class="since">Since 2.30</p>
1234 </div>
1235 <hr>
1236 <div class="refsect2">
1237 <a name="SOUP-MESSAGE-REQUEST-BODY:CAPS"></a><h3>SOUP_MESSAGE_REQUEST_BODY</h3>
1238 <pre class="programlisting">#define SOUP_MESSAGE_REQUEST_BODY     "request-body"
1239 </pre>
1240 <p>
1241 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--request-body" title='The "request-body" property'><span class="type">"request-body"</span></a> property. (The
1242 message's HTTP request body.)
1243 </p>
1244 </div>
1245 <hr>
1246 <div class="refsect2">
1247 <a name="SOUP-MESSAGE-REQUEST-HEADERS:CAPS"></a><h3>SOUP_MESSAGE_REQUEST_HEADERS</h3>
1248 <pre class="programlisting">#define SOUP_MESSAGE_REQUEST_HEADERS  "request-headers"
1249 </pre>
1250 <p>
1251 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--request-headers" title='The "request-headers" property'><span class="type">"request-headers"</span></a> property. (The
1252 message's HTTP request headers.)
1253 </p>
1254 </div>
1255 <hr>
1256 <div class="refsect2">
1257 <a name="SOUP-MESSAGE-RESPONSE-BODY:CAPS"></a><h3>SOUP_MESSAGE_RESPONSE_BODY</h3>
1258 <pre class="programlisting">#define SOUP_MESSAGE_RESPONSE_BODY    "response-body"
1259 </pre>
1260 <p>
1261 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--response-body" title='The "response-body" property'><span class="type">"response-body"</span></a> property. (The
1262 message's HTTP response body.)
1263 </p>
1264 </div>
1265 <hr>
1266 <div class="refsect2">
1267 <a name="SOUP-MESSAGE-RESPONSE-HEADERS:CAPS"></a><h3>SOUP_MESSAGE_RESPONSE_HEADERS</h3>
1268 <pre class="programlisting">#define SOUP_MESSAGE_RESPONSE_HEADERS "response-headers"
1269 </pre>
1270 <p>
1271 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--response-headers" title='The "response-headers" property'><span class="type">"response-headers"</span></a> property. (The
1272 message's HTTP response headers.)
1273 </p>
1274 </div>
1275 <hr>
1276 <div class="refsect2">
1277 <a name="SOUP-MESSAGE-TLS-CERTIFICATE:CAPS"></a><h3>SOUP_MESSAGE_TLS_CERTIFICATE</h3>
1278 <pre class="programlisting">#define SOUP_MESSAGE_TLS_CERTIFICATE  "tls-certificate"
1279 </pre>
1280 <p>
1281 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a> property. (The
1282 TLS certificate associated with the message, if any.)
1283 </p>
1284 <p class="since">Since 2.34</p>
1285 </div>
1286 <hr>
1287 <div class="refsect2">
1288 <a name="SOUP-MESSAGE-TLS-ERRORS:CAPS"></a><h3>SOUP_MESSAGE_TLS_ERRORS</h3>
1289 <pre class="programlisting">#define SOUP_MESSAGE_TLS_ERRORS       "tls-errors"
1290 </pre>
1291 <p>
1292 Alias for the <a class="link" href="SoupMessage.html#SoupMessage--tls-errors" title='The "tls-errors" property'><span class="type">"tls-errors"</span></a> property. (The
1293 verification errors on <a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a>.)
1294 </p>
1295 <p class="since">Since 2.34</p>
1296 </div>
1297 </div>
1298 <div class="refsect1">
1299 <a name="SoupMessage.property-details"></a><h2>Property Details</h2>
1300 <div class="refsect2">
1301 <a name="SoupMessage--first-party"></a><h3>The <code class="literal">"first-party"</code> property</h3>
1302 <pre class="programlisting">  "first-party"              <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>*              : Read / Write</pre>
1303 <p>
1304 The <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> loaded in the application when the message was
1305 queued.
1306 </p>
1307 <p class="since">Since 2.30</p>
1308 </div>
1309 <hr>
1310 <div class="refsect2">
1311 <a name="SoupMessage--flags"></a><h3>The <code class="literal">"flags"</code> property</h3>
1312 <pre class="programlisting">  "flags"                    <a class="link" href="SoupMessage.html#SoupMessageFlags" title="enum SoupMessageFlags"><span class="type">SoupMessageFlags</span></a>      : Read / Write</pre>
1313 <p>Various message options.</p>
1314 </div>
1315 <hr>
1316 <div class="refsect2">
1317 <a name="SoupMessage--http-version"></a><h3>The <code class="literal">"http-version"</code> property</h3>
1318 <pre class="programlisting">  "http-version"             <a class="link" href="SoupMessage.html#SoupHTTPVersion" title="enum SoupHTTPVersion"><span class="type">SoupHTTPVersion</span></a>       : Read / Write</pre>
1319 <p>The HTTP protocol version to use.</p>
1320 <p>Default value: SOUP_HTTP_1_1</p>
1321 </div>
1322 <hr>
1323 <div class="refsect2">
1324 <a name="SoupMessage--method"></a><h3>The <code class="literal">"method"</code> property</h3>
1325 <pre class="programlisting">  "method"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write</pre>
1326 <p>The message's HTTP method.</p>
1327 <p>Default value: "GET"</p>
1328 </div>
1329 <hr>
1330 <div class="refsect2">
1331 <a name="SoupMessage--reason-phrase"></a><h3>The <code class="literal">"reason-phrase"</code> property</h3>
1332 <pre class="programlisting">  "reason-phrase"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write</pre>
1333 <p>The HTTP response reason phrase.</p>
1334 <p>Default value: NULL</p>
1335 </div>
1336 <hr>
1337 <div class="refsect2">
1338 <a name="SoupMessage--request-body"></a><h3>The <code class="literal">"request-body"</code> property</h3>
1339 <pre class="programlisting">  "request-body"             <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a>*      : Read</pre>
1340 <p>The HTTP request content.</p>
1341 </div>
1342 <hr>
1343 <div class="refsect2">
1344 <a name="SoupMessage--request-headers"></a><h3>The <code class="literal">"request-headers"</code> property</h3>
1345 <pre class="programlisting">  "request-headers"          <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>*   : Read</pre>
1346 <p>The HTTP request headers.</p>
1347 </div>
1348 <hr>
1349 <div class="refsect2">
1350 <a name="SoupMessage--response-body"></a><h3>The <code class="literal">"response-body"</code> property</h3>
1351 <pre class="programlisting">  "response-body"            <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a>*      : Read</pre>
1352 <p>The HTTP response content.</p>
1353 </div>
1354 <hr>
1355 <div class="refsect2">
1356 <a name="SoupMessage--response-headers"></a><h3>The <code class="literal">"response-headers"</code> property</h3>
1357 <pre class="programlisting">  "response-headers"         <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>*   : Read</pre>
1358 <p>The HTTP response headers.</p>
1359 </div>
1360 <hr>
1361 <div class="refsect2">
1362 <a name="SoupMessage--server-side"></a><h3>The <code class="literal">"server-side"</code> property</h3>
1363 <pre class="programlisting">  "server-side"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only</pre>
1364 <p>Whether or not the message is server-side rather than client-side.</p>
1365 <p>Default value: FALSE</p>
1366 </div>
1367 <hr>
1368 <div class="refsect2">
1369 <a name="SoupMessage--status-code"></a><h3>The <code class="literal">"status-code"</code> property</h3>
1370 <pre class="programlisting">  "status-code"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
1371 <p>The HTTP response status code.</p>
1372 <p>Allowed values: &lt;= 599</p>
1373 <p>Default value: 0</p>
1374 </div>
1375 <hr>
1376 <div class="refsect2">
1377 <a name="SoupMessage--tls-certificate"></a><h3>The <code class="literal">"tls-certificate"</code> property</h3>
1378 <pre class="programlisting">  "tls-certificate"          <span class="type">GTlsCertificate</span>*      : Read / Write</pre>
1379 <p>
1380 The <span class="type">GTlsCertificate</span> associated with the message
1381 </p>
1382 <p class="since">Since 2.34</p>
1383 </div>
1384 <hr>
1385 <div class="refsect2">
1386 <a name="SoupMessage--tls-errors"></a><h3>The <code class="literal">"tls-errors"</code> property</h3>
1387 <pre class="programlisting">  "tls-errors"               <span class="type">GTlsCertificateFlags</span>  : Read / Write</pre>
1388 <p>
1389 The verification errors on <a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a>
1390 </p>
1391 <p class="since">Since 2.34</p>
1392 </div>
1393 <hr>
1394 <div class="refsect2">
1395 <a name="SoupMessage--uri"></a><h3>The <code class="literal">"uri"</code> property</h3>
1396 <pre class="programlisting">  "uri"                      <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>*              : Read / Write</pre>
1397 <p>The message's Request-URI.</p>
1398 </div>
1399 </div>
1400 <div class="refsect1">
1401 <a name="SoupMessage.signal-details"></a><h2>Signal Details</h2>
1402 <div class="refsect2">
1403 <a name="SoupMessage-content-sniffed"></a><h3>The <code class="literal">"content-sniffed"</code> signal</h3>
1404 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1405                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>       *type,
1406                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>  *params,
1407                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1408 <p>
1409 This signal is emitted after <a class="link" href="SoupMessage.html#SoupMessage-got-headers" title='The "got-headers" signal'><span class="type">"got-headers"</span></a>, and
1410 before the first <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got-chunk"</span></a>. If content
1411 sniffing is disabled, or no content sniffing will be
1412 performed, due to the sniffer deciding to trust the
1413 Content-Type sent by the server, this signal is emitted
1414 immediately after <a class="link" href="SoupMessage.html#SoupMessage-got-headers" title='The "got-headers" signal'><span class="type">"got-headers"</span></a>, and <em class="parameter"><code>type</code></em> is
1415 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
1416 </p>
1417 <p>
1418 If the <a class="link" href="SoupContentSniffer.html" title="SoupContentSniffer"><span class="type">SoupContentSniffer</span></a> feature is enabled, and the
1419 sniffer decided to perform sniffing, the first
1420 <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got-chunk"</span></a> emission may be delayed, so that the
1421 sniffer has enough data to correctly sniff the content. It
1422 notified the library user that the content has been
1423 sniffed, and allows it to change the header contents in the
1424 message, if desired.
1425 </p>
1426 <p>
1427 After this signal is emitted, the data that was spooled so
1428 that sniffing could be done is delivered on the first
1429 emission of <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got-chunk"</span></a>.
1430 </p>
1431 <div class="variablelist"><table border="0">
1432 <col align="left" valign="top">
1433 <tbody>
1434 <tr>
1435 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1436 <td>the message</td>
1437 </tr>
1438 <tr>
1439 <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
1440 <td>the content type that we got from sniffing</td>
1441 </tr>
1442 <tr>
1443 <td><p><span class="term"><em class="parameter"><code>params</code></em> :</span></p></td>
1444 <td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> with the parameters. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 utf8]</span>
1445 </td>
1446 </tr>
1447 <tr>
1448 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1449 <td>user data set when the signal handler was connected.</td>
1450 </tr>
1451 </tbody>
1452 </table></div>
1453 <p class="since">Since 2.27.3</p>
1454 </div>
1455 <hr>
1456 <div class="refsect2">
1457 <a name="SoupMessage-finished"></a><h3>The <code class="literal">"finished"</code> signal</h3>
1458 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1459                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1460 <p>
1461 Emitted when all HTTP processing is finished for a message.
1462 (After <a class="link" href="SoupMessage.html#SoupMessage-got-body" title='The "got-body" signal'><span class="type">"got_body"</span></a> for client-side messages, or
1463 after <a class="link" href="SoupMessage.html#SoupMessage-wrote-body" title='The "wrote-body" signal'><span class="type">"wrote_body"</span></a> for server-side messages.)
1464 </p>
1465 <div class="variablelist"><table border="0">
1466 <col align="left" valign="top">
1467 <tbody>
1468 <tr>
1469 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1470 <td>the message</td>
1471 </tr>
1472 <tr>
1473 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1474 <td>user data set when the signal handler was connected.</td>
1475 </tr>
1476 </tbody>
1477 </table></div>
1478 </div>
1479 <hr>
1480 <div class="refsect2">
1481 <a name="SoupMessage-got-body"></a><h3>The <code class="literal">"got-body"</code> signal</h3>
1482 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1483                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1484 <p>
1485 Emitted after receiving the complete message body. (For a
1486 server-side message, this means it has received the request
1487 body. For a client-side message, this means it has received
1488 the response body and is nearly done with the message.)
1489 </p>
1490 <p>
1491 See also <a class="link" href="SoupMessage.html#soup-message-add-header-handler" title="soup_message_add_header_handler ()"><code class="function">soup_message_add_header_handler()</code></a> and
1492 <a class="link" href="SoupMessage.html#soup-message-add-status-code-handler" title="soup_message_add_status_code_handler ()"><code class="function">soup_message_add_status_code_handler()</code></a>, which can be used
1493 to connect to a subset of emissions of this signal.
1494 </p>
1495 <div class="variablelist"><table border="0">
1496 <col align="left" valign="top">
1497 <tbody>
1498 <tr>
1499 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1500 <td>the message</td>
1501 </tr>
1502 <tr>
1503 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1504 <td>user data set when the signal handler was connected.</td>
1505 </tr>
1506 </tbody>
1507 </table></div>
1508 </div>
1509 <hr>
1510 <div class="refsect2">
1511 <a name="SoupMessage-got-chunk"></a><h3>The <code class="literal">"got-chunk"</code> signal</h3>
1512 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1513                                                         <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="type">SoupBuffer</span></a>  *chunk,
1514                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1515 <p>
1516 Emitted after receiving a chunk of a message body. Note
1517 that "chunk" in this context means any subpiece of the
1518 body, not necessarily the specific HTTP 1.1 chunks sent by
1519 the other side.
1520 </p>
1521 <p>
1522 If you cancel or requeue <em class="parameter"><code>msg</code></em> while processing this signal,
1523 then the current HTTP I/O will be stopped after this signal
1524 emission finished, and <em class="parameter"><code>msg</code></em>'s connection will be closed.
1525 </p>
1526 <div class="variablelist"><table border="0">
1527 <col align="left" valign="top">
1528 <tbody>
1529 <tr>
1530 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1531 <td>the message</td>
1532 </tr>
1533 <tr>
1534 <td><p><span class="term"><em class="parameter"><code>chunk</code></em> :</span></p></td>
1535 <td>the just-read chunk</td>
1536 </tr>
1537 <tr>
1538 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1539 <td>user data set when the signal handler was connected.</td>
1540 </tr>
1541 </tbody>
1542 </table></div>
1543 </div>
1544 <hr>
1545 <div class="refsect2">
1546 <a name="SoupMessage-got-headers"></a><h3>The <code class="literal">"got-headers"</code> signal</h3>
1547 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1548                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1549 <p>
1550 Emitted after receiving all message headers for a message.
1551 (For a client-side message, this is after receiving the
1552 Status-Line and response headers; for a server-side
1553 message, it is after receiving the Request-Line and request
1554 headers.)
1555 </p>
1556 <p>
1557 See also <a class="link" href="SoupMessage.html#soup-message-add-header-handler" title="soup_message_add_header_handler ()"><code class="function">soup_message_add_header_handler()</code></a> and
1558 <a class="link" href="SoupMessage.html#soup-message-add-status-code-handler" title="soup_message_add_status_code_handler ()"><code class="function">soup_message_add_status_code_handler()</code></a>, which can be used
1559 to connect to a subset of emissions of this signal.
1560 </p>
1561 <p>
1562 If you cancel or requeue <em class="parameter"><code>msg</code></em> while processing this signal,
1563 then the current HTTP I/O will be stopped after this signal
1564 emission finished, and <em class="parameter"><code>msg</code></em>'s connection will be closed.
1565 (If you need to requeue a message--eg, after handling
1566 authentication or redirection--it is usually better to
1567 requeue it from a <a class="link" href="SoupMessage.html#SoupMessage-got-body" title='The "got-body" signal'><span class="type">"got_body"</span></a> handler rather
1568 than a <a class="link" href="SoupMessage.html#SoupMessage-got-headers" title='The "got-headers" signal'><span class="type">"got_headers"</span></a> handler, so that the
1569 existing HTTP connection can be reused.)
1570 </p>
1571 <div class="variablelist"><table border="0">
1572 <col align="left" valign="top">
1573 <tbody>
1574 <tr>
1575 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1576 <td>the message</td>
1577 </tr>
1578 <tr>
1579 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1580 <td>user data set when the signal handler was connected.</td>
1581 </tr>
1582 </tbody>
1583 </table></div>
1584 </div>
1585 <hr>
1586 <div class="refsect2">
1587 <a name="SoupMessage-got-informational"></a><h3>The <code class="literal">"got-informational"</code> signal</h3>
1588 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1589                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1590 <p>
1591 Emitted after receiving a 1xx (Informational) response for
1592 a (client-side) message. The response_headers will be
1593 filled in with the headers associated with the
1594 informational response; however, those header values will
1595 be erased after this signal is done.
1596 </p>
1597 <p>
1598 If you cancel or requeue <em class="parameter"><code>msg</code></em> while processing this signal,
1599 then the current HTTP I/O will be stopped after this signal
1600 emission finished, and <em class="parameter"><code>msg</code></em>'s connection will be closed.
1601 </p>
1602 <div class="variablelist"><table border="0">
1603 <col align="left" valign="top">
1604 <tbody>
1605 <tr>
1606 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1607 <td>the message</td>
1608 </tr>
1609 <tr>
1610 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1611 <td>user data set when the signal handler was connected.</td>
1612 </tr>
1613 </tbody>
1614 </table></div>
1615 </div>
1616 <hr>
1617 <div class="refsect2">
1618 <a name="SoupMessage-network-event"></a><h3>The <code class="literal">"network-event"</code> signal</h3>
1619 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>       *msg,
1620                                                         <span class="type">GSocketClientEvent</span> event,
1621                                                         <span class="type">GIOStream</span>         *connection,
1622                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>           user_data)       : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1623 <p>
1624 Emitted to indicate that some network-related event
1625 related to <em class="parameter"><code>msg</code></em> has occurred. This essentially proxies the
1626 <span class="type">"event"</span> signal, but only for events that
1627 occur while <em class="parameter"><code>msg</code></em> "owns" the connection; if <em class="parameter"><code>msg</code></em> is sent on
1628 an existing persistent connection, then this signal will
1629 not be emitted. (If you want to force the message to be
1630 sent on a new connection, set the
1631 <a class="link" href="SoupMessage.html#SOUP-MESSAGE-NEW-CONNECTION:CAPS"><code class="literal">SOUP_MESSAGE_NEW_CONNECTION</code></a> flag on it.)
1632 </p>
1633 <p>
1634 See <span class="type">"event"</span> for more information on what
1635 the different values of <em class="parameter"><code>event</code></em> correspond to, and what
1636 <em class="parameter"><code>connection</code></em> will be in each case.
1637 </p>
1638 <div class="variablelist"><table border="0">
1639 <col align="left" valign="top">
1640 <tbody>
1641 <tr>
1642 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1643 <td>the message</td>
1644 </tr>
1645 <tr>
1646 <td><p><span class="term"><em class="parameter"><code>event</code></em> :</span></p></td>
1647 <td>the network event</td>
1648 </tr>
1649 <tr>
1650 <td><p><span class="term"><em class="parameter"><code>connection</code></em> :</span></p></td>
1651 <td>the current state of the network connection</td>
1652 </tr>
1653 <tr>
1654 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1655 <td>user data set when the signal handler was connected.</td>
1656 </tr>
1657 </tbody>
1658 </table></div>
1659 <p class="since">Since 2.38</p>
1660 </div>
1661 <hr>
1662 <div class="refsect2">
1663 <a name="SoupMessage-restarted"></a><h3>The <code class="literal">"restarted"</code> signal</h3>
1664 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1665                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1666 <p>
1667 Emitted when a request that was already sent once is now
1668 being sent again (eg, because the first attempt received a
1669 redirection response, or because we needed to use
1670 authentication).
1671 </p>
1672 <div class="variablelist"><table border="0">
1673 <col align="left" valign="top">
1674 <tbody>
1675 <tr>
1676 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1677 <td>the message</td>
1678 </tr>
1679 <tr>
1680 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1681 <td>user data set when the signal handler was connected.</td>
1682 </tr>
1683 </tbody>
1684 </table></div>
1685 </div>
1686 <hr>
1687 <div class="refsect2">
1688 <a name="SoupMessage-wrote-body"></a><h3>The <code class="literal">"wrote-body"</code> signal</h3>
1689 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1690                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1691 <p>
1692 Emitted immediately after writing the complete body for a
1693 message. (For a client-side message, this means that
1694 libsoup is done writing and is now waiting for the response
1695 from the server. For a server-side message, this means that
1696 libsoup has finished writing the response and is nearly
1697 done with the message.)
1698 </p>
1699 <div class="variablelist"><table border="0">
1700 <col align="left" valign="top">
1701 <tbody>
1702 <tr>
1703 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1704 <td>the message</td>
1705 </tr>
1706 <tr>
1707 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1708 <td>user data set when the signal handler was connected.</td>
1709 </tr>
1710 </tbody>
1711 </table></div>
1712 </div>
1713 <hr>
1714 <div class="refsect2">
1715 <a name="SoupMessage-wrote-body-data"></a><h3>The <code class="literal">"wrote-body-data"</code> signal</h3>
1716 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1717                                                         <a class="link" href="SoupMessageBody.html#SoupBuffer"><span class="type">SoupBuffer</span></a>  *chunk,
1718                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1719 <p>
1720 Emitted immediately after writing a portion of the message
1721 body to the network.
1722 </p>
1723 <p>
1724 Unlike <a class="link" href="SoupMessage.html#SoupMessage-wrote-chunk" title='The "wrote-chunk" signal'><span class="type">"wrote_chunk"</span></a>, this is emitted after
1725 every successful <code class="function">write()</code> call, not only after finishing a
1726 complete "chunk".
1727 </p>
1728 <div class="variablelist"><table border="0">
1729 <col align="left" valign="top">
1730 <tbody>
1731 <tr>
1732 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1733 <td>the message</td>
1734 </tr>
1735 <tr>
1736 <td><p><span class="term"><em class="parameter"><code>chunk</code></em> :</span></p></td>
1737 <td>the data written</td>
1738 </tr>
1739 <tr>
1740 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1741 <td>user data set when the signal handler was connected.</td>
1742 </tr>
1743 </tbody>
1744 </table></div>
1745 <p class="since">Since 2.4.1</p>
1746 </div>
1747 <hr>
1748 <div class="refsect2">
1749 <a name="SoupMessage-wrote-chunk"></a><h3>The <code class="literal">"wrote-chunk"</code> signal</h3>
1750 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1751                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1752 <p>
1753 Emitted immediately after writing a body chunk for a message.
1754 </p>
1755 <p>
1756 Note that this signal is not parallel to
1757 <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><span class="type">"got_chunk"</span></a>; it is emitted only when a complete
1758 chunk (added with <a class="link" href="SoupMessageBody.html#soup-message-body-append" title="soup_message_body_append ()"><code class="function">soup_message_body_append()</code></a> or
1759 <a class="link" href="SoupMessageBody.html#soup-message-body-append-buffer" title="soup_message_body_append_buffer ()"><code class="function">soup_message_body_append_buffer()</code></a>) has been written. To get
1760 more useful continuous progress information, use
1761 <a class="link" href="SoupMessage.html#SoupMessage-wrote-body-data" title='The "wrote-body-data" signal'><span class="type">"wrote_body_data"</span></a>.
1762 </p>
1763 <div class="variablelist"><table border="0">
1764 <col align="left" valign="top">
1765 <tbody>
1766 <tr>
1767 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1768 <td>the message</td>
1769 </tr>
1770 <tr>
1771 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1772 <td>user data set when the signal handler was connected.</td>
1773 </tr>
1774 </tbody>
1775 </table></div>
1776 </div>
1777 <hr>
1778 <div class="refsect2">
1779 <a name="SoupMessage-wrote-headers"></a><h3>The <code class="literal">"wrote-headers"</code> signal</h3>
1780 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1781                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1782 <p>
1783 Emitted immediately after writing the headers for a
1784 message. (For a client-side message, this is after writing
1785 the request headers; for a server-side message, it is after
1786 writing the response headers.)
1787 </p>
1788 <div class="variablelist"><table border="0">
1789 <col align="left" valign="top">
1790 <tbody>
1791 <tr>
1792 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1793 <td>the message</td>
1794 </tr>
1795 <tr>
1796 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1797 <td>user data set when the signal handler was connected.</td>
1798 </tr>
1799 </tbody>
1800 </table></div>
1801 </div>
1802 <hr>
1803 <div class="refsect2">
1804 <a name="SoupMessage-wrote-informational"></a><h3>The <code class="literal">"wrote-informational"</code> signal</h3>
1805 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg,
1806                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
1807 <p>
1808 Emitted immediately after writing a 1xx (Informational)
1809 response for a (server-side) message.
1810 </p>
1811 <div class="variablelist"><table border="0">
1812 <col align="left" valign="top">
1813 <tbody>
1814 <tr>
1815 <td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
1816 <td>the message</td>
1817 </tr>
1818 <tr>
1819 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
1820 <td>user data set when the signal handler was connected.</td>
1821 </tr>
1822 </tbody>
1823 </table></div>
1824 </div>
1825 </div>
1826 <div class="refsect1">
1827 <a name="SoupMessage.see-also"></a><h2>See Also</h2>
1828 <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>, <a class="link" href="SoupMessageBody.html" title="SoupMessageBody"><span class="type">SoupMessageBody</span></a>
1829 </div>
1830 </div>
1831 <div class="footer">
1832 <hr>
1833           Generated by GTK-Doc V1.18</div>
1834 </body>
1835 </html>