soup_sys/
lib.rs

1// Generated by gir (https://github.com/gtk-rs/gir @ 05fe12c0b7e7)
2// from ../gir-files (@ 7182204ef108)
3// DO NOT EDIT
4
5#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6#![allow(clippy::approx_constant, clippy::type_complexity, clippy::unreadable_literal, clippy::upper_case_acronyms)]
7#![cfg_attr(feature = "dox", feature(doc_cfg))]
8
9use glib_sys as glib;
10use gobject_sys as gobject;
11use gio_sys as gio;
12
13#[allow(unused_imports)]
14use libc::{c_int, c_char, c_uchar, c_float, c_uint, c_double,
15    c_short, c_ushort, c_long, c_ulong,
16    c_void, size_t, ssize_t, intptr_t, uintptr_t, time_t, FILE, sockaddr};
17
18#[allow(unused_imports)]
19use glib::{gboolean, gconstpointer, gpointer, GType};
20
21// Enums
22pub type SoupAddressFamily = c_int;
23pub const SOUP_ADDRESS_FAMILY_INVALID: SoupAddressFamily = -1;
24pub const SOUP_ADDRESS_FAMILY_IPV4: SoupAddressFamily = 2;
25pub const SOUP_ADDRESS_FAMILY_IPV6: SoupAddressFamily = 10;
26
27pub type SoupCacheResponse = c_int;
28pub const SOUP_CACHE_RESPONSE_FRESH: SoupCacheResponse = 0;
29pub const SOUP_CACHE_RESPONSE_NEEDS_VALIDATION: SoupCacheResponse = 1;
30pub const SOUP_CACHE_RESPONSE_STALE: SoupCacheResponse = 2;
31
32pub type SoupCacheType = c_int;
33pub const SOUP_CACHE_SINGLE_USER: SoupCacheType = 0;
34pub const SOUP_CACHE_SHARED: SoupCacheType = 1;
35
36pub type SoupConnectionState = c_int;
37pub const SOUP_CONNECTION_NEW: SoupConnectionState = 0;
38pub const SOUP_CONNECTION_CONNECTING: SoupConnectionState = 1;
39pub const SOUP_CONNECTION_IDLE: SoupConnectionState = 2;
40pub const SOUP_CONNECTION_IN_USE: SoupConnectionState = 3;
41pub const SOUP_CONNECTION_REMOTE_DISCONNECTED: SoupConnectionState = 4;
42pub const SOUP_CONNECTION_DISCONNECTED: SoupConnectionState = 5;
43
44pub type SoupCookieJarAcceptPolicy = c_int;
45pub const SOUP_COOKIE_JAR_ACCEPT_ALWAYS: SoupCookieJarAcceptPolicy = 0;
46pub const SOUP_COOKIE_JAR_ACCEPT_NEVER: SoupCookieJarAcceptPolicy = 1;
47pub const SOUP_COOKIE_JAR_ACCEPT_NO_THIRD_PARTY: SoupCookieJarAcceptPolicy = 2;
48pub const SOUP_COOKIE_JAR_ACCEPT_GRANDFATHERED_THIRD_PARTY: SoupCookieJarAcceptPolicy = 3;
49
50pub type SoupDateFormat = c_int;
51pub const SOUP_DATE_HTTP: SoupDateFormat = 1;
52pub const SOUP_DATE_COOKIE: SoupDateFormat = 2;
53pub const SOUP_DATE_RFC2822: SoupDateFormat = 3;
54pub const SOUP_DATE_ISO8601_COMPACT: SoupDateFormat = 4;
55pub const SOUP_DATE_ISO8601_FULL: SoupDateFormat = 5;
56pub const SOUP_DATE_ISO8601: SoupDateFormat = 5;
57pub const SOUP_DATE_ISO8601_XMLRPC: SoupDateFormat = 6;
58
59pub type SoupEncoding = c_int;
60pub const SOUP_ENCODING_UNRECOGNIZED: SoupEncoding = 0;
61pub const SOUP_ENCODING_NONE: SoupEncoding = 1;
62pub const SOUP_ENCODING_CONTENT_LENGTH: SoupEncoding = 2;
63pub const SOUP_ENCODING_EOF: SoupEncoding = 3;
64pub const SOUP_ENCODING_CHUNKED: SoupEncoding = 4;
65pub const SOUP_ENCODING_BYTERANGES: SoupEncoding = 5;
66
67pub type SoupHTTPVersion = c_int;
68pub const SOUP_HTTP_1_0: SoupHTTPVersion = 0;
69pub const SOUP_HTTP_1_1: SoupHTTPVersion = 1;
70
71pub type SoupKnownStatusCode = c_int;
72pub const SOUP_KNOWN_STATUS_CODE_NONE: SoupKnownStatusCode = 0;
73pub const SOUP_KNOWN_STATUS_CODE_CANCELLED: SoupKnownStatusCode = 1;
74pub const SOUP_KNOWN_STATUS_CODE_CANT_RESOLVE: SoupKnownStatusCode = 2;
75pub const SOUP_KNOWN_STATUS_CODE_CANT_RESOLVE_PROXY: SoupKnownStatusCode = 3;
76pub const SOUP_KNOWN_STATUS_CODE_CANT_CONNECT: SoupKnownStatusCode = 4;
77pub const SOUP_KNOWN_STATUS_CODE_CANT_CONNECT_PROXY: SoupKnownStatusCode = 5;
78pub const SOUP_KNOWN_STATUS_CODE_SSL_FAILED: SoupKnownStatusCode = 6;
79pub const SOUP_KNOWN_STATUS_CODE_IO_ERROR: SoupKnownStatusCode = 7;
80pub const SOUP_KNOWN_STATUS_CODE_MALFORMED: SoupKnownStatusCode = 8;
81pub const SOUP_KNOWN_STATUS_CODE_TRY_AGAIN: SoupKnownStatusCode = 9;
82pub const SOUP_KNOWN_STATUS_CODE_TOO_MANY_REDIRECTS: SoupKnownStatusCode = 10;
83pub const SOUP_KNOWN_STATUS_CODE_TLS_FAILED: SoupKnownStatusCode = 11;
84pub const SOUP_KNOWN_STATUS_CODE_CONTINUE: SoupKnownStatusCode = 100;
85pub const SOUP_KNOWN_STATUS_CODE_SWITCHING_PROTOCOLS: SoupKnownStatusCode = 101;
86pub const SOUP_KNOWN_STATUS_CODE_PROCESSING: SoupKnownStatusCode = 102;
87pub const SOUP_KNOWN_STATUS_CODE_OK: SoupKnownStatusCode = 200;
88pub const SOUP_KNOWN_STATUS_CODE_CREATED: SoupKnownStatusCode = 201;
89pub const SOUP_KNOWN_STATUS_CODE_ACCEPTED: SoupKnownStatusCode = 202;
90pub const SOUP_KNOWN_STATUS_CODE_NON_AUTHORITATIVE: SoupKnownStatusCode = 203;
91pub const SOUP_KNOWN_STATUS_CODE_NO_CONTENT: SoupKnownStatusCode = 204;
92pub const SOUP_KNOWN_STATUS_CODE_RESET_CONTENT: SoupKnownStatusCode = 205;
93pub const SOUP_KNOWN_STATUS_CODE_PARTIAL_CONTENT: SoupKnownStatusCode = 206;
94pub const SOUP_KNOWN_STATUS_CODE_MULTI_STATUS: SoupKnownStatusCode = 207;
95pub const SOUP_KNOWN_STATUS_CODE_MULTIPLE_CHOICES: SoupKnownStatusCode = 300;
96pub const SOUP_KNOWN_STATUS_CODE_MOVED_PERMANENTLY: SoupKnownStatusCode = 301;
97pub const SOUP_KNOWN_STATUS_CODE_FOUND: SoupKnownStatusCode = 302;
98pub const SOUP_KNOWN_STATUS_CODE_MOVED_TEMPORARILY: SoupKnownStatusCode = 302;
99pub const SOUP_KNOWN_STATUS_CODE_SEE_OTHER: SoupKnownStatusCode = 303;
100pub const SOUP_KNOWN_STATUS_CODE_NOT_MODIFIED: SoupKnownStatusCode = 304;
101pub const SOUP_KNOWN_STATUS_CODE_USE_PROXY: SoupKnownStatusCode = 305;
102pub const SOUP_KNOWN_STATUS_CODE_NOT_APPEARING_IN_THIS_PROTOCOL: SoupKnownStatusCode = 306;
103pub const SOUP_KNOWN_STATUS_CODE_TEMPORARY_REDIRECT: SoupKnownStatusCode = 307;
104pub const SOUP_KNOWN_STATUS_CODE_BAD_REQUEST: SoupKnownStatusCode = 400;
105pub const SOUP_KNOWN_STATUS_CODE_UNAUTHORIZED: SoupKnownStatusCode = 401;
106pub const SOUP_KNOWN_STATUS_CODE_PAYMENT_REQUIRED: SoupKnownStatusCode = 402;
107pub const SOUP_KNOWN_STATUS_CODE_FORBIDDEN: SoupKnownStatusCode = 403;
108pub const SOUP_KNOWN_STATUS_CODE_NOT_FOUND: SoupKnownStatusCode = 404;
109pub const SOUP_KNOWN_STATUS_CODE_METHOD_NOT_ALLOWED: SoupKnownStatusCode = 405;
110pub const SOUP_KNOWN_STATUS_CODE_NOT_ACCEPTABLE: SoupKnownStatusCode = 406;
111pub const SOUP_KNOWN_STATUS_CODE_PROXY_AUTHENTICATION_REQUIRED: SoupKnownStatusCode = 407;
112pub const SOUP_KNOWN_STATUS_CODE_PROXY_UNAUTHORIZED: SoupKnownStatusCode = 407;
113pub const SOUP_KNOWN_STATUS_CODE_REQUEST_TIMEOUT: SoupKnownStatusCode = 408;
114pub const SOUP_KNOWN_STATUS_CODE_CONFLICT: SoupKnownStatusCode = 409;
115pub const SOUP_KNOWN_STATUS_CODE_GONE: SoupKnownStatusCode = 410;
116pub const SOUP_KNOWN_STATUS_CODE_LENGTH_REQUIRED: SoupKnownStatusCode = 411;
117pub const SOUP_KNOWN_STATUS_CODE_PRECONDITION_FAILED: SoupKnownStatusCode = 412;
118pub const SOUP_KNOWN_STATUS_CODE_REQUEST_ENTITY_TOO_LARGE: SoupKnownStatusCode = 413;
119pub const SOUP_KNOWN_STATUS_CODE_REQUEST_URI_TOO_LONG: SoupKnownStatusCode = 414;
120pub const SOUP_KNOWN_STATUS_CODE_UNSUPPORTED_MEDIA_TYPE: SoupKnownStatusCode = 415;
121pub const SOUP_KNOWN_STATUS_CODE_REQUESTED_RANGE_NOT_SATISFIABLE: SoupKnownStatusCode = 416;
122pub const SOUP_KNOWN_STATUS_CODE_INVALID_RANGE: SoupKnownStatusCode = 416;
123pub const SOUP_KNOWN_STATUS_CODE_EXPECTATION_FAILED: SoupKnownStatusCode = 417;
124pub const SOUP_KNOWN_STATUS_CODE_UNPROCESSABLE_ENTITY: SoupKnownStatusCode = 422;
125pub const SOUP_KNOWN_STATUS_CODE_LOCKED: SoupKnownStatusCode = 423;
126pub const SOUP_KNOWN_STATUS_CODE_FAILED_DEPENDENCY: SoupKnownStatusCode = 424;
127pub const SOUP_KNOWN_STATUS_CODE_INTERNAL_SERVER_ERROR: SoupKnownStatusCode = 500;
128pub const SOUP_KNOWN_STATUS_CODE_NOT_IMPLEMENTED: SoupKnownStatusCode = 501;
129pub const SOUP_KNOWN_STATUS_CODE_BAD_GATEWAY: SoupKnownStatusCode = 502;
130pub const SOUP_KNOWN_STATUS_CODE_SERVICE_UNAVAILABLE: SoupKnownStatusCode = 503;
131pub const SOUP_KNOWN_STATUS_CODE_GATEWAY_TIMEOUT: SoupKnownStatusCode = 504;
132pub const SOUP_KNOWN_STATUS_CODE_HTTP_VERSION_NOT_SUPPORTED: SoupKnownStatusCode = 505;
133pub const SOUP_KNOWN_STATUS_CODE_INSUFFICIENT_STORAGE: SoupKnownStatusCode = 507;
134pub const SOUP_KNOWN_STATUS_CODE_NOT_EXTENDED: SoupKnownStatusCode = 510;
135
136pub type SoupLoggerLogLevel = c_int;
137pub const SOUP_LOGGER_LOG_NONE: SoupLoggerLogLevel = 0;
138pub const SOUP_LOGGER_LOG_MINIMAL: SoupLoggerLogLevel = 1;
139pub const SOUP_LOGGER_LOG_HEADERS: SoupLoggerLogLevel = 2;
140pub const SOUP_LOGGER_LOG_BODY: SoupLoggerLogLevel = 3;
141
142pub type SoupMemoryUse = c_int;
143pub const SOUP_MEMORY_STATIC: SoupMemoryUse = 0;
144pub const SOUP_MEMORY_TAKE: SoupMemoryUse = 1;
145pub const SOUP_MEMORY_COPY: SoupMemoryUse = 2;
146pub const SOUP_MEMORY_TEMPORARY: SoupMemoryUse = 3;
147
148pub type SoupMessageHeadersType = c_int;
149pub const SOUP_MESSAGE_HEADERS_REQUEST: SoupMessageHeadersType = 0;
150pub const SOUP_MESSAGE_HEADERS_RESPONSE: SoupMessageHeadersType = 1;
151pub const SOUP_MESSAGE_HEADERS_MULTIPART: SoupMessageHeadersType = 2;
152
153pub type SoupMessagePriority = c_int;
154pub const SOUP_MESSAGE_PRIORITY_VERY_LOW: SoupMessagePriority = 0;
155pub const SOUP_MESSAGE_PRIORITY_LOW: SoupMessagePriority = 1;
156pub const SOUP_MESSAGE_PRIORITY_NORMAL: SoupMessagePriority = 2;
157pub const SOUP_MESSAGE_PRIORITY_HIGH: SoupMessagePriority = 3;
158pub const SOUP_MESSAGE_PRIORITY_VERY_HIGH: SoupMessagePriority = 4;
159
160pub type SoupRequestError = c_int;
161pub const SOUP_REQUEST_ERROR_BAD_URI: SoupRequestError = 0;
162pub const SOUP_REQUEST_ERROR_UNSUPPORTED_URI_SCHEME: SoupRequestError = 1;
163pub const SOUP_REQUEST_ERROR_PARSING: SoupRequestError = 2;
164pub const SOUP_REQUEST_ERROR_ENCODING: SoupRequestError = 3;
165
166pub type SoupRequesterError = c_int;
167pub const SOUP_REQUESTER_ERROR_BAD_URI: SoupRequesterError = 0;
168pub const SOUP_REQUESTER_ERROR_UNSUPPORTED_URI_SCHEME: SoupRequesterError = 1;
169
170pub type SoupSameSitePolicy = c_int;
171pub const SOUP_SAME_SITE_POLICY_NONE: SoupSameSitePolicy = 0;
172pub const SOUP_SAME_SITE_POLICY_LAX: SoupSameSitePolicy = 1;
173pub const SOUP_SAME_SITE_POLICY_STRICT: SoupSameSitePolicy = 2;
174
175pub type SoupSocketIOStatus = c_int;
176pub const SOUP_SOCKET_OK: SoupSocketIOStatus = 0;
177pub const SOUP_SOCKET_WOULD_BLOCK: SoupSocketIOStatus = 1;
178pub const SOUP_SOCKET_EOF: SoupSocketIOStatus = 2;
179pub const SOUP_SOCKET_ERROR: SoupSocketIOStatus = 3;
180
181pub type SoupStatus = c_int;
182pub const SOUP_STATUS_NONE: SoupStatus = 0;
183pub const SOUP_STATUS_CANCELLED: SoupStatus = 1;
184pub const SOUP_STATUS_CANT_RESOLVE: SoupStatus = 2;
185pub const SOUP_STATUS_CANT_RESOLVE_PROXY: SoupStatus = 3;
186pub const SOUP_STATUS_CANT_CONNECT: SoupStatus = 4;
187pub const SOUP_STATUS_CANT_CONNECT_PROXY: SoupStatus = 5;
188pub const SOUP_STATUS_SSL_FAILED: SoupStatus = 6;
189pub const SOUP_STATUS_IO_ERROR: SoupStatus = 7;
190pub const SOUP_STATUS_MALFORMED: SoupStatus = 8;
191pub const SOUP_STATUS_TRY_AGAIN: SoupStatus = 9;
192pub const SOUP_STATUS_TOO_MANY_REDIRECTS: SoupStatus = 10;
193pub const SOUP_STATUS_TLS_FAILED: SoupStatus = 11;
194pub const SOUP_STATUS_CONTINUE: SoupStatus = 100;
195pub const SOUP_STATUS_SWITCHING_PROTOCOLS: SoupStatus = 101;
196pub const SOUP_STATUS_PROCESSING: SoupStatus = 102;
197pub const SOUP_STATUS_OK: SoupStatus = 200;
198pub const SOUP_STATUS_CREATED: SoupStatus = 201;
199pub const SOUP_STATUS_ACCEPTED: SoupStatus = 202;
200pub const SOUP_STATUS_NON_AUTHORITATIVE: SoupStatus = 203;
201pub const SOUP_STATUS_NO_CONTENT: SoupStatus = 204;
202pub const SOUP_STATUS_RESET_CONTENT: SoupStatus = 205;
203pub const SOUP_STATUS_PARTIAL_CONTENT: SoupStatus = 206;
204pub const SOUP_STATUS_MULTI_STATUS: SoupStatus = 207;
205pub const SOUP_STATUS_MULTIPLE_CHOICES: SoupStatus = 300;
206pub const SOUP_STATUS_MOVED_PERMANENTLY: SoupStatus = 301;
207pub const SOUP_STATUS_FOUND: SoupStatus = 302;
208pub const SOUP_STATUS_MOVED_TEMPORARILY: SoupStatus = 302;
209pub const SOUP_STATUS_SEE_OTHER: SoupStatus = 303;
210pub const SOUP_STATUS_NOT_MODIFIED: SoupStatus = 304;
211pub const SOUP_STATUS_USE_PROXY: SoupStatus = 305;
212pub const SOUP_STATUS_NOT_APPEARING_IN_THIS_PROTOCOL: SoupStatus = 306;
213pub const SOUP_STATUS_TEMPORARY_REDIRECT: SoupStatus = 307;
214pub const SOUP_STATUS_PERMANENT_REDIRECT: SoupStatus = 308;
215pub const SOUP_STATUS_BAD_REQUEST: SoupStatus = 400;
216pub const SOUP_STATUS_UNAUTHORIZED: SoupStatus = 401;
217pub const SOUP_STATUS_PAYMENT_REQUIRED: SoupStatus = 402;
218pub const SOUP_STATUS_FORBIDDEN: SoupStatus = 403;
219pub const SOUP_STATUS_NOT_FOUND: SoupStatus = 404;
220pub const SOUP_STATUS_METHOD_NOT_ALLOWED: SoupStatus = 405;
221pub const SOUP_STATUS_NOT_ACCEPTABLE: SoupStatus = 406;
222pub const SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED: SoupStatus = 407;
223pub const SOUP_STATUS_PROXY_UNAUTHORIZED: SoupStatus = 407;
224pub const SOUP_STATUS_REQUEST_TIMEOUT: SoupStatus = 408;
225pub const SOUP_STATUS_CONFLICT: SoupStatus = 409;
226pub const SOUP_STATUS_GONE: SoupStatus = 410;
227pub const SOUP_STATUS_LENGTH_REQUIRED: SoupStatus = 411;
228pub const SOUP_STATUS_PRECONDITION_FAILED: SoupStatus = 412;
229pub const SOUP_STATUS_REQUEST_ENTITY_TOO_LARGE: SoupStatus = 413;
230pub const SOUP_STATUS_REQUEST_URI_TOO_LONG: SoupStatus = 414;
231pub const SOUP_STATUS_UNSUPPORTED_MEDIA_TYPE: SoupStatus = 415;
232pub const SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE: SoupStatus = 416;
233pub const SOUP_STATUS_INVALID_RANGE: SoupStatus = 416;
234pub const SOUP_STATUS_EXPECTATION_FAILED: SoupStatus = 417;
235pub const SOUP_STATUS_UNPROCESSABLE_ENTITY: SoupStatus = 422;
236pub const SOUP_STATUS_LOCKED: SoupStatus = 423;
237pub const SOUP_STATUS_FAILED_DEPENDENCY: SoupStatus = 424;
238pub const SOUP_STATUS_INTERNAL_SERVER_ERROR: SoupStatus = 500;
239pub const SOUP_STATUS_NOT_IMPLEMENTED: SoupStatus = 501;
240pub const SOUP_STATUS_BAD_GATEWAY: SoupStatus = 502;
241pub const SOUP_STATUS_SERVICE_UNAVAILABLE: SoupStatus = 503;
242pub const SOUP_STATUS_GATEWAY_TIMEOUT: SoupStatus = 504;
243pub const SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED: SoupStatus = 505;
244pub const SOUP_STATUS_INSUFFICIENT_STORAGE: SoupStatus = 507;
245pub const SOUP_STATUS_NOT_EXTENDED: SoupStatus = 510;
246
247pub type SoupTLDError = c_int;
248pub const SOUP_TLD_ERROR_INVALID_HOSTNAME: SoupTLDError = 0;
249pub const SOUP_TLD_ERROR_IS_IP_ADDRESS: SoupTLDError = 1;
250pub const SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS: SoupTLDError = 2;
251pub const SOUP_TLD_ERROR_NO_BASE_DOMAIN: SoupTLDError = 3;
252pub const SOUP_TLD_ERROR_NO_PSL_DATA: SoupTLDError = 4;
253
254pub type SoupWebsocketCloseCode = c_int;
255pub const SOUP_WEBSOCKET_CLOSE_NORMAL: SoupWebsocketCloseCode = 1000;
256pub const SOUP_WEBSOCKET_CLOSE_GOING_AWAY: SoupWebsocketCloseCode = 1001;
257pub const SOUP_WEBSOCKET_CLOSE_PROTOCOL_ERROR: SoupWebsocketCloseCode = 1002;
258pub const SOUP_WEBSOCKET_CLOSE_UNSUPPORTED_DATA: SoupWebsocketCloseCode = 1003;
259pub const SOUP_WEBSOCKET_CLOSE_NO_STATUS: SoupWebsocketCloseCode = 1005;
260pub const SOUP_WEBSOCKET_CLOSE_ABNORMAL: SoupWebsocketCloseCode = 1006;
261pub const SOUP_WEBSOCKET_CLOSE_BAD_DATA: SoupWebsocketCloseCode = 1007;
262pub const SOUP_WEBSOCKET_CLOSE_POLICY_VIOLATION: SoupWebsocketCloseCode = 1008;
263pub const SOUP_WEBSOCKET_CLOSE_TOO_BIG: SoupWebsocketCloseCode = 1009;
264pub const SOUP_WEBSOCKET_CLOSE_NO_EXTENSION: SoupWebsocketCloseCode = 1010;
265pub const SOUP_WEBSOCKET_CLOSE_SERVER_ERROR: SoupWebsocketCloseCode = 1011;
266pub const SOUP_WEBSOCKET_CLOSE_TLS_HANDSHAKE: SoupWebsocketCloseCode = 1015;
267
268pub type SoupWebsocketConnectionType = c_int;
269pub const SOUP_WEBSOCKET_CONNECTION_UNKNOWN: SoupWebsocketConnectionType = 0;
270pub const SOUP_WEBSOCKET_CONNECTION_CLIENT: SoupWebsocketConnectionType = 1;
271pub const SOUP_WEBSOCKET_CONNECTION_SERVER: SoupWebsocketConnectionType = 2;
272
273pub type SoupWebsocketDataType = c_int;
274pub const SOUP_WEBSOCKET_DATA_TEXT: SoupWebsocketDataType = 1;
275pub const SOUP_WEBSOCKET_DATA_BINARY: SoupWebsocketDataType = 2;
276
277pub type SoupWebsocketError = c_int;
278pub const SOUP_WEBSOCKET_ERROR_FAILED: SoupWebsocketError = 0;
279pub const SOUP_WEBSOCKET_ERROR_NOT_WEBSOCKET: SoupWebsocketError = 1;
280pub const SOUP_WEBSOCKET_ERROR_BAD_HANDSHAKE: SoupWebsocketError = 2;
281pub const SOUP_WEBSOCKET_ERROR_BAD_ORIGIN: SoupWebsocketError = 3;
282
283pub type SoupWebsocketState = c_int;
284pub const SOUP_WEBSOCKET_STATE_OPEN: SoupWebsocketState = 1;
285pub const SOUP_WEBSOCKET_STATE_CLOSING: SoupWebsocketState = 2;
286pub const SOUP_WEBSOCKET_STATE_CLOSED: SoupWebsocketState = 3;
287
288pub type SoupXMLRPCError = c_int;
289pub const SOUP_XMLRPC_ERROR_ARGUMENTS: SoupXMLRPCError = 0;
290pub const SOUP_XMLRPC_ERROR_RETVAL: SoupXMLRPCError = 1;
291
292pub type SoupXMLRPCFault = c_int;
293pub const SOUP_XMLRPC_FAULT_PARSE_ERROR_NOT_WELL_FORMED: SoupXMLRPCFault = -32700;
294pub const SOUP_XMLRPC_FAULT_PARSE_ERROR_UNSUPPORTED_ENCODING: SoupXMLRPCFault = -32701;
295pub const SOUP_XMLRPC_FAULT_PARSE_ERROR_INVALID_CHARACTER_FOR_ENCODING: SoupXMLRPCFault = -32702;
296pub const SOUP_XMLRPC_FAULT_SERVER_ERROR_INVALID_XML_RPC: SoupXMLRPCFault = -32600;
297pub const SOUP_XMLRPC_FAULT_SERVER_ERROR_REQUESTED_METHOD_NOT_FOUND: SoupXMLRPCFault = -32601;
298pub const SOUP_XMLRPC_FAULT_SERVER_ERROR_INVALID_METHOD_PARAMETERS: SoupXMLRPCFault = -32602;
299pub const SOUP_XMLRPC_FAULT_SERVER_ERROR_INTERNAL_XML_RPC_ERROR: SoupXMLRPCFault = -32603;
300pub const SOUP_XMLRPC_FAULT_APPLICATION_ERROR: SoupXMLRPCFault = -32500;
301pub const SOUP_XMLRPC_FAULT_SYSTEM_ERROR: SoupXMLRPCFault = -32400;
302pub const SOUP_XMLRPC_FAULT_TRANSPORT_ERROR: SoupXMLRPCFault = -32300;
303
304// Constants
305pub const SOUP_ADDRESS_ANY_PORT: c_int = 0;
306pub const SOUP_ADDRESS_FAMILY: *const c_char = b"family\0" as *const u8 as *const c_char;
307pub const SOUP_ADDRESS_NAME: *const c_char = b"name\0" as *const u8 as *const c_char;
308pub const SOUP_ADDRESS_PHYSICAL: *const c_char = b"physical\0" as *const u8 as *const c_char;
309pub const SOUP_ADDRESS_PORT: *const c_char = b"port\0" as *const u8 as *const c_char;
310pub const SOUP_ADDRESS_PROTOCOL: *const c_char = b"protocol\0" as *const u8 as *const c_char;
311pub const SOUP_ADDRESS_SOCKADDR: *const c_char = b"sockaddr\0" as *const u8 as *const c_char;
312pub const SOUP_AUTH_DOMAIN_ADD_PATH: *const c_char = b"add-path\0" as *const u8 as *const c_char;
313pub const SOUP_AUTH_DOMAIN_BASIC_AUTH_CALLBACK: *const c_char = b"auth-callback\0" as *const u8 as *const c_char;
314pub const SOUP_AUTH_DOMAIN_BASIC_AUTH_DATA: *const c_char = b"auth-data\0" as *const u8 as *const c_char;
315pub const SOUP_AUTH_DOMAIN_DIGEST_AUTH_CALLBACK: *const c_char = b"auth-callback\0" as *const u8 as *const c_char;
316pub const SOUP_AUTH_DOMAIN_DIGEST_AUTH_DATA: *const c_char = b"auth-data\0" as *const u8 as *const c_char;
317pub const SOUP_AUTH_DOMAIN_FILTER: *const c_char = b"filter\0" as *const u8 as *const c_char;
318pub const SOUP_AUTH_DOMAIN_FILTER_DATA: *const c_char = b"filter-data\0" as *const u8 as *const c_char;
319pub const SOUP_AUTH_DOMAIN_GENERIC_AUTH_CALLBACK: *const c_char = b"generic-auth-callback\0" as *const u8 as *const c_char;
320pub const SOUP_AUTH_DOMAIN_GENERIC_AUTH_DATA: *const c_char = b"generic-auth-data\0" as *const u8 as *const c_char;
321pub const SOUP_AUTH_DOMAIN_PROXY: *const c_char = b"proxy\0" as *const u8 as *const c_char;
322pub const SOUP_AUTH_DOMAIN_REALM: *const c_char = b"realm\0" as *const u8 as *const c_char;
323pub const SOUP_AUTH_DOMAIN_REMOVE_PATH: *const c_char = b"remove-path\0" as *const u8 as *const c_char;
324pub const SOUP_AUTH_HOST: *const c_char = b"host\0" as *const u8 as *const c_char;
325pub const SOUP_AUTH_IS_AUTHENTICATED: *const c_char = b"is-authenticated\0" as *const u8 as *const c_char;
326pub const SOUP_AUTH_IS_FOR_PROXY: *const c_char = b"is-for-proxy\0" as *const u8 as *const c_char;
327pub const SOUP_AUTH_REALM: *const c_char = b"realm\0" as *const u8 as *const c_char;
328pub const SOUP_AUTH_SCHEME_NAME: *const c_char = b"scheme-name\0" as *const u8 as *const c_char;
329pub const SOUP_CHAR_HTTP_CTL: c_int = 16;
330pub const SOUP_CHAR_HTTP_SEPARATOR: c_int = 8;
331pub const SOUP_CHAR_URI_GEN_DELIMS: c_int = 2;
332pub const SOUP_CHAR_URI_PERCENT_ENCODED: c_int = 1;
333pub const SOUP_CHAR_URI_SUB_DELIMS: c_int = 4;
334pub const SOUP_COOKIE_JAR_ACCEPT_POLICY: *const c_char = b"accept-policy\0" as *const u8 as *const c_char;
335pub const SOUP_COOKIE_JAR_DB_FILENAME: *const c_char = b"filename\0" as *const u8 as *const c_char;
336pub const SOUP_COOKIE_JAR_READ_ONLY: *const c_char = b"read-only\0" as *const u8 as *const c_char;
337pub const SOUP_COOKIE_JAR_TEXT_FILENAME: *const c_char = b"filename\0" as *const u8 as *const c_char;
338pub const SOUP_COOKIE_MAX_AGE_ONE_DAY: c_int = 0;
339pub const SOUP_COOKIE_MAX_AGE_ONE_HOUR: c_int = 3600;
340pub const SOUP_COOKIE_MAX_AGE_ONE_WEEK: c_int = 0;
341pub const SOUP_COOKIE_MAX_AGE_ONE_YEAR: c_int = 0;
342pub const SOUP_FORM_MIME_TYPE_MULTIPART: *const c_char = b"multipart/form-data\0" as *const u8 as *const c_char;
343pub const SOUP_FORM_MIME_TYPE_URLENCODED: *const c_char = b"application/x-www-form-urlencoded\0" as *const u8 as *const c_char;
344pub const SOUP_HSTS_ENFORCER_DB_FILENAME: *const c_char = b"filename\0" as *const u8 as *const c_char;
345pub const SOUP_HSTS_POLICY_MAX_AGE_PAST: c_int = 0;
346pub const SOUP_LOGGER_LEVEL: *const c_char = b"level\0" as *const u8 as *const c_char;
347pub const SOUP_LOGGER_MAX_BODY_SIZE: *const c_char = b"max-body-size\0" as *const u8 as *const c_char;
348pub const SOUP_MAJOR_VERSION: c_int = 2;
349pub const SOUP_MESSAGE_FIRST_PARTY: *const c_char = b"first-party\0" as *const u8 as *const c_char;
350pub const SOUP_MESSAGE_FLAGS: *const c_char = b"flags\0" as *const u8 as *const c_char;
351pub const SOUP_MESSAGE_HTTP_VERSION: *const c_char = b"http-version\0" as *const u8 as *const c_char;
352pub const SOUP_MESSAGE_IS_TOP_LEVEL_NAVIGATION: *const c_char = b"is-top-level-navigation\0" as *const u8 as *const c_char;
353pub const SOUP_MESSAGE_METHOD: *const c_char = b"method\0" as *const u8 as *const c_char;
354pub const SOUP_MESSAGE_PRIORITY: *const c_char = b"priority\0" as *const u8 as *const c_char;
355pub const SOUP_MESSAGE_REASON_PHRASE: *const c_char = b"reason-phrase\0" as *const u8 as *const c_char;
356pub const SOUP_MESSAGE_REQUEST_BODY: *const c_char = b"request-body\0" as *const u8 as *const c_char;
357pub const SOUP_MESSAGE_REQUEST_BODY_DATA: *const c_char = b"request-body-data\0" as *const u8 as *const c_char;
358pub const SOUP_MESSAGE_REQUEST_HEADERS: *const c_char = b"request-headers\0" as *const u8 as *const c_char;
359pub const SOUP_MESSAGE_RESPONSE_BODY: *const c_char = b"response-body\0" as *const u8 as *const c_char;
360pub const SOUP_MESSAGE_RESPONSE_BODY_DATA: *const c_char = b"response-body-data\0" as *const u8 as *const c_char;
361pub const SOUP_MESSAGE_RESPONSE_HEADERS: *const c_char = b"response-headers\0" as *const u8 as *const c_char;
362pub const SOUP_MESSAGE_SERVER_SIDE: *const c_char = b"server-side\0" as *const u8 as *const c_char;
363pub const SOUP_MESSAGE_SITE_FOR_COOKIES: *const c_char = b"site-for-cookies\0" as *const u8 as *const c_char;
364pub const SOUP_MESSAGE_STATUS_CODE: *const c_char = b"status-code\0" as *const u8 as *const c_char;
365pub const SOUP_MESSAGE_TLS_CERTIFICATE: *const c_char = b"tls-certificate\0" as *const u8 as *const c_char;
366pub const SOUP_MESSAGE_TLS_ERRORS: *const c_char = b"tls-errors\0" as *const u8 as *const c_char;
367pub const SOUP_MESSAGE_URI: *const c_char = b"uri\0" as *const u8 as *const c_char;
368pub const SOUP_REQUEST_SESSION: *const c_char = b"session\0" as *const u8 as *const c_char;
369pub const SOUP_REQUEST_URI: *const c_char = b"uri\0" as *const u8 as *const c_char;
370pub const SOUP_SERVER_ADD_WEBSOCKET_EXTENSION: *const c_char = b"add-websocket-extension\0" as *const u8 as *const c_char;
371pub const SOUP_SERVER_ASYNC_CONTEXT: *const c_char = b"async-context\0" as *const u8 as *const c_char;
372pub const SOUP_SERVER_HTTPS_ALIASES: *const c_char = b"https-aliases\0" as *const u8 as *const c_char;
373pub const SOUP_SERVER_HTTP_ALIASES: *const c_char = b"http-aliases\0" as *const u8 as *const c_char;
374pub const SOUP_SERVER_INTERFACE: *const c_char = b"interface\0" as *const u8 as *const c_char;
375pub const SOUP_SERVER_PORT: *const c_char = b"port\0" as *const u8 as *const c_char;
376pub const SOUP_SERVER_RAW_PATHS: *const c_char = b"raw-paths\0" as *const u8 as *const c_char;
377pub const SOUP_SERVER_REMOVE_WEBSOCKET_EXTENSION: *const c_char = b"remove-websocket-extension\0" as *const u8 as *const c_char;
378pub const SOUP_SERVER_SERVER_HEADER: *const c_char = b"server-header\0" as *const u8 as *const c_char;
379pub const SOUP_SERVER_SSL_CERT_FILE: *const c_char = b"ssl-cert-file\0" as *const u8 as *const c_char;
380pub const SOUP_SERVER_SSL_KEY_FILE: *const c_char = b"ssl-key-file\0" as *const u8 as *const c_char;
381pub const SOUP_SERVER_TLS_CERTIFICATE: *const c_char = b"tls-certificate\0" as *const u8 as *const c_char;
382pub const SOUP_SESSION_ACCEPT_LANGUAGE: *const c_char = b"accept-language\0" as *const u8 as *const c_char;
383pub const SOUP_SESSION_ACCEPT_LANGUAGE_AUTO: *const c_char = b"accept-language-auto\0" as *const u8 as *const c_char;
384pub const SOUP_SESSION_ADD_FEATURE: *const c_char = b"add-feature\0" as *const u8 as *const c_char;
385pub const SOUP_SESSION_ADD_FEATURE_BY_TYPE: *const c_char = b"add-feature-by-type\0" as *const u8 as *const c_char;
386pub const SOUP_SESSION_ASYNC_CONTEXT: *const c_char = b"async-context\0" as *const u8 as *const c_char;
387pub const SOUP_SESSION_HTTPS_ALIASES: *const c_char = b"https-aliases\0" as *const u8 as *const c_char;
388pub const SOUP_SESSION_HTTP_ALIASES: *const c_char = b"http-aliases\0" as *const u8 as *const c_char;
389pub const SOUP_SESSION_IDLE_TIMEOUT: *const c_char = b"idle-timeout\0" as *const u8 as *const c_char;
390pub const SOUP_SESSION_LOCAL_ADDRESS: *const c_char = b"local-address\0" as *const u8 as *const c_char;
391pub const SOUP_SESSION_MAX_CONNS: *const c_char = b"max-conns\0" as *const u8 as *const c_char;
392pub const SOUP_SESSION_MAX_CONNS_PER_HOST: *const c_char = b"max-conns-per-host\0" as *const u8 as *const c_char;
393pub const SOUP_SESSION_PROXY_RESOLVER: *const c_char = b"proxy-resolver\0" as *const u8 as *const c_char;
394pub const SOUP_SESSION_PROXY_URI: *const c_char = b"proxy-uri\0" as *const u8 as *const c_char;
395pub const SOUP_SESSION_REMOVE_FEATURE_BY_TYPE: *const c_char = b"remove-feature-by-type\0" as *const u8 as *const c_char;
396pub const SOUP_SESSION_SSL_CA_FILE: *const c_char = b"ssl-ca-file\0" as *const u8 as *const c_char;
397pub const SOUP_SESSION_SSL_STRICT: *const c_char = b"ssl-strict\0" as *const u8 as *const c_char;
398pub const SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE: *const c_char = b"ssl-use-system-ca-file\0" as *const u8 as *const c_char;
399pub const SOUP_SESSION_TIMEOUT: *const c_char = b"timeout\0" as *const u8 as *const c_char;
400pub const SOUP_SESSION_TLS_DATABASE: *const c_char = b"tls-database\0" as *const u8 as *const c_char;
401pub const SOUP_SESSION_TLS_INTERACTION: *const c_char = b"tls-interaction\0" as *const u8 as *const c_char;
402pub const SOUP_SESSION_USER_AGENT: *const c_char = b"user-agent\0" as *const u8 as *const c_char;
403pub const SOUP_SESSION_USE_NTLM: *const c_char = b"use-ntlm\0" as *const u8 as *const c_char;
404pub const SOUP_SESSION_USE_THREAD_CONTEXT: *const c_char = b"use-thread-context\0" as *const u8 as *const c_char;
405pub const SOUP_SOCKET_ASYNC_CONTEXT: *const c_char = b"async-context\0" as *const u8 as *const c_char;
406pub const SOUP_SOCKET_FLAG_NONBLOCKING: *const c_char = b"non-blocking\0" as *const u8 as *const c_char;
407pub const SOUP_SOCKET_IS_SERVER: *const c_char = b"is-server\0" as *const u8 as *const c_char;
408pub const SOUP_SOCKET_LOCAL_ADDRESS: *const c_char = b"local-address\0" as *const u8 as *const c_char;
409pub const SOUP_SOCKET_REMOTE_ADDRESS: *const c_char = b"remote-address\0" as *const u8 as *const c_char;
410pub const SOUP_SOCKET_SSL_CREDENTIALS: *const c_char = b"ssl-creds\0" as *const u8 as *const c_char;
411pub const SOUP_SOCKET_SSL_FALLBACK: *const c_char = b"ssl-fallback\0" as *const u8 as *const c_char;
412pub const SOUP_SOCKET_SSL_STRICT: *const c_char = b"ssl-strict\0" as *const u8 as *const c_char;
413pub const SOUP_SOCKET_TIMEOUT: *const c_char = b"timeout\0" as *const u8 as *const c_char;
414pub const SOUP_SOCKET_TLS_CERTIFICATE: *const c_char = b"tls-certificate\0" as *const u8 as *const c_char;
415pub const SOUP_SOCKET_TLS_ERRORS: *const c_char = b"tls-errors\0" as *const u8 as *const c_char;
416pub const SOUP_SOCKET_TRUSTED_CERTIFICATE: *const c_char = b"trusted-certificate\0" as *const u8 as *const c_char;
417pub const SOUP_SOCKET_USE_THREAD_CONTEXT: *const c_char = b"use-thread-context\0" as *const u8 as *const c_char;
418
419// Flags
420pub type SoupCacheability = c_uint;
421pub const SOUP_CACHE_CACHEABLE: SoupCacheability = 1;
422pub const SOUP_CACHE_UNCACHEABLE: SoupCacheability = 2;
423pub const SOUP_CACHE_INVALIDATES: SoupCacheability = 4;
424pub const SOUP_CACHE_VALIDATES: SoupCacheability = 8;
425
426pub type SoupExpectation = c_uint;
427pub const SOUP_EXPECTATION_UNRECOGNIZED: SoupExpectation = 1;
428pub const SOUP_EXPECTATION_CONTINUE: SoupExpectation = 2;
429
430pub type SoupMessageFlags = c_uint;
431pub const SOUP_MESSAGE_NO_REDIRECT: SoupMessageFlags = 2;
432pub const SOUP_MESSAGE_CAN_REBUILD: SoupMessageFlags = 4;
433pub const SOUP_MESSAGE_OVERWRITE_CHUNKS: SoupMessageFlags = 8;
434pub const SOUP_MESSAGE_CONTENT_DECODED: SoupMessageFlags = 16;
435pub const SOUP_MESSAGE_CERTIFICATE_TRUSTED: SoupMessageFlags = 32;
436pub const SOUP_MESSAGE_NEW_CONNECTION: SoupMessageFlags = 64;
437pub const SOUP_MESSAGE_IDEMPOTENT: SoupMessageFlags = 128;
438pub const SOUP_MESSAGE_IGNORE_CONNECTION_LIMITS: SoupMessageFlags = 256;
439pub const SOUP_MESSAGE_DO_NOT_USE_AUTH_CACHE: SoupMessageFlags = 512;
440
441pub type SoupServerListenOptions = c_uint;
442pub const SOUP_SERVER_LISTEN_HTTPS: SoupServerListenOptions = 1;
443pub const SOUP_SERVER_LISTEN_IPV4_ONLY: SoupServerListenOptions = 2;
444pub const SOUP_SERVER_LISTEN_IPV6_ONLY: SoupServerListenOptions = 4;
445
446// Callbacks
447pub type SoupAddressCallback = Option<unsafe extern "C" fn(*mut SoupAddress, c_uint, gpointer)>;
448pub type SoupAuthDomainBasicAuthCallback = Option<unsafe extern "C" fn(*mut SoupAuthDomainBasic, *mut SoupMessage, *const c_char, *const c_char, gpointer) -> gboolean>;
449pub type SoupAuthDomainDigestAuthCallback = Option<unsafe extern "C" fn(*mut SoupAuthDomainDigest, *mut SoupMessage, *const c_char, gpointer) -> *mut c_char>;
450pub type SoupAuthDomainFilter = Option<unsafe extern "C" fn(*mut SoupAuthDomain, *mut SoupMessage, gpointer) -> gboolean>;
451pub type SoupAuthDomainGenericAuthCallback = Option<unsafe extern "C" fn(*mut SoupAuthDomain, *mut SoupMessage, *const c_char, gpointer) -> gboolean>;
452pub type SoupChunkAllocator = Option<unsafe extern "C" fn(*mut SoupMessage, size_t, gpointer) -> *mut SoupBuffer>;
453pub type SoupLoggerFilter = Option<unsafe extern "C" fn(*mut SoupLogger, *mut SoupMessage, gpointer) -> SoupLoggerLogLevel>;
454pub type SoupLoggerPrinter = Option<unsafe extern "C" fn(*mut SoupLogger, SoupLoggerLogLevel, c_char, *const c_char, gpointer)>;
455pub type SoupMessageHeadersForeachFunc = Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
456pub type SoupPasswordManagerCallback = Option<unsafe extern "C" fn(*mut SoupPasswordManager, *mut SoupMessage, *mut SoupAuth, gboolean, gpointer)>;
457pub type SoupProxyResolverCallback = Option<unsafe extern "C" fn(*mut SoupProxyResolver, *mut SoupMessage, c_uint, *mut SoupAddress, gpointer)>;
458pub type SoupProxyURIResolverCallback = Option<unsafe extern "C" fn(*mut SoupProxyURIResolver, c_uint, *mut SoupURI, gpointer)>;
459pub type SoupServerCallback = Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupMessage, *const c_char, *mut glib::GHashTable, *mut SoupClientContext, gpointer)>;
460pub type SoupServerWebsocketCallback = Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupWebsocketConnection, *const c_char, *mut SoupClientContext, gpointer)>;
461pub type SoupSessionCallback = Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, gpointer)>;
462pub type SoupSessionConnectProgressCallback = Option<unsafe extern "C" fn(*mut SoupSession, gio::GSocketClientEvent, *mut gio::GIOStream, gpointer)>;
463pub type SoupSocketCallback = Option<unsafe extern "C" fn(*mut SoupSocket, c_uint, gpointer)>;
464
465// Records
466#[repr(C)]
467#[derive(Copy, Clone)]
468pub struct SoupAddressClass {
469    pub parent_class: gobject::GObjectClass,
470    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
471    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
472    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
473    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
474}
475
476impl ::std::fmt::Debug for SoupAddressClass {
477    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
478        f.debug_struct(&format!("SoupAddressClass @ {:p}", self))
479         .field("parent_class", &self.parent_class)
480         .field("_libsoup_reserved1", &self._libsoup_reserved1)
481         .field("_libsoup_reserved2", &self._libsoup_reserved2)
482         .field("_libsoup_reserved3", &self._libsoup_reserved3)
483         .field("_libsoup_reserved4", &self._libsoup_reserved4)
484         .finish()
485    }
486}
487
488#[repr(C)]
489#[derive(Copy, Clone)]
490pub struct SoupAuthClass {
491    pub parent_class: gobject::GObjectClass,
492    pub scheme_name: *const c_char,
493    pub strength: c_uint,
494    pub update: Option<unsafe extern "C" fn(*mut SoupAuth, *mut SoupMessage, *mut glib::GHashTable) -> gboolean>,
495    pub get_protection_space: Option<unsafe extern "C" fn(*mut SoupAuth, *mut SoupURI) -> *mut glib::GSList>,
496    pub authenticate: Option<unsafe extern "C" fn(*mut SoupAuth, *const c_char, *const c_char)>,
497    pub is_authenticated: Option<unsafe extern "C" fn(*mut SoupAuth) -> gboolean>,
498    pub get_authorization: Option<unsafe extern "C" fn(*mut SoupAuth, *mut SoupMessage) -> *mut c_char>,
499    pub is_ready: Option<unsafe extern "C" fn(*mut SoupAuth, *mut SoupMessage) -> gboolean>,
500    pub can_authenticate: Option<unsafe extern "C" fn(*mut SoupAuth) -> gboolean>,
501    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
502    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
503}
504
505impl ::std::fmt::Debug for SoupAuthClass {
506    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
507        f.debug_struct(&format!("SoupAuthClass @ {:p}", self))
508         .field("parent_class", &self.parent_class)
509         .field("scheme_name", &self.scheme_name)
510         .field("strength", &self.strength)
511         .field("update", &self.update)
512         .field("get_protection_space", &self.get_protection_space)
513         .field("authenticate", &self.authenticate)
514         .field("is_authenticated", &self.is_authenticated)
515         .field("get_authorization", &self.get_authorization)
516         .field("is_ready", &self.is_ready)
517         .field("can_authenticate", &self.can_authenticate)
518         .field("_libsoup_reserved3", &self._libsoup_reserved3)
519         .field("_libsoup_reserved4", &self._libsoup_reserved4)
520         .finish()
521    }
522}
523
524#[repr(C)]
525#[derive(Copy, Clone)]
526pub struct SoupAuthDomainBasicClass {
527    pub parent_class: SoupAuthDomainClass,
528    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
529    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
530    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
531    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
532}
533
534impl ::std::fmt::Debug for SoupAuthDomainBasicClass {
535    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
536        f.debug_struct(&format!("SoupAuthDomainBasicClass @ {:p}", self))
537         .field("parent_class", &self.parent_class)
538         .field("_libsoup_reserved1", &self._libsoup_reserved1)
539         .field("_libsoup_reserved2", &self._libsoup_reserved2)
540         .field("_libsoup_reserved3", &self._libsoup_reserved3)
541         .field("_libsoup_reserved4", &self._libsoup_reserved4)
542         .finish()
543    }
544}
545
546#[repr(C)]
547#[derive(Copy, Clone)]
548pub struct SoupAuthDomainClass {
549    pub parent_class: gobject::GObjectClass,
550    pub accepts: Option<unsafe extern "C" fn(*mut SoupAuthDomain, *mut SoupMessage, *const c_char) -> *mut c_char>,
551    pub challenge: Option<unsafe extern "C" fn(*mut SoupAuthDomain, *mut SoupMessage) -> *mut c_char>,
552    pub check_password: Option<unsafe extern "C" fn(*mut SoupAuthDomain, *mut SoupMessage, *const c_char, *const c_char) -> gboolean>,
553    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
554    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
555    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
556}
557
558impl ::std::fmt::Debug for SoupAuthDomainClass {
559    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
560        f.debug_struct(&format!("SoupAuthDomainClass @ {:p}", self))
561         .field("parent_class", &self.parent_class)
562         .field("accepts", &self.accepts)
563         .field("challenge", &self.challenge)
564         .field("check_password", &self.check_password)
565         .field("_libsoup_reserved2", &self._libsoup_reserved2)
566         .field("_libsoup_reserved3", &self._libsoup_reserved3)
567         .field("_libsoup_reserved4", &self._libsoup_reserved4)
568         .finish()
569    }
570}
571
572#[repr(C)]
573#[derive(Copy, Clone)]
574pub struct SoupAuthDomainDigestClass {
575    pub parent_class: SoupAuthDomainClass,
576    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
577    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
578    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
579    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
580}
581
582impl ::std::fmt::Debug for SoupAuthDomainDigestClass {
583    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
584        f.debug_struct(&format!("SoupAuthDomainDigestClass @ {:p}", self))
585         .field("parent_class", &self.parent_class)
586         .field("_libsoup_reserved1", &self._libsoup_reserved1)
587         .field("_libsoup_reserved2", &self._libsoup_reserved2)
588         .field("_libsoup_reserved3", &self._libsoup_reserved3)
589         .field("_libsoup_reserved4", &self._libsoup_reserved4)
590         .finish()
591    }
592}
593
594#[repr(C)]
595#[derive(Copy, Clone)]
596pub struct SoupAuthManagerClass {
597    pub parent_class: gobject::GObjectClass,
598    pub authenticate: Option<unsafe extern "C" fn(*mut SoupAuthManager, *mut SoupMessage, *mut SoupAuth, gboolean)>,
599}
600
601impl ::std::fmt::Debug for SoupAuthManagerClass {
602    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
603        f.debug_struct(&format!("SoupAuthManagerClass @ {:p}", self))
604         .field("parent_class", &self.parent_class)
605         .field("authenticate", &self.authenticate)
606         .finish()
607    }
608}
609
610#[repr(C)]
611pub struct _SoupAuthManagerPrivate(c_void);
612
613pub type SoupAuthManagerPrivate = *mut _SoupAuthManagerPrivate;
614
615#[repr(C)]
616#[derive(Copy, Clone)]
617pub struct SoupBuffer {
618    pub data: *mut c_void,
619    pub length: size_t,
620}
621
622impl ::std::fmt::Debug for SoupBuffer {
623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
624        f.debug_struct(&format!("SoupBuffer @ {:p}", self))
625         .field("data", &self.data)
626         .field("length", &self.length)
627         .finish()
628    }
629}
630
631#[repr(C)]
632#[derive(Copy, Clone)]
633pub struct SoupCacheClass {
634    pub parent_class: gobject::GObjectClass,
635    pub get_cacheability: Option<unsafe extern "C" fn(*mut SoupCache, *mut SoupMessage) -> SoupCacheability>,
636    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
637    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
638    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
639}
640
641impl ::std::fmt::Debug for SoupCacheClass {
642    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
643        f.debug_struct(&format!("SoupCacheClass @ {:p}", self))
644         .field("parent_class", &self.parent_class)
645         .field("get_cacheability", &self.get_cacheability)
646         .field("_libsoup_reserved1", &self._libsoup_reserved1)
647         .field("_libsoup_reserved2", &self._libsoup_reserved2)
648         .field("_libsoup_reserved3", &self._libsoup_reserved3)
649         .finish()
650    }
651}
652
653#[repr(C)]
654pub struct _SoupCachePrivate(c_void);
655
656pub type SoupCachePrivate = *mut _SoupCachePrivate;
657
658#[repr(C)]
659pub struct SoupClientContext(c_void);
660
661impl ::std::fmt::Debug for SoupClientContext {
662    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
663        f.debug_struct(&format!("SoupClientContext @ {:p}", self))
664         .finish()
665    }
666}
667
668#[repr(C)]
669pub struct _SoupConnection(c_void);
670
671pub type SoupConnection = *mut _SoupConnection;
672
673#[repr(C)]
674#[derive(Copy, Clone)]
675pub struct SoupContentDecoderClass {
676    pub parent_class: gobject::GObjectClass,
677    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
678    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
679    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
680    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
681    pub _libsoup_reserved5: Option<unsafe extern "C" fn()>,
682}
683
684impl ::std::fmt::Debug for SoupContentDecoderClass {
685    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
686        f.debug_struct(&format!("SoupContentDecoderClass @ {:p}", self))
687         .field("parent_class", &self.parent_class)
688         .field("_libsoup_reserved1", &self._libsoup_reserved1)
689         .field("_libsoup_reserved2", &self._libsoup_reserved2)
690         .field("_libsoup_reserved3", &self._libsoup_reserved3)
691         .field("_libsoup_reserved4", &self._libsoup_reserved4)
692         .field("_libsoup_reserved5", &self._libsoup_reserved5)
693         .finish()
694    }
695}
696
697#[repr(C)]
698pub struct _SoupContentDecoderPrivate(c_void);
699
700pub type SoupContentDecoderPrivate = *mut _SoupContentDecoderPrivate;
701
702#[repr(C)]
703#[derive(Copy, Clone)]
704pub struct SoupContentSnifferClass {
705    pub parent_class: gobject::GObjectClass,
706    pub sniff: Option<unsafe extern "C" fn(*mut SoupContentSniffer, *mut SoupMessage, *mut SoupBuffer, *mut *mut glib::GHashTable) -> *mut c_char>,
707    pub get_buffer_size: Option<unsafe extern "C" fn(*mut SoupContentSniffer) -> size_t>,
708    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
709    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
710    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
711    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
712    pub _libsoup_reserved5: Option<unsafe extern "C" fn()>,
713}
714
715impl ::std::fmt::Debug for SoupContentSnifferClass {
716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
717        f.debug_struct(&format!("SoupContentSnifferClass @ {:p}", self))
718         .field("parent_class", &self.parent_class)
719         .field("sniff", &self.sniff)
720         .field("get_buffer_size", &self.get_buffer_size)
721         .field("_libsoup_reserved1", &self._libsoup_reserved1)
722         .field("_libsoup_reserved2", &self._libsoup_reserved2)
723         .field("_libsoup_reserved3", &self._libsoup_reserved3)
724         .field("_libsoup_reserved4", &self._libsoup_reserved4)
725         .field("_libsoup_reserved5", &self._libsoup_reserved5)
726         .finish()
727    }
728}
729
730#[repr(C)]
731pub struct _SoupContentSnifferPrivate(c_void);
732
733pub type SoupContentSnifferPrivate = *mut _SoupContentSnifferPrivate;
734
735#[repr(C)]
736#[derive(Copy, Clone)]
737pub struct SoupCookie {
738    pub name: *mut c_char,
739    pub value: *mut c_char,
740    pub domain: *mut c_char,
741    pub path: *mut c_char,
742    pub expires: *mut SoupDate,
743    pub secure: gboolean,
744    pub http_only: gboolean,
745}
746
747impl ::std::fmt::Debug for SoupCookie {
748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
749        f.debug_struct(&format!("SoupCookie @ {:p}", self))
750         .field("name", &self.name)
751         .field("value", &self.value)
752         .field("domain", &self.domain)
753         .field("path", &self.path)
754         .field("expires", &self.expires)
755         .field("secure", &self.secure)
756         .field("http_only", &self.http_only)
757         .finish()
758    }
759}
760
761#[repr(C)]
762#[derive(Copy, Clone)]
763pub struct SoupCookieJarClass {
764    pub parent_class: gobject::GObjectClass,
765    pub save: Option<unsafe extern "C" fn(*mut SoupCookieJar)>,
766    pub is_persistent: Option<unsafe extern "C" fn(*mut SoupCookieJar) -> gboolean>,
767    pub changed: Option<unsafe extern "C" fn(*mut SoupCookieJar, *mut SoupCookie, *mut SoupCookie)>,
768    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
769    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
770}
771
772impl ::std::fmt::Debug for SoupCookieJarClass {
773    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
774        f.debug_struct(&format!("SoupCookieJarClass @ {:p}", self))
775         .field("parent_class", &self.parent_class)
776         .field("save", &self.save)
777         .field("is_persistent", &self.is_persistent)
778         .field("changed", &self.changed)
779         .field("_libsoup_reserved1", &self._libsoup_reserved1)
780         .field("_libsoup_reserved2", &self._libsoup_reserved2)
781         .finish()
782    }
783}
784
785#[repr(C)]
786#[derive(Copy, Clone)]
787pub struct SoupCookieJarDBClass {
788    pub parent_class: SoupCookieJarClass,
789    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
790    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
791    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
792    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
793}
794
795impl ::std::fmt::Debug for SoupCookieJarDBClass {
796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
797        f.debug_struct(&format!("SoupCookieJarDBClass @ {:p}", self))
798         .field("parent_class", &self.parent_class)
799         .field("_libsoup_reserved1", &self._libsoup_reserved1)
800         .field("_libsoup_reserved2", &self._libsoup_reserved2)
801         .field("_libsoup_reserved3", &self._libsoup_reserved3)
802         .field("_libsoup_reserved4", &self._libsoup_reserved4)
803         .finish()
804    }
805}
806
807#[repr(C)]
808#[derive(Copy, Clone)]
809pub struct SoupCookieJarTextClass {
810    pub parent_class: SoupCookieJarClass,
811    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
812    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
813    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
814    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
815}
816
817impl ::std::fmt::Debug for SoupCookieJarTextClass {
818    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
819        f.debug_struct(&format!("SoupCookieJarTextClass @ {:p}", self))
820         .field("parent_class", &self.parent_class)
821         .field("_libsoup_reserved1", &self._libsoup_reserved1)
822         .field("_libsoup_reserved2", &self._libsoup_reserved2)
823         .field("_libsoup_reserved3", &self._libsoup_reserved3)
824         .field("_libsoup_reserved4", &self._libsoup_reserved4)
825         .finish()
826    }
827}
828
829#[repr(C)]
830#[derive(Copy, Clone)]
831pub struct SoupDate {
832    pub year: c_int,
833    pub month: c_int,
834    pub day: c_int,
835    pub hour: c_int,
836    pub minute: c_int,
837    pub second: c_int,
838    pub utc: gboolean,
839    pub offset: c_int,
840}
841
842impl ::std::fmt::Debug for SoupDate {
843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
844        f.debug_struct(&format!("SoupDate @ {:p}", self))
845         .field("year", &self.year)
846         .field("month", &self.month)
847         .field("day", &self.day)
848         .field("hour", &self.hour)
849         .field("minute", &self.minute)
850         .field("second", &self.second)
851         .field("utc", &self.utc)
852         .field("offset", &self.offset)
853         .finish()
854    }
855}
856
857#[repr(C)]
858#[derive(Copy, Clone)]
859pub struct SoupHSTSEnforcerClass {
860    pub parent_class: gobject::GObjectClass,
861    pub is_persistent: Option<unsafe extern "C" fn(*mut SoupHSTSEnforcer) -> gboolean>,
862    pub has_valid_policy: Option<unsafe extern "C" fn(*mut SoupHSTSEnforcer, *const c_char) -> gboolean>,
863    pub changed: Option<unsafe extern "C" fn(*mut SoupHSTSEnforcer, *mut SoupHSTSPolicy, *mut SoupHSTSPolicy)>,
864    pub hsts_enforced: Option<unsafe extern "C" fn(*mut SoupHSTSEnforcer, *mut SoupMessage)>,
865    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
866    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
867    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
868    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
869}
870
871impl ::std::fmt::Debug for SoupHSTSEnforcerClass {
872    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
873        f.debug_struct(&format!("SoupHSTSEnforcerClass @ {:p}", self))
874         .field("parent_class", &self.parent_class)
875         .field("is_persistent", &self.is_persistent)
876         .field("has_valid_policy", &self.has_valid_policy)
877         .field("changed", &self.changed)
878         .field("hsts_enforced", &self.hsts_enforced)
879         .field("_libsoup_reserved1", &self._libsoup_reserved1)
880         .field("_libsoup_reserved2", &self._libsoup_reserved2)
881         .field("_libsoup_reserved3", &self._libsoup_reserved3)
882         .field("_libsoup_reserved4", &self._libsoup_reserved4)
883         .finish()
884    }
885}
886
887#[repr(C)]
888#[derive(Copy, Clone)]
889pub struct SoupHSTSEnforcerDBClass {
890    pub parent_class: SoupHSTSEnforcerClass,
891    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
892    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
893    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
894    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
895}
896
897impl ::std::fmt::Debug for SoupHSTSEnforcerDBClass {
898    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
899        f.debug_struct(&format!("SoupHSTSEnforcerDBClass @ {:p}", self))
900         .field("parent_class", &self.parent_class)
901         .field("_libsoup_reserved1", &self._libsoup_reserved1)
902         .field("_libsoup_reserved2", &self._libsoup_reserved2)
903         .field("_libsoup_reserved3", &self._libsoup_reserved3)
904         .field("_libsoup_reserved4", &self._libsoup_reserved4)
905         .finish()
906    }
907}
908
909#[repr(C)]
910pub struct _SoupHSTSEnforcerDBPrivate(c_void);
911
912pub type SoupHSTSEnforcerDBPrivate = *mut _SoupHSTSEnforcerDBPrivate;
913
914#[repr(C)]
915pub struct _SoupHSTSEnforcerPrivate(c_void);
916
917pub type SoupHSTSEnforcerPrivate = *mut _SoupHSTSEnforcerPrivate;
918
919#[repr(C)]
920#[derive(Copy, Clone)]
921pub struct SoupHSTSPolicy {
922    pub domain: *mut c_char,
923    pub max_age: c_ulong,
924    pub expires: *mut SoupDate,
925    pub include_subdomains: gboolean,
926}
927
928impl ::std::fmt::Debug for SoupHSTSPolicy {
929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
930        f.debug_struct(&format!("SoupHSTSPolicy @ {:p}", self))
931         .field("domain", &self.domain)
932         .field("max_age", &self.max_age)
933         .field("expires", &self.expires)
934         .field("include_subdomains", &self.include_subdomains)
935         .finish()
936    }
937}
938
939#[repr(C)]
940#[derive(Copy, Clone)]
941pub struct SoupLoggerClass {
942    pub parent_class: gobject::GObjectClass,
943    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
944    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
945    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
946    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
947}
948
949impl ::std::fmt::Debug for SoupLoggerClass {
950    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
951        f.debug_struct(&format!("SoupLoggerClass @ {:p}", self))
952         .field("parent_class", &self.parent_class)
953         .field("_libsoup_reserved1", &self._libsoup_reserved1)
954         .field("_libsoup_reserved2", &self._libsoup_reserved2)
955         .field("_libsoup_reserved3", &self._libsoup_reserved3)
956         .field("_libsoup_reserved4", &self._libsoup_reserved4)
957         .finish()
958    }
959}
960
961#[repr(C)]
962#[derive(Copy, Clone)]
963pub struct SoupMessageBody {
964    pub data: *const c_char,
965    pub length: i64,
966}
967
968impl ::std::fmt::Debug for SoupMessageBody {
969    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
970        f.debug_struct(&format!("SoupMessageBody @ {:p}", self))
971         .field("data", &self.data)
972         .field("length", &self.length)
973         .finish()
974    }
975}
976
977#[repr(C)]
978#[derive(Copy, Clone)]
979pub struct SoupMessageClass {
980    pub parent_class: gobject::GObjectClass,
981    pub wrote_informational: Option<unsafe extern "C" fn(*mut SoupMessage)>,
982    pub wrote_headers: Option<unsafe extern "C" fn(*mut SoupMessage)>,
983    pub wrote_chunk: Option<unsafe extern "C" fn(*mut SoupMessage)>,
984    pub wrote_body: Option<unsafe extern "C" fn(*mut SoupMessage)>,
985    pub got_informational: Option<unsafe extern "C" fn(*mut SoupMessage)>,
986    pub got_headers: Option<unsafe extern "C" fn(*mut SoupMessage)>,
987    pub got_chunk: Option<unsafe extern "C" fn(*mut SoupMessage, *mut SoupBuffer)>,
988    pub got_body: Option<unsafe extern "C" fn(*mut SoupMessage)>,
989    pub restarted: Option<unsafe extern "C" fn(*mut SoupMessage)>,
990    pub finished: Option<unsafe extern "C" fn(*mut SoupMessage)>,
991    pub starting: Option<unsafe extern "C" fn(*mut SoupMessage)>,
992    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
993    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
994    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
995}
996
997impl ::std::fmt::Debug for SoupMessageClass {
998    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
999        f.debug_struct(&format!("SoupMessageClass @ {:p}", self))
1000         .field("parent_class", &self.parent_class)
1001         .field("wrote_informational", &self.wrote_informational)
1002         .field("wrote_headers", &self.wrote_headers)
1003         .field("wrote_chunk", &self.wrote_chunk)
1004         .field("wrote_body", &self.wrote_body)
1005         .field("got_informational", &self.got_informational)
1006         .field("got_headers", &self.got_headers)
1007         .field("got_chunk", &self.got_chunk)
1008         .field("got_body", &self.got_body)
1009         .field("restarted", &self.restarted)
1010         .field("finished", &self.finished)
1011         .field("starting", &self.starting)
1012         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1013         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1014         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1015         .finish()
1016    }
1017}
1018
1019#[repr(C)]
1020pub struct SoupMessageHeaders(c_void);
1021
1022impl ::std::fmt::Debug for SoupMessageHeaders {
1023    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1024        f.debug_struct(&format!("SoupMessageHeaders @ {:p}", self))
1025         .finish()
1026    }
1027}
1028
1029#[repr(C)]
1030#[derive(Copy, Clone)]
1031pub struct SoupMessageHeadersIter {
1032    pub dummy: [gpointer; 3],
1033}
1034
1035impl ::std::fmt::Debug for SoupMessageHeadersIter {
1036    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1037        f.debug_struct(&format!("SoupMessageHeadersIter @ {:p}", self))
1038         .finish()
1039    }
1040}
1041
1042#[repr(C)]
1043pub struct _SoupMessageQueue(c_void);
1044
1045pub type SoupMessageQueue = *mut _SoupMessageQueue;
1046
1047#[repr(C)]
1048pub struct _SoupMessageQueueItem(c_void);
1049
1050pub type SoupMessageQueueItem = *mut _SoupMessageQueueItem;
1051
1052#[repr(C)]
1053pub struct SoupMultipart(c_void);
1054
1055impl ::std::fmt::Debug for SoupMultipart {
1056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1057        f.debug_struct(&format!("SoupMultipart @ {:p}", self))
1058         .finish()
1059    }
1060}
1061
1062#[repr(C)]
1063#[derive(Copy, Clone)]
1064pub struct SoupMultipartInputStreamClass {
1065    pub parent_class: gio::GFilterInputStreamClass,
1066}
1067
1068impl ::std::fmt::Debug for SoupMultipartInputStreamClass {
1069    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1070        f.debug_struct(&format!("SoupMultipartInputStreamClass @ {:p}", self))
1071         .field("parent_class", &self.parent_class)
1072         .finish()
1073    }
1074}
1075
1076#[repr(C)]
1077pub struct _SoupMultipartInputStreamPrivate(c_void);
1078
1079pub type SoupMultipartInputStreamPrivate = *mut _SoupMultipartInputStreamPrivate;
1080
1081#[repr(C)]
1082#[derive(Copy, Clone)]
1083pub struct SoupPasswordManagerInterface {
1084    pub base: gobject::GTypeInterface,
1085    pub get_passwords_async: Option<unsafe extern "C" fn(*mut SoupPasswordManager, *mut SoupMessage, *mut SoupAuth, gboolean, *mut glib::GMainContext, *mut gio::GCancellable, SoupPasswordManagerCallback, gpointer)>,
1086    pub get_passwords_sync: Option<unsafe extern "C" fn(*mut SoupPasswordManager, *mut SoupMessage, *mut SoupAuth, *mut gio::GCancellable)>,
1087}
1088
1089impl ::std::fmt::Debug for SoupPasswordManagerInterface {
1090    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1091        f.debug_struct(&format!("SoupPasswordManagerInterface @ {:p}", self))
1092         .field("base", &self.base)
1093         .field("get_passwords_async", &self.get_passwords_async)
1094         .field("get_passwords_sync", &self.get_passwords_sync)
1095         .finish()
1096    }
1097}
1098
1099#[repr(C)]
1100#[derive(Copy, Clone)]
1101pub struct SoupProxyResolverDefaultClass {
1102    pub parent_class: gobject::GObjectClass,
1103}
1104
1105impl ::std::fmt::Debug for SoupProxyResolverDefaultClass {
1106    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1107        f.debug_struct(&format!("SoupProxyResolverDefaultClass @ {:p}", self))
1108         .field("parent_class", &self.parent_class)
1109         .finish()
1110    }
1111}
1112
1113#[repr(C)]
1114#[derive(Copy, Clone)]
1115pub struct SoupProxyResolverInterface {
1116    pub base: gobject::GTypeInterface,
1117    pub get_proxy_async: Option<unsafe extern "C" fn(*mut SoupProxyResolver, *mut SoupMessage, *mut glib::GMainContext, *mut gio::GCancellable, SoupProxyResolverCallback, gpointer)>,
1118    pub get_proxy_sync: Option<unsafe extern "C" fn(*mut SoupProxyResolver, *mut SoupMessage, *mut gio::GCancellable, *mut *mut SoupAddress) -> c_uint>,
1119}
1120
1121impl ::std::fmt::Debug for SoupProxyResolverInterface {
1122    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1123        f.debug_struct(&format!("SoupProxyResolverInterface @ {:p}", self))
1124         .field("base", &self.base)
1125         .field("get_proxy_async", &self.get_proxy_async)
1126         .field("get_proxy_sync", &self.get_proxy_sync)
1127         .finish()
1128    }
1129}
1130
1131#[repr(C)]
1132#[derive(Copy, Clone)]
1133pub struct SoupProxyURIResolverInterface {
1134    pub base: gobject::GTypeInterface,
1135    pub get_proxy_uri_async: Option<unsafe extern "C" fn(*mut SoupProxyURIResolver, *mut SoupURI, *mut glib::GMainContext, *mut gio::GCancellable, SoupProxyURIResolverCallback, gpointer)>,
1136    pub get_proxy_uri_sync: Option<unsafe extern "C" fn(*mut SoupProxyURIResolver, *mut SoupURI, *mut gio::GCancellable, *mut *mut SoupURI) -> c_uint>,
1137    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1138    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1139    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1140    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1141}
1142
1143impl ::std::fmt::Debug for SoupProxyURIResolverInterface {
1144    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1145        f.debug_struct(&format!("SoupProxyURIResolverInterface @ {:p}", self))
1146         .field("base", &self.base)
1147         .field("get_proxy_uri_async", &self.get_proxy_uri_async)
1148         .field("get_proxy_uri_sync", &self.get_proxy_uri_sync)
1149         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1150         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1151         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1152         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1153         .finish()
1154    }
1155}
1156
1157#[repr(C)]
1158#[derive(Copy, Clone)]
1159pub struct SoupRange {
1160    pub start: i64,
1161    pub end: i64,
1162}
1163
1164impl ::std::fmt::Debug for SoupRange {
1165    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1166        f.debug_struct(&format!("SoupRange @ {:p}", self))
1167         .field("start", &self.start)
1168         .field("end", &self.end)
1169         .finish()
1170    }
1171}
1172
1173#[repr(C)]
1174#[derive(Copy, Clone)]
1175pub struct SoupRequestClass {
1176    pub parent: gobject::GObjectClass,
1177    pub schemes: *mut *const c_char,
1178    pub check_uri: Option<unsafe extern "C" fn(*mut SoupRequest, *mut SoupURI, *mut *mut glib::GError) -> gboolean>,
1179    pub send: Option<unsafe extern "C" fn(*mut SoupRequest, *mut gio::GCancellable, *mut *mut glib::GError) -> *mut gio::GInputStream>,
1180    pub send_async: Option<unsafe extern "C" fn(*mut SoupRequest, *mut gio::GCancellable, gio::GAsyncReadyCallback, gpointer)>,
1181    pub send_finish: Option<unsafe extern "C" fn(*mut SoupRequest, *mut gio::GAsyncResult, *mut *mut glib::GError) -> *mut gio::GInputStream>,
1182    pub get_content_length: Option<unsafe extern "C" fn(*mut SoupRequest) -> i64>,
1183    pub get_content_type: Option<unsafe extern "C" fn(*mut SoupRequest) -> *const c_char>,
1184}
1185
1186impl ::std::fmt::Debug for SoupRequestClass {
1187    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1188        f.debug_struct(&format!("SoupRequestClass @ {:p}", self))
1189         .field("parent", &self.parent)
1190         .field("schemes", &self.schemes)
1191         .field("check_uri", &self.check_uri)
1192         .field("send", &self.send)
1193         .field("send_async", &self.send_async)
1194         .field("send_finish", &self.send_finish)
1195         .field("get_content_length", &self.get_content_length)
1196         .field("get_content_type", &self.get_content_type)
1197         .finish()
1198    }
1199}
1200
1201#[repr(C)]
1202#[derive(Copy, Clone)]
1203pub struct SoupRequestDataClass {
1204    pub parent: SoupRequestClass,
1205}
1206
1207impl ::std::fmt::Debug for SoupRequestDataClass {
1208    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1209        f.debug_struct(&format!("SoupRequestDataClass @ {:p}", self))
1210         .field("parent", &self.parent)
1211         .finish()
1212    }
1213}
1214
1215#[repr(C)]
1216pub struct _SoupRequestDataPrivate(c_void);
1217
1218pub type SoupRequestDataPrivate = *mut _SoupRequestDataPrivate;
1219
1220#[repr(C)]
1221#[derive(Copy, Clone)]
1222pub struct SoupRequestFileClass {
1223    pub parent: SoupRequestClass,
1224}
1225
1226impl ::std::fmt::Debug for SoupRequestFileClass {
1227    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1228        f.debug_struct(&format!("SoupRequestFileClass @ {:p}", self))
1229         .field("parent", &self.parent)
1230         .finish()
1231    }
1232}
1233
1234#[repr(C)]
1235pub struct _SoupRequestFilePrivate(c_void);
1236
1237pub type SoupRequestFilePrivate = *mut _SoupRequestFilePrivate;
1238
1239#[repr(C)]
1240#[derive(Copy, Clone)]
1241pub struct SoupRequestHTTPClass {
1242    pub parent: SoupRequestClass,
1243}
1244
1245impl ::std::fmt::Debug for SoupRequestHTTPClass {
1246    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1247        f.debug_struct(&format!("SoupRequestHTTPClass @ {:p}", self))
1248         .field("parent", &self.parent)
1249         .finish()
1250    }
1251}
1252
1253#[repr(C)]
1254pub struct _SoupRequestHTTPPrivate(c_void);
1255
1256pub type SoupRequestHTTPPrivate = *mut _SoupRequestHTTPPrivate;
1257
1258#[repr(C)]
1259pub struct _SoupRequestPrivate(c_void);
1260
1261pub type SoupRequestPrivate = *mut _SoupRequestPrivate;
1262
1263#[repr(C)]
1264#[derive(Copy, Clone)]
1265pub struct SoupRequesterClass {
1266    pub parent_class: gobject::GObjectClass,
1267}
1268
1269impl ::std::fmt::Debug for SoupRequesterClass {
1270    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1271        f.debug_struct(&format!("SoupRequesterClass @ {:p}", self))
1272         .field("parent_class", &self.parent_class)
1273         .finish()
1274    }
1275}
1276
1277#[repr(C)]
1278pub struct _SoupRequesterPrivate(c_void);
1279
1280pub type SoupRequesterPrivate = *mut _SoupRequesterPrivate;
1281
1282#[repr(C)]
1283#[derive(Copy, Clone)]
1284pub struct SoupServerClass {
1285    pub parent_class: gobject::GObjectClass,
1286    pub request_started: Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupMessage, *mut SoupClientContext)>,
1287    pub request_read: Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupMessage, *mut SoupClientContext)>,
1288    pub request_finished: Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupMessage, *mut SoupClientContext)>,
1289    pub request_aborted: Option<unsafe extern "C" fn(*mut SoupServer, *mut SoupMessage, *mut SoupClientContext)>,
1290    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1291    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1292    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1293    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1294}
1295
1296impl ::std::fmt::Debug for SoupServerClass {
1297    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1298        f.debug_struct(&format!("SoupServerClass @ {:p}", self))
1299         .field("parent_class", &self.parent_class)
1300         .field("request_started", &self.request_started)
1301         .field("request_read", &self.request_read)
1302         .field("request_finished", &self.request_finished)
1303         .field("request_aborted", &self.request_aborted)
1304         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1305         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1306         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1307         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1308         .finish()
1309    }
1310}
1311
1312#[repr(C)]
1313#[derive(Copy, Clone)]
1314pub struct SoupSessionAsyncClass {
1315    pub parent_class: SoupSessionClass,
1316    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1317    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1318    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1319    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1320}
1321
1322impl ::std::fmt::Debug for SoupSessionAsyncClass {
1323    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1324        f.debug_struct(&format!("SoupSessionAsyncClass @ {:p}", self))
1325         .field("parent_class", &self.parent_class)
1326         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1327         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1328         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1329         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1330         .finish()
1331    }
1332}
1333
1334#[repr(C)]
1335#[derive(Copy, Clone)]
1336pub struct SoupSessionClass {
1337    pub parent_class: gobject::GObjectClass,
1338    pub request_started: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, *mut SoupSocket)>,
1339    pub authenticate: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, *mut SoupAuth, gboolean)>,
1340    pub queue_message: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, SoupSessionCallback, gpointer)>,
1341    pub requeue_message: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage)>,
1342    pub send_message: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage) -> c_uint>,
1343    pub cancel_message: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, c_uint)>,
1344    pub auth_required: Option<unsafe extern "C" fn(*mut SoupSession, *mut SoupMessage, *mut SoupAuth, gboolean)>,
1345    pub flush_queue: Option<unsafe extern "C" fn(*mut SoupSession)>,
1346    pub kick: Option<unsafe extern "C" fn(*mut SoupSession)>,
1347    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1348}
1349
1350impl ::std::fmt::Debug for SoupSessionClass {
1351    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1352        f.debug_struct(&format!("SoupSessionClass @ {:p}", self))
1353         .field("parent_class", &self.parent_class)
1354         .field("request_started", &self.request_started)
1355         .field("authenticate", &self.authenticate)
1356         .field("queue_message", &self.queue_message)
1357         .field("requeue_message", &self.requeue_message)
1358         .field("send_message", &self.send_message)
1359         .field("cancel_message", &self.cancel_message)
1360         .field("auth_required", &self.auth_required)
1361         .field("flush_queue", &self.flush_queue)
1362         .field("kick", &self.kick)
1363         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1364         .finish()
1365    }
1366}
1367
1368#[repr(C)]
1369#[derive(Copy, Clone)]
1370pub struct SoupSessionFeatureInterface {
1371    pub parent: gobject::GTypeInterface,
1372    pub attach: Option<unsafe extern "C" fn(*mut SoupSessionFeature, *mut SoupSession)>,
1373    pub detach: Option<unsafe extern "C" fn(*mut SoupSessionFeature, *mut SoupSession)>,
1374    pub request_queued: Option<unsafe extern "C" fn(*mut SoupSessionFeature, *mut SoupSession, *mut SoupMessage)>,
1375    pub request_started: Option<unsafe extern "C" fn(*mut SoupSessionFeature, *mut SoupSession, *mut SoupMessage, *mut SoupSocket)>,
1376    pub request_unqueued: Option<unsafe extern "C" fn(*mut SoupSessionFeature, *mut SoupSession, *mut SoupMessage)>,
1377    pub add_feature: Option<unsafe extern "C" fn(*mut SoupSessionFeature, GType) -> gboolean>,
1378    pub remove_feature: Option<unsafe extern "C" fn(*mut SoupSessionFeature, GType) -> gboolean>,
1379    pub has_feature: Option<unsafe extern "C" fn(*mut SoupSessionFeature, GType) -> gboolean>,
1380}
1381
1382impl ::std::fmt::Debug for SoupSessionFeatureInterface {
1383    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1384        f.debug_struct(&format!("SoupSessionFeatureInterface @ {:p}", self))
1385         .field("parent", &self.parent)
1386         .field("attach", &self.attach)
1387         .field("detach", &self.detach)
1388         .field("request_queued", &self.request_queued)
1389         .field("request_started", &self.request_started)
1390         .field("request_unqueued", &self.request_unqueued)
1391         .field("add_feature", &self.add_feature)
1392         .field("remove_feature", &self.remove_feature)
1393         .field("has_feature", &self.has_feature)
1394         .finish()
1395    }
1396}
1397
1398#[repr(C)]
1399#[derive(Copy, Clone)]
1400pub struct SoupSessionSyncClass {
1401    pub parent_class: SoupSessionClass,
1402    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1403    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1404    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1405    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1406}
1407
1408impl ::std::fmt::Debug for SoupSessionSyncClass {
1409    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1410        f.debug_struct(&format!("SoupSessionSyncClass @ {:p}", self))
1411         .field("parent_class", &self.parent_class)
1412         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1413         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1414         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1415         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1416         .finish()
1417    }
1418}
1419
1420#[repr(C)]
1421#[derive(Copy, Clone)]
1422pub struct SoupSocketClass {
1423    pub parent_class: gobject::GObjectClass,
1424    pub readable: Option<unsafe extern "C" fn(*mut SoupSocket)>,
1425    pub writable: Option<unsafe extern "C" fn(*mut SoupSocket)>,
1426    pub disconnected: Option<unsafe extern "C" fn(*mut SoupSocket)>,
1427    pub new_connection: Option<unsafe extern "C" fn(*mut SoupSocket, *mut SoupSocket)>,
1428    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1429    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1430    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1431    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1432}
1433
1434impl ::std::fmt::Debug for SoupSocketClass {
1435    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1436        f.debug_struct(&format!("SoupSocketClass @ {:p}", self))
1437         .field("parent_class", &self.parent_class)
1438         .field("readable", &self.readable)
1439         .field("writable", &self.writable)
1440         .field("disconnected", &self.disconnected)
1441         .field("new_connection", &self.new_connection)
1442         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1443         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1444         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1445         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1446         .finish()
1447    }
1448}
1449
1450#[repr(C)]
1451#[derive(Copy, Clone)]
1452pub struct SoupURI {
1453    pub scheme: *const c_char,
1454    pub user: *mut c_char,
1455    pub password: *mut c_char,
1456    pub host: *mut c_char,
1457    pub port: c_uint,
1458    pub path: *mut c_char,
1459    pub query: *mut c_char,
1460    pub fragment: *mut c_char,
1461}
1462
1463impl ::std::fmt::Debug for SoupURI {
1464    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1465        f.debug_struct(&format!("SoupURI @ {:p}", self))
1466         .field("scheme", &self.scheme)
1467         .field("user", &self.user)
1468         .field("password", &self.password)
1469         .field("host", &self.host)
1470         .field("port", &self.port)
1471         .field("path", &self.path)
1472         .field("query", &self.query)
1473         .field("fragment", &self.fragment)
1474         .finish()
1475    }
1476}
1477
1478#[repr(C)]
1479#[derive(Copy, Clone)]
1480pub struct SoupWebsocketConnectionClass {
1481    pub parent: gobject::GObjectClass,
1482    pub message: Option<unsafe extern "C" fn(*mut SoupWebsocketConnection, SoupWebsocketDataType, *mut glib::GBytes)>,
1483    pub error: Option<unsafe extern "C" fn(*mut SoupWebsocketConnection, *mut glib::GError)>,
1484    pub closing: Option<unsafe extern "C" fn(*mut SoupWebsocketConnection)>,
1485    pub closed: Option<unsafe extern "C" fn(*mut SoupWebsocketConnection)>,
1486    pub pong: Option<unsafe extern "C" fn(*mut SoupWebsocketConnection, *mut glib::GBytes)>,
1487}
1488
1489impl ::std::fmt::Debug for SoupWebsocketConnectionClass {
1490    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1491        f.debug_struct(&format!("SoupWebsocketConnectionClass @ {:p}", self))
1492         .field("parent", &self.parent)
1493         .field("message", &self.message)
1494         .field("error", &self.error)
1495         .field("closing", &self.closing)
1496         .field("closed", &self.closed)
1497         .field("pong", &self.pong)
1498         .finish()
1499    }
1500}
1501
1502#[repr(C)]
1503pub struct _SoupWebsocketConnectionPrivate(c_void);
1504
1505pub type SoupWebsocketConnectionPrivate = *mut _SoupWebsocketConnectionPrivate;
1506
1507#[repr(C)]
1508#[derive(Copy, Clone)]
1509pub struct SoupWebsocketExtensionClass {
1510    pub parent_class: gobject::GObjectClass,
1511    pub name: *const c_char,
1512    pub configure: Option<unsafe extern "C" fn(*mut SoupWebsocketExtension, SoupWebsocketConnectionType, *mut glib::GHashTable, *mut *mut glib::GError) -> gboolean>,
1513    pub get_request_params: Option<unsafe extern "C" fn(*mut SoupWebsocketExtension) -> *mut c_char>,
1514    pub get_response_params: Option<unsafe extern "C" fn(*mut SoupWebsocketExtension) -> *mut c_char>,
1515    pub process_outgoing_message: Option<unsafe extern "C" fn(*mut SoupWebsocketExtension, *mut u8, *mut glib::GBytes, *mut *mut glib::GError) -> *mut glib::GBytes>,
1516    pub process_incoming_message: Option<unsafe extern "C" fn(*mut SoupWebsocketExtension, *mut u8, *mut glib::GBytes, *mut *mut glib::GError) -> *mut glib::GBytes>,
1517    pub _libsoup_reserved1: Option<unsafe extern "C" fn()>,
1518    pub _libsoup_reserved2: Option<unsafe extern "C" fn()>,
1519    pub _libsoup_reserved3: Option<unsafe extern "C" fn()>,
1520    pub _libsoup_reserved4: Option<unsafe extern "C" fn()>,
1521}
1522
1523impl ::std::fmt::Debug for SoupWebsocketExtensionClass {
1524    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1525        f.debug_struct(&format!("SoupWebsocketExtensionClass @ {:p}", self))
1526         .field("parent_class", &self.parent_class)
1527         .field("name", &self.name)
1528         .field("configure", &self.configure)
1529         .field("get_request_params", &self.get_request_params)
1530         .field("get_response_params", &self.get_response_params)
1531         .field("process_outgoing_message", &self.process_outgoing_message)
1532         .field("process_incoming_message", &self.process_incoming_message)
1533         .field("_libsoup_reserved1", &self._libsoup_reserved1)
1534         .field("_libsoup_reserved2", &self._libsoup_reserved2)
1535         .field("_libsoup_reserved3", &self._libsoup_reserved3)
1536         .field("_libsoup_reserved4", &self._libsoup_reserved4)
1537         .finish()
1538    }
1539}
1540
1541#[repr(C)]
1542#[derive(Copy, Clone)]
1543pub struct SoupWebsocketExtensionDeflateClass {
1544    pub parent_class: SoupWebsocketExtensionClass,
1545}
1546
1547impl ::std::fmt::Debug for SoupWebsocketExtensionDeflateClass {
1548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1549        f.debug_struct(&format!("SoupWebsocketExtensionDeflateClass @ {:p}", self))
1550         .field("parent_class", &self.parent_class)
1551         .finish()
1552    }
1553}
1554
1555#[repr(C)]
1556#[derive(Copy, Clone)]
1557pub struct SoupWebsocketExtensionManagerClass {
1558    pub parent_class: gobject::GObjectClass,
1559}
1560
1561impl ::std::fmt::Debug for SoupWebsocketExtensionManagerClass {
1562    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1563        f.debug_struct(&format!("SoupWebsocketExtensionManagerClass @ {:p}", self))
1564         .field("parent_class", &self.parent_class)
1565         .finish()
1566    }
1567}
1568
1569#[repr(C)]
1570pub struct _SoupXMLRPCParams(c_void);
1571
1572pub type SoupXMLRPCParams = *mut _SoupXMLRPCParams;
1573
1574// Classes
1575#[repr(C)]
1576#[derive(Copy, Clone)]
1577pub struct SoupAddress {
1578    pub parent: gobject::GObject,
1579}
1580
1581impl ::std::fmt::Debug for SoupAddress {
1582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1583        f.debug_struct(&format!("SoupAddress @ {:p}", self))
1584         .field("parent", &self.parent)
1585         .finish()
1586    }
1587}
1588
1589#[repr(C)]
1590#[derive(Copy, Clone)]
1591pub struct SoupAuth {
1592    pub parent: gobject::GObject,
1593    pub realm: *mut c_char,
1594}
1595
1596impl ::std::fmt::Debug for SoupAuth {
1597    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1598        f.debug_struct(&format!("SoupAuth @ {:p}", self))
1599         .field("parent", &self.parent)
1600         .field("realm", &self.realm)
1601         .finish()
1602    }
1603}
1604
1605#[repr(C)]
1606pub struct SoupAuthBasic(c_void);
1607
1608impl ::std::fmt::Debug for SoupAuthBasic {
1609    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1610        f.debug_struct(&format!("SoupAuthBasic @ {:p}", self))
1611         .finish()
1612    }
1613}
1614
1615#[repr(C)]
1616pub struct SoupAuthDigest(c_void);
1617
1618impl ::std::fmt::Debug for SoupAuthDigest {
1619    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1620        f.debug_struct(&format!("SoupAuthDigest @ {:p}", self))
1621         .finish()
1622    }
1623}
1624
1625#[repr(C)]
1626#[derive(Copy, Clone)]
1627pub struct SoupAuthDomain {
1628    pub parent: gobject::GObject,
1629}
1630
1631impl ::std::fmt::Debug for SoupAuthDomain {
1632    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1633        f.debug_struct(&format!("SoupAuthDomain @ {:p}", self))
1634         .field("parent", &self.parent)
1635         .finish()
1636    }
1637}
1638
1639#[repr(C)]
1640#[derive(Copy, Clone)]
1641pub struct SoupAuthDomainBasic {
1642    pub parent: SoupAuthDomain,
1643}
1644
1645impl ::std::fmt::Debug for SoupAuthDomainBasic {
1646    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1647        f.debug_struct(&format!("SoupAuthDomainBasic @ {:p}", self))
1648         .field("parent", &self.parent)
1649         .finish()
1650    }
1651}
1652
1653#[repr(C)]
1654#[derive(Copy, Clone)]
1655pub struct SoupAuthDomainDigest {
1656    pub parent: SoupAuthDomain,
1657}
1658
1659impl ::std::fmt::Debug for SoupAuthDomainDigest {
1660    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1661        f.debug_struct(&format!("SoupAuthDomainDigest @ {:p}", self))
1662         .field("parent", &self.parent)
1663         .finish()
1664    }
1665}
1666
1667#[repr(C)]
1668#[derive(Copy, Clone)]
1669pub struct SoupAuthManager {
1670    pub parent: gobject::GObject,
1671    pub priv_: *mut SoupAuthManagerPrivate,
1672}
1673
1674impl ::std::fmt::Debug for SoupAuthManager {
1675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1676        f.debug_struct(&format!("SoupAuthManager @ {:p}", self))
1677         .field("parent", &self.parent)
1678         .field("priv_", &self.priv_)
1679         .finish()
1680    }
1681}
1682
1683#[repr(C)]
1684pub struct SoupAuthNTLM(c_void);
1685
1686impl ::std::fmt::Debug for SoupAuthNTLM {
1687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1688        f.debug_struct(&format!("SoupAuthNTLM @ {:p}", self))
1689         .finish()
1690    }
1691}
1692
1693#[repr(C)]
1694pub struct SoupAuthNegotiate(c_void);
1695
1696impl ::std::fmt::Debug for SoupAuthNegotiate {
1697    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1698        f.debug_struct(&format!("SoupAuthNegotiate @ {:p}", self))
1699         .finish()
1700    }
1701}
1702
1703#[repr(C)]
1704#[derive(Copy, Clone)]
1705pub struct SoupCache {
1706    pub parent_instance: gobject::GObject,
1707    pub priv_: *mut SoupCachePrivate,
1708}
1709
1710impl ::std::fmt::Debug for SoupCache {
1711    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1712        f.debug_struct(&format!("SoupCache @ {:p}", self))
1713         .field("parent_instance", &self.parent_instance)
1714         .field("priv_", &self.priv_)
1715         .finish()
1716    }
1717}
1718
1719#[repr(C)]
1720#[derive(Copy, Clone)]
1721pub struct SoupContentDecoder {
1722    pub parent: gobject::GObject,
1723    pub priv_: *mut SoupContentDecoderPrivate,
1724}
1725
1726impl ::std::fmt::Debug for SoupContentDecoder {
1727    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1728        f.debug_struct(&format!("SoupContentDecoder @ {:p}", self))
1729         .field("parent", &self.parent)
1730         .field("priv_", &self.priv_)
1731         .finish()
1732    }
1733}
1734
1735#[repr(C)]
1736#[derive(Copy, Clone)]
1737pub struct SoupContentSniffer {
1738    pub parent: gobject::GObject,
1739    pub priv_: *mut SoupContentSnifferPrivate,
1740}
1741
1742impl ::std::fmt::Debug for SoupContentSniffer {
1743    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1744        f.debug_struct(&format!("SoupContentSniffer @ {:p}", self))
1745         .field("parent", &self.parent)
1746         .field("priv_", &self.priv_)
1747         .finish()
1748    }
1749}
1750
1751#[repr(C)]
1752#[derive(Copy, Clone)]
1753pub struct SoupCookieJar {
1754    pub parent: gobject::GObject,
1755}
1756
1757impl ::std::fmt::Debug for SoupCookieJar {
1758    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1759        f.debug_struct(&format!("SoupCookieJar @ {:p}", self))
1760         .field("parent", &self.parent)
1761         .finish()
1762    }
1763}
1764
1765#[repr(C)]
1766#[derive(Copy, Clone)]
1767pub struct SoupCookieJarDB {
1768    pub parent: SoupCookieJar,
1769}
1770
1771impl ::std::fmt::Debug for SoupCookieJarDB {
1772    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1773        f.debug_struct(&format!("SoupCookieJarDB @ {:p}", self))
1774         .field("parent", &self.parent)
1775         .finish()
1776    }
1777}
1778
1779#[repr(C)]
1780#[derive(Copy, Clone)]
1781pub struct SoupCookieJarText {
1782    pub parent: SoupCookieJar,
1783}
1784
1785impl ::std::fmt::Debug for SoupCookieJarText {
1786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1787        f.debug_struct(&format!("SoupCookieJarText @ {:p}", self))
1788         .field("parent", &self.parent)
1789         .finish()
1790    }
1791}
1792
1793#[repr(C)]
1794#[derive(Copy, Clone)]
1795pub struct SoupHSTSEnforcer {
1796    pub parent: gobject::GObject,
1797    pub priv_: *mut SoupHSTSEnforcerPrivate,
1798}
1799
1800impl ::std::fmt::Debug for SoupHSTSEnforcer {
1801    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1802        f.debug_struct(&format!("SoupHSTSEnforcer @ {:p}", self))
1803         .field("parent", &self.parent)
1804         .field("priv_", &self.priv_)
1805         .finish()
1806    }
1807}
1808
1809#[repr(C)]
1810#[derive(Copy, Clone)]
1811pub struct SoupHSTSEnforcerDB {
1812    pub parent: SoupHSTSEnforcer,
1813    pub priv_: *mut SoupHSTSEnforcerDBPrivate,
1814}
1815
1816impl ::std::fmt::Debug for SoupHSTSEnforcerDB {
1817    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1818        f.debug_struct(&format!("SoupHSTSEnforcerDB @ {:p}", self))
1819         .field("parent", &self.parent)
1820         .field("priv_", &self.priv_)
1821         .finish()
1822    }
1823}
1824
1825#[repr(C)]
1826#[derive(Copy, Clone)]
1827pub struct SoupLogger {
1828    pub parent: gobject::GObject,
1829}
1830
1831impl ::std::fmt::Debug for SoupLogger {
1832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1833        f.debug_struct(&format!("SoupLogger @ {:p}", self))
1834         .field("parent", &self.parent)
1835         .finish()
1836    }
1837}
1838
1839#[repr(C)]
1840#[derive(Copy, Clone)]
1841pub struct SoupMessage {
1842    pub parent: gobject::GObject,
1843    pub method: *const c_char,
1844    pub status_code: c_uint,
1845    pub reason_phrase: *mut c_char,
1846    pub request_body: *mut SoupMessageBody,
1847    pub request_headers: *mut SoupMessageHeaders,
1848    pub response_body: *mut SoupMessageBody,
1849    pub response_headers: *mut SoupMessageHeaders,
1850}
1851
1852impl ::std::fmt::Debug for SoupMessage {
1853    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1854        f.debug_struct(&format!("SoupMessage @ {:p}", self))
1855         .field("parent", &self.parent)
1856         .field("method", &self.method)
1857         .field("status_code", &self.status_code)
1858         .field("reason_phrase", &self.reason_phrase)
1859         .field("request_body", &self.request_body)
1860         .field("request_headers", &self.request_headers)
1861         .field("response_body", &self.response_body)
1862         .field("response_headers", &self.response_headers)
1863         .finish()
1864    }
1865}
1866
1867#[repr(C)]
1868#[derive(Copy, Clone)]
1869pub struct SoupMultipartInputStream {
1870    pub parent_instance: gio::GFilterInputStream,
1871    pub priv_: *mut SoupMultipartInputStreamPrivate,
1872}
1873
1874impl ::std::fmt::Debug for SoupMultipartInputStream {
1875    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1876        f.debug_struct(&format!("SoupMultipartInputStream @ {:p}", self))
1877         .field("parent_instance", &self.parent_instance)
1878         .finish()
1879    }
1880}
1881
1882#[repr(C)]
1883#[derive(Copy, Clone)]
1884pub struct SoupProxyResolverDefault {
1885    pub parent: gobject::GObject,
1886}
1887
1888impl ::std::fmt::Debug for SoupProxyResolverDefault {
1889    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1890        f.debug_struct(&format!("SoupProxyResolverDefault @ {:p}", self))
1891         .field("parent", &self.parent)
1892         .finish()
1893    }
1894}
1895
1896#[repr(C)]
1897#[derive(Copy, Clone)]
1898pub struct SoupRequest {
1899    pub parent: gobject::GObject,
1900    pub priv_: *mut SoupRequestPrivate,
1901}
1902
1903impl ::std::fmt::Debug for SoupRequest {
1904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1905        f.debug_struct(&format!("SoupRequest @ {:p}", self))
1906         .field("parent", &self.parent)
1907         .field("priv_", &self.priv_)
1908         .finish()
1909    }
1910}
1911
1912#[repr(C)]
1913#[derive(Copy, Clone)]
1914pub struct SoupRequestData {
1915    pub parent: SoupRequest,
1916    pub priv_: *mut SoupRequestDataPrivate,
1917}
1918
1919impl ::std::fmt::Debug for SoupRequestData {
1920    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1921        f.debug_struct(&format!("SoupRequestData @ {:p}", self))
1922         .field("parent", &self.parent)
1923         .field("priv_", &self.priv_)
1924         .finish()
1925    }
1926}
1927
1928#[repr(C)]
1929#[derive(Copy, Clone)]
1930pub struct SoupRequestFile {
1931    pub parent: SoupRequest,
1932    pub priv_: *mut SoupRequestFilePrivate,
1933}
1934
1935impl ::std::fmt::Debug for SoupRequestFile {
1936    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1937        f.debug_struct(&format!("SoupRequestFile @ {:p}", self))
1938         .field("parent", &self.parent)
1939         .field("priv_", &self.priv_)
1940         .finish()
1941    }
1942}
1943
1944#[repr(C)]
1945#[derive(Copy, Clone)]
1946pub struct SoupRequestHTTP {
1947    pub parent: SoupRequest,
1948    pub priv_: *mut SoupRequestHTTPPrivate,
1949}
1950
1951impl ::std::fmt::Debug for SoupRequestHTTP {
1952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1953        f.debug_struct(&format!("SoupRequestHTTP @ {:p}", self))
1954         .field("parent", &self.parent)
1955         .field("priv_", &self.priv_)
1956         .finish()
1957    }
1958}
1959
1960#[repr(C)]
1961#[derive(Copy, Clone)]
1962pub struct SoupRequester {
1963    pub parent: gobject::GObject,
1964    pub priv_: *mut SoupRequesterPrivate,
1965}
1966
1967impl ::std::fmt::Debug for SoupRequester {
1968    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1969        f.debug_struct(&format!("SoupRequester @ {:p}", self))
1970         .field("parent", &self.parent)
1971         .field("priv_", &self.priv_)
1972         .finish()
1973    }
1974}
1975
1976#[repr(C)]
1977#[derive(Copy, Clone)]
1978pub struct SoupServer {
1979    pub parent: gobject::GObject,
1980}
1981
1982impl ::std::fmt::Debug for SoupServer {
1983    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1984        f.debug_struct(&format!("SoupServer @ {:p}", self))
1985         .field("parent", &self.parent)
1986         .finish()
1987    }
1988}
1989
1990#[repr(C)]
1991#[derive(Copy, Clone)]
1992pub struct SoupSession {
1993    pub parent: gobject::GObject,
1994}
1995
1996impl ::std::fmt::Debug for SoupSession {
1997    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1998        f.debug_struct(&format!("SoupSession @ {:p}", self))
1999         .field("parent", &self.parent)
2000         .finish()
2001    }
2002}
2003
2004#[repr(C)]
2005#[derive(Copy, Clone)]
2006pub struct SoupSessionAsync {
2007    pub parent: SoupSession,
2008}
2009
2010impl ::std::fmt::Debug for SoupSessionAsync {
2011    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2012        f.debug_struct(&format!("SoupSessionAsync @ {:p}", self))
2013         .field("parent", &self.parent)
2014         .finish()
2015    }
2016}
2017
2018#[repr(C)]
2019#[derive(Copy, Clone)]
2020pub struct SoupSessionSync {
2021    pub parent: SoupSession,
2022}
2023
2024impl ::std::fmt::Debug for SoupSessionSync {
2025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2026        f.debug_struct(&format!("SoupSessionSync @ {:p}", self))
2027         .field("parent", &self.parent)
2028         .finish()
2029    }
2030}
2031
2032#[repr(C)]
2033#[derive(Copy, Clone)]
2034pub struct SoupSocket {
2035    pub parent: gobject::GObject,
2036}
2037
2038impl ::std::fmt::Debug for SoupSocket {
2039    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2040        f.debug_struct(&format!("SoupSocket @ {:p}", self))
2041         .field("parent", &self.parent)
2042         .finish()
2043    }
2044}
2045
2046#[repr(C)]
2047#[derive(Copy, Clone)]
2048pub struct SoupWebsocketConnection {
2049    pub parent: gobject::GObject,
2050    pub pv: *mut SoupWebsocketConnectionPrivate,
2051}
2052
2053impl ::std::fmt::Debug for SoupWebsocketConnection {
2054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2055        f.debug_struct(&format!("SoupWebsocketConnection @ {:p}", self))
2056         .field("parent", &self.parent)
2057         .finish()
2058    }
2059}
2060
2061#[repr(C)]
2062#[derive(Copy, Clone)]
2063pub struct SoupWebsocketExtension {
2064    pub parent: gobject::GObject,
2065}
2066
2067impl ::std::fmt::Debug for SoupWebsocketExtension {
2068    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2069        f.debug_struct(&format!("SoupWebsocketExtension @ {:p}", self))
2070         .field("parent", &self.parent)
2071         .finish()
2072    }
2073}
2074
2075#[repr(C)]
2076#[derive(Copy, Clone)]
2077pub struct SoupWebsocketExtensionDeflate {
2078    pub parent: SoupWebsocketExtension,
2079}
2080
2081impl ::std::fmt::Debug for SoupWebsocketExtensionDeflate {
2082    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2083        f.debug_struct(&format!("SoupWebsocketExtensionDeflate @ {:p}", self))
2084         .field("parent", &self.parent)
2085         .finish()
2086    }
2087}
2088
2089#[repr(C)]
2090#[derive(Copy, Clone)]
2091pub struct SoupWebsocketExtensionManager {
2092    pub parent: gobject::GObject,
2093}
2094
2095impl ::std::fmt::Debug for SoupWebsocketExtensionManager {
2096    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2097        f.debug_struct(&format!("SoupWebsocketExtensionManager @ {:p}", self))
2098         .field("parent", &self.parent)
2099         .finish()
2100    }
2101}
2102
2103// Interfaces
2104#[repr(C)]
2105pub struct SoupPasswordManager(c_void);
2106
2107impl ::std::fmt::Debug for SoupPasswordManager {
2108    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2109        write!(f, "SoupPasswordManager @ {:p}", self)
2110    }
2111}
2112
2113#[repr(C)]
2114pub struct SoupProxyResolver(c_void);
2115
2116impl ::std::fmt::Debug for SoupProxyResolver {
2117    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2118        write!(f, "SoupProxyResolver @ {:p}", self)
2119    }
2120}
2121
2122#[repr(C)]
2123pub struct SoupProxyURIResolver(c_void);
2124
2125impl ::std::fmt::Debug for SoupProxyURIResolver {
2126    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2127        write!(f, "SoupProxyURIResolver @ {:p}", self)
2128    }
2129}
2130
2131#[repr(C)]
2132pub struct SoupSessionFeature(c_void);
2133
2134impl ::std::fmt::Debug for SoupSessionFeature {
2135    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2136        write!(f, "SoupSessionFeature @ {:p}", self)
2137    }
2138}
2139
2140
2141#[link(name = "soup-2.4")]
2142extern "C" {
2143
2144    //=========================================================================
2145    // SoupAddressFamily
2146    //=========================================================================
2147    pub fn soup_address_family_get_type() -> GType;
2148
2149    //=========================================================================
2150    // SoupCacheResponse
2151    //=========================================================================
2152    pub fn soup_cache_response_get_type() -> GType;
2153
2154    //=========================================================================
2155    // SoupCacheType
2156    //=========================================================================
2157    #[cfg(any(feature = "v2_34", feature = "dox"))]
2158    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2159    pub fn soup_cache_type_get_type() -> GType;
2160
2161    //=========================================================================
2162    // SoupConnectionState
2163    //=========================================================================
2164    pub fn soup_connection_state_get_type() -> GType;
2165
2166    //=========================================================================
2167    // SoupCookieJarAcceptPolicy
2168    //=========================================================================
2169    #[cfg(any(feature = "v2_30", feature = "dox"))]
2170    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
2171    pub fn soup_cookie_jar_accept_policy_get_type() -> GType;
2172
2173    //=========================================================================
2174    // SoupDateFormat
2175    //=========================================================================
2176    pub fn soup_date_format_get_type() -> GType;
2177
2178    //=========================================================================
2179    // SoupEncoding
2180    //=========================================================================
2181    pub fn soup_encoding_get_type() -> GType;
2182
2183    //=========================================================================
2184    // SoupHTTPVersion
2185    //=========================================================================
2186    pub fn soup_http_version_get_type() -> GType;
2187
2188    //=========================================================================
2189    // SoupKnownStatusCode
2190    //=========================================================================
2191    pub fn soup_known_status_code_get_type() -> GType;
2192
2193    //=========================================================================
2194    // SoupLoggerLogLevel
2195    //=========================================================================
2196    pub fn soup_logger_log_level_get_type() -> GType;
2197
2198    //=========================================================================
2199    // SoupMemoryUse
2200    //=========================================================================
2201    pub fn soup_memory_use_get_type() -> GType;
2202
2203    //=========================================================================
2204    // SoupMessageHeadersType
2205    //=========================================================================
2206    pub fn soup_message_headers_type_get_type() -> GType;
2207
2208    //=========================================================================
2209    // SoupMessagePriority
2210    //=========================================================================
2211    pub fn soup_message_priority_get_type() -> GType;
2212
2213    //=========================================================================
2214    // SoupRequestError
2215    //=========================================================================
2216    #[cfg(any(feature = "v2_42", feature = "dox"))]
2217    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
2218    pub fn soup_request_error_get_type() -> GType;
2219    #[cfg(any(feature = "v2_42", feature = "dox"))]
2220    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
2221    pub fn soup_request_error_quark() -> glib::GQuark;
2222
2223    //=========================================================================
2224    // SoupRequesterError
2225    //=========================================================================
2226    pub fn soup_requester_error_get_type() -> GType;
2227    pub fn soup_requester_error_quark() -> glib::GQuark;
2228
2229    //=========================================================================
2230    // SoupSameSitePolicy
2231    //=========================================================================
2232    #[cfg(any(feature = "v2_70", feature = "dox"))]
2233    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
2234    pub fn soup_same_site_policy_get_type() -> GType;
2235
2236    //=========================================================================
2237    // SoupSocketIOStatus
2238    //=========================================================================
2239    pub fn soup_socket_io_status_get_type() -> GType;
2240
2241    //=========================================================================
2242    // SoupStatus
2243    //=========================================================================
2244    pub fn soup_status_get_type() -> GType;
2245    pub fn soup_status_get_phrase(status_code: c_uint) -> *const c_char;
2246    #[cfg(any(feature = "v2_26", feature = "dox"))]
2247    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2248    pub fn soup_status_proxify(status_code: c_uint) -> c_uint;
2249
2250    //=========================================================================
2251    // SoupTLDError
2252    //=========================================================================
2253    #[cfg(any(feature = "v2_40", feature = "dox"))]
2254    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2255    pub fn soup_tld_error_get_type() -> GType;
2256    #[cfg(any(feature = "v2_40", feature = "dox"))]
2257    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2258    pub fn soup_tld_error_quark() -> glib::GQuark;
2259
2260    //=========================================================================
2261    // SoupWebsocketCloseCode
2262    //=========================================================================
2263    #[cfg(any(feature = "v2_50", feature = "dox"))]
2264    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2265    pub fn soup_websocket_close_code_get_type() -> GType;
2266
2267    //=========================================================================
2268    // SoupWebsocketConnectionType
2269    //=========================================================================
2270    #[cfg(any(feature = "v2_50", feature = "dox"))]
2271    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2272    pub fn soup_websocket_connection_type_get_type() -> GType;
2273
2274    //=========================================================================
2275    // SoupWebsocketDataType
2276    //=========================================================================
2277    #[cfg(any(feature = "v2_50", feature = "dox"))]
2278    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2279    pub fn soup_websocket_data_type_get_type() -> GType;
2280
2281    //=========================================================================
2282    // SoupWebsocketError
2283    //=========================================================================
2284    #[cfg(any(feature = "v2_50", feature = "dox"))]
2285    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2286    pub fn soup_websocket_error_get_type() -> GType;
2287    #[cfg(any(feature = "v2_50", feature = "dox"))]
2288    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2289    pub fn soup_websocket_error_get_quark() -> glib::GQuark;
2290
2291    //=========================================================================
2292    // SoupWebsocketState
2293    //=========================================================================
2294    #[cfg(any(feature = "v2_50", feature = "dox"))]
2295    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2296    pub fn soup_websocket_state_get_type() -> GType;
2297
2298    //=========================================================================
2299    // SoupXMLRPCError
2300    //=========================================================================
2301    pub fn soup_xmlrpc_error_get_type() -> GType;
2302    pub fn soup_xmlrpc_error_quark() -> glib::GQuark;
2303
2304    //=========================================================================
2305    // SoupXMLRPCFault
2306    //=========================================================================
2307    pub fn soup_xmlrpc_fault_get_type() -> GType;
2308    pub fn soup_xmlrpc_fault_quark() -> glib::GQuark;
2309
2310    //=========================================================================
2311    // SoupCacheability
2312    //=========================================================================
2313    pub fn soup_cacheability_get_type() -> GType;
2314
2315    //=========================================================================
2316    // SoupExpectation
2317    //=========================================================================
2318    pub fn soup_expectation_get_type() -> GType;
2319
2320    //=========================================================================
2321    // SoupMessageFlags
2322    //=========================================================================
2323    pub fn soup_message_flags_get_type() -> GType;
2324
2325    //=========================================================================
2326    // SoupServerListenOptions
2327    //=========================================================================
2328    #[cfg(any(feature = "v2_48", feature = "dox"))]
2329    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
2330    pub fn soup_server_listen_options_get_type() -> GType;
2331
2332    //=========================================================================
2333    // SoupBuffer
2334    //=========================================================================
2335    pub fn soup_buffer_get_type() -> GType;
2336    pub fn soup_buffer_new(use_: SoupMemoryUse, data: gconstpointer, length: size_t) -> *mut SoupBuffer;
2337    #[cfg(any(feature = "v2_32", feature = "dox"))]
2338    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2339    pub fn soup_buffer_new_take(data: *mut u8, length: size_t) -> *mut SoupBuffer;
2340    pub fn soup_buffer_new_with_owner(data: gconstpointer, length: size_t, owner: gpointer, owner_dnotify: glib::GDestroyNotify) -> *mut SoupBuffer;
2341    pub fn soup_buffer_copy(buffer: *mut SoupBuffer) -> *mut SoupBuffer;
2342    pub fn soup_buffer_free(buffer: *mut SoupBuffer);
2343    #[cfg(any(feature = "v2_40", feature = "dox"))]
2344    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2345    pub fn soup_buffer_get_as_bytes(buffer: *mut SoupBuffer) -> *mut glib::GBytes;
2346    #[cfg(any(feature = "v2_32", feature = "dox"))]
2347    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2348    pub fn soup_buffer_get_data(buffer: *mut SoupBuffer, data: *mut *const u8, length: *mut size_t);
2349    pub fn soup_buffer_get_owner(buffer: *mut SoupBuffer) -> gpointer;
2350    pub fn soup_buffer_new_subbuffer(parent: *mut SoupBuffer, offset: size_t, length: size_t) -> *mut SoupBuffer;
2351
2352    //=========================================================================
2353    // SoupClientContext
2354    //=========================================================================
2355    pub fn soup_client_context_get_type() -> GType;
2356    pub fn soup_client_context_get_address(client: *mut SoupClientContext) -> *mut SoupAddress;
2357    pub fn soup_client_context_get_auth_domain(client: *mut SoupClientContext) -> *mut SoupAuthDomain;
2358    pub fn soup_client_context_get_auth_user(client: *mut SoupClientContext) -> *const c_char;
2359    #[cfg(any(feature = "v2_48", feature = "dox"))]
2360    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
2361    pub fn soup_client_context_get_gsocket(client: *mut SoupClientContext) -> *mut gio::GSocket;
2362    pub fn soup_client_context_get_host(client: *mut SoupClientContext) -> *const c_char;
2363    #[cfg(any(feature = "v2_48", feature = "dox"))]
2364    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
2365    pub fn soup_client_context_get_local_address(client: *mut SoupClientContext) -> *mut gio::GSocketAddress;
2366    #[cfg(any(feature = "v2_48", feature = "dox"))]
2367    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
2368    pub fn soup_client_context_get_remote_address(client: *mut SoupClientContext) -> *mut gio::GSocketAddress;
2369    pub fn soup_client_context_get_socket(client: *mut SoupClientContext) -> *mut SoupSocket;
2370    #[cfg(any(feature = "v2_50", feature = "dox"))]
2371    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2372    pub fn soup_client_context_steal_connection(client: *mut SoupClientContext) -> *mut gio::GIOStream;
2373
2374    //=========================================================================
2375    // SoupCookie
2376    //=========================================================================
2377    #[cfg(any(feature = "v2_24", feature = "dox"))]
2378    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2379    pub fn soup_cookie_get_type() -> GType;
2380    #[cfg(any(feature = "v2_24", feature = "dox"))]
2381    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2382    pub fn soup_cookie_new(name: *const c_char, value: *const c_char, domain: *const c_char, path: *const c_char, max_age: c_int) -> *mut SoupCookie;
2383    #[cfg(any(feature = "v2_24", feature = "dox"))]
2384    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2385    pub fn soup_cookie_applies_to_uri(cookie: *mut SoupCookie, uri: *mut SoupURI) -> gboolean;
2386    #[cfg(any(feature = "v2_24", feature = "dox"))]
2387    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2388    pub fn soup_cookie_copy(cookie: *mut SoupCookie) -> *mut SoupCookie;
2389    #[cfg(any(feature = "v2_30", feature = "dox"))]
2390    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
2391    pub fn soup_cookie_domain_matches(cookie: *mut SoupCookie, host: *const c_char) -> gboolean;
2392    #[cfg(any(feature = "v2_24", feature = "dox"))]
2393    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2394    pub fn soup_cookie_equal(cookie1: *mut SoupCookie, cookie2: *mut SoupCookie) -> gboolean;
2395    #[cfg(any(feature = "v2_24", feature = "dox"))]
2396    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2397    pub fn soup_cookie_free(cookie: *mut SoupCookie);
2398    #[cfg(any(feature = "v2_32", feature = "dox"))]
2399    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2400    pub fn soup_cookie_get_domain(cookie: *mut SoupCookie) -> *const c_char;
2401    #[cfg(any(feature = "v2_32", feature = "dox"))]
2402    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2403    pub fn soup_cookie_get_expires(cookie: *mut SoupCookie) -> *mut SoupDate;
2404    #[cfg(any(feature = "v2_32", feature = "dox"))]
2405    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2406    pub fn soup_cookie_get_http_only(cookie: *mut SoupCookie) -> gboolean;
2407    #[cfg(any(feature = "v2_32", feature = "dox"))]
2408    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2409    pub fn soup_cookie_get_name(cookie: *mut SoupCookie) -> *const c_char;
2410    #[cfg(any(feature = "v2_32", feature = "dox"))]
2411    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2412    pub fn soup_cookie_get_path(cookie: *mut SoupCookie) -> *const c_char;
2413    #[cfg(any(feature = "v2_70", feature = "dox"))]
2414    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
2415    pub fn soup_cookie_get_same_site_policy(cookie: *mut SoupCookie) -> SoupSameSitePolicy;
2416    #[cfg(any(feature = "v2_32", feature = "dox"))]
2417    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2418    pub fn soup_cookie_get_secure(cookie: *mut SoupCookie) -> gboolean;
2419    #[cfg(any(feature = "v2_32", feature = "dox"))]
2420    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2421    pub fn soup_cookie_get_value(cookie: *mut SoupCookie) -> *const c_char;
2422    #[cfg(any(feature = "v2_24", feature = "dox"))]
2423    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2424    pub fn soup_cookie_set_domain(cookie: *mut SoupCookie, domain: *const c_char);
2425    #[cfg(any(feature = "v2_24", feature = "dox"))]
2426    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2427    pub fn soup_cookie_set_expires(cookie: *mut SoupCookie, expires: *mut SoupDate);
2428    #[cfg(any(feature = "v2_24", feature = "dox"))]
2429    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2430    pub fn soup_cookie_set_http_only(cookie: *mut SoupCookie, http_only: gboolean);
2431    #[cfg(any(feature = "v2_24", feature = "dox"))]
2432    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2433    pub fn soup_cookie_set_max_age(cookie: *mut SoupCookie, max_age: c_int);
2434    #[cfg(any(feature = "v2_24", feature = "dox"))]
2435    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2436    pub fn soup_cookie_set_name(cookie: *mut SoupCookie, name: *const c_char);
2437    #[cfg(any(feature = "v2_24", feature = "dox"))]
2438    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2439    pub fn soup_cookie_set_path(cookie: *mut SoupCookie, path: *const c_char);
2440    #[cfg(any(feature = "v2_70", feature = "dox"))]
2441    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
2442    pub fn soup_cookie_set_same_site_policy(cookie: *mut SoupCookie, policy: SoupSameSitePolicy);
2443    #[cfg(any(feature = "v2_24", feature = "dox"))]
2444    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2445    pub fn soup_cookie_set_secure(cookie: *mut SoupCookie, secure: gboolean);
2446    #[cfg(any(feature = "v2_24", feature = "dox"))]
2447    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2448    pub fn soup_cookie_set_value(cookie: *mut SoupCookie, value: *const c_char);
2449    #[cfg(any(feature = "v2_24", feature = "dox"))]
2450    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2451    pub fn soup_cookie_to_cookie_header(cookie: *mut SoupCookie) -> *mut c_char;
2452    #[cfg(any(feature = "v2_24", feature = "dox"))]
2453    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2454    pub fn soup_cookie_to_set_cookie_header(cookie: *mut SoupCookie) -> *mut c_char;
2455    #[cfg(any(feature = "v2_24", feature = "dox"))]
2456    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2457    pub fn soup_cookie_parse(header: *const c_char, origin: *mut SoupURI) -> *mut SoupCookie;
2458
2459    //=========================================================================
2460    // SoupDate
2461    //=========================================================================
2462    pub fn soup_date_get_type() -> GType;
2463    pub fn soup_date_new(year: c_int, month: c_int, day: c_int, hour: c_int, minute: c_int, second: c_int) -> *mut SoupDate;
2464    pub fn soup_date_new_from_now(offset_seconds: c_int) -> *mut SoupDate;
2465    pub fn soup_date_new_from_string(date_string: *const c_char) -> *mut SoupDate;
2466    pub fn soup_date_new_from_time_t(when: c_long) -> *mut SoupDate;
2467    #[cfg(any(feature = "v2_24", feature = "dox"))]
2468    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2469    pub fn soup_date_copy(date: *mut SoupDate) -> *mut SoupDate;
2470    #[cfg(any(feature = "v2_24", feature = "dox"))]
2471    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2472    pub fn soup_date_free(date: *mut SoupDate);
2473    #[cfg(any(feature = "v2_32", feature = "dox"))]
2474    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2475    pub fn soup_date_get_day(date: *mut SoupDate) -> c_int;
2476    #[cfg(any(feature = "v2_32", feature = "dox"))]
2477    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2478    pub fn soup_date_get_hour(date: *mut SoupDate) -> c_int;
2479    #[cfg(any(feature = "v2_32", feature = "dox"))]
2480    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2481    pub fn soup_date_get_minute(date: *mut SoupDate) -> c_int;
2482    #[cfg(any(feature = "v2_32", feature = "dox"))]
2483    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2484    pub fn soup_date_get_month(date: *mut SoupDate) -> c_int;
2485    #[cfg(any(feature = "v2_32", feature = "dox"))]
2486    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2487    pub fn soup_date_get_offset(date: *mut SoupDate) -> c_int;
2488    #[cfg(any(feature = "v2_32", feature = "dox"))]
2489    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2490    pub fn soup_date_get_second(date: *mut SoupDate) -> c_int;
2491    #[cfg(any(feature = "v2_32", feature = "dox"))]
2492    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2493    pub fn soup_date_get_utc(date: *mut SoupDate) -> c_int;
2494    #[cfg(any(feature = "v2_32", feature = "dox"))]
2495    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2496    pub fn soup_date_get_year(date: *mut SoupDate) -> c_int;
2497    #[cfg(any(feature = "v2_24", feature = "dox"))]
2498    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2499    pub fn soup_date_is_past(date: *mut SoupDate) -> gboolean;
2500    pub fn soup_date_to_string(date: *mut SoupDate, format: SoupDateFormat) -> *mut c_char;
2501    pub fn soup_date_to_time_t(date: *mut SoupDate) -> c_long;
2502    #[cfg(any(feature = "v2_24", feature = "dox"))]
2503    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2504    pub fn soup_date_to_timeval(date: *mut SoupDate, time: *mut glib::GTimeVal);
2505
2506    //=========================================================================
2507    // SoupHSTSPolicy
2508    //=========================================================================
2509    #[cfg(any(feature = "v2_68", feature = "dox"))]
2510    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2511    pub fn soup_hsts_policy_get_type() -> GType;
2512    #[cfg(any(feature = "v2_68", feature = "dox"))]
2513    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2514    pub fn soup_hsts_policy_new(domain: *const c_char, max_age: c_ulong, include_subdomains: gboolean) -> *mut SoupHSTSPolicy;
2515    #[cfg(any(feature = "v2_68", feature = "dox"))]
2516    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2517    pub fn soup_hsts_policy_new_from_response(msg: *mut SoupMessage) -> *mut SoupHSTSPolicy;
2518    #[cfg(any(feature = "v2_68", feature = "dox"))]
2519    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2520    pub fn soup_hsts_policy_new_full(domain: *const c_char, max_age: c_ulong, expires: *mut SoupDate, include_subdomains: gboolean) -> *mut SoupHSTSPolicy;
2521    #[cfg(any(feature = "v2_68", feature = "dox"))]
2522    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2523    pub fn soup_hsts_policy_new_session_policy(domain: *const c_char, include_subdomains: gboolean) -> *mut SoupHSTSPolicy;
2524    #[cfg(any(feature = "v2_68", feature = "dox"))]
2525    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2526    pub fn soup_hsts_policy_copy(policy: *mut SoupHSTSPolicy) -> *mut SoupHSTSPolicy;
2527    #[cfg(any(feature = "v2_68", feature = "dox"))]
2528    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2529    pub fn soup_hsts_policy_equal(policy1: *mut SoupHSTSPolicy, policy2: *mut SoupHSTSPolicy) -> gboolean;
2530    #[cfg(any(feature = "v2_68", feature = "dox"))]
2531    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2532    pub fn soup_hsts_policy_free(policy: *mut SoupHSTSPolicy);
2533    #[cfg(any(feature = "v2_68", feature = "dox"))]
2534    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2535    pub fn soup_hsts_policy_get_domain(policy: *mut SoupHSTSPolicy) -> *const c_char;
2536    #[cfg(any(feature = "v2_68", feature = "dox"))]
2537    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2538    pub fn soup_hsts_policy_includes_subdomains(policy: *mut SoupHSTSPolicy) -> gboolean;
2539    #[cfg(any(feature = "v2_68", feature = "dox"))]
2540    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2541    pub fn soup_hsts_policy_is_expired(policy: *mut SoupHSTSPolicy) -> gboolean;
2542    #[cfg(any(feature = "v2_68", feature = "dox"))]
2543    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2544    pub fn soup_hsts_policy_is_session_policy(policy: *mut SoupHSTSPolicy) -> gboolean;
2545
2546    //=========================================================================
2547    // SoupMessageBody
2548    //=========================================================================
2549    pub fn soup_message_body_get_type() -> GType;
2550    pub fn soup_message_body_new() -> *mut SoupMessageBody;
2551    pub fn soup_message_body_append(body: *mut SoupMessageBody, use_: SoupMemoryUse, data: gconstpointer, length: size_t);
2552    pub fn soup_message_body_append_buffer(body: *mut SoupMessageBody, buffer: *mut SoupBuffer);
2553    #[cfg(any(feature = "v2_32", feature = "dox"))]
2554    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2555    pub fn soup_message_body_append_take(body: *mut SoupMessageBody, data: *mut u8, length: size_t);
2556    pub fn soup_message_body_complete(body: *mut SoupMessageBody);
2557    pub fn soup_message_body_flatten(body: *mut SoupMessageBody) -> *mut SoupBuffer;
2558    pub fn soup_message_body_free(body: *mut SoupMessageBody);
2559    #[cfg(any(feature = "v2_24", feature = "dox"))]
2560    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2561    pub fn soup_message_body_get_accumulate(body: *mut SoupMessageBody) -> gboolean;
2562    pub fn soup_message_body_get_chunk(body: *mut SoupMessageBody, offset: i64) -> *mut SoupBuffer;
2563    #[cfg(any(feature = "v2_24", feature = "dox"))]
2564    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2565    pub fn soup_message_body_got_chunk(body: *mut SoupMessageBody, chunk: *mut SoupBuffer);
2566    #[cfg(any(feature = "v2_24", feature = "dox"))]
2567    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2568    pub fn soup_message_body_set_accumulate(body: *mut SoupMessageBody, accumulate: gboolean);
2569    pub fn soup_message_body_truncate(body: *mut SoupMessageBody);
2570    #[cfg(any(feature = "v2_24", feature = "dox"))]
2571    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2572    pub fn soup_message_body_wrote_chunk(body: *mut SoupMessageBody, chunk: *mut SoupBuffer);
2573
2574    //=========================================================================
2575    // SoupMessageHeaders
2576    //=========================================================================
2577    pub fn soup_message_headers_get_type() -> GType;
2578    pub fn soup_message_headers_new(type_: SoupMessageHeadersType) -> *mut SoupMessageHeaders;
2579    pub fn soup_message_headers_append(hdrs: *mut SoupMessageHeaders, name: *const c_char, value: *const c_char);
2580    #[cfg(any(feature = "v2_36", feature = "dox"))]
2581    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_36")))]
2582    pub fn soup_message_headers_clean_connection_headers(hdrs: *mut SoupMessageHeaders);
2583    pub fn soup_message_headers_clear(hdrs: *mut SoupMessageHeaders);
2584    pub fn soup_message_headers_foreach(hdrs: *mut SoupMessageHeaders, func: SoupMessageHeadersForeachFunc, user_data: gpointer);
2585    pub fn soup_message_headers_free(hdrs: *mut SoupMessageHeaders);
2586    #[cfg(any(feature = "v2_26", feature = "dox"))]
2587    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2588    pub fn soup_message_headers_free_ranges(hdrs: *mut SoupMessageHeaders, ranges: *mut SoupRange);
2589    pub fn soup_message_headers_get(hdrs: *mut SoupMessageHeaders, name: *const c_char) -> *const c_char;
2590    #[cfg(any(feature = "v2_26", feature = "dox"))]
2591    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2592    pub fn soup_message_headers_get_content_disposition(hdrs: *mut SoupMessageHeaders, disposition: *mut *mut c_char, params: *mut *mut glib::GHashTable) -> gboolean;
2593    pub fn soup_message_headers_get_content_length(hdrs: *mut SoupMessageHeaders) -> i64;
2594    #[cfg(any(feature = "v2_26", feature = "dox"))]
2595    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2596    pub fn soup_message_headers_get_content_range(hdrs: *mut SoupMessageHeaders, start: *mut i64, end: *mut i64, total_length: *mut i64) -> gboolean;
2597    #[cfg(any(feature = "v2_26", feature = "dox"))]
2598    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2599    pub fn soup_message_headers_get_content_type(hdrs: *mut SoupMessageHeaders, params: *mut *mut glib::GHashTable) -> *const c_char;
2600    pub fn soup_message_headers_get_encoding(hdrs: *mut SoupMessageHeaders) -> SoupEncoding;
2601    pub fn soup_message_headers_get_expectations(hdrs: *mut SoupMessageHeaders) -> SoupExpectation;
2602    #[cfg(any(feature = "v2_50", feature = "dox"))]
2603    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2604    pub fn soup_message_headers_get_headers_type(hdrs: *mut SoupMessageHeaders) -> SoupMessageHeadersType;
2605    #[cfg(any(feature = "v2_28", feature = "dox"))]
2606    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2607    pub fn soup_message_headers_get_list(hdrs: *mut SoupMessageHeaders, name: *const c_char) -> *const c_char;
2608    #[cfg(any(feature = "v2_28", feature = "dox"))]
2609    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2610    pub fn soup_message_headers_get_one(hdrs: *mut SoupMessageHeaders, name: *const c_char) -> *const c_char;
2611    #[cfg(any(feature = "v2_26", feature = "dox"))]
2612    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2613    pub fn soup_message_headers_get_ranges(hdrs: *mut SoupMessageHeaders, total_length: i64, ranges: *mut *mut SoupRange, length: *mut c_int) -> gboolean;
2614    #[cfg(any(feature = "v2_50", feature = "dox"))]
2615    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2616    pub fn soup_message_headers_header_contains(hdrs: *mut SoupMessageHeaders, name: *const c_char, token: *const c_char) -> gboolean;
2617    #[cfg(any(feature = "v2_50", feature = "dox"))]
2618    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
2619    pub fn soup_message_headers_header_equals(hdrs: *mut SoupMessageHeaders, name: *const c_char, value: *const c_char) -> gboolean;
2620    pub fn soup_message_headers_remove(hdrs: *mut SoupMessageHeaders, name: *const c_char);
2621    pub fn soup_message_headers_replace(hdrs: *mut SoupMessageHeaders, name: *const c_char, value: *const c_char);
2622    #[cfg(any(feature = "v2_26", feature = "dox"))]
2623    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2624    pub fn soup_message_headers_set_content_disposition(hdrs: *mut SoupMessageHeaders, disposition: *const c_char, params: *mut glib::GHashTable);
2625    pub fn soup_message_headers_set_content_length(hdrs: *mut SoupMessageHeaders, content_length: i64);
2626    #[cfg(any(feature = "v2_26", feature = "dox"))]
2627    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2628    pub fn soup_message_headers_set_content_range(hdrs: *mut SoupMessageHeaders, start: i64, end: i64, total_length: i64);
2629    #[cfg(any(feature = "v2_26", feature = "dox"))]
2630    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2631    pub fn soup_message_headers_set_content_type(hdrs: *mut SoupMessageHeaders, content_type: *const c_char, params: *mut glib::GHashTable);
2632    pub fn soup_message_headers_set_encoding(hdrs: *mut SoupMessageHeaders, encoding: SoupEncoding);
2633    pub fn soup_message_headers_set_expectations(hdrs: *mut SoupMessageHeaders, expectations: SoupExpectation);
2634    #[cfg(any(feature = "v2_26", feature = "dox"))]
2635    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2636    pub fn soup_message_headers_set_range(hdrs: *mut SoupMessageHeaders, start: i64, end: i64);
2637    #[cfg(any(feature = "v2_26", feature = "dox"))]
2638    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2639    pub fn soup_message_headers_set_ranges(hdrs: *mut SoupMessageHeaders, ranges: *mut SoupRange, length: c_int);
2640
2641    //=========================================================================
2642    // SoupMessageHeadersIter
2643    //=========================================================================
2644    pub fn soup_message_headers_iter_next(iter: *mut SoupMessageHeadersIter, name: *mut *const c_char, value: *mut *const c_char) -> gboolean;
2645    pub fn soup_message_headers_iter_init(iter: *mut SoupMessageHeadersIter, hdrs: *mut SoupMessageHeaders);
2646
2647    //=========================================================================
2648    // SoupMultipart
2649    //=========================================================================
2650    #[cfg(any(feature = "v2_26", feature = "dox"))]
2651    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2652    pub fn soup_multipart_get_type() -> GType;
2653    #[cfg(any(feature = "v2_26", feature = "dox"))]
2654    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2655    pub fn soup_multipart_new(mime_type: *const c_char) -> *mut SoupMultipart;
2656    #[cfg(any(feature = "v2_26", feature = "dox"))]
2657    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2658    pub fn soup_multipart_new_from_message(headers: *mut SoupMessageHeaders, body: *mut SoupMessageBody) -> *mut SoupMultipart;
2659    #[cfg(any(feature = "v2_26", feature = "dox"))]
2660    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2661    pub fn soup_multipart_append_form_file(multipart: *mut SoupMultipart, control_name: *const c_char, filename: *const c_char, content_type: *const c_char, body: *mut SoupBuffer);
2662    #[cfg(any(feature = "v2_26", feature = "dox"))]
2663    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2664    pub fn soup_multipart_append_form_string(multipart: *mut SoupMultipart, control_name: *const c_char, data: *const c_char);
2665    #[cfg(any(feature = "v2_26", feature = "dox"))]
2666    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2667    pub fn soup_multipart_append_part(multipart: *mut SoupMultipart, headers: *mut SoupMessageHeaders, body: *mut SoupBuffer);
2668    #[cfg(any(feature = "v2_26", feature = "dox"))]
2669    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2670    pub fn soup_multipart_free(multipart: *mut SoupMultipart);
2671    #[cfg(any(feature = "v2_26", feature = "dox"))]
2672    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2673    pub fn soup_multipart_get_length(multipart: *mut SoupMultipart) -> c_int;
2674    #[cfg(any(feature = "v2_26", feature = "dox"))]
2675    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2676    pub fn soup_multipart_get_part(multipart: *mut SoupMultipart, part: c_int, headers: *mut *mut SoupMessageHeaders, body: *mut *mut SoupBuffer) -> gboolean;
2677    #[cfg(any(feature = "v2_26", feature = "dox"))]
2678    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2679    pub fn soup_multipart_to_message(multipart: *mut SoupMultipart, dest_headers: *mut SoupMessageHeaders, dest_body: *mut SoupMessageBody);
2680
2681    //=========================================================================
2682    // SoupURI
2683    //=========================================================================
2684    pub fn soup_uri_get_type() -> GType;
2685    pub fn soup_uri_new(uri_string: *const c_char) -> *mut SoupURI;
2686    pub fn soup_uri_new_with_base(base: *mut SoupURI, uri_string: *const c_char) -> *mut SoupURI;
2687    pub fn soup_uri_copy(uri: *mut SoupURI) -> *mut SoupURI;
2688    #[cfg(any(feature = "v2_28", feature = "dox"))]
2689    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2690    pub fn soup_uri_copy_host(uri: *mut SoupURI) -> *mut SoupURI;
2691    pub fn soup_uri_equal(uri1: *mut SoupURI, uri2: *mut SoupURI) -> gboolean;
2692    pub fn soup_uri_free(uri: *mut SoupURI);
2693    #[cfg(any(feature = "v2_32", feature = "dox"))]
2694    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2695    pub fn soup_uri_get_fragment(uri: *mut SoupURI) -> *const c_char;
2696    #[cfg(any(feature = "v2_32", feature = "dox"))]
2697    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2698    pub fn soup_uri_get_host(uri: *mut SoupURI) -> *const c_char;
2699    #[cfg(any(feature = "v2_32", feature = "dox"))]
2700    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2701    pub fn soup_uri_get_password(uri: *mut SoupURI) -> *const c_char;
2702    #[cfg(any(feature = "v2_32", feature = "dox"))]
2703    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2704    pub fn soup_uri_get_path(uri: *mut SoupURI) -> *const c_char;
2705    #[cfg(any(feature = "v2_32", feature = "dox"))]
2706    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2707    pub fn soup_uri_get_port(uri: *mut SoupURI) -> c_uint;
2708    #[cfg(any(feature = "v2_32", feature = "dox"))]
2709    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2710    pub fn soup_uri_get_query(uri: *mut SoupURI) -> *const c_char;
2711    #[cfg(any(feature = "v2_32", feature = "dox"))]
2712    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2713    pub fn soup_uri_get_scheme(uri: *mut SoupURI) -> *const c_char;
2714    #[cfg(any(feature = "v2_32", feature = "dox"))]
2715    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2716    pub fn soup_uri_get_user(uri: *mut SoupURI) -> *const c_char;
2717    #[cfg(any(feature = "v2_28", feature = "dox"))]
2718    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2719    pub fn soup_uri_host_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
2720    #[cfg(any(feature = "v2_28", feature = "dox"))]
2721    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2722    pub fn soup_uri_host_hash(key: gconstpointer) -> c_uint;
2723    pub fn soup_uri_set_fragment(uri: *mut SoupURI, fragment: *const c_char);
2724    pub fn soup_uri_set_host(uri: *mut SoupURI, host: *const c_char);
2725    pub fn soup_uri_set_password(uri: *mut SoupURI, password: *const c_char);
2726    pub fn soup_uri_set_path(uri: *mut SoupURI, path: *const c_char);
2727    pub fn soup_uri_set_port(uri: *mut SoupURI, port: c_uint);
2728    pub fn soup_uri_set_query(uri: *mut SoupURI, query: *const c_char);
2729    pub fn soup_uri_set_query_from_fields(uri: *mut SoupURI, first_field: *const c_char, ...);
2730    pub fn soup_uri_set_query_from_form(uri: *mut SoupURI, form: *mut glib::GHashTable);
2731    pub fn soup_uri_set_scheme(uri: *mut SoupURI, scheme: *const c_char);
2732    pub fn soup_uri_set_user(uri: *mut SoupURI, user: *const c_char);
2733    pub fn soup_uri_to_string(uri: *mut SoupURI, just_path_and_query: gboolean) -> *mut c_char;
2734    pub fn soup_uri_uses_default_port(uri: *mut SoupURI) -> gboolean;
2735    pub fn soup_uri_decode(part: *const c_char) -> *mut c_char;
2736    pub fn soup_uri_encode(part: *const c_char, escape_extra: *const c_char) -> *mut c_char;
2737    pub fn soup_uri_normalize(part: *const c_char, unescape_extra: *const c_char) -> *mut c_char;
2738
2739    //=========================================================================
2740    // SoupXMLRPCParams
2741    //=========================================================================
2742    #[cfg(any(feature = "v2_52", feature = "dox"))]
2743    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
2744    pub fn soup_xmlrpc_params_free(self_: *mut SoupXMLRPCParams);
2745    #[cfg(any(feature = "v2_52", feature = "dox"))]
2746    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
2747    pub fn soup_xmlrpc_params_parse(self_: *mut SoupXMLRPCParams, signature: *const c_char, error: *mut *mut glib::GError) -> *mut glib::GVariant;
2748
2749    //=========================================================================
2750    // SoupAddress
2751    //=========================================================================
2752    pub fn soup_address_get_type() -> GType;
2753    pub fn soup_address_new(name: *const c_char, port: c_uint) -> *mut SoupAddress;
2754    pub fn soup_address_new_any(family: SoupAddressFamily, port: c_uint) -> *mut SoupAddress;
2755    pub fn soup_address_new_from_sockaddr(sa: *mut sockaddr, len: c_int) -> *mut SoupAddress;
2756    #[cfg(any(feature = "v2_26", feature = "dox"))]
2757    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2758    pub fn soup_address_equal_by_ip(addr1: gconstpointer, addr2: gconstpointer) -> gboolean;
2759    #[cfg(any(feature = "v2_26", feature = "dox"))]
2760    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2761    pub fn soup_address_equal_by_name(addr1: gconstpointer, addr2: gconstpointer) -> gboolean;
2762    #[cfg(any(feature = "v2_32", feature = "dox"))]
2763    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_32")))]
2764    pub fn soup_address_get_gsockaddr(addr: *mut SoupAddress) -> *mut gio::GSocketAddress;
2765    pub fn soup_address_get_name(addr: *mut SoupAddress) -> *const c_char;
2766    pub fn soup_address_get_physical(addr: *mut SoupAddress) -> *const c_char;
2767    pub fn soup_address_get_port(addr: *mut SoupAddress) -> c_uint;
2768    pub fn soup_address_get_sockaddr(addr: *mut SoupAddress, len: *mut c_int) -> *mut sockaddr;
2769    #[cfg(any(feature = "v2_26", feature = "dox"))]
2770    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2771    pub fn soup_address_hash_by_ip(addr: gconstpointer) -> c_uint;
2772    #[cfg(any(feature = "v2_26", feature = "dox"))]
2773    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2774    pub fn soup_address_hash_by_name(addr: gconstpointer) -> c_uint;
2775    pub fn soup_address_is_resolved(addr: *mut SoupAddress) -> gboolean;
2776    pub fn soup_address_resolve_async(addr: *mut SoupAddress, async_context: *mut glib::GMainContext, cancellable: *mut gio::GCancellable, callback: SoupAddressCallback, user_data: gpointer);
2777    pub fn soup_address_resolve_sync(addr: *mut SoupAddress, cancellable: *mut gio::GCancellable) -> c_uint;
2778
2779    //=========================================================================
2780    // SoupAuth
2781    //=========================================================================
2782    pub fn soup_auth_get_type() -> GType;
2783    pub fn soup_auth_new(type_: GType, msg: *mut SoupMessage, auth_header: *const c_char) -> *mut SoupAuth;
2784    pub fn soup_auth_authenticate(auth: *mut SoupAuth, username: *const c_char, password: *const c_char);
2785    #[cfg(any(feature = "v2_54", feature = "dox"))]
2786    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
2787    pub fn soup_auth_can_authenticate(auth: *mut SoupAuth) -> gboolean;
2788    pub fn soup_auth_free_protection_space(auth: *mut SoupAuth, space: *mut glib::GSList);
2789    pub fn soup_auth_get_authorization(auth: *mut SoupAuth, msg: *mut SoupMessage) -> *mut c_char;
2790    pub fn soup_auth_get_host(auth: *mut SoupAuth) -> *const c_char;
2791    pub fn soup_auth_get_info(auth: *mut SoupAuth) -> *mut c_char;
2792    pub fn soup_auth_get_protection_space(auth: *mut SoupAuth, source_uri: *mut SoupURI) -> *mut glib::GSList;
2793    pub fn soup_auth_get_realm(auth: *mut SoupAuth) -> *const c_char;
2794    pub fn soup_auth_get_saved_password(auth: *mut SoupAuth, user: *const c_char) -> *const c_char;
2795    pub fn soup_auth_get_saved_users(auth: *mut SoupAuth) -> *mut glib::GSList;
2796    pub fn soup_auth_get_scheme_name(auth: *mut SoupAuth) -> *const c_char;
2797    pub fn soup_auth_has_saved_password(auth: *mut SoupAuth, username: *const c_char, password: *const c_char);
2798    pub fn soup_auth_is_authenticated(auth: *mut SoupAuth) -> gboolean;
2799    pub fn soup_auth_is_for_proxy(auth: *mut SoupAuth) -> gboolean;
2800    #[cfg(any(feature = "v2_42", feature = "dox"))]
2801    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
2802    pub fn soup_auth_is_ready(auth: *mut SoupAuth, msg: *mut SoupMessage) -> gboolean;
2803    pub fn soup_auth_save_password(auth: *mut SoupAuth, username: *const c_char, password: *const c_char);
2804    pub fn soup_auth_update(auth: *mut SoupAuth, msg: *mut SoupMessage, auth_header: *const c_char) -> gboolean;
2805
2806    //=========================================================================
2807    // SoupAuthBasic
2808    //=========================================================================
2809    pub fn soup_auth_basic_get_type() -> GType;
2810
2811    //=========================================================================
2812    // SoupAuthDigest
2813    //=========================================================================
2814    pub fn soup_auth_digest_get_type() -> GType;
2815
2816    //=========================================================================
2817    // SoupAuthDomain
2818    //=========================================================================
2819    pub fn soup_auth_domain_get_type() -> GType;
2820    pub fn soup_auth_domain_accepts(domain: *mut SoupAuthDomain, msg: *mut SoupMessage) -> *mut c_char;
2821    pub fn soup_auth_domain_add_path(domain: *mut SoupAuthDomain, path: *const c_char);
2822    pub fn soup_auth_domain_challenge(domain: *mut SoupAuthDomain, msg: *mut SoupMessage);
2823    pub fn soup_auth_domain_check_password(domain: *mut SoupAuthDomain, msg: *mut SoupMessage, username: *const c_char, password: *const c_char) -> gboolean;
2824    pub fn soup_auth_domain_covers(domain: *mut SoupAuthDomain, msg: *mut SoupMessage) -> gboolean;
2825    pub fn soup_auth_domain_get_realm(domain: *mut SoupAuthDomain) -> *const c_char;
2826    pub fn soup_auth_domain_remove_path(domain: *mut SoupAuthDomain, path: *const c_char);
2827    pub fn soup_auth_domain_set_filter(domain: *mut SoupAuthDomain, filter: SoupAuthDomainFilter, filter_data: gpointer, dnotify: glib::GDestroyNotify);
2828    pub fn soup_auth_domain_set_generic_auth_callback(domain: *mut SoupAuthDomain, auth_callback: SoupAuthDomainGenericAuthCallback, auth_data: gpointer, dnotify: glib::GDestroyNotify);
2829    pub fn soup_auth_domain_try_generic_auth_callback(domain: *mut SoupAuthDomain, msg: *mut SoupMessage, username: *const c_char) -> gboolean;
2830
2831    //=========================================================================
2832    // SoupAuthDomainBasic
2833    //=========================================================================
2834    pub fn soup_auth_domain_basic_get_type() -> GType;
2835    pub fn soup_auth_domain_basic_new(optname1: *const c_char, ...) -> *mut SoupAuthDomain;
2836    pub fn soup_auth_domain_basic_set_auth_callback(domain: *mut SoupAuthDomainBasic, callback: SoupAuthDomainBasicAuthCallback, user_data: gpointer, dnotify: glib::GDestroyNotify);
2837
2838    //=========================================================================
2839    // SoupAuthDomainDigest
2840    //=========================================================================
2841    pub fn soup_auth_domain_digest_get_type() -> GType;
2842    pub fn soup_auth_domain_digest_new(optname1: *const c_char, ...) -> *mut SoupAuthDomain;
2843    pub fn soup_auth_domain_digest_encode_password(username: *const c_char, realm: *const c_char, password: *const c_char) -> *mut c_char;
2844    pub fn soup_auth_domain_digest_set_auth_callback(domain: *mut SoupAuthDomainDigest, callback: SoupAuthDomainDigestAuthCallback, user_data: gpointer, dnotify: glib::GDestroyNotify);
2845
2846    //=========================================================================
2847    // SoupAuthManager
2848    //=========================================================================
2849    pub fn soup_auth_manager_get_type() -> GType;
2850    #[cfg(any(feature = "v2_58", feature = "dox"))]
2851    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
2852    pub fn soup_auth_manager_clear_cached_credentials(manager: *mut SoupAuthManager);
2853    #[cfg(any(feature = "v2_42", feature = "dox"))]
2854    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
2855    pub fn soup_auth_manager_use_auth(manager: *mut SoupAuthManager, uri: *mut SoupURI, auth: *mut SoupAuth);
2856
2857    //=========================================================================
2858    // SoupAuthNTLM
2859    //=========================================================================
2860    pub fn soup_auth_ntlm_get_type() -> GType;
2861
2862    //=========================================================================
2863    // SoupAuthNegotiate
2864    //=========================================================================
2865    pub fn soup_auth_negotiate_get_type() -> GType;
2866    #[cfg(any(feature = "v2_54", feature = "dox"))]
2867    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
2868    pub fn soup_auth_negotiate_supported() -> gboolean;
2869
2870    //=========================================================================
2871    // SoupCache
2872    //=========================================================================
2873    pub fn soup_cache_get_type() -> GType;
2874    #[cfg(any(feature = "v2_34", feature = "dox"))]
2875    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2876    pub fn soup_cache_new(cache_dir: *const c_char, cache_type: SoupCacheType) -> *mut SoupCache;
2877    #[cfg(any(feature = "v2_34", feature = "dox"))]
2878    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2879    pub fn soup_cache_clear(cache: *mut SoupCache);
2880    #[cfg(any(feature = "v2_34", feature = "dox"))]
2881    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2882    pub fn soup_cache_dump(cache: *mut SoupCache);
2883    #[cfg(any(feature = "v2_34", feature = "dox"))]
2884    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2885    pub fn soup_cache_flush(cache: *mut SoupCache);
2886    #[cfg(any(feature = "v2_34", feature = "dox"))]
2887    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2888    pub fn soup_cache_get_max_size(cache: *mut SoupCache) -> c_uint;
2889    #[cfg(any(feature = "v2_34", feature = "dox"))]
2890    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2891    pub fn soup_cache_load(cache: *mut SoupCache);
2892    #[cfg(any(feature = "v2_34", feature = "dox"))]
2893    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
2894    pub fn soup_cache_set_max_size(cache: *mut SoupCache, max_size: c_uint);
2895
2896    //=========================================================================
2897    // SoupContentDecoder
2898    //=========================================================================
2899    pub fn soup_content_decoder_get_type() -> GType;
2900
2901    //=========================================================================
2902    // SoupContentSniffer
2903    //=========================================================================
2904    pub fn soup_content_sniffer_get_type() -> GType;
2905    #[cfg(any(feature = "v2_28", feature = "dox"))]
2906    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2907    pub fn soup_content_sniffer_new() -> *mut SoupContentSniffer;
2908    #[cfg(any(feature = "v2_28", feature = "dox"))]
2909    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2910    pub fn soup_content_sniffer_get_buffer_size(sniffer: *mut SoupContentSniffer) -> size_t;
2911    #[cfg(any(feature = "v2_28", feature = "dox"))]
2912    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
2913    pub fn soup_content_sniffer_sniff(sniffer: *mut SoupContentSniffer, msg: *mut SoupMessage, buffer: *mut SoupBuffer, params: *mut *mut glib::GHashTable) -> *mut c_char;
2914
2915    //=========================================================================
2916    // SoupCookieJar
2917    //=========================================================================
2918    pub fn soup_cookie_jar_get_type() -> GType;
2919    #[cfg(any(feature = "v2_24", feature = "dox"))]
2920    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2921    pub fn soup_cookie_jar_new() -> *mut SoupCookieJar;
2922    #[cfg(any(feature = "v2_26", feature = "dox"))]
2923    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2924    pub fn soup_cookie_jar_add_cookie(jar: *mut SoupCookieJar, cookie: *mut SoupCookie);
2925    #[cfg(any(feature = "v2_68", feature = "dox"))]
2926    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2927    pub fn soup_cookie_jar_add_cookie_full(jar: *mut SoupCookieJar, cookie: *mut SoupCookie, uri: *mut SoupURI, first_party: *mut SoupURI);
2928    #[cfg(any(feature = "v2_40", feature = "dox"))]
2929    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2930    pub fn soup_cookie_jar_add_cookie_with_first_party(jar: *mut SoupCookieJar, first_party: *mut SoupURI, cookie: *mut SoupCookie);
2931    #[cfg(any(feature = "v2_26", feature = "dox"))]
2932    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2933    pub fn soup_cookie_jar_all_cookies(jar: *mut SoupCookieJar) -> *mut glib::GSList;
2934    #[cfg(any(feature = "v2_26", feature = "dox"))]
2935    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2936    pub fn soup_cookie_jar_delete_cookie(jar: *mut SoupCookieJar, cookie: *mut SoupCookie);
2937    #[cfg(any(feature = "v2_30", feature = "dox"))]
2938    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
2939    pub fn soup_cookie_jar_get_accept_policy(jar: *mut SoupCookieJar) -> SoupCookieJarAcceptPolicy;
2940    #[cfg(any(feature = "v2_40", feature = "dox"))]
2941    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2942    pub fn soup_cookie_jar_get_cookie_list(jar: *mut SoupCookieJar, uri: *mut SoupURI, for_http: gboolean) -> *mut glib::GSList;
2943    #[cfg(any(feature = "v2_70", feature = "dox"))]
2944    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
2945    pub fn soup_cookie_jar_get_cookie_list_with_same_site_info(jar: *mut SoupCookieJar, uri: *mut SoupURI, top_level: *mut SoupURI, site_for_cookies: *mut SoupURI, for_http: gboolean, is_safe_method: gboolean, is_top_level_navigation: gboolean) -> *mut glib::GSList;
2946    #[cfg(any(feature = "v2_24", feature = "dox"))]
2947    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2948    pub fn soup_cookie_jar_get_cookies(jar: *mut SoupCookieJar, uri: *mut SoupURI, for_http: gboolean) -> *mut c_char;
2949    #[cfg(any(feature = "v2_40", feature = "dox"))]
2950    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
2951    pub fn soup_cookie_jar_is_persistent(jar: *mut SoupCookieJar) -> gboolean;
2952    #[cfg(any(feature = "v2_24", feature = "dox"))]
2953    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2954    pub fn soup_cookie_jar_save(jar: *mut SoupCookieJar);
2955    #[cfg(any(feature = "v2_30", feature = "dox"))]
2956    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
2957    pub fn soup_cookie_jar_set_accept_policy(jar: *mut SoupCookieJar, policy: SoupCookieJarAcceptPolicy);
2958    #[cfg(any(feature = "v2_24", feature = "dox"))]
2959    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
2960    pub fn soup_cookie_jar_set_cookie(jar: *mut SoupCookieJar, uri: *mut SoupURI, cookie: *const c_char);
2961    #[cfg(any(feature = "v2_30", feature = "dox"))]
2962    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
2963    pub fn soup_cookie_jar_set_cookie_with_first_party(jar: *mut SoupCookieJar, uri: *mut SoupURI, first_party: *mut SoupURI, cookie: *const c_char);
2964
2965    //=========================================================================
2966    // SoupCookieJarDB
2967    //=========================================================================
2968    pub fn soup_cookie_jar_db_get_type() -> GType;
2969    #[cfg(any(feature = "v2_42", feature = "dox"))]
2970    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
2971    pub fn soup_cookie_jar_db_new(filename: *const c_char, read_only: gboolean) -> *mut SoupCookieJar;
2972
2973    //=========================================================================
2974    // SoupCookieJarText
2975    //=========================================================================
2976    pub fn soup_cookie_jar_text_get_type() -> GType;
2977    #[cfg(any(feature = "v2_26", feature = "dox"))]
2978    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
2979    pub fn soup_cookie_jar_text_new(filename: *const c_char, read_only: gboolean) -> *mut SoupCookieJar;
2980
2981    //=========================================================================
2982    // SoupHSTSEnforcer
2983    //=========================================================================
2984    pub fn soup_hsts_enforcer_get_type() -> GType;
2985    #[cfg(any(feature = "v2_68", feature = "dox"))]
2986    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2987    pub fn soup_hsts_enforcer_new() -> *mut SoupHSTSEnforcer;
2988    #[cfg(any(feature = "v2_68", feature = "dox"))]
2989    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2990    pub fn soup_hsts_enforcer_get_domains(hsts_enforcer: *mut SoupHSTSEnforcer, session_policies: gboolean) -> *mut glib::GList;
2991    #[cfg(any(feature = "v2_68", feature = "dox"))]
2992    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2993    pub fn soup_hsts_enforcer_get_policies(hsts_enforcer: *mut SoupHSTSEnforcer, session_policies: gboolean) -> *mut glib::GList;
2994    #[cfg(any(feature = "v2_68", feature = "dox"))]
2995    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2996    pub fn soup_hsts_enforcer_has_valid_policy(hsts_enforcer: *mut SoupHSTSEnforcer, domain: *const c_char) -> gboolean;
2997    #[cfg(any(feature = "v2_68", feature = "dox"))]
2998    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
2999    pub fn soup_hsts_enforcer_is_persistent(hsts_enforcer: *mut SoupHSTSEnforcer) -> gboolean;
3000    #[cfg(any(feature = "v2_68", feature = "dox"))]
3001    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3002    pub fn soup_hsts_enforcer_set_policy(hsts_enforcer: *mut SoupHSTSEnforcer, policy: *mut SoupHSTSPolicy);
3003    #[cfg(any(feature = "v2_68", feature = "dox"))]
3004    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3005    pub fn soup_hsts_enforcer_set_session_policy(hsts_enforcer: *mut SoupHSTSEnforcer, domain: *const c_char, include_subdomains: gboolean);
3006
3007    //=========================================================================
3008    // SoupHSTSEnforcerDB
3009    //=========================================================================
3010    pub fn soup_hsts_enforcer_db_get_type() -> GType;
3011    #[cfg(any(feature = "v2_68", feature = "dox"))]
3012    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3013    pub fn soup_hsts_enforcer_db_new(filename: *const c_char) -> *mut SoupHSTSEnforcer;
3014
3015    //=========================================================================
3016    // SoupLogger
3017    //=========================================================================
3018    pub fn soup_logger_get_type() -> GType;
3019    pub fn soup_logger_new(level: SoupLoggerLogLevel, max_body_size: c_int) -> *mut SoupLogger;
3020    pub fn soup_logger_attach(logger: *mut SoupLogger, session: *mut SoupSession);
3021    pub fn soup_logger_detach(logger: *mut SoupLogger, session: *mut SoupSession);
3022    pub fn soup_logger_set_printer(logger: *mut SoupLogger, printer: SoupLoggerPrinter, printer_data: gpointer, destroy: glib::GDestroyNotify);
3023    pub fn soup_logger_set_request_filter(logger: *mut SoupLogger, request_filter: SoupLoggerFilter, filter_data: gpointer, destroy: glib::GDestroyNotify);
3024    pub fn soup_logger_set_response_filter(logger: *mut SoupLogger, response_filter: SoupLoggerFilter, filter_data: gpointer, destroy: glib::GDestroyNotify);
3025
3026    //=========================================================================
3027    // SoupMessage
3028    //=========================================================================
3029    pub fn soup_message_get_type() -> GType;
3030    pub fn soup_message_new(method: *const c_char, uri_string: *const c_char) -> *mut SoupMessage;
3031    pub fn soup_message_new_from_uri(method: *const c_char, uri: *mut SoupURI) -> *mut SoupMessage;
3032    pub fn soup_message_add_header_handler(msg: *mut SoupMessage, signal: *const c_char, header: *const c_char, callback: gobject::GCallback, user_data: gpointer) -> c_uint;
3033    pub fn soup_message_add_status_code_handler(msg: *mut SoupMessage, signal: *const c_char, status_code: c_uint, callback: gobject::GCallback, user_data: gpointer) -> c_uint;
3034    pub fn soup_message_content_sniffed(msg: *mut SoupMessage, content_type: *const c_char, params: *mut glib::GHashTable);
3035    #[cfg(any(feature = "v2_28", feature = "dox"))]
3036    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
3037    pub fn soup_message_disable_feature(msg: *mut SoupMessage, feature_type: GType);
3038    pub fn soup_message_finished(msg: *mut SoupMessage);
3039    #[cfg(any(feature = "v2_26", feature = "dox"))]
3040    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3041    pub fn soup_message_get_address(msg: *mut SoupMessage) -> *mut SoupAddress;
3042    #[cfg(any(feature = "v2_30", feature = "dox"))]
3043    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
3044    pub fn soup_message_get_first_party(msg: *mut SoupMessage) -> *mut SoupURI;
3045    pub fn soup_message_get_flags(msg: *mut SoupMessage) -> SoupMessageFlags;
3046    pub fn soup_message_get_http_version(msg: *mut SoupMessage) -> SoupHTTPVersion;
3047    #[cfg(any(feature = "v2_34", feature = "dox"))]
3048    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
3049    pub fn soup_message_get_https_status(msg: *mut SoupMessage, certificate: *mut *mut gio::GTlsCertificate, errors: *mut gio::GTlsCertificateFlags) -> gboolean;
3050    #[cfg(any(feature = "v2_70", feature = "dox"))]
3051    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
3052    pub fn soup_message_get_is_top_level_navigation(msg: *mut SoupMessage) -> gboolean;
3053    #[cfg(any(feature = "v2_44", feature = "dox"))]
3054    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_44")))]
3055    pub fn soup_message_get_priority(msg: *mut SoupMessage) -> SoupMessagePriority;
3056    #[cfg(any(feature = "v2_70", feature = "dox"))]
3057    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
3058    pub fn soup_message_get_site_for_cookies(msg: *mut SoupMessage) -> *mut SoupURI;
3059    #[cfg(any(feature = "v2_42", feature = "dox"))]
3060    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3061    pub fn soup_message_get_soup_request(msg: *mut SoupMessage) -> *mut SoupRequest;
3062    pub fn soup_message_get_uri(msg: *mut SoupMessage) -> *mut SoupURI;
3063    pub fn soup_message_got_body(msg: *mut SoupMessage);
3064    pub fn soup_message_got_chunk(msg: *mut SoupMessage, chunk: *mut SoupBuffer);
3065    pub fn soup_message_got_headers(msg: *mut SoupMessage);
3066    pub fn soup_message_got_informational(msg: *mut SoupMessage);
3067    #[cfg(any(feature = "v2_72", feature = "dox"))]
3068    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_72")))]
3069    pub fn soup_message_is_feature_disabled(msg: *mut SoupMessage, feature_type: GType) -> gboolean;
3070    pub fn soup_message_is_keepalive(msg: *mut SoupMessage) -> gboolean;
3071    pub fn soup_message_restarted(msg: *mut SoupMessage);
3072    pub fn soup_message_set_chunk_allocator(msg: *mut SoupMessage, allocator: SoupChunkAllocator, user_data: gpointer, destroy_notify: glib::GDestroyNotify);
3073    #[cfg(any(feature = "v2_30", feature = "dox"))]
3074    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
3075    pub fn soup_message_set_first_party(msg: *mut SoupMessage, first_party: *mut SoupURI);
3076    pub fn soup_message_set_flags(msg: *mut SoupMessage, flags: SoupMessageFlags);
3077    pub fn soup_message_set_http_version(msg: *mut SoupMessage, version: SoupHTTPVersion);
3078    #[cfg(any(feature = "v2_70", feature = "dox"))]
3079    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
3080    pub fn soup_message_set_is_top_level_navigation(msg: *mut SoupMessage, is_top_level_navigation: gboolean);
3081    #[cfg(any(feature = "v2_44", feature = "dox"))]
3082    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_44")))]
3083    pub fn soup_message_set_priority(msg: *mut SoupMessage, priority: SoupMessagePriority);
3084    #[cfg(any(feature = "v2_38", feature = "dox"))]
3085    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_38")))]
3086    pub fn soup_message_set_redirect(msg: *mut SoupMessage, status_code: c_uint, redirect_uri: *const c_char);
3087    pub fn soup_message_set_request(msg: *mut SoupMessage, content_type: *const c_char, req_use: SoupMemoryUse, req_body: *const u8, req_length: size_t);
3088    pub fn soup_message_set_response(msg: *mut SoupMessage, content_type: *const c_char, resp_use: SoupMemoryUse, resp_body: *const u8, resp_length: size_t);
3089    #[cfg(any(feature = "v2_70", feature = "dox"))]
3090    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_70")))]
3091    pub fn soup_message_set_site_for_cookies(msg: *mut SoupMessage, site_for_cookies: *mut SoupURI);
3092    pub fn soup_message_set_status(msg: *mut SoupMessage, status_code: c_uint);
3093    pub fn soup_message_set_status_full(msg: *mut SoupMessage, status_code: c_uint, reason_phrase: *const c_char);
3094    pub fn soup_message_set_uri(msg: *mut SoupMessage, uri: *mut SoupURI);
3095    pub fn soup_message_starting(msg: *mut SoupMessage);
3096    pub fn soup_message_wrote_body(msg: *mut SoupMessage);
3097    pub fn soup_message_wrote_body_data(msg: *mut SoupMessage, chunk: *mut SoupBuffer);
3098    pub fn soup_message_wrote_chunk(msg: *mut SoupMessage);
3099    pub fn soup_message_wrote_headers(msg: *mut SoupMessage);
3100    pub fn soup_message_wrote_informational(msg: *mut SoupMessage);
3101
3102    //=========================================================================
3103    // SoupMultipartInputStream
3104    //=========================================================================
3105    pub fn soup_multipart_input_stream_get_type() -> GType;
3106    #[cfg(any(feature = "v2_40", feature = "dox"))]
3107    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3108    pub fn soup_multipart_input_stream_new(msg: *mut SoupMessage, base_stream: *mut gio::GInputStream) -> *mut SoupMultipartInputStream;
3109    #[cfg(any(feature = "v2_40", feature = "dox"))]
3110    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3111    pub fn soup_multipart_input_stream_get_headers(multipart: *mut SoupMultipartInputStream) -> *mut SoupMessageHeaders;
3112    #[cfg(any(feature = "v2_40", feature = "dox"))]
3113    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3114    pub fn soup_multipart_input_stream_next_part(multipart: *mut SoupMultipartInputStream, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3115    #[cfg(any(feature = "v2_40", feature = "dox"))]
3116    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3117    pub fn soup_multipart_input_stream_next_part_async(multipart: *mut SoupMultipartInputStream, io_priority: c_int, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, data: gpointer);
3118    #[cfg(any(feature = "v2_40", feature = "dox"))]
3119    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3120    pub fn soup_multipart_input_stream_next_part_finish(multipart: *mut SoupMultipartInputStream, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3121
3122    //=========================================================================
3123    // SoupProxyResolverDefault
3124    //=========================================================================
3125    pub fn soup_proxy_resolver_default_get_type() -> GType;
3126
3127    //=========================================================================
3128    // SoupRequest
3129    //=========================================================================
3130    #[cfg(any(feature = "v2_42", feature = "dox"))]
3131    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3132    pub fn soup_request_get_type() -> GType;
3133    #[cfg(any(feature = "v2_42", feature = "dox"))]
3134    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3135    pub fn soup_request_get_content_length(request: *mut SoupRequest) -> i64;
3136    #[cfg(any(feature = "v2_42", feature = "dox"))]
3137    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3138    pub fn soup_request_get_content_type(request: *mut SoupRequest) -> *const c_char;
3139    #[cfg(any(feature = "v2_42", feature = "dox"))]
3140    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3141    pub fn soup_request_get_session(request: *mut SoupRequest) -> *mut SoupSession;
3142    #[cfg(any(feature = "v2_42", feature = "dox"))]
3143    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3144    pub fn soup_request_get_uri(request: *mut SoupRequest) -> *mut SoupURI;
3145    #[cfg(any(feature = "v2_42", feature = "dox"))]
3146    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3147    pub fn soup_request_send(request: *mut SoupRequest, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3148    #[cfg(any(feature = "v2_42", feature = "dox"))]
3149    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3150    pub fn soup_request_send_async(request: *mut SoupRequest, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
3151    #[cfg(any(feature = "v2_42", feature = "dox"))]
3152    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3153    pub fn soup_request_send_finish(request: *mut SoupRequest, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3154
3155    //=========================================================================
3156    // SoupRequestData
3157    //=========================================================================
3158    pub fn soup_request_data_get_type() -> GType;
3159
3160    //=========================================================================
3161    // SoupRequestFile
3162    //=========================================================================
3163    pub fn soup_request_file_get_type() -> GType;
3164    #[cfg(any(feature = "v2_40", feature = "dox"))]
3165    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3166    pub fn soup_request_file_get_file(file: *mut SoupRequestFile) -> *mut gio::GFile;
3167
3168    //=========================================================================
3169    // SoupRequestHTTP
3170    //=========================================================================
3171    pub fn soup_request_http_get_type() -> GType;
3172    #[cfg(any(feature = "v2_40", feature = "dox"))]
3173    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3174    pub fn soup_request_http_get_message(http: *mut SoupRequestHTTP) -> *mut SoupMessage;
3175
3176    //=========================================================================
3177    // SoupRequester
3178    //=========================================================================
3179    pub fn soup_requester_get_type() -> GType;
3180    pub fn soup_requester_new() -> *mut SoupRequester;
3181    #[cfg(any(feature = "v2_42", feature = "dox"))]
3182    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3183    pub fn soup_requester_request(requester: *mut SoupRequester, uri_string: *const c_char, error: *mut *mut glib::GError) -> *mut SoupRequest;
3184    #[cfg(any(feature = "v2_42", feature = "dox"))]
3185    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3186    pub fn soup_requester_request_uri(requester: *mut SoupRequester, uri: *mut SoupURI, error: *mut *mut glib::GError) -> *mut SoupRequest;
3187
3188    //=========================================================================
3189    // SoupServer
3190    //=========================================================================
3191    pub fn soup_server_get_type() -> GType;
3192    pub fn soup_server_new(optname1: *const c_char, ...) -> *mut SoupServer;
3193    #[cfg(any(feature = "v2_50", feature = "dox"))]
3194    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3195    pub fn soup_server_accept_iostream(server: *mut SoupServer, stream: *mut gio::GIOStream, local_addr: *mut gio::GSocketAddress, remote_addr: *mut gio::GSocketAddress, error: *mut *mut glib::GError) -> gboolean;
3196    pub fn soup_server_add_auth_domain(server: *mut SoupServer, auth_domain: *mut SoupAuthDomain);
3197    #[cfg(any(feature = "v2_50", feature = "dox"))]
3198    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3199    pub fn soup_server_add_early_handler(server: *mut SoupServer, path: *const c_char, callback: SoupServerCallback, user_data: gpointer, destroy: glib::GDestroyNotify);
3200    pub fn soup_server_add_handler(server: *mut SoupServer, path: *const c_char, callback: SoupServerCallback, user_data: gpointer, destroy: glib::GDestroyNotify);
3201    #[cfg(any(feature = "v2_68", feature = "dox"))]
3202    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3203    pub fn soup_server_add_websocket_extension(server: *mut SoupServer, extension_type: GType);
3204    pub fn soup_server_add_websocket_handler(server: *mut SoupServer, path: *const c_char, origin: *const c_char, protocols: *mut *mut c_char, callback: SoupServerWebsocketCallback, user_data: gpointer, destroy: glib::GDestroyNotify);
3205    pub fn soup_server_disconnect(server: *mut SoupServer);
3206    pub fn soup_server_get_async_context(server: *mut SoupServer) -> *mut glib::GMainContext;
3207    pub fn soup_server_get_listener(server: *mut SoupServer) -> *mut SoupSocket;
3208    pub fn soup_server_get_listeners(server: *mut SoupServer) -> *mut glib::GSList;
3209    pub fn soup_server_get_port(server: *mut SoupServer) -> c_uint;
3210    #[cfg(any(feature = "v2_48", feature = "dox"))]
3211    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3212    pub fn soup_server_get_uris(server: *mut SoupServer) -> *mut glib::GSList;
3213    pub fn soup_server_is_https(server: *mut SoupServer) -> gboolean;
3214    #[cfg(any(feature = "v2_48", feature = "dox"))]
3215    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3216    pub fn soup_server_listen(server: *mut SoupServer, address: *mut gio::GSocketAddress, options: SoupServerListenOptions, error: *mut *mut glib::GError) -> gboolean;
3217    #[cfg(any(feature = "v2_48", feature = "dox"))]
3218    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3219    pub fn soup_server_listen_all(server: *mut SoupServer, port: c_uint, options: SoupServerListenOptions, error: *mut *mut glib::GError) -> gboolean;
3220    #[cfg(any(feature = "v2_48", feature = "dox"))]
3221    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3222    pub fn soup_server_listen_fd(server: *mut SoupServer, fd: c_int, options: SoupServerListenOptions, error: *mut *mut glib::GError) -> gboolean;
3223    #[cfg(any(feature = "v2_48", feature = "dox"))]
3224    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3225    pub fn soup_server_listen_local(server: *mut SoupServer, port: c_uint, options: SoupServerListenOptions, error: *mut *mut glib::GError) -> gboolean;
3226    #[cfg(any(feature = "v2_48", feature = "dox"))]
3227    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3228    pub fn soup_server_listen_socket(server: *mut SoupServer, socket: *mut gio::GSocket, options: SoupServerListenOptions, error: *mut *mut glib::GError) -> gboolean;
3229    pub fn soup_server_pause_message(server: *mut SoupServer, msg: *mut SoupMessage);
3230    pub fn soup_server_quit(server: *mut SoupServer);
3231    pub fn soup_server_remove_auth_domain(server: *mut SoupServer, auth_domain: *mut SoupAuthDomain);
3232    pub fn soup_server_remove_handler(server: *mut SoupServer, path: *const c_char);
3233    #[cfg(any(feature = "v2_68", feature = "dox"))]
3234    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3235    pub fn soup_server_remove_websocket_extension(server: *mut SoupServer, extension_type: GType);
3236    pub fn soup_server_run(server: *mut SoupServer);
3237    pub fn soup_server_run_async(server: *mut SoupServer);
3238    #[cfg(any(feature = "v2_48", feature = "dox"))]
3239    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_48")))]
3240    pub fn soup_server_set_ssl_cert_file(server: *mut SoupServer, ssl_cert_file: *const c_char, ssl_key_file: *const c_char, error: *mut *mut glib::GError) -> gboolean;
3241    pub fn soup_server_unpause_message(server: *mut SoupServer, msg: *mut SoupMessage);
3242
3243    //=========================================================================
3244    // SoupSession
3245    //=========================================================================
3246    pub fn soup_session_get_type() -> GType;
3247    #[cfg(any(feature = "v2_42", feature = "dox"))]
3248    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3249    pub fn soup_session_new() -> *mut SoupSession;
3250    #[cfg(any(feature = "v2_42", feature = "dox"))]
3251    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3252    pub fn soup_session_new_with_options(optname1: *const c_char, ...) -> *mut SoupSession;
3253    pub fn soup_session_abort(session: *mut SoupSession);
3254    #[cfg(any(feature = "v2_24", feature = "dox"))]
3255    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3256    pub fn soup_session_add_feature(session: *mut SoupSession, feature: *mut SoupSessionFeature);
3257    #[cfg(any(feature = "v2_24", feature = "dox"))]
3258    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3259    pub fn soup_session_add_feature_by_type(session: *mut SoupSession, feature_type: GType);
3260    pub fn soup_session_cancel_message(session: *mut SoupSession, msg: *mut SoupMessage, status_code: c_uint);
3261    #[cfg(any(feature = "v2_62", feature = "dox"))]
3262    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
3263    pub fn soup_session_connect_async(session: *mut SoupSession, uri: *mut SoupURI, cancellable: *mut gio::GCancellable, progress_callback: SoupSessionConnectProgressCallback, callback: gio::GAsyncReadyCallback, user_data: gpointer);
3264    #[cfg(any(feature = "v2_62", feature = "dox"))]
3265    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
3266    pub fn soup_session_connect_finish(session: *mut SoupSession, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut gio::GIOStream;
3267    pub fn soup_session_get_async_context(session: *mut SoupSession) -> *mut glib::GMainContext;
3268    #[cfg(any(feature = "v2_26", feature = "dox"))]
3269    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3270    pub fn soup_session_get_feature(session: *mut SoupSession, feature_type: GType) -> *mut SoupSessionFeature;
3271    #[cfg(any(feature = "v2_28", feature = "dox"))]
3272    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
3273    pub fn soup_session_get_feature_for_message(session: *mut SoupSession, feature_type: GType, msg: *mut SoupMessage) -> *mut SoupSessionFeature;
3274    #[cfg(any(feature = "v2_26", feature = "dox"))]
3275    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3276    pub fn soup_session_get_features(session: *mut SoupSession, feature_type: GType) -> *mut glib::GSList;
3277    #[cfg(any(feature = "v2_42", feature = "dox"))]
3278    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3279    pub fn soup_session_has_feature(session: *mut SoupSession, feature_type: GType) -> gboolean;
3280    pub fn soup_session_pause_message(session: *mut SoupSession, msg: *mut SoupMessage);
3281    #[cfg(any(feature = "v2_38", feature = "dox"))]
3282    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_38")))]
3283    pub fn soup_session_prefetch_dns(session: *mut SoupSession, hostname: *const c_char, cancellable: *mut gio::GCancellable, callback: SoupAddressCallback, user_data: gpointer);
3284    #[cfg(any(feature = "v2_30", feature = "dox"))]
3285    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
3286    pub fn soup_session_prepare_for_uri(session: *mut SoupSession, uri: *mut SoupURI);
3287    pub fn soup_session_queue_message(session: *mut SoupSession, msg: *mut SoupMessage, callback: SoupSessionCallback, user_data: gpointer);
3288    #[cfg(any(feature = "v2_38", feature = "dox"))]
3289    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_38")))]
3290    pub fn soup_session_redirect_message(session: *mut SoupSession, msg: *mut SoupMessage) -> gboolean;
3291    #[cfg(any(feature = "v2_24", feature = "dox"))]
3292    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3293    pub fn soup_session_remove_feature(session: *mut SoupSession, feature: *mut SoupSessionFeature);
3294    #[cfg(any(feature = "v2_24", feature = "dox"))]
3295    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3296    pub fn soup_session_remove_feature_by_type(session: *mut SoupSession, feature_type: GType);
3297    #[cfg(any(feature = "v2_42", feature = "dox"))]
3298    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3299    pub fn soup_session_request(session: *mut SoupSession, uri_string: *const c_char, error: *mut *mut glib::GError) -> *mut SoupRequest;
3300    #[cfg(any(feature = "v2_42", feature = "dox"))]
3301    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3302    pub fn soup_session_request_http(session: *mut SoupSession, method: *const c_char, uri_string: *const c_char, error: *mut *mut glib::GError) -> *mut SoupRequestHTTP;
3303    #[cfg(any(feature = "v2_42", feature = "dox"))]
3304    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3305    pub fn soup_session_request_http_uri(session: *mut SoupSession, method: *const c_char, uri: *mut SoupURI, error: *mut *mut glib::GError) -> *mut SoupRequestHTTP;
3306    #[cfg(any(feature = "v2_42", feature = "dox"))]
3307    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3308    pub fn soup_session_request_uri(session: *mut SoupSession, uri: *mut SoupURI, error: *mut *mut glib::GError) -> *mut SoupRequest;
3309    pub fn soup_session_requeue_message(session: *mut SoupSession, msg: *mut SoupMessage);
3310    #[cfg(any(feature = "v2_42", feature = "dox"))]
3311    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3312    pub fn soup_session_send(session: *mut SoupSession, msg: *mut SoupMessage, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3313    #[cfg(any(feature = "v2_42", feature = "dox"))]
3314    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3315    pub fn soup_session_send_async(session: *mut SoupSession, msg: *mut SoupMessage, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
3316    #[cfg(any(feature = "v2_42", feature = "dox"))]
3317    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3318    pub fn soup_session_send_finish(session: *mut SoupSession, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
3319    pub fn soup_session_send_message(session: *mut SoupSession, msg: *mut SoupMessage) -> c_uint;
3320    #[cfg(any(feature = "v2_50", feature = "dox"))]
3321    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3322    pub fn soup_session_steal_connection(session: *mut SoupSession, msg: *mut SoupMessage) -> *mut gio::GIOStream;
3323    pub fn soup_session_unpause_message(session: *mut SoupSession, msg: *mut SoupMessage);
3324    #[cfg(any(feature = "v2_50", feature = "dox"))]
3325    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3326    pub fn soup_session_websocket_connect_async(session: *mut SoupSession, msg: *mut SoupMessage, origin: *const c_char, protocols: *mut *mut c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
3327    #[cfg(any(feature = "v2_50", feature = "dox"))]
3328    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3329    pub fn soup_session_websocket_connect_finish(session: *mut SoupSession, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut SoupWebsocketConnection;
3330    #[cfg(any(feature = "v2_38", feature = "dox"))]
3331    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_38")))]
3332    pub fn soup_session_would_redirect(session: *mut SoupSession, msg: *mut SoupMessage) -> gboolean;
3333
3334    //=========================================================================
3335    // SoupSessionAsync
3336    //=========================================================================
3337    pub fn soup_session_async_get_type() -> GType;
3338    pub fn soup_session_async_new() -> *mut SoupSession;
3339    pub fn soup_session_async_new_with_options(optname1: *const c_char, ...) -> *mut SoupSession;
3340
3341    //=========================================================================
3342    // SoupSessionSync
3343    //=========================================================================
3344    pub fn soup_session_sync_get_type() -> GType;
3345    pub fn soup_session_sync_new() -> *mut SoupSession;
3346    pub fn soup_session_sync_new_with_options(optname1: *const c_char, ...) -> *mut SoupSession;
3347
3348    //=========================================================================
3349    // SoupSocket
3350    //=========================================================================
3351    pub fn soup_socket_get_type() -> GType;
3352    pub fn soup_socket_new(optname1: *const c_char, ...) -> *mut SoupSocket;
3353    pub fn soup_socket_connect_async(sock: *mut SoupSocket, cancellable: *mut gio::GCancellable, callback: SoupSocketCallback, user_data: gpointer);
3354    pub fn soup_socket_connect_sync(sock: *mut SoupSocket, cancellable: *mut gio::GCancellable) -> c_uint;
3355    pub fn soup_socket_disconnect(sock: *mut SoupSocket);
3356    pub fn soup_socket_get_fd(sock: *mut SoupSocket) -> c_int;
3357    pub fn soup_socket_get_local_address(sock: *mut SoupSocket) -> *mut SoupAddress;
3358    pub fn soup_socket_get_remote_address(sock: *mut SoupSocket) -> *mut SoupAddress;
3359    pub fn soup_socket_is_connected(sock: *mut SoupSocket) -> gboolean;
3360    pub fn soup_socket_is_ssl(sock: *mut SoupSocket) -> gboolean;
3361    pub fn soup_socket_listen(sock: *mut SoupSocket) -> gboolean;
3362    pub fn soup_socket_read(sock: *mut SoupSocket, buffer: gpointer, len: size_t, nread: *mut size_t, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> SoupSocketIOStatus;
3363    pub fn soup_socket_read_until(sock: *mut SoupSocket, buffer: gpointer, len: size_t, boundary: gconstpointer, boundary_len: size_t, nread: *mut size_t, got_boundary: *mut gboolean, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> SoupSocketIOStatus;
3364    pub fn soup_socket_start_proxy_ssl(sock: *mut SoupSocket, ssl_host: *const c_char, cancellable: *mut gio::GCancellable) -> gboolean;
3365    pub fn soup_socket_start_ssl(sock: *mut SoupSocket, cancellable: *mut gio::GCancellable) -> gboolean;
3366    pub fn soup_socket_write(sock: *mut SoupSocket, buffer: gconstpointer, len: size_t, nwrote: *mut size_t, cancellable: *mut gio::GCancellable, error: *mut *mut glib::GError) -> SoupSocketIOStatus;
3367
3368    //=========================================================================
3369    // SoupWebsocketConnection
3370    //=========================================================================
3371    #[cfg(any(feature = "v2_50", feature = "dox"))]
3372    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3373    pub fn soup_websocket_connection_get_type() -> GType;
3374    #[cfg(any(feature = "v2_50", feature = "dox"))]
3375    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3376    pub fn soup_websocket_connection_new(stream: *mut gio::GIOStream, uri: *mut SoupURI, type_: SoupWebsocketConnectionType, origin: *const c_char, protocol: *const c_char) -> *mut SoupWebsocketConnection;
3377    #[cfg(any(feature = "v2_68", feature = "dox"))]
3378    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3379    pub fn soup_websocket_connection_new_with_extensions(stream: *mut gio::GIOStream, uri: *mut SoupURI, type_: SoupWebsocketConnectionType, origin: *const c_char, protocol: *const c_char, extensions: *mut glib::GList) -> *mut SoupWebsocketConnection;
3380    #[cfg(any(feature = "v2_50", feature = "dox"))]
3381    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3382    pub fn soup_websocket_connection_close(self_: *mut SoupWebsocketConnection, code: c_ushort, data: *const c_char);
3383    #[cfg(any(feature = "v2_50", feature = "dox"))]
3384    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3385    pub fn soup_websocket_connection_get_close_code(self_: *mut SoupWebsocketConnection) -> c_ushort;
3386    #[cfg(any(feature = "v2_50", feature = "dox"))]
3387    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3388    pub fn soup_websocket_connection_get_close_data(self_: *mut SoupWebsocketConnection) -> *const c_char;
3389    #[cfg(any(feature = "v2_50", feature = "dox"))]
3390    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3391    pub fn soup_websocket_connection_get_connection_type(self_: *mut SoupWebsocketConnection) -> SoupWebsocketConnectionType;
3392    #[cfg(any(feature = "v2_68", feature = "dox"))]
3393    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3394    pub fn soup_websocket_connection_get_extensions(self_: *mut SoupWebsocketConnection) -> *mut glib::GList;
3395    #[cfg(any(feature = "v2_50", feature = "dox"))]
3396    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3397    pub fn soup_websocket_connection_get_io_stream(self_: *mut SoupWebsocketConnection) -> *mut gio::GIOStream;
3398    #[cfg(any(feature = "v2_58", feature = "dox"))]
3399    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
3400    pub fn soup_websocket_connection_get_keepalive_interval(self_: *mut SoupWebsocketConnection) -> c_uint;
3401    #[cfg(any(feature = "v2_56", feature = "dox"))]
3402    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
3403    pub fn soup_websocket_connection_get_max_incoming_payload_size(self_: *mut SoupWebsocketConnection) -> u64;
3404    #[cfg(any(feature = "v2_50", feature = "dox"))]
3405    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3406    pub fn soup_websocket_connection_get_origin(self_: *mut SoupWebsocketConnection) -> *const c_char;
3407    #[cfg(any(feature = "v2_50", feature = "dox"))]
3408    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3409    pub fn soup_websocket_connection_get_protocol(self_: *mut SoupWebsocketConnection) -> *const c_char;
3410    #[cfg(any(feature = "v2_50", feature = "dox"))]
3411    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3412    pub fn soup_websocket_connection_get_state(self_: *mut SoupWebsocketConnection) -> SoupWebsocketState;
3413    #[cfg(any(feature = "v2_50", feature = "dox"))]
3414    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3415    pub fn soup_websocket_connection_get_uri(self_: *mut SoupWebsocketConnection) -> *mut SoupURI;
3416    #[cfg(any(feature = "v2_50", feature = "dox"))]
3417    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3418    pub fn soup_websocket_connection_send_binary(self_: *mut SoupWebsocketConnection, data: gconstpointer, length: size_t);
3419    #[cfg(any(feature = "v2_68", feature = "dox"))]
3420    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3421    pub fn soup_websocket_connection_send_message(self_: *mut SoupWebsocketConnection, type_: SoupWebsocketDataType, message: *mut glib::GBytes);
3422    #[cfg(any(feature = "v2_50", feature = "dox"))]
3423    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3424    pub fn soup_websocket_connection_send_text(self_: *mut SoupWebsocketConnection, text: *const c_char);
3425    #[cfg(any(feature = "v2_58", feature = "dox"))]
3426    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
3427    pub fn soup_websocket_connection_set_keepalive_interval(self_: *mut SoupWebsocketConnection, interval: c_uint);
3428    #[cfg(any(feature = "v2_56", feature = "dox"))]
3429    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
3430    pub fn soup_websocket_connection_set_max_incoming_payload_size(self_: *mut SoupWebsocketConnection, max_incoming_payload_size: u64);
3431
3432    //=========================================================================
3433    // SoupWebsocketExtension
3434    //=========================================================================
3435    pub fn soup_websocket_extension_get_type() -> GType;
3436    #[cfg(any(feature = "v2_50", feature = "dox"))]
3437    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3438    pub fn soup_websocket_extension_configure(extension: *mut SoupWebsocketExtension, connection_type: SoupWebsocketConnectionType, params: *mut glib::GHashTable, error: *mut *mut glib::GError) -> gboolean;
3439    #[cfg(any(feature = "v2_68", feature = "dox"))]
3440    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3441    pub fn soup_websocket_extension_get_request_params(extension: *mut SoupWebsocketExtension) -> *mut c_char;
3442    #[cfg(any(feature = "v2_68", feature = "dox"))]
3443    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3444    pub fn soup_websocket_extension_get_response_params(extension: *mut SoupWebsocketExtension) -> *mut c_char;
3445    #[cfg(any(feature = "v2_68", feature = "dox"))]
3446    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3447    pub fn soup_websocket_extension_process_incoming_message(extension: *mut SoupWebsocketExtension, header: *mut u8, payload: *mut glib::GBytes, error: *mut *mut glib::GError) -> *mut glib::GBytes;
3448    #[cfg(any(feature = "v2_68", feature = "dox"))]
3449    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3450    pub fn soup_websocket_extension_process_outgoing_message(extension: *mut SoupWebsocketExtension, header: *mut u8, payload: *mut glib::GBytes, error: *mut *mut glib::GError) -> *mut glib::GBytes;
3451
3452    //=========================================================================
3453    // SoupWebsocketExtensionDeflate
3454    //=========================================================================
3455    pub fn soup_websocket_extension_deflate_get_type() -> GType;
3456
3457    //=========================================================================
3458    // SoupWebsocketExtensionManager
3459    //=========================================================================
3460    pub fn soup_websocket_extension_manager_get_type() -> GType;
3461
3462    //=========================================================================
3463    // SoupPasswordManager
3464    //=========================================================================
3465    pub fn soup_password_manager_get_type() -> GType;
3466    pub fn soup_password_manager_get_passwords_async(password_manager: *mut SoupPasswordManager, msg: *mut SoupMessage, auth: *mut SoupAuth, retrying: gboolean, async_context: *mut glib::GMainContext, cancellable: *mut gio::GCancellable, callback: SoupPasswordManagerCallback, user_data: gpointer);
3467    pub fn soup_password_manager_get_passwords_sync(password_manager: *mut SoupPasswordManager, msg: *mut SoupMessage, auth: *mut SoupAuth, cancellable: *mut gio::GCancellable);
3468
3469    //=========================================================================
3470    // SoupProxyResolver
3471    //=========================================================================
3472    pub fn soup_proxy_resolver_get_type() -> GType;
3473    pub fn soup_proxy_resolver_get_proxy_async(proxy_resolver: *mut SoupProxyResolver, msg: *mut SoupMessage, async_context: *mut glib::GMainContext, cancellable: *mut gio::GCancellable, callback: SoupProxyResolverCallback, user_data: gpointer);
3474    pub fn soup_proxy_resolver_get_proxy_sync(proxy_resolver: *mut SoupProxyResolver, msg: *mut SoupMessage, cancellable: *mut gio::GCancellable, addr: *mut *mut SoupAddress) -> c_uint;
3475
3476    //=========================================================================
3477    // SoupProxyURIResolver
3478    //=========================================================================
3479    pub fn soup_proxy_uri_resolver_get_type() -> GType;
3480    #[cfg(any(feature = "v2_26_3", feature = "dox"))]
3481    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26_3")))]
3482    pub fn soup_proxy_uri_resolver_get_proxy_uri_async(proxy_uri_resolver: *mut SoupProxyURIResolver, uri: *mut SoupURI, async_context: *mut glib::GMainContext, cancellable: *mut gio::GCancellable, callback: SoupProxyURIResolverCallback, user_data: gpointer);
3483    #[cfg(any(feature = "v2_26_3", feature = "dox"))]
3484    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26_3")))]
3485    pub fn soup_proxy_uri_resolver_get_proxy_uri_sync(proxy_uri_resolver: *mut SoupProxyURIResolver, uri: *mut SoupURI, cancellable: *mut gio::GCancellable, proxy_uri: *mut *mut SoupURI) -> c_uint;
3486
3487    //=========================================================================
3488    // SoupSessionFeature
3489    //=========================================================================
3490    #[cfg(any(feature = "v2_24", feature = "dox"))]
3491    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3492    pub fn soup_session_feature_get_type() -> GType;
3493    #[cfg(any(feature = "v2_34", feature = "dox"))]
3494    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
3495    pub fn soup_session_feature_add_feature(feature: *mut SoupSessionFeature, type_: GType) -> gboolean;
3496    #[cfg(any(feature = "v2_24", feature = "dox"))]
3497    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3498    pub fn soup_session_feature_attach(feature: *mut SoupSessionFeature, session: *mut SoupSession);
3499    #[cfg(any(feature = "v2_24", feature = "dox"))]
3500    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3501    pub fn soup_session_feature_detach(feature: *mut SoupSessionFeature, session: *mut SoupSession);
3502    #[cfg(any(feature = "v2_34", feature = "dox"))]
3503    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
3504    pub fn soup_session_feature_has_feature(feature: *mut SoupSessionFeature, type_: GType) -> gboolean;
3505    #[cfg(any(feature = "v2_34", feature = "dox"))]
3506    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_34")))]
3507    pub fn soup_session_feature_remove_feature(feature: *mut SoupSessionFeature, type_: GType) -> gboolean;
3508
3509    //=========================================================================
3510    // Other functions
3511    //=========================================================================
3512    #[cfg(any(feature = "v2_24", feature = "dox"))]
3513    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3514    pub fn soup_add_completion(async_context: *mut glib::GMainContext, function: glib::GSourceFunc, data: gpointer) -> *mut glib::GSource;
3515    pub fn soup_add_idle(async_context: *mut glib::GMainContext, function: glib::GSourceFunc, data: gpointer) -> *mut glib::GSource;
3516    pub fn soup_add_io_watch(async_context: *mut glib::GMainContext, chan: *mut glib::GIOChannel, condition: glib::GIOCondition, function: glib::GIOFunc, data: gpointer) -> *mut glib::GSource;
3517    pub fn soup_add_timeout(async_context: *mut glib::GMainContext, interval: c_uint, function: glib::GSourceFunc, data: gpointer) -> *mut glib::GSource;
3518    #[cfg(any(feature = "v2_42", feature = "dox"))]
3519    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3520    pub fn soup_check_version(major: c_uint, minor: c_uint, micro: c_uint) -> gboolean;
3521    #[cfg(any(feature = "v2_24", feature = "dox"))]
3522    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3523    pub fn soup_cookies_free(cookies: *mut glib::GSList);
3524    #[cfg(any(feature = "v2_24", feature = "dox"))]
3525    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3526    pub fn soup_cookies_from_request(msg: *mut SoupMessage) -> *mut glib::GSList;
3527    #[cfg(any(feature = "v2_24", feature = "dox"))]
3528    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3529    pub fn soup_cookies_from_response(msg: *mut SoupMessage) -> *mut glib::GSList;
3530    #[cfg(any(feature = "v2_24", feature = "dox"))]
3531    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3532    pub fn soup_cookies_to_cookie_header(cookies: *mut glib::GSList) -> *mut c_char;
3533    #[cfg(any(feature = "v2_24", feature = "dox"))]
3534    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3535    pub fn soup_cookies_to_request(cookies: *mut glib::GSList, msg: *mut SoupMessage);
3536    #[cfg(any(feature = "v2_24", feature = "dox"))]
3537    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3538    pub fn soup_cookies_to_response(cookies: *mut glib::GSList, msg: *mut SoupMessage);
3539    pub fn soup_form_decode(encoded_form: *const c_char) -> *mut glib::GHashTable;
3540    #[cfg(any(feature = "v2_26", feature = "dox"))]
3541    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3542    pub fn soup_form_decode_multipart(msg: *mut SoupMessage, file_control_name: *const c_char, filename: *mut *mut c_char, content_type: *mut *mut c_char, file: *mut *mut SoupBuffer) -> *mut glib::GHashTable;
3543    pub fn soup_form_encode(first_field: *const c_char, ...) -> *mut c_char;
3544    pub fn soup_form_encode_datalist(form_data_set: *mut *mut glib::GData) -> *mut c_char;
3545    pub fn soup_form_encode_hash(form_data_set: *mut glib::GHashTable) -> *mut c_char;
3546    //pub fn soup_form_encode_valist(first_field: *const c_char, args: /*Unimplemented*/va_list) -> *mut c_char;
3547    pub fn soup_form_request_new(method: *const c_char, uri: *const c_char, first_field: *const c_char, ...) -> *mut SoupMessage;
3548    pub fn soup_form_request_new_from_datalist(method: *const c_char, uri: *const c_char, form_data_set: *mut *mut glib::GData) -> *mut SoupMessage;
3549    pub fn soup_form_request_new_from_hash(method: *const c_char, uri: *const c_char, form_data_set: *mut glib::GHashTable) -> *mut SoupMessage;
3550    #[cfg(any(feature = "v2_26", feature = "dox"))]
3551    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3552    pub fn soup_form_request_new_from_multipart(uri: *const c_char, multipart: *mut SoupMultipart) -> *mut SoupMessage;
3553    #[cfg(any(feature = "v2_42", feature = "dox"))]
3554    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3555    pub fn soup_get_major_version() -> c_uint;
3556    #[cfg(any(feature = "v2_42", feature = "dox"))]
3557    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3558    pub fn soup_get_micro_version() -> c_uint;
3559    #[cfg(any(feature = "v2_42", feature = "dox"))]
3560    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_42")))]
3561    pub fn soup_get_minor_version() -> c_uint;
3562    pub fn soup_get_resource() -> *mut gio::GResource;
3563    pub fn soup_header_contains(header: *const c_char, token: *const c_char) -> gboolean;
3564    pub fn soup_header_free_list(list: *mut glib::GSList);
3565    pub fn soup_header_free_param_list(param_list: *mut glib::GHashTable);
3566    #[cfg(any(feature = "v2_26", feature = "dox"))]
3567    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3568    pub fn soup_header_g_string_append_param(string: *mut glib::GString, name: *const c_char, value: *const c_char);
3569    #[cfg(any(feature = "v2_30", feature = "dox"))]
3570    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
3571    pub fn soup_header_g_string_append_param_quoted(string: *mut glib::GString, name: *const c_char, value: *const c_char);
3572    pub fn soup_header_parse_list(header: *const c_char) -> *mut glib::GSList;
3573    pub fn soup_header_parse_param_list(header: *const c_char) -> *mut glib::GHashTable;
3574    #[cfg(any(feature = "v2_66", feature = "dox"))]
3575    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
3576    pub fn soup_header_parse_param_list_strict(header: *const c_char) -> *mut glib::GHashTable;
3577    pub fn soup_header_parse_quality_list(header: *const c_char, unacceptable: *mut *mut glib::GSList) -> *mut glib::GSList;
3578    #[cfg(any(feature = "v2_24", feature = "dox"))]
3579    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
3580    pub fn soup_header_parse_semi_param_list(header: *const c_char) -> *mut glib::GHashTable;
3581    #[cfg(any(feature = "v2_66", feature = "dox"))]
3582    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
3583    pub fn soup_header_parse_semi_param_list_strict(header: *const c_char) -> *mut glib::GHashTable;
3584    #[cfg(any(feature = "v2_26", feature = "dox"))]
3585    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
3586    pub fn soup_headers_parse(str: *const c_char, len: c_int, dest: *mut SoupMessageHeaders) -> gboolean;
3587    pub fn soup_headers_parse_request(str: *const c_char, len: c_int, req_headers: *mut SoupMessageHeaders, req_method: *mut *mut c_char, req_path: *mut *mut c_char, ver: *mut SoupHTTPVersion) -> c_uint;
3588    pub fn soup_headers_parse_response(str: *const c_char, len: c_int, headers: *mut SoupMessageHeaders, ver: *mut SoupHTTPVersion, status_code: *mut c_uint, reason_phrase: *mut *mut c_char) -> gboolean;
3589    pub fn soup_headers_parse_status_line(status_line: *const c_char, ver: *mut SoupHTTPVersion, status_code: *mut c_uint, reason_phrase: *mut *mut c_char) -> gboolean;
3590    pub fn soup_http_error_quark() -> glib::GQuark;
3591    pub fn soup_str_case_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
3592    pub fn soup_str_case_hash(key: gconstpointer) -> c_uint;
3593    #[cfg(any(feature = "v2_40", feature = "dox"))]
3594    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3595    pub fn soup_tld_domain_is_public_suffix(domain: *const c_char) -> gboolean;
3596    #[cfg(any(feature = "v2_40", feature = "dox"))]
3597    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_40")))]
3598    pub fn soup_tld_get_base_domain(hostname: *const c_char, error: *mut *mut glib::GError) -> *const c_char;
3599    pub fn soup_value_array_append(array: *mut gobject::GValueArray, type_: GType, ...);
3600    pub fn soup_value_array_append_vals(array: *mut gobject::GValueArray, first_type: GType, ...);
3601    //pub fn soup_value_array_from_args(args: /*Unimplemented*/va_list) -> *mut gobject::GValueArray;
3602    pub fn soup_value_array_get_nth(array: *mut gobject::GValueArray, index_: c_uint, type_: GType, ...) -> gboolean;
3603    pub fn soup_value_array_insert(array: *mut gobject::GValueArray, index_: c_uint, type_: GType, ...);
3604    pub fn soup_value_array_new() -> *mut gobject::GValueArray;
3605    pub fn soup_value_array_new_with_vals(first_type: GType, ...) -> *mut gobject::GValueArray;
3606    //pub fn soup_value_array_to_args(array: *mut gobject::GValueArray, args: /*Unimplemented*/va_list) -> gboolean;
3607    pub fn soup_value_hash_insert(hash: *mut glib::GHashTable, key: *const c_char, type_: GType, ...);
3608    pub fn soup_value_hash_insert_vals(hash: *mut glib::GHashTable, first_key: *const c_char, ...);
3609    pub fn soup_value_hash_insert_value(hash: *mut glib::GHashTable, key: *const c_char, value: *mut gobject::GValue);
3610    pub fn soup_value_hash_lookup(hash: *mut glib::GHashTable, key: *const c_char, type_: GType, ...) -> gboolean;
3611    pub fn soup_value_hash_lookup_vals(hash: *mut glib::GHashTable, first_key: *const c_char, ...) -> gboolean;
3612    pub fn soup_value_hash_new() -> *mut glib::GHashTable;
3613    pub fn soup_value_hash_new_with_vals(first_key: *const c_char, ...) -> *mut glib::GHashTable;
3614    #[cfg(any(feature = "v2_50", feature = "dox"))]
3615    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3616    pub fn soup_websocket_client_prepare_handshake(msg: *mut SoupMessage, origin: *const c_char, protocols: *mut *mut c_char);
3617    #[cfg(any(feature = "v2_68", feature = "dox"))]
3618    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3619    pub fn soup_websocket_client_prepare_handshake_with_extensions(msg: *mut SoupMessage, origin: *const c_char, protocols: *mut *mut c_char, supported_extensions: *mut glib::GPtrArray);
3620    #[cfg(any(feature = "v2_50", feature = "dox"))]
3621    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3622    pub fn soup_websocket_client_verify_handshake(msg: *mut SoupMessage, error: *mut *mut glib::GError) -> gboolean;
3623    #[cfg(any(feature = "v2_68", feature = "dox"))]
3624    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3625    pub fn soup_websocket_client_verify_handshake_with_extensions(msg: *mut SoupMessage, supported_extensions: *mut glib::GPtrArray, accepted_extensions: *mut *mut glib::GList, error: *mut *mut glib::GError) -> gboolean;
3626    #[cfg(any(feature = "v2_50", feature = "dox"))]
3627    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3628    pub fn soup_websocket_server_check_handshake(msg: *mut SoupMessage, origin: *const c_char, protocols: *mut *mut c_char, error: *mut *mut glib::GError) -> gboolean;
3629    #[cfg(any(feature = "v2_68", feature = "dox"))]
3630    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3631    pub fn soup_websocket_server_check_handshake_with_extensions(msg: *mut SoupMessage, origin: *const c_char, protocols: *mut *mut c_char, supported_extensions: *mut glib::GPtrArray, error: *mut *mut glib::GError) -> gboolean;
3632    #[cfg(any(feature = "v2_50", feature = "dox"))]
3633    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
3634    pub fn soup_websocket_server_process_handshake(msg: *mut SoupMessage, expected_origin: *const c_char, protocols: *mut *mut c_char) -> gboolean;
3635    #[cfg(any(feature = "v2_68", feature = "dox"))]
3636    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_68")))]
3637    pub fn soup_websocket_server_process_handshake_with_extensions(msg: *mut SoupMessage, expected_origin: *const c_char, protocols: *mut *mut c_char, supported_extensions: *mut glib::GPtrArray, accepted_extensions: *mut *mut glib::GList) -> gboolean;
3638    pub fn soup_xmlrpc_build_fault(fault_code: c_int, fault_format: *const c_char, ...) -> *mut c_char;
3639    pub fn soup_xmlrpc_build_method_call(method_name: *const c_char, params: *mut gobject::GValue, n_params: c_int) -> *mut c_char;
3640    pub fn soup_xmlrpc_build_method_response(value: *mut gobject::GValue) -> *mut c_char;
3641    #[cfg(any(feature = "v2_52", feature = "dox"))]
3642    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3643    pub fn soup_xmlrpc_build_request(method_name: *const c_char, params: *mut glib::GVariant, error: *mut *mut glib::GError) -> *mut c_char;
3644    #[cfg(any(feature = "v2_52", feature = "dox"))]
3645    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3646    pub fn soup_xmlrpc_build_response(value: *mut glib::GVariant, error: *mut *mut glib::GError) -> *mut c_char;
3647    pub fn soup_xmlrpc_extract_method_call(method_call: *const c_char, length: c_int, method_name: *mut *mut c_char, ...) -> gboolean;
3648    pub fn soup_xmlrpc_extract_method_response(method_response: *const c_char, length: c_int, error: *mut *mut glib::GError, type_: GType, ...) -> gboolean;
3649    #[cfg(any(feature = "v2_52", feature = "dox"))]
3650    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3651    pub fn soup_xmlrpc_message_new(uri: *const c_char, method_name: *const c_char, params: *mut glib::GVariant, error: *mut *mut glib::GError) -> *mut SoupMessage;
3652    #[cfg(any(feature = "v2_52", feature = "dox"))]
3653    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3654    pub fn soup_xmlrpc_message_set_fault(msg: *mut SoupMessage, fault_code: c_int, fault_format: *const c_char, ...);
3655    #[cfg(any(feature = "v2_52", feature = "dox"))]
3656    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3657    pub fn soup_xmlrpc_message_set_response(msg: *mut SoupMessage, value: *mut glib::GVariant, error: *mut *mut glib::GError) -> gboolean;
3658    pub fn soup_xmlrpc_parse_method_call(method_call: *const c_char, length: c_int, method_name: *mut *mut c_char, params: *mut *mut gobject::GValueArray) -> gboolean;
3659    pub fn soup_xmlrpc_parse_method_response(method_response: *const c_char, length: c_int, value: *mut gobject::GValue, error: *mut *mut glib::GError) -> gboolean;
3660    #[cfg(any(feature = "v2_52", feature = "dox"))]
3661    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3662    pub fn soup_xmlrpc_parse_request(method_call: *const c_char, length: c_int, params: *mut *mut SoupXMLRPCParams, error: *mut *mut glib::GError) -> *mut c_char;
3663    #[cfg(any(feature = "v2_52", feature = "dox"))]
3664    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3665    pub fn soup_xmlrpc_parse_response(method_response: *const c_char, length: c_int, signature: *const c_char, error: *mut *mut glib::GError) -> *mut glib::GVariant;
3666    pub fn soup_xmlrpc_request_new(uri: *const c_char, method_name: *const c_char, ...) -> *mut SoupMessage;
3667    pub fn soup_xmlrpc_set_fault(msg: *mut SoupMessage, fault_code: c_int, fault_format: *const c_char, ...);
3668    pub fn soup_xmlrpc_set_response(msg: *mut SoupMessage, type_: GType, ...);
3669    #[cfg(any(feature = "v2_52", feature = "dox"))]
3670    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3671    pub fn soup_xmlrpc_variant_get_datetime(variant: *mut glib::GVariant, error: *mut *mut glib::GError) -> *mut SoupDate;
3672    #[cfg(any(feature = "v2_52", feature = "dox"))]
3673    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
3674    pub fn soup_xmlrpc_variant_new_datetime(date: *mut SoupDate) -> *mut glib::GVariant;
3675
3676}