]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
add libsoup bindings
authorJuerg Billeter <j@bitron.ch>
Tue, 7 Aug 2007 08:00:54 +0000 (08:00 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Tue, 7 Aug 2007 08:00:54 +0000 (08:00 +0000)
2007-08-07  Juerg Billeter  <j@bitron.ch>

* vapi/libsoup-2.2.vala, vapi/packages/libsoup-2.2,
  vapigen/valagidlparser.vala: add libsoup bindings

svn path=/trunk/; revision=427

ChangeLog
vapi/gdk-2.0.vala
vapi/gtk+-2.0.vala
vapi/libsoup-2.2.vala [new file with mode: 0644]
vapi/packages/libsoup-2.2/libsoup-2.2-custom.vala [new file with mode: 0644]
vapi/packages/libsoup-2.2/libsoup-2.2.files [new file with mode: 0644]
vapi/packages/libsoup-2.2/libsoup-2.2.gidl [new file with mode: 0644]
vapi/packages/libsoup-2.2/libsoup-2.2.metadata [new file with mode: 0644]
vapi/packages/libsoup-2.2/libsoup-2.2.namespace [new file with mode: 0644]
vapigen/valagidlparser.vala

index 602db687d9c93e0c33c66e3daed9b315bf1b790b..19d783385042ea97877d34f2f3163d7b5056e3fe 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-08-07  Jürg Billeter  <j@bitron.ch>
+
+       * vapi/libsoup-2.2.vala, vapi/packages/libsoup-2.2,
+         vapigen/valagidlparser.vala: add libsoup bindings
+
 2007-08-07  Jürg Billeter  <j@bitron.ch>
 
        * vapi/Makefile.am, vapi/gtkmozembed.deps, vapi/libglade-2.0.deps,
index 56d10da4fa0bf9158adda0ea661e3d06690568d7..69856a8971c56009f42b94f8d7a1144a43cfa672 100644 (file)
@@ -1240,7 +1240,7 @@ namespace Gdk {
                public char send_event;
                public Gdk.Atom message_type;
                public ushort data_format;
-               public weak string b;
+               public weak GLib.Memory b;
        }
        [ReferenceType]
        [CCode (cheader_filename = "gdk/gdk.h")]
index 6ea33b0b417232cff0f1fa4dda816bdb1ba1a896..12e50f02c6df88293d2f78aef9bc2272f3f24aa1 100644 (file)
@@ -2971,7 +2971,7 @@ namespace Gtk {
                public weak Gtk.Printer get_printer ();
                public weak Gtk.PrintSettings get_settings ();
                public Gtk.PrintStatus get_status ();
-               public weak Cairo.XlibSurface get_surface (GLib.Error error);
+               public weak Cairo.Surface get_surface (GLib.Error error);
                public weak string get_title ();
                public bool get_track_print_status ();
                public static GLib.Type get_type ();
diff --git a/vapi/libsoup-2.2.vala b/vapi/libsoup-2.2.vala
new file mode 100644 (file)
index 0000000..217198b
--- /dev/null
@@ -0,0 +1,625 @@
+[CCode (cprefix = "Soup", lower_case_cprefix = "soup_")]
+namespace Soup {
+       [CCode (cprefix = "SOUP_ADDRESS_FAMILY_", cheader_filename = "libsoup/soup.h")]
+       public enum AddressFamily {
+               IPV4,
+               IPV6,
+       }
+       [CCode (cprefix = "SOUP_AUTH_TYPE_", cheader_filename = "libsoup/soup.h")]
+       public enum AuthType {
+               BASIC,
+               DIGEST,
+       }
+       [CCode (cprefix = "SOUP_ALGORITHM_", cheader_filename = "libsoup/soup.h")]
+       public enum DigestAlgorithm {
+               MD5,
+               MD5_SESS,
+       }
+       [CCode (cprefix = "SOUP_HANDLER_", cheader_filename = "libsoup/soup.h")]
+       public enum HandlerPhase {
+               POST_REQUEST,
+               PRE_BODY,
+               BODY_CHUNK,
+               POST_BODY,
+       }
+       [CCode (cprefix = "SOUP_HTTP_1_", cheader_filename = "libsoup/soup.h")]
+       public enum HttpVersion {
+               0,
+               1,
+       }
+       [CCode (cprefix = "SOUP_STATUS_", cheader_filename = "libsoup/soup.h")]
+       public enum KnownStatusCode {
+               NONE,
+               CANCELLED,
+               CANT_RESOLVE,
+               CANT_RESOLVE_PROXY,
+               CANT_CONNECT,
+               CANT_CONNECT_PROXY,
+               SSL_FAILED,
+               IO_ERROR,
+               MALFORMED,
+               TRY_AGAIN,
+               CONTINUE,
+               SWITCHING_PROTOCOLS,
+               PROCESSING,
+               OK,
+               CREATED,
+               ACCEPTED,
+               NON_AUTHORITATIVE,
+               NO_CONTENT,
+               RESET_CONTENT,
+               PARTIAL_CONTENT,
+               MULTI_STATUS,
+               MULTIPLE_CHOICES,
+               MOVED_PERMANENTLY,
+               FOUND,
+               MOVED_TEMPORARILY,
+               SEE_OTHER,
+               NOT_MODIFIED,
+               USE_PROXY,
+               NOT_APPEARING_IN_THIS_PROTOCOL,
+               TEMPORARY_REDIRECT,
+               BAD_REQUEST,
+               UNAUTHORIZED,
+               PAYMENT_REQUIRED,
+               FORBIDDEN,
+               NOT_FOUND,
+               METHOD_NOT_ALLOWED,
+               NOT_ACCEPTABLE,
+               PROXY_AUTHENTICATION_REQUIRED,
+               PROXY_UNAUTHORIZED,
+               REQUEST_TIMEOUT,
+               CONFLICT,
+               GONE,
+               LENGTH_REQUIRED,
+               PRECONDITION_FAILED,
+               REQUEST_ENTITY_TOO_LARGE,
+               REQUEST_URI_TOO_LONG,
+               UNSUPPORTED_MEDIA_TYPE,
+               REQUESTED_RANGE_NOT_SATISFIABLE,
+               INVALID_RANGE,
+               EXPECTATION_FAILED,
+               UNPROCESSABLE_ENTITY,
+               LOCKED,
+               FAILED_DEPENDENCY,
+               INTERNAL_SERVER_ERROR,
+               NOT_IMPLEMENTED,
+               BAD_GATEWAY,
+               SERVICE_UNAVAILABLE,
+               GATEWAY_TIMEOUT,
+               HTTP_VERSION_NOT_SUPPORTED,
+               INSUFFICIENT_STORAGE,
+               NOT_EXTENDED,
+       }
+       [CCode (cprefix = "SOUP_MESSAGE_", cheader_filename = "libsoup/soup.h")]
+       public enum MessageFlags {
+               NO_REDIRECT,
+               OVERWRITE_CHUNKS,
+               EXPECT_CONTINUE,
+       }
+       [CCode (cprefix = "SOUP_MESSAGE_STATUS_", cheader_filename = "libsoup/soup.h")]
+       public enum MessageStatus {
+               IDLE,
+               QUEUED,
+               CONNECTING,
+               RUNNING,
+               FINISHED,
+       }
+       [CCode (cprefix = "SOUP_METHOD_ID_", cheader_filename = "libsoup/soup.h")]
+       public enum MethodId {
+               UNKNOWN,
+               POST,
+               GET,
+               HEAD,
+               OPTIONS,
+               PUT,
+               MOVE,
+               COPY,
+               DELETE,
+               TRACE,
+               CONNECT,
+               MKCOL,
+               PROPPATCH,
+               PROPFIND,
+               PATCH,
+               LOCK,
+               UNLOCK,
+       }
+       [CCode (cprefix = "SOUP_BUFFER_", cheader_filename = "libsoup/soup.h")]
+       public enum Ownership {
+               SYSTEM_OWNED,
+               USER_OWNED,
+               STATIC,
+       }
+       [CCode (cprefix = "SOUP_SSL_TYPE_", cheader_filename = "libsoup/soup.h")]
+       public enum SSLType {
+               CLIENT,
+               SERVER,
+       }
+       [CCode (cprefix = "SOUP_SSL_ERROR_", cheader_filename = "libsoup/soup.h")]
+       public enum SocketError {
+               HANDSHAKE_NEEDS_READ,
+               HANDSHAKE_NEEDS_WRITE,
+               CERTIFICATE,
+       }
+       [CCode (cprefix = "SOUP_SOCKET_", cheader_filename = "libsoup/soup.h")]
+       public enum SocketIOStatus {
+               OK,
+               WOULD_BLOCK,
+               EOF,
+               ERROR,
+       }
+       [CCode (cprefix = "SOUP_STATUS_CLASS_", cheader_filename = "libsoup/soup.h")]
+       public enum StatusClass {
+               TRANSPORT_ERROR,
+               INFORMATIONAL,
+               SUCCESS,
+               REDIRECT,
+               CLIENT_ERROR,
+               SERVER_ERROR,
+       }
+       [CCode (cprefix = "SOUP_TRANSFER_", cheader_filename = "libsoup/soup.h")]
+       public enum TransferEncoding {
+               UNKNOWN,
+               CHUNKED,
+               CONTENT_LENGTH,
+               BYTERANGES,
+               NONE,
+               EOF,
+       }
+       [CCode (cprefix = "SOUP_XMLRPC_VALUE_TYPE_", cheader_filename = "libsoup/soup.h")]
+       public enum XmlrpcValueType {
+               BAD,
+               INT,
+               BOOLEAN,
+               STRING,
+               DOUBLE,
+               DATETIME,
+               BASE64,
+               STRUCT,
+               ARRAY,
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Address : GLib.Object {
+               public weak string get_name ();
+               public weak string get_physical ();
+               public uint get_port ();
+               public static GLib.Type get_type ();
+               public Address (string name, uint port);
+               public Address.any (Soup.AddressFamily family, uint port);
+               public void resolve_async (Soup.AddressCallback callback, pointer user_data);
+               public void resolve_async_full (GLib.MainContext async_context, Soup.AddressCallback callback, pointer user_data);
+               public uint resolve_sync ();
+               public signal void dns_result (uint status);
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Auth : GLib.Object {
+               public void authenticate (string username, string password);
+               public static GLib.Type basic_get_type ();
+               public void free_protection_space (GLib.SList space);
+               public weak string get_authorization (Soup.Message msg);
+               public weak GLib.SList get_protection_space (Soup.Uri source_uri);
+               public weak string get_realm ();
+               public weak string get_scheme_name ();
+               public static GLib.Type get_type ();
+               public virtual bool is_authenticated ();
+               public Auth.from_header_list (GLib.SList vals);
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class AuthDigest : Soup.Auth {
+               public static GLib.Type get_type ();
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Connection : GLib.Object {
+               public void authenticate (Soup.Message msg, string auth_type, string auth_realm, string username, string password);
+               public void connect_async (Soup.ConnectionCallback callback, pointer user_data);
+               public uint connect_sync ();
+               public void disconnect ();
+               public static GLib.Type get_type ();
+               public bool is_in_use ();
+               public ulong last_used ();
+               public Connection (string propname1);
+               public void reauthenticate (Soup.Message msg, string auth_type, string auth_realm, string username, string password);
+               public void release ();
+               public void reserve ();
+               public virtual void send_request (Soup.Message req);
+               [NoAccessorMethod]
+               public weak pointer origin_uri { get; construct; }
+               [NoAccessorMethod]
+               public weak pointer proxy_uri { get; construct; }
+               [NoAccessorMethod]
+               public weak pointer ssl_creds { get; construct; }
+               [NoAccessorMethod]
+               public weak pointer message_filter { get; set; }
+               [NoAccessorMethod]
+               public weak pointer async_context { get; construct; }
+               [NoAccessorMethod]
+               public weak uint timeout { get; set; }
+               public signal void connect_result (uint arg2);
+               public signal void disconnected ();
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class ConnectionNTLM : Soup.Connection {
+               public static GLib.Type get_type ();
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Message : GLib.Object {
+               public weak string method;
+               public uint status_code;
+               public weak string reason_phrase;
+               public weak Soup.DataBuffer request;
+               public weak GLib.HashTable request_headers;
+               public weak Soup.DataBuffer response;
+               public weak GLib.HashTable response_headers;
+               public Soup.MessageStatus status;
+               public void add_chunk (Soup.Ownership owner, string body, uint length);
+               public void add_final_chunk ();
+               public void add_handler (Soup.HandlerPhase phase, Soup.MessageCallbackFn handler_cb, pointer user_data);
+               public static void add_header (GLib.HashTable hash, string name, string value);
+               public void add_header_handler (string header, Soup.HandlerPhase phase, Soup.MessageCallbackFn handler_cb, pointer user_data);
+               public void add_status_class_handler (pointer status_class, Soup.HandlerPhase phase, Soup.MessageCallbackFn handler_cb, pointer user_data);
+               public void add_status_code_handler (uint status_code, Soup.HandlerPhase phase, Soup.MessageCallbackFn handler_cb, pointer user_data);
+               public static void clear_headers (GLib.HashTable hash);
+               public uint get_flags ();
+               public static weak string get_header (GLib.HashTable hash, string name);
+               public static weak GLib.SList get_header_list (GLib.HashTable hash, string name);
+               public Soup.HttpVersion get_http_version ();
+               public Soup.TransferEncoding get_request_encoding (uint content_length);
+               public Soup.TransferEncoding get_response_encoding (uint content_length);
+               public static GLib.Type get_type ();
+               public weak Soup.Uri get_uri ();
+               public bool io_in_progress ();
+               public void io_pause ();
+               public void io_stop ();
+               public void io_unpause ();
+               public bool is_keepalive ();
+               public Message (string method, string uri_string);
+               public Message.from_uri (string method, Soup.Uri uri);
+               public weak Soup.DataBuffer pop_chunk ();
+               public void read_request (Soup.Socket sock);
+               public void remove_handler (Soup.HandlerPhase phase, Soup.MessageCallbackFn handler_cb, pointer user_data);
+               public static void remove_header (GLib.HashTable hash, string name);
+               public void send_request (Soup.Socket sock, bool is_via_proxy);
+               public void set_flags (uint flags);
+               public void set_http_version (Soup.HttpVersion version);
+               public void set_request (string content_type, Soup.Ownership req_owner, string req_body, ulong req_length);
+               public void set_response (string content_type, Soup.Ownership resp_owner, string resp_body, ulong resp_length);
+               public void set_status (uint status_code);
+               public void set_status_full (uint status_code, string reason_phrase);
+               public void set_uri (Soup.Uri uri);
+               [HasEmitter]
+               public signal void wrote_informational ();
+               [HasEmitter]
+               public signal void wrote_headers ();
+               [HasEmitter]
+               public signal void wrote_chunk ();
+               [HasEmitter]
+               public signal void wrote_body ();
+               [HasEmitter]
+               public signal void got_informational ();
+               [HasEmitter]
+               public signal void got_headers ();
+               [HasEmitter]
+               public signal void got_chunk ();
+               [HasEmitter]
+               public signal void got_body ();
+               [HasEmitter]
+               public signal void restarted ();
+               [HasEmitter]
+               public signal void finished ();
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Server : GLib.Object {
+               public void add_handler (string path, Soup.ServerAuthContext auth_ctx, Soup.ServerCallbackFn callback, Soup.ServerUnregisterFn unreg, pointer data);
+               public static bool auth_check_passwd (Soup.ServerAuth auth, string passwd);
+               public static void auth_free (Soup.ServerAuth auth);
+               public static weak string auth_get_user (Soup.ServerAuth auth);
+               public static weak Soup.ServerAuth auth_new (Soup.ServerAuthContext auth_ctx, GLib.SList auth_hdrs, Soup.Message msg);
+               public weak Soup.ServerHandler get_handler (string path);
+               public weak Soup.Socket get_listener ();
+               public uint get_port ();
+               public GLib.Quark get_protocol ();
+               public static GLib.Type get_type ();
+               public weak GLib.SList list_handlers ();
+               public Server (string optname1, ...);
+               public void quit ();
+               public void remove_handler (string path);
+               public void run ();
+               public void run_async ();
+               [NoAccessorMethod]
+               public weak uint port { get; construct; }
+               [NoAccessorMethod]
+               public weak Soup.Address @interface { get; construct; }
+               [NoAccessorMethod]
+               public weak string ssl_cert_file { get; construct; }
+               [NoAccessorMethod]
+               public weak string ssl_key_file { get; construct; }
+               [NoAccessorMethod]
+               public weak pointer async_context { get; construct; }
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class ServerMessage : Soup.Message {
+               public void finish ();
+               public Soup.TransferEncoding get_encoding ();
+               public weak Soup.Server get_server ();
+               public static GLib.Type get_type ();
+               public bool is_finished ();
+               public bool is_started ();
+               public ServerMessage (Soup.Server server);
+               public void set_encoding (Soup.TransferEncoding encoding);
+               public void start ();
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Session : GLib.Object {
+               public void abort ();
+               public void add_filter (Soup.MessageFilter filter);
+               public virtual void cancel_message (Soup.Message msg);
+               public weak Soup.Connection get_connection (Soup.Message msg, bool try_pruning, bool is_new);
+               public static GLib.Type get_type ();
+               public void queue_message (Soup.Message msg, Soup.MessageCallbackFn callback, pointer user_data);
+               public void remove_filter (Soup.MessageFilter filter);
+               public virtual void requeue_message (Soup.Message msg);
+               public virtual uint send_message (Soup.Message msg);
+               public bool try_prune_connection ();
+               [NoAccessorMethod]
+               public weak pointer proxy_uri { get; set; }
+               [NoAccessorMethod]
+               public weak int max_conns { get; set; }
+               [NoAccessorMethod]
+               public weak int max_conns_per_host { get; set; }
+               [NoAccessorMethod]
+               public weak bool use_ntlm { get; set; }
+               [NoAccessorMethod]
+               public weak string ssl_ca_file { get; set; }
+               [NoAccessorMethod]
+               public weak pointer async_context { get; construct; }
+               [NoAccessorMethod]
+               public weak uint timeout { get; set; }
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class SessionAsync : Soup.Session {
+               public static GLib.Type get_type ();
+               public SessionAsync ();
+               public SessionAsync.with_options (string optname1);
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class SessionSync : Soup.Session {
+               public static GLib.Type get_type ();
+               public SessionSync ();
+               public SessionSync.with_options (string optname1);
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public class Socket : GLib.Object {
+               public static weak Soup.Socket client_new_async (string hostname, uint port, pointer ssl_creds, Soup.SocketCallback callback, pointer user_data);
+               public static weak Soup.Socket client_new_sync (string hostname, uint port, pointer ssl_creds, uint status_ret);
+               public uint connect (Soup.Address remote_addr);
+               public void disconnect ();
+               public weak Soup.Address get_local_address ();
+               public weak Soup.Address get_remote_address ();
+               public static GLib.Type get_type ();
+               public bool is_connected ();
+               public bool listen (Soup.Address local_addr);
+               public Socket (string optname1);
+               public Soup.SocketIOStatus read (pointer buffer, ulong len, ulong nread);
+               public Soup.SocketIOStatus read_until (pointer buffer, ulong len, pointer boundary, ulong boundary_len, ulong nread, bool got_boundary);
+               public static weak Soup.Socket server_new (Soup.Address local_addr, pointer ssl_creds, Soup.SocketListenerCallback callback, pointer user_data);
+               public bool start_proxy_ssl (string ssl_host);
+               public bool start_ssl ();
+               public Soup.SocketIOStatus write (pointer buffer, ulong len, ulong nwrote);
+               [NoAccessorMethod]
+               public weak bool non_blocking { get; set; }
+               [NoAccessorMethod]
+               public weak bool nodelay { get; set; }
+               [NoAccessorMethod]
+               public weak bool reuseaddr { get; set; }
+               [NoAccessorMethod]
+               public weak bool cloexec { get; set; }
+               [NoAccessorMethod]
+               public weak bool is_server { get; }
+               [NoAccessorMethod]
+               public weak pointer ssl_creds { get; set; }
+               [NoAccessorMethod]
+               public weak pointer async_context { get; construct; }
+               [NoAccessorMethod]
+               public weak uint timeout { get; set; }
+               public signal void connect_result (uint arg2);
+               public signal void readable ();
+               public signal void writable ();
+               public signal void disconnected ();
+               public signal void new_connection (Soup.Socket arg2);
+       }
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public interface MessageFilter {
+               public static GLib.Type get_type ();
+               public abstract void setup_message (Soup.Message msg);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerAuth {
+               public ServerAuth (Soup.ServerAuthContext auth_ctx, GLib.SList auth_hdrs, Soup.Message msg);
+               public weak string get_user ();
+               public bool check_passwd (string passwd);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct AuthBasicClass {
+               public pointer parent_class;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct DNSLookup {
+               public void cancel ();
+               public void free ();
+               public weak string get_hostname ();
+               public static weak Soup.DNSLookup name (string name);
+               public bool resolve ();
+               public void resolve_async (GLib.MainContext async_context, Soup.DNSCallback callback, pointer user_data);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct DataBuffer {
+               public Soup.Ownership owner;
+               public weak string body;
+               public uint length;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct MD5Context {
+               public uint buf;
+               public uint bits;
+               public uchar @in;
+               public bool doByteReverse;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct MessageQueue {
+               public void append (Soup.Message msg);
+               public void destroy ();
+               public weak Soup.Message first (Soup.MessageQueueIter iter);
+               public void free_iter (Soup.MessageQueueIter iter);
+               public MessageQueue ();
+               public weak Soup.Message next (Soup.MessageQueueIter iter);
+               public weak Soup.Message remove (Soup.MessageQueueIter iter);
+               public void remove_message (Soup.Message msg);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct MessageQueueIter {
+               public weak GLib.List cur;
+               public weak GLib.List next;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerAuthBasic {
+               public Soup.AuthType type;
+               public weak string user;
+               public weak string passwd;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerAuthContext {
+               public uint types;
+               public Soup.ServerAuthCallbackFn callback;
+               public pointer user_data;
+               public uint allow_algorithms;
+               public bool force_integrity;
+               public void challenge (Soup.Message msg, string header_name);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerAuthDigest {
+               public Soup.AuthType type;
+               public Soup.DigestAlgorithm algorithm;
+               public bool integrity;
+               public weak string realm;
+               public weak string user;
+               public weak string nonce;
+               public int nonce_count;
+               public weak string cnonce;
+               public weak string digest_uri;
+               public weak string digest_response;
+               public weak string request_method;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerContext {
+               public weak Soup.Message msg;
+               public weak string path;
+               public Soup.MethodId method_id;
+               public weak Soup.ServerAuth auth;
+               public weak Soup.Server server;
+               public weak Soup.ServerHandler handler;
+               public weak Soup.Socket sock;
+               public weak Soup.Address get_client_address ();
+               public weak string get_client_host ();
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct ServerHandler {
+               public weak string path;
+               public weak Soup.ServerAuthContext auth_ctx;
+               public Soup.ServerCallbackFn callback;
+               public Soup.ServerUnregisterFn unregister;
+               public pointer user_data;
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Uri {
+               public GLib.Quark protocol;
+               public weak string user;
+               public weak string passwd;
+               public weak string host;
+               public uint port;
+               public weak string path;
+               public weak string query;
+               public weak string fragment;
+               public bool broken_encoding;
+               public weak Soup.Uri copy ();
+               public weak Soup.Uri copy_root ();
+               public static void decode (string part);
+               public static weak string encode (string part, string escape_extra);
+               public bool equal (Soup.Uri uri2);
+               public void free ();
+               public Uri (string uri_string);
+               public Uri.with_base (string uri_string);
+               public weak string to_string (bool just_path);
+               public bool uses_default_port ();
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Date {
+               public static weak string generate (ulong when);
+               public static ulong iso8601_parse (string timestamp);
+               public static ulong parse (string timestamp);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Dns {
+               public static void init ();
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Header {
+               public static weak string param_copy_token (GLib.HashTable tokens, string t);
+               public static weak string param_decode_token (string @in);
+               public static void param_destroy_hash (GLib.HashTable table);
+               public static weak GLib.HashTable param_parse_list (string header);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Headers {
+               public static bool parse_request (string str, int len, GLib.HashTable dest, string req_method, string req_path, Soup.HttpVersion ver);
+               public static bool parse_response (string str, int len, GLib.HashTable dest, Soup.HttpVersion ver, uint status_code, string reason_phrase);
+               public static bool parse_status_line (string status_line, Soup.HttpVersion ver, uint status_code, string reason_phrase);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Ssl {
+               public static GLib.Quark error_quark ();
+               public static void free_client_credentials (pointer creds);
+               public static void free_server_credentials (pointer creds);
+               public static pointer get_client_credentials (string ca_file);
+               public static pointer get_server_credentials (string cert_file, string key_file);
+               public static weak GLib.IOChannel wrap_iochannel (GLib.IOChannel sock, Soup.SSLType type, string remote_host, pointer credentials);
+       }
+       [ReferenceType]
+       [CCode (cheader_filename = "libsoup/soup.h")]
+       public struct Str {
+               public static bool case_equal (pointer v1, pointer v2);
+               public static uint case_hash (pointer key);
+       }
+       public static delegate void AddressCallback (Soup.Address addr, uint status, pointer data);
+       public static delegate void ConnectionCallback (Soup.Connection conn, uint status, pointer data);
+       public static delegate void DNSCallback (Soup.DNSLookup lookup, bool success, pointer user_data);
+       public static delegate void MessageCallbackFn (Soup.Message req, pointer user_data);
+       public static delegate bool ServerAuthCallbackFn (Soup.ServerAuthContext auth_ctx, Soup.ServerAuth auth, Soup.Message msg, pointer data);
+       public static delegate void ServerCallbackFn (Soup.ServerContext context, Soup.Message msg, pointer user_data);
+       public static delegate void ServerUnregisterFn (Soup.Server server, Soup.ServerHandler handler, pointer user_data);
+       public static delegate void SocketCallback (Soup.Socket sock, uint status, pointer user_data);
+       public static delegate void SocketListenerCallback (Soup.Socket listener, Soup.Socket sock, pointer user_data);
+       public static weak GLib.Source add_idle (GLib.MainContext async_context, GLib.SourceFunc function, pointer data);
+       public static weak GLib.Source add_timeout (GLib.MainContext async_context, uint interval, GLib.SourceFunc function, pointer data);
+       public static Soup.MethodId method_get_id (string method);
+       public static uint signal_connect_once (pointer instance, string detailed_signal, GLib.Callback c_handler, pointer data);
+       public static weak string status_get_phrase (uint status_code);
+}
diff --git a/vapi/packages/libsoup-2.2/libsoup-2.2-custom.vala b/vapi/packages/libsoup-2.2/libsoup-2.2-custom.vala
new file mode 100644 (file)
index 0000000..6bf2526
--- /dev/null
@@ -0,0 +1,34 @@
+/* libsoup-2.2-custom.vala
+ *
+ * Copyright (C) 2007  Jürg Billeter
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ *
+ * Author:
+ *     Jürg Billeter <j@bitron.ch>
+ */
+
+[CCode (cheader_filename = "libsoup/soup.h")]
+namespace Soup {
+       [ReferenceType]
+       public struct ServerAuth {
+               [Import]
+               public ServerAuth (ServerAuthContext auth_ctx, GLib.SList auth_hdrs, Message msg);
+               [Import]
+               public weak string get_user ();
+               [Import]
+               public bool check_passwd (string passwd);
+       }
+}
diff --git a/vapi/packages/libsoup-2.2/libsoup-2.2.files b/vapi/packages/libsoup-2.2/libsoup-2.2.files
new file mode 100644 (file)
index 0000000..3743cd6
--- /dev/null
@@ -0,0 +1 @@
+libsoup
diff --git a/vapi/packages/libsoup-2.2/libsoup-2.2.gidl b/vapi/packages/libsoup-2.2/libsoup-2.2.gidl
new file mode 100644 (file)
index 0000000..1eabd9d
--- /dev/null
@@ -0,0 +1,2448 @@
+<?xml version="1.0"?>
+<api version="1.0">
+  <!--
+
+        This file was automatically generated.
+        Please DO NOT MODIFY THIS FILE, modify .metadata files instead.
+
+-->
+  <namespace name="Soup">
+    <enum name="SoupAddressFamily" type="enum" type-name="SoupAddressFamily">
+      <member name="SOUP_ADDRESS_FAMILY_IPV4" value="AF_INET"/>
+      <member name="SOUP_ADDRESS_FAMILY_IPV6" value="-1"/>
+    </enum>
+    <enum name="SoupAuthType" type="enum" type-name="SoupAuthType">
+      <member name="SOUP_AUTH_TYPE_BASIC" value="1"/>
+      <member name="SOUP_AUTH_TYPE_DIGEST" value=""/>
+    </enum>
+    <enum name="SoupDigestAlgorithm" type="flags" type-name="SoupDigestAlgorithm">
+      <member name="SOUP_ALGORITHM_MD5" value=""/>
+      <member name="SOUP_ALGORITHM_MD5_SESS" value=""/>
+    </enum>
+    <enum name="SoupHandlerPhase" type="enum" type-name="SoupHandlerPhase">
+      <member name="SOUP_HANDLER_POST_REQUEST" value="1"/>
+      <member name="SOUP_HANDLER_PRE_BODY" value=""/>
+      <member name="SOUP_HANDLER_BODY_CHUNK" value=""/>
+      <member name="SOUP_HANDLER_POST_BODY" value=""/>
+    </enum>
+    <enum name="SoupHttpVersion" type="enum" type-name="SoupHttpVersion">
+      <member name="SOUP_HTTP_1_0" value="0"/>
+      <member name="SOUP_HTTP_1_1" value="1"/>
+    </enum>
+    <enum name="SoupKnownStatusCode" type="enum" type-name="SoupKnownStatusCode">
+      <member name="SOUP_STATUS_NONE" value=""/>
+      <member name="SOUP_STATUS_CANCELLED" value="1"/>
+      <member name="SOUP_STATUS_CANT_RESOLVE" value=""/>
+      <member name="SOUP_STATUS_CANT_RESOLVE_PROXY" value=""/>
+      <member name="SOUP_STATUS_CANT_CONNECT" value=""/>
+      <member name="SOUP_STATUS_CANT_CONNECT_PROXY" value=""/>
+      <member name="SOUP_STATUS_SSL_FAILED" value=""/>
+      <member name="SOUP_STATUS_IO_ERROR" value=""/>
+      <member name="SOUP_STATUS_MALFORMED" value=""/>
+      <member name="SOUP_STATUS_TRY_AGAIN" value=""/>
+      <member name="SOUP_STATUS_CONTINUE" value="100"/>
+      <member name="SOUP_STATUS_SWITCHING_PROTOCOLS" value="101"/>
+      <member name="SOUP_STATUS_PROCESSING" value="102"/>
+      <member name="SOUP_STATUS_OK" value="200"/>
+      <member name="SOUP_STATUS_CREATED" value="201"/>
+      <member name="SOUP_STATUS_ACCEPTED" value="202"/>
+      <member name="SOUP_STATUS_NON_AUTHORITATIVE" value="203"/>
+      <member name="SOUP_STATUS_NO_CONTENT" value="204"/>
+      <member name="SOUP_STATUS_RESET_CONTENT" value="205"/>
+      <member name="SOUP_STATUS_PARTIAL_CONTENT" value="206"/>
+      <member name="SOUP_STATUS_MULTI_STATUS" value="207"/>
+      <member name="SOUP_STATUS_MULTIPLE_CHOICES" value="300"/>
+      <member name="SOUP_STATUS_MOVED_PERMANENTLY" value="301"/>
+      <member name="SOUP_STATUS_FOUND" value="302"/>
+      <member name="SOUP_STATUS_MOVED_TEMPORARILY" value="302"/>
+      <member name="SOUP_STATUS_SEE_OTHER" value="303"/>
+      <member name="SOUP_STATUS_NOT_MODIFIED" value="304"/>
+      <member name="SOUP_STATUS_USE_PROXY" value="305"/>
+      <member name="SOUP_STATUS_NOT_APPEARING_IN_THIS_PROTOCOL" value="306"/>
+      <member name="SOUP_STATUS_TEMPORARY_REDIRECT" value="307"/>
+      <member name="SOUP_STATUS_BAD_REQUEST" value="400"/>
+      <member name="SOUP_STATUS_UNAUTHORIZED" value="401"/>
+      <member name="SOUP_STATUS_PAYMENT_REQUIRED" value="402"/>
+      <member name="SOUP_STATUS_FORBIDDEN" value="403"/>
+      <member name="SOUP_STATUS_NOT_FOUND" value="404"/>
+      <member name="SOUP_STATUS_METHOD_NOT_ALLOWED" value="405"/>
+      <member name="SOUP_STATUS_NOT_ACCEPTABLE" value="406"/>
+      <member name="SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED" value="407"/>
+      <member name="SOUP_STATUS_PROXY_UNAUTHORIZED" value=""/>
+      <member name="SOUP_STATUS_REQUEST_TIMEOUT" value="408"/>
+      <member name="SOUP_STATUS_CONFLICT" value="409"/>
+      <member name="SOUP_STATUS_GONE" value="410"/>
+      <member name="SOUP_STATUS_LENGTH_REQUIRED" value="411"/>
+      <member name="SOUP_STATUS_PRECONDITION_FAILED" value="412"/>
+      <member name="SOUP_STATUS_REQUEST_ENTITY_TOO_LARGE" value="413"/>
+      <member name="SOUP_STATUS_REQUEST_URI_TOO_LONG" value="414"/>
+      <member name="SOUP_STATUS_UNSUPPORTED_MEDIA_TYPE" value="415"/>
+      <member name="SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE" value="416"/>
+      <member name="SOUP_STATUS_INVALID_RANGE" value=""/>
+      <member name="SOUP_STATUS_EXPECTATION_FAILED" value="417"/>
+      <member name="SOUP_STATUS_UNPROCESSABLE_ENTITY" value="422"/>
+      <member name="SOUP_STATUS_LOCKED" value="423"/>
+      <member name="SOUP_STATUS_FAILED_DEPENDENCY" value="424"/>
+      <member name="SOUP_STATUS_INTERNAL_SERVER_ERROR" value="500"/>
+      <member name="SOUP_STATUS_NOT_IMPLEMENTED" value="501"/>
+      <member name="SOUP_STATUS_BAD_GATEWAY" value="502"/>
+      <member name="SOUP_STATUS_SERVICE_UNAVAILABLE" value="503"/>
+      <member name="SOUP_STATUS_GATEWAY_TIMEOUT" value="504"/>
+      <member name="SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED" value="505"/>
+      <member name="SOUP_STATUS_INSUFFICIENT_STORAGE" value="507"/>
+      <member name="SOUP_STATUS_NOT_EXTENDED" value="510"/>
+    </enum>
+    <enum name="SoupMessageFlags" type="flags" type-name="SoupMessageFlags">
+      <member name="SOUP_MESSAGE_NO_REDIRECT" value=""/>
+      <member name="SOUP_MESSAGE_OVERWRITE_CHUNKS" value=""/>
+      <member name="SOUP_MESSAGE_EXPECT_CONTINUE" value=""/>
+    </enum>
+    <enum name="SoupMessageStatus" type="enum" type-name="SoupMessageStatus">
+      <member name="SOUP_MESSAGE_STATUS_IDLE" value=""/>
+      <member name="SOUP_MESSAGE_STATUS_QUEUED" value=""/>
+      <member name="SOUP_MESSAGE_STATUS_CONNECTING" value=""/>
+      <member name="SOUP_MESSAGE_STATUS_RUNNING" value=""/>
+      <member name="SOUP_MESSAGE_STATUS_FINISHED" value=""/>
+    </enum>
+    <enum name="SoupMethodId" type="enum" type-name="SoupMethodId">
+      <member name="SOUP_METHOD_ID_UNKNOWN" value="0"/>
+      <member name="SOUP_METHOD_ID_POST" value=""/>
+      <member name="SOUP_METHOD_ID_GET" value=""/>
+      <member name="SOUP_METHOD_ID_HEAD" value=""/>
+      <member name="SOUP_METHOD_ID_OPTIONS" value=""/>
+      <member name="SOUP_METHOD_ID_PUT" value=""/>
+      <member name="SOUP_METHOD_ID_MOVE" value=""/>
+      <member name="SOUP_METHOD_ID_COPY" value=""/>
+      <member name="SOUP_METHOD_ID_DELETE" value=""/>
+      <member name="SOUP_METHOD_ID_TRACE" value=""/>
+      <member name="SOUP_METHOD_ID_CONNECT" value=""/>
+      <member name="SOUP_METHOD_ID_MKCOL" value=""/>
+      <member name="SOUP_METHOD_ID_PROPPATCH" value=""/>
+      <member name="SOUP_METHOD_ID_PROPFIND" value=""/>
+      <member name="SOUP_METHOD_ID_PATCH" value=""/>
+      <member name="SOUP_METHOD_ID_LOCK" value=""/>
+      <member name="SOUP_METHOD_ID_UNLOCK" value=""/>
+    </enum>
+    <enum name="SoupOwnership" type="enum" type-name="SoupOwnership">
+      <member name="SOUP_BUFFER_SYSTEM_OWNED" value="0"/>
+      <member name="SOUP_BUFFER_USER_OWNED" value=""/>
+      <member name="SOUP_BUFFER_STATIC" value=""/>
+    </enum>
+    <enum name="SoupSSLType" type="enum" type-name="SoupSSLType">
+      <member name="SOUP_SSL_TYPE_CLIENT" value="0"/>
+      <member name="SOUP_SSL_TYPE_SERVER" value=""/>
+    </enum>
+    <enum name="SoupSocketError" type="enum" type-name="SoupSocketError">
+      <member name="SOUP_SSL_ERROR_HANDSHAKE_NEEDS_READ" value=""/>
+      <member name="SOUP_SSL_ERROR_HANDSHAKE_NEEDS_WRITE" value=""/>
+      <member name="SOUP_SSL_ERROR_CERTIFICATE" value=""/>
+    </enum>
+    <enum name="SoupSocketIOStatus" type="enum" type-name="SoupSocketIOStatus">
+      <member name="SOUP_SOCKET_OK" value=""/>
+      <member name="SOUP_SOCKET_WOULD_BLOCK" value=""/>
+      <member name="SOUP_SOCKET_EOF" value=""/>
+      <member name="SOUP_SOCKET_ERROR" value=""/>
+    </enum>
+    <enum name="SoupStatusClass" type="enum" type-name="SoupStatusClass">
+      <member name="SOUP_STATUS_CLASS_TRANSPORT_ERROR" value="0"/>
+      <member name="SOUP_STATUS_CLASS_INFORMATIONAL" value=""/>
+      <member name="SOUP_STATUS_CLASS_SUCCESS" value=""/>
+      <member name="SOUP_STATUS_CLASS_REDIRECT" value=""/>
+      <member name="SOUP_STATUS_CLASS_CLIENT_ERROR" value=""/>
+      <member name="SOUP_STATUS_CLASS_SERVER_ERROR" value=""/>
+    </enum>
+    <enum name="SoupTransferEncoding" type="enum" type-name="SoupTransferEncoding">
+      <member name="SOUP_TRANSFER_UNKNOWN" value="0"/>
+      <member name="SOUP_TRANSFER_CHUNKED" value=""/>
+      <member name="SOUP_TRANSFER_CONTENT_LENGTH" value=""/>
+      <member name="SOUP_TRANSFER_BYTERANGES" value=""/>
+      <member name="SOUP_TRANSFER_NONE" value=""/>
+      <member name="SOUP_TRANSFER_EOF" value=""/>
+    </enum>
+    <enum name="SoupXmlrpcValueType" type="enum" type-name="SoupXmlrpcValueType">
+      <member name="SOUP_XMLRPC_VALUE_TYPE_BAD" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_INT" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_BOOLEAN" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_STRING" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_DOUBLE" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_DATETIME" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_BASE64" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_STRUCT" value=""/>
+      <member name="SOUP_XMLRPC_VALUE_TYPE_ARRAY" value=""/>
+    </enum>
+    <callback name="SoupAddressCallback" type-name="SoupAddressCallback">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="addr" type="SoupAddress*"/>
+        <parameter name="status" type="guint"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupConnectionCallback" type-name="SoupConnectionCallback">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="conn" type="SoupConnection*"/>
+        <parameter name="status" type="guint"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupDNSCallback" type-name="SoupDNSCallback">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="lookup" type="SoupDNSLookup*"/>
+        <parameter name="success" type="gboolean"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupMessageCallbackFn" type-name="SoupMessageCallbackFn">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="req" type="SoupMessage*"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupServerAuthCallbackFn" type-name="SoupServerAuthCallbackFn">
+      <return-type type="gboolean"/>
+      <parameters>
+        <parameter name="auth_ctx" type="SoupServerAuthContext*"/>
+        <parameter name="auth" type="SoupServerAuth*"/>
+        <parameter name="msg" type="SoupMessage*"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupServerCallbackFn" type-name="SoupServerCallbackFn">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="context" type="SoupServerContext*"/>
+        <parameter name="msg" type="SoupMessage*"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupServerUnregisterFn" type-name="SoupServerUnregisterFn">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="server" type="SoupServer*"/>
+        <parameter name="handler" type="SoupServerHandler*"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupSocketCallback" type-name="SoupSocketCallback">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="sock" type="SoupSocket*"/>
+        <parameter name="status" type="guint"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <callback name="SoupSocketListenerCallback" type-name="SoupSocketListenerCallback">
+      <return-type type="void"/>
+      <parameters>
+        <parameter name="listener" type="SoupSocket*"/>
+        <parameter name="sock" type="SoupSocket*"/>
+        <parameter name="user_data" type="gpointer"/>
+      </parameters>
+    </callback>
+    <interface get-type="" name="SoupMessageFilter" type-name="SoupMessageFilter">
+      <vfunc name="setup_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="filter" type="SoupMessageFilter*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </vfunc>
+      <method name="get_type" symbol="soup_message_filter_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="setup_message" symbol="soup_message_filter_setup_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="filter" type="SoupMessageFilter*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+    </interface>
+    <object get-type="" name="SoupAddress" parent="GObject" type-name="SoupAddress">
+      <signal name="dns_result" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+          <parameter name="status" type="guint"/>
+        </parameters>
+      </signal>
+      <method name="get_name" symbol="soup_address_get_name">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+      <method name="get_physical" symbol="soup_address_get_physical">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+      <method name="get_port" symbol="soup_address_get_port">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_address_get_type">
+        <return-type type="GType"/>
+      </method>
+      <constructor name="new" symbol="soup_address_new">
+        <parameters>
+          <parameter name="name" type="const-char*"/>
+          <parameter name="port" type="guint"/>
+        </parameters>
+      </constructor>
+      <constructor name="new_any" symbol="soup_address_new_any">
+        <parameters>
+          <parameter name="family" type="SoupAddressFamily"/>
+          <parameter name="port" type="guint"/>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_sockaddr" symbol="soup_address_new_from_sockaddr">
+        <parameters>
+          <parameter name="sa" type="sockaddr*"/>
+          <parameter name="len" type="int"/>
+        </parameters>
+      </constructor>
+      <method name="resolve_async" symbol="soup_address_resolve_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+          <parameter name="callback" type="SoupAddressCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="resolve_async_full" symbol="soup_address_resolve_async_full">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+          <parameter name="async_context" type="GMainContext*"/>
+          <parameter name="callback" type="SoupAddressCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="resolve_sync" symbol="soup_address_resolve_sync">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupAuth" parent="GObject" type-name="SoupAuth">
+      <vfunc name="is_authenticated">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+        </parameters>
+      </vfunc>
+      <method name="authenticate" symbol="soup_auth_authenticate">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+          <parameter name="username" type="const-char*"/>
+          <parameter name="password" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="basic_get_type" symbol="soup_auth_basic_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="free_protection_space" symbol="soup_auth_free_protection_space">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+          <parameter name="space" type="GSList*"/>
+        </parameters>
+      </method>
+      <method name="get_authorization" symbol="soup_auth_get_authorization">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_protection_space" symbol="soup_auth_get_protection_space">
+        <return-type type="GSList*"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+          <parameter name="source_uri" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="get_realm" symbol="soup_auth_get_realm">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+        </parameters>
+      </method>
+      <method name="get_scheme_name" symbol="soup_auth_get_scheme_name">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_auth_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="is_authenticated" symbol="soup_auth_is_authenticated">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="auth" type="SoupAuth*"/>
+        </parameters>
+      </method>
+      <constructor name="new_from_header_list" symbol="soup_auth_new_from_header_list">
+        <parameters>
+          <parameter name="vals" type="const-GSList*"/>
+        </parameters>
+      </constructor>
+    </object>
+    <object get-type="" name="SoupAuthDigest" parent="SoupAuth" type-name="SoupAuthDigest">
+      <method name="get_type" symbol="soup_auth_digest_get_type">
+        <return-type type="GType"/>
+      </method>
+    </object>
+    <object get-type="" name="SoupConnection" parent="GObject" type-name="SoupConnection">
+      <signal name="connect_result" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupConnection*"/>
+          <parameter name="arg2" type="guint"/>
+        </parameters>
+      </signal>
+      <signal name="disconnected" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupConnection*"/>
+        </parameters>
+      </signal>
+      <signal name="authenticate" when="FIRST"/>
+      <signal name="reauthenticate" when="FIRST"/>
+      <property construct-only="1" name="origin-uri" readable="1" type="gpointer" writable="1"/>
+      <property construct-only="1" name="proxy-uri" readable="1" type="gpointer" writable="1"/>
+      <property construct-only="1" name="ssl-creds" readable="1" type="gpointer" writable="1"/>
+      <property name="message-filter" readable="1" type="gpointer" writable="1"/>
+      <property construct-only="1" name="async-context" readable="1" type="gpointer" writable="1"/>
+      <property name="timeout" readable="1" type="guint" writable="1"/>
+      <vfunc name="send_request">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupConnection*"/>
+          <parameter name="arg2" type="SoupMessage*"/>
+        </parameters>
+      </vfunc>
+      <method name="authenticate" symbol="soup_connection_authenticate">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="auth_type" type="const-char*"/>
+          <parameter name="auth_realm" type="const-char*"/>
+          <parameter name="username" type="char**"/>
+          <parameter name="password" type="char**"/>
+        </parameters>
+      </method>
+      <method name="connect_async" symbol="soup_connection_connect_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+          <parameter name="callback" type="SoupConnectionCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="connect_sync" symbol="soup_connection_connect_sync">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <method name="disconnect" symbol="soup_connection_disconnect">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_connection_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="is_in_use" symbol="soup_connection_is_in_use">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <method name="last_used" symbol="soup_connection_last_used">
+        <return-type type="time_t"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_connection_new">
+        <parameters>
+          <parameter name="propname1" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="reauthenticate" symbol="soup_connection_reauthenticate">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="auth_type" type="const-char*"/>
+          <parameter name="auth_realm" type="const-char*"/>
+          <parameter name="username" type="char**"/>
+          <parameter name="password" type="char**"/>
+        </parameters>
+      </method>
+      <method name="release" symbol="soup_connection_release">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <method name="reserve" symbol="soup_connection_reserve">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+        </parameters>
+      </method>
+      <method name="send_request" symbol="soup_connection_send_request">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="conn" type="SoupConnection*"/>
+          <parameter name="req" type="SoupMessage*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupConnectionNTLM" parent="SoupConnection" type-name="SoupConnectionNTLM">
+      <method name="get_type" symbol="soup_connection_ntlm_get_type">
+        <return-type type="GType"/>
+      </method>
+    </object>
+    <object get-type="" name="SoupMessage" parent="GObject" type-name="SoupMessage">
+      <field name="method" readable="1" type="const-char*" writable="1"/>
+      <field name="status_code" readable="1" type="guint" writable="1"/>
+      <field name="reason_phrase" readable="1" type="const-char*" writable="1"/>
+      <field name="request" readable="1" type="SoupDataBuffer" writable="1"/>
+      <field name="request_headers" readable="1" type="GHashTable*" writable="1"/>
+      <field name="response" readable="1" type="SoupDataBuffer" writable="1"/>
+      <field name="response_headers" readable="1" type="GHashTable*" writable="1"/>
+      <field name="status" readable="1" type="SoupMessageStatus" writable="1"/>
+      <signal name="wrote_informational" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="wrote_headers" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="wrote_chunk" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="wrote_body" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="got_informational" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="got_headers" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="got_chunk" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="got_body" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="restarted" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <signal name="finished" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </signal>
+      <method name="add_chunk" symbol="soup_message_add_chunk">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="owner" type="SoupOwnership"/>
+          <parameter name="body" type="const-char*"/>
+          <parameter name="length" type="guint"/>
+        </parameters>
+      </method>
+      <method name="add_final_chunk" symbol="soup_message_add_final_chunk">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="add_handler" symbol="soup_message_add_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="phase" type="SoupHandlerPhase"/>
+          <parameter name="handler_cb" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="add_header" symbol="soup_message_add_header">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+          <parameter name="name" type="const-char*"/>
+          <parameter name="value" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="add_header_handler" symbol="soup_message_add_header_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="header" type="const-char*"/>
+          <parameter name="phase" type="SoupHandlerPhase"/>
+          <parameter name="handler_cb" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="add_status_class_handler" symbol="soup_message_add_status_class_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="status_class" type="SoupStatusClass"/>
+          <parameter name="phase" type="SoupHandlerPhase"/>
+          <parameter name="handler_cb" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="add_status_code_handler" symbol="soup_message_add_status_code_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="status_code" type="guint"/>
+          <parameter name="phase" type="SoupHandlerPhase"/>
+          <parameter name="handler_cb" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="clear_headers" symbol="soup_message_clear_headers">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+        </parameters>
+      </method>
+      <method name="finished" symbol="soup_message_finished">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="foreach_header" symbol="soup_message_foreach_header">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+          <parameter name="func" type="GHFunc"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="get_flags" symbol="soup_message_get_flags">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_header" symbol="soup_message_get_header">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_header_list" symbol="soup_message_get_header_list">
+        <return-type type="const-GSList*"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_http_version" symbol="soup_message_get_http_version">
+        <return-type type="SoupHttpVersion"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_request_encoding" symbol="soup_message_get_request_encoding">
+        <return-type type="SoupTransferEncoding"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="content_length" type="guint*"/>
+        </parameters>
+      </method>
+      <method name="get_response_encoding" symbol="soup_message_get_response_encoding">
+        <return-type type="SoupTransferEncoding"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="content_length" type="guint*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_message_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="get_uri" symbol="soup_message_get_uri">
+        <return-type type="const-SoupUri*"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="got_body" symbol="soup_message_got_body">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="got_chunk" symbol="soup_message_got_chunk">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="got_headers" symbol="soup_message_got_headers">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="got_informational" symbol="soup_message_got_informational">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="io_in_progress" symbol="soup_message_io_in_progress">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="io_pause" symbol="soup_message_io_pause">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="io_stop" symbol="soup_message_io_stop">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="io_unpause" symbol="soup_message_io_unpause">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="is_keepalive" symbol="soup_message_is_keepalive">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_message_new">
+        <parameters>
+          <parameter name="method" type="const-char*"/>
+          <parameter name="uri_string" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_uri" symbol="soup_message_new_from_uri">
+        <parameters>
+          <parameter name="method" type="const-char*"/>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </constructor>
+      <method name="pop_chunk" symbol="soup_message_pop_chunk">
+        <return-type type="SoupDataBuffer*"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="read_request" symbol="soup_message_read_request">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="req" type="SoupMessage*"/>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="remove_handler" symbol="soup_message_remove_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="phase" type="SoupHandlerPhase"/>
+          <parameter name="handler_cb" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="remove_header" symbol="soup_message_remove_header">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="hash" type="GHashTable*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="restarted" symbol="soup_message_restarted">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="send_request" symbol="soup_message_send_request">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="req" type="SoupMessage*"/>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="is_via_proxy" type="gboolean"/>
+        </parameters>
+      </method>
+      <method name="set_flags" symbol="soup_message_set_flags">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="flags" type="guint"/>
+        </parameters>
+      </method>
+      <method name="set_http_version" symbol="soup_message_set_http_version">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="version" type="SoupHttpVersion"/>
+        </parameters>
+      </method>
+      <method name="set_request" symbol="soup_message_set_request">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="content_type" type="const-char*"/>
+          <parameter name="req_owner" type="SoupOwnership"/>
+          <parameter name="req_body" type="char*"/>
+          <parameter name="req_length" type="gulong"/>
+        </parameters>
+      </method>
+      <method name="set_response" symbol="soup_message_set_response">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="content_type" type="const-char*"/>
+          <parameter name="resp_owner" type="SoupOwnership"/>
+          <parameter name="resp_body" type="char*"/>
+          <parameter name="resp_length" type="gulong"/>
+        </parameters>
+      </method>
+      <method name="set_status" symbol="soup_message_set_status">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="status_code" type="guint"/>
+        </parameters>
+      </method>
+      <method name="set_status_full" symbol="soup_message_set_status_full">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="status_code" type="guint"/>
+          <parameter name="reason_phrase" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="set_uri" symbol="soup_message_set_uri">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="wrote_body" symbol="soup_message_wrote_body">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="wrote_chunk" symbol="soup_message_wrote_chunk">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="wrote_headers" symbol="soup_message_wrote_headers">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="wrote_informational" symbol="soup_message_wrote_informational">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupServer" parent="GObject" type-name="SoupServer">
+      <property construct-only="1" name="port" readable="1" type="guint" writable="1"/>
+      <property construct-only="1" name="interface" readable="1" type="SoupAddress" writable="1"/>
+      <property construct-only="1" name="ssl-cert-file" readable="1" type="gchar*" writable="1"/>
+      <property construct-only="1" name="ssl-key-file" readable="1" type="gchar*" writable="1"/>
+      <property construct-only="1" name="async-context" readable="1" type="gpointer" writable="1"/>
+      <method name="add_handler" symbol="soup_server_add_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+          <parameter name="path" type="const-char*"/>
+          <parameter name="auth_ctx" type="SoupServerAuthContext*"/>
+          <parameter name="callback" type="SoupServerCallbackFn"/>
+          <parameter name="unreg" type="SoupServerUnregisterFn"/>
+          <parameter name="data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="auth_check_passwd" symbol="soup_server_auth_check_passwd">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="auth" type="SoupServerAuth*"/>
+          <parameter name="passwd" type="gchar*"/>
+        </parameters>
+      </method>
+      <method name="auth_free" symbol="soup_server_auth_free">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="auth" type="SoupServerAuth*"/>
+        </parameters>
+      </method>
+      <method name="auth_get_user" symbol="soup_server_auth_get_user">
+        <return-type type="const-gchar*"/>
+        <parameters>
+          <parameter name="auth" type="SoupServerAuth*"/>
+        </parameters>
+      </method>
+      <method name="auth_new" symbol="soup_server_auth_new">
+        <return-type type="SoupServerAuth*"/>
+        <parameters>
+          <parameter name="auth_ctx" type="SoupServerAuthContext*"/>
+          <parameter name="auth_hdrs" type="const-GSList*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_handler" symbol="soup_server_get_handler">
+        <return-type type="SoupServerHandler*"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+          <parameter name="path" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_listener" symbol="soup_server_get_listener">
+        <return-type type="SoupSocket*"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <method name="get_port" symbol="soup_server_get_port">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <method name="get_protocol" symbol="soup_server_get_protocol">
+        <return-type type="SoupProtocol"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_server_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="list_handlers" symbol="soup_server_list_handlers">
+        <return-type type="GSList*"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_server_new">
+        <parameters>
+          <parameter name="optname1" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="quit" symbol="soup_server_quit">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <method name="remove_handler" symbol="soup_server_remove_handler">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+          <parameter name="path" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="run" symbol="soup_server_run">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+      <method name="run_async" symbol="soup_server_run_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="serv" type="SoupServer*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupServerMessage" parent="SoupMessage" type-name="SoupServerMessage">
+      <method name="finish" symbol="soup_server_message_finish">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_encoding" symbol="soup_server_message_get_encoding">
+        <return-type type="SoupTransferEncoding"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_server" symbol="soup_server_message_get_server">
+        <return-type type="SoupServer*"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_server_message_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="is_finished" symbol="soup_server_message_is_finished">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+      <method name="is_started" symbol="soup_server_message_is_started">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_server_message_new">
+        <parameters>
+          <parameter name="server" type="SoupServer*"/>
+        </parameters>
+      </constructor>
+      <method name="set_encoding" symbol="soup_server_message_set_encoding">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+          <parameter name="encoding" type="SoupTransferEncoding"/>
+        </parameters>
+      </method>
+      <method name="start" symbol="soup_server_message_start">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="smsg" type="SoupServerMessage*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupSession" parent="GObject" type-name="SoupSession">
+      <field name="queue" type="SoupMessageQueue*"/>
+      <signal name="authenticate" when="FIRST"/>
+      <signal name="reauthenticate" when="FIRST"/>
+      <property name="proxy-uri" readable="1" type="gpointer" writable="1"/>
+      <property name="max-conns" readable="1" type="gint" writable="1"/>
+      <property name="max-conns-per-host" readable="1" type="gint" writable="1"/>
+      <property name="use-ntlm" readable="1" type="gboolean" writable="1"/>
+      <property name="ssl-ca-file" readable="1" type="gchar*" writable="1"/>
+      <property construct-only="1" name="async-context" readable="1" type="gpointer" writable="1"/>
+      <property name="timeout" readable="1" type="guint" writable="1"/>
+      <vfunc name="requeue_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </vfunc>
+      <vfunc name="send_message">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </vfunc>
+      <vfunc name="cancel_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </vfunc>
+      <method name="abort" symbol="soup_session_abort">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+        </parameters>
+      </method>
+      <method name="add_filter" symbol="soup_session_add_filter">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="filter" type="SoupMessageFilter*"/>
+        </parameters>
+      </method>
+      <method name="cancel_message" symbol="soup_session_cancel_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_connection" symbol="soup_session_get_connection">
+        <return-type type="SoupConnection*"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="try_pruning" type="gboolean*"/>
+          <parameter name="is_new" type="gboolean*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_session_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="queue_message" symbol="soup_session_queue_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="callback" type="SoupMessageCallbackFn"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="remove_filter" symbol="soup_session_remove_filter">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="filter" type="SoupMessageFilter*"/>
+        </parameters>
+      </method>
+      <method name="requeue_message" symbol="soup_session_requeue_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="send_message" symbol="soup_session_send_message">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="try_prune_connection" symbol="soup_session_try_prune_connection">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="session" type="SoupSession*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupSessionAsync" parent="SoupSession" type-name="SoupSessionAsync">
+      <method name="get_type" symbol="soup_session_async_get_type">
+        <return-type type="GType"/>
+      </method>
+      <constructor name="new" symbol="soup_session_async_new"/>
+      <constructor name="new_with_options" symbol="soup_session_async_new_with_options">
+        <parameters>
+          <parameter name="optname1" type="const-char*"/>
+        </parameters>
+      </constructor>
+    </object>
+    <object get-type="" name="SoupSessionSync" parent="SoupSession" type-name="SoupSessionSync">
+      <method name="get_type" symbol="soup_session_sync_get_type">
+        <return-type type="GType"/>
+      </method>
+      <constructor name="new" symbol="soup_session_sync_new"/>
+      <constructor name="new_with_options" symbol="soup_session_sync_new_with_options">
+        <parameters>
+          <parameter name="optname1" type="const-char*"/>
+        </parameters>
+      </constructor>
+    </object>
+    <object get-type="" name="SoupSoapMessage" parent="SoupMessage" type-name="SoupSoapMessage">
+      <method name="add_attribute" symbol="soup_soap_message_add_attribute">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="name" type="const-char*"/>
+          <parameter name="value" type="const-char*"/>
+          <parameter name="prefix" type="const-char*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="add_namespace" symbol="soup_soap_message_add_namespace">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="prefix" type="const-char*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="end_body" symbol="soup_soap_message_end_body">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_element" symbol="soup_soap_message_end_element">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_envelope" symbol="soup_soap_message_end_envelope">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_fault" symbol="soup_soap_message_end_fault">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_fault_detail" symbol="soup_soap_message_end_fault_detail">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_header" symbol="soup_soap_message_end_header">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_header_element" symbol="soup_soap_message_end_header_element">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="get_namespace_prefix" symbol="soup_soap_message_get_namespace_prefix">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_soap_message_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="get_xml_doc" symbol="soup_soap_message_get_xml_doc">
+        <return-type type="xmlDocPtr"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_soap_message_new">
+        <parameters>
+          <parameter name="method" type="const-char*"/>
+          <parameter name="uri_string" type="const-char*"/>
+          <parameter name="standalone" type="gboolean"/>
+          <parameter name="xml_encoding" type="const-char*"/>
+          <parameter name="env_prefix" type="const-char*"/>
+          <parameter name="env_uri" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_uri" symbol="soup_soap_message_new_from_uri">
+        <parameters>
+          <parameter name="method" type="const-char*"/>
+          <parameter name="uri" type="const-SoupUri*"/>
+          <parameter name="standalone" type="gboolean"/>
+          <parameter name="xml_encoding" type="const-char*"/>
+          <parameter name="env_prefix" type="const-char*"/>
+          <parameter name="env_uri" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="parse_response" symbol="soup_soap_message_parse_response">
+        <return-type type="SoupSoapResponse*"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="persist" symbol="soup_soap_message_persist">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="reset" symbol="soup_soap_message_reset">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="set_default_namespace" symbol="soup_soap_message_set_default_namespace">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="set_element_type" symbol="soup_soap_message_set_element_type">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="xsi_type" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="set_encoding_style" symbol="soup_soap_message_set_encoding_style">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="enc_style" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="set_null" symbol="soup_soap_message_set_null">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_body" symbol="soup_soap_message_start_body">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_element" symbol="soup_soap_message_start_element">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="name" type="const-char*"/>
+          <parameter name="prefix" type="const-char*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="start_envelope" symbol="soup_soap_message_start_envelope">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_fault" symbol="soup_soap_message_start_fault">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="faultcode" type="const-char*"/>
+          <parameter name="faultstring" type="const-char*"/>
+          <parameter name="faultfactor" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="start_fault_detail" symbol="soup_soap_message_start_fault_detail">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_header" symbol="soup_soap_message_start_header">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_header_element" symbol="soup_soap_message_start_header_element">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="name" type="const-char*"/>
+          <parameter name="must_understand" type="gboolean"/>
+          <parameter name="actor_uri" type="const-char*"/>
+          <parameter name="prefix" type="const-char*"/>
+          <parameter name="ns_uri" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="write_base64" symbol="soup_soap_message_write_base64">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="string" type="const-char*"/>
+          <parameter name="len" type="int"/>
+        </parameters>
+      </method>
+      <method name="write_buffer" symbol="soup_soap_message_write_buffer">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="buffer" type="const-char*"/>
+          <parameter name="len" type="int"/>
+        </parameters>
+      </method>
+      <method name="write_double" symbol="soup_soap_message_write_double">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="d" type="double"/>
+        </parameters>
+      </method>
+      <method name="write_int" symbol="soup_soap_message_write_int">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="i" type="glong"/>
+        </parameters>
+      </method>
+      <method name="write_string" symbol="soup_soap_message_write_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="string" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="write_time" symbol="soup_soap_message_write_time">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupSoapMessage*"/>
+          <parameter name="timeval" type="const-time_t*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupSoapResponse" parent="GObject" type-name="SoupSoapResponse">
+      <method name="from_string" symbol="soup_soap_response_from_string">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+          <parameter name="xmlstr" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_first_parameter" symbol="soup_soap_response_get_first_parameter">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+        </parameters>
+      </method>
+      <method name="get_first_parameter_by_name" symbol="soup_soap_response_get_first_parameter_by_name">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_method_name" symbol="soup_soap_response_get_method_name">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+        </parameters>
+      </method>
+      <method name="get_next_parameter" symbol="soup_soap_response_get_next_parameter">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+          <parameter name="from" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+      <method name="get_next_parameter_by_name" symbol="soup_soap_response_get_next_parameter_by_name">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+          <parameter name="from" type="SoupSoapParameter*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_parameters" symbol="soup_soap_response_get_parameters">
+        <return-type type="const-GList*"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_soap_response_get_type">
+        <return-type type="GType"/>
+      </method>
+      <constructor name="new" symbol="soup_soap_response_new"/>
+      <constructor name="new_from_string" symbol="soup_soap_response_new_from_string">
+        <parameters>
+          <parameter name="xmlstr" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="set_method_name" symbol="soup_soap_response_set_method_name">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="response" type="SoupSoapResponse*"/>
+          <parameter name="method_name" type="const-char*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupSocket" parent="GObject" type-name="SoupSocket">
+      <signal name="connect_result" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupSocket*"/>
+          <parameter name="arg2" type="guint"/>
+        </parameters>
+      </signal>
+      <signal name="readable" when="LAST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupSocket*"/>
+        </parameters>
+      </signal>
+      <signal name="writable" when="LAST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupSocket*"/>
+        </parameters>
+      </signal>
+      <signal name="disconnected" when="LAST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupSocket*"/>
+        </parameters>
+      </signal>
+      <signal name="new_connection" when="FIRST">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="arg1" type="SoupSocket*"/>
+          <parameter name="arg2" type="SoupSocket*"/>
+        </parameters>
+      </signal>
+      <property name="non-blocking" readable="1" type="gboolean" writable="1"/>
+      <property name="nodelay" readable="1" type="gboolean" writable="1"/>
+      <property name="reuseaddr" readable="1" type="gboolean" writable="1"/>
+      <property name="cloexec" readable="1" type="gboolean" writable="1"/>
+      <property name="is-server" readable="1" type="gboolean"/>
+      <property name="ssl-creds" readable="1" type="gpointer" writable="1"/>
+      <property construct-only="1" name="async-context" readable="1" type="gpointer" writable="1"/>
+      <property name="timeout" readable="1" type="guint" writable="1"/>
+      <method name="client_new_async" symbol="soup_socket_client_new_async">
+        <return-type type="SoupSocket*"/>
+        <parameters>
+          <parameter name="hostname" type="const-char*"/>
+          <parameter name="port" type="guint"/>
+          <parameter name="ssl_creds" type="gpointer"/>
+          <parameter name="callback" type="SoupSocketCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="client_new_sync" symbol="soup_socket_client_new_sync">
+        <return-type type="SoupSocket*"/>
+        <parameters>
+          <parameter name="hostname" type="const-char*"/>
+          <parameter name="port" type="guint"/>
+          <parameter name="ssl_creds" type="gpointer"/>
+          <parameter name="status_ret" type="guint*"/>
+        </parameters>
+      </method>
+      <method name="connect" symbol="soup_socket_connect">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="remote_addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+      <method name="disconnect" symbol="soup_socket_disconnect">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="get_local_address" symbol="soup_socket_get_local_address">
+        <return-type type="SoupAddress*"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="get_remote_address" symbol="soup_socket_get_remote_address">
+        <return-type type="SoupAddress*"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_socket_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="is_connected" symbol="soup_socket_is_connected">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="listen" symbol="soup_socket_listen">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="local_addr" type="SoupAddress*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_socket_new">
+        <parameters>
+          <parameter name="optname1" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="read" symbol="soup_socket_read">
+        <return-type type="SoupSocketIOStatus"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="buffer" type="gpointer"/>
+          <parameter name="len" type="gsize"/>
+          <parameter name="nread" type="gsize*"/>
+        </parameters>
+      </method>
+      <method name="read_until" symbol="soup_socket_read_until">
+        <return-type type="SoupSocketIOStatus"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="buffer" type="gpointer"/>
+          <parameter name="len" type="gsize"/>
+          <parameter name="boundary" type="gconstpointer"/>
+          <parameter name="boundary_len" type="gsize"/>
+          <parameter name="nread" type="gsize*"/>
+          <parameter name="got_boundary" type="gboolean*"/>
+        </parameters>
+      </method>
+      <method name="server_new" symbol="soup_socket_server_new">
+        <return-type type="SoupSocket*"/>
+        <parameters>
+          <parameter name="local_addr" type="SoupAddress*"/>
+          <parameter name="ssl_creds" type="gpointer"/>
+          <parameter name="callback" type="SoupSocketListenerCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="start_proxy_ssl" symbol="soup_socket_start_proxy_ssl">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="ssl_host" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="start_ssl" symbol="soup_socket_start_ssl">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+        </parameters>
+      </method>
+      <method name="write" symbol="soup_socket_write">
+        <return-type type="SoupSocketIOStatus"/>
+        <parameters>
+          <parameter name="sock" type="SoupSocket*"/>
+          <parameter name="buffer" type="gconstpointer"/>
+          <parameter name="len" type="gsize"/>
+          <parameter name="nwrote" type="gsize*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupXmlrpcMessage" parent="SoupMessage" type-name="SoupXmlrpcMessage">
+      <method name="end_array" symbol="soup_xmlrpc_message_end_array">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_call" symbol="soup_xmlrpc_message_end_call">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_member" symbol="soup_xmlrpc_message_end_member">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_param" symbol="soup_xmlrpc_message_end_param">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="end_struct" symbol="soup_xmlrpc_message_end_struct">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="from_string" symbol="soup_xmlrpc_message_from_string">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="message" type="SoupXmlrpcMessage*"/>
+          <parameter name="xmlstr" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_xmlrpc_message_get_type">
+        <return-type type="GType"/>
+      </method>
+      <constructor name="new" symbol="soup_xmlrpc_message_new">
+        <parameters>
+          <parameter name="uri_string" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_uri" symbol="soup_xmlrpc_message_new_from_uri">
+        <parameters>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </constructor>
+      <method name="parse_response" symbol="soup_xmlrpc_message_parse_response">
+        <return-type type="SoupXmlrpcResponse*"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="persist" symbol="soup_xmlrpc_message_persist">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_array" symbol="soup_xmlrpc_message_start_array">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_call" symbol="soup_xmlrpc_message_start_call">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="method_name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="start_member" symbol="soup_xmlrpc_message_start_member">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="start_param" symbol="soup_xmlrpc_message_start_param">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="start_struct" symbol="soup_xmlrpc_message_start_struct">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="to_string" symbol="soup_xmlrpc_message_to_string">
+        <return-type type="xmlChar*"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+        </parameters>
+      </method>
+      <method name="write_base64" symbol="soup_xmlrpc_message_write_base64">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="buf" type="gconstpointer"/>
+          <parameter name="len" type="int"/>
+        </parameters>
+      </method>
+      <method name="write_boolean" symbol="soup_xmlrpc_message_write_boolean">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="b" type="gboolean"/>
+        </parameters>
+      </method>
+      <method name="write_datetime" symbol="soup_xmlrpc_message_write_datetime">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="timeval" type="const-time_t"/>
+        </parameters>
+      </method>
+      <method name="write_double" symbol="soup_xmlrpc_message_write_double">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="d" type="double"/>
+        </parameters>
+      </method>
+      <method name="write_int" symbol="soup_xmlrpc_message_write_int">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="i" type="long"/>
+        </parameters>
+      </method>
+      <method name="write_string" symbol="soup_xmlrpc_message_write_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="msg" type="SoupXmlrpcMessage*"/>
+          <parameter name="str" type="const-char*"/>
+        </parameters>
+      </method>
+    </object>
+    <object get-type="" name="SoupXmlrpcResponse" parent="GObject" type-name="SoupXmlrpcResponse">
+      <method name="from_string" symbol="soup_xmlrpc_response_from_string">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="response" type="SoupXmlrpcResponse*"/>
+          <parameter name="xmlstr" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_type" symbol="soup_xmlrpc_response_get_type">
+        <return-type type="GType"/>
+      </method>
+      <method name="get_value" symbol="soup_xmlrpc_response_get_value">
+        <return-type type="SoupXmlrpcValue*"/>
+        <parameters>
+          <parameter name="response" type="SoupXmlrpcResponse*"/>
+        </parameters>
+      </method>
+      <method name="is_fault" symbol="soup_xmlrpc_response_is_fault">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="response" type="SoupXmlrpcResponse*"/>
+        </parameters>
+      </method>
+      <constructor name="new" symbol="soup_xmlrpc_response_new"/>
+      <constructor name="new_from_string" symbol="soup_xmlrpc_response_new_from_string">
+        <parameters>
+          <parameter name="xmlstr" type="const-char*"/>
+        </parameters>
+      </constructor>
+      <method name="to_string" symbol="soup_xmlrpc_response_to_string">
+        <return-type type="xmlChar*"/>
+        <parameters>
+          <parameter name="response" type="SoupXmlrpcResponse*"/>
+        </parameters>
+      </method>
+    </object>
+    <struct get-type="" name="SoupAuthBasicClass" type-name="SoupAuthBasicClass">
+      <field name="parent_class" readable="1" type="SoupAuthClass" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupDNSLookup" opaque="true" type-name="SoupDNSLookup">
+      <method name="address" symbol="soup_dns_lookup_address">
+        <return-type type="SoupDNSLookup*"/>
+        <parameters>
+          <parameter name="sockaddr" type="sockaddr*"/>
+        </parameters>
+      </method>
+      <method name="cancel" symbol="soup_dns_lookup_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="lookup" type="SoupDNSLookup*"/>
+        </parameters>
+      </method>
+      <method name="free" symbol="soup_dns_lookup_free">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="lookup" type="SoupDNSLookup*"/>
+        </parameters>
+      </method>
+      <method name="get_hostname" symbol="soup_dns_lookup_get_hostname">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="lookup" type="SoupDNSLookup*"/>
+        </parameters>
+      </method>
+      <method name="name" symbol="soup_dns_lookup_name">
+        <return-type type="SoupDNSLookup*"/>
+        <parameters>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="resolve" symbol="soup_dns_lookup_resolve">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="lookup" type="SoupDNSLookup*"/>
+        </parameters>
+      </method>
+      <method name="resolve_async" symbol="soup_dns_lookup_resolve_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="lookup" type="SoupDNSLookup*"/>
+          <parameter name="async_context" type="GMainContext*"/>
+          <parameter name="callback" type="SoupDNSCallback"/>
+          <parameter name="user_data" type="gpointer"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct get-type="" name="SoupDataBuffer" type-name="SoupDataBuffer">
+      <field name="owner" readable="1" type="SoupOwnership" writable="1"/>
+      <field name="body" readable="1" type="char*" writable="1"/>
+      <field name="length" readable="1" type="guint" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupMD5Context" type-name="SoupMD5Context">
+      <field name="buf" readable="1" type="guint32" writable="1"/>
+      <field name="bits" readable="1" type="guint32" writable="1"/>
+      <field name="in" readable="1" type="guchar" writable="1"/>
+      <field name="doByteReverse" readable="1" type="gboolean" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupMessageQueue" opaque="true" type-name="SoupMessageQueue">
+      <method name="append" symbol="soup_message_queue_append">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+      <method name="destroy" symbol="soup_message_queue_destroy">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+        </parameters>
+      </method>
+      <method name="first" symbol="soup_message_queue_first">
+        <return-type type="SoupMessage*"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="iter" type="SoupMessageQueueIter*"/>
+        </parameters>
+      </method>
+      <method name="free_iter" symbol="soup_message_queue_free_iter">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="iter" type="SoupMessageQueueIter*"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="soup_message_queue_new">
+        <return-type type="SoupMessageQueue*"/>
+      </method>
+      <method name="next" symbol="soup_message_queue_next">
+        <return-type type="SoupMessage*"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="iter" type="SoupMessageQueueIter*"/>
+        </parameters>
+      </method>
+      <method name="remove" symbol="soup_message_queue_remove">
+        <return-type type="SoupMessage*"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="iter" type="SoupMessageQueueIter*"/>
+        </parameters>
+      </method>
+      <method name="remove_message" symbol="soup_message_queue_remove_message">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="queue" type="SoupMessageQueue*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct get-type="" name="SoupMessageQueueIter" type-name="SoupMessageQueueIter">
+      <field name="cur" readable="1" type="GList*" writable="1"/>
+      <field name="next" readable="1" type="GList*" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupServerAuthBasic" type-name="SoupServerAuthBasic">
+      <field name="type" readable="1" type="SoupAuthType" writable="1"/>
+      <field name="user" readable="1" type="const-gchar*" writable="1"/>
+      <field name="passwd" readable="1" type="const-gchar*" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupServerAuthContext" type-name="SoupServerAuthContext">
+      <field name="types" readable="1" type="guint" writable="1"/>
+      <field name="callback" readable="1" type="SoupServerAuthCallbackFn" writable="1"/>
+      <field name="user_data" readable="1" type="gpointer" writable="1"/>
+      <field name="realm" readable="1" type="struct-{const-gchar*" writable="1"/>
+      <field name="basic_info" readable="1" type="}" writable="1"/>
+      <field name="realm" readable="1" type="struct-{const-gchar*" writable="1"/>
+      <field name="allow_algorithms" readable="1" type="guint" writable="1"/>
+      <field name="force_integrity" readable="1" type="gboolean" writable="1"/>
+      <field name="digest_info" readable="1" type="}" writable="1"/>
+      <method name="challenge" symbol="soup_server_auth_context_challenge">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="auth_ctx" type="SoupServerAuthContext*"/>
+          <parameter name="msg" type="SoupMessage*"/>
+          <parameter name="header_name" type="gchar*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct get-type="" name="SoupServerAuthDigest" type-name="SoupServerAuthDigest">
+      <field name="type" readable="1" type="SoupAuthType" writable="1"/>
+      <field name="algorithm" readable="1" type="SoupDigestAlgorithm" writable="1"/>
+      <field name="integrity" readable="1" type="gboolean" writable="1"/>
+      <field name="realm" readable="1" type="const-gchar*" writable="1"/>
+      <field name="user" readable="1" type="const-gchar*" writable="1"/>
+      <field name="nonce" readable="1" type="const-gchar*" writable="1"/>
+      <field name="nonce_count" readable="1" type="gint" writable="1"/>
+      <field name="cnonce" readable="1" type="const-gchar*" writable="1"/>
+      <field name="digest_uri" readable="1" type="const-gchar*" writable="1"/>
+      <field name="digest_response" readable="1" type="const-gchar*" writable="1"/>
+      <field name="request_method" readable="1" type="const-gchar*" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupServerContext" type-name="SoupServerContext">
+      <field name="msg" readable="1" type="SoupMessage*" writable="1"/>
+      <field name="path" readable="1" type="char*" writable="1"/>
+      <field name="method_id" readable="1" type="SoupMethodId" writable="1"/>
+      <field name="auth" readable="1" type="SoupServerAuth*" writable="1"/>
+      <field name="server" readable="1" type="SoupServer*" writable="1"/>
+      <field name="handler" readable="1" type="SoupServerHandler*" writable="1"/>
+      <field name="sock" readable="1" type="SoupSocket*" writable="1"/>
+      <method name="get_client_address" symbol="soup_server_context_get_client_address">
+        <return-type type="SoupAddress*"/>
+        <parameters>
+          <parameter name="ctx" type="SoupServerContext*"/>
+        </parameters>
+      </method>
+      <method name="get_client_host" symbol="soup_server_context_get_client_host">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="ctx" type="SoupServerContext*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct get-type="" name="SoupServerHandler" type-name="SoupServerHandler">
+      <field name="path" readable="1" type="char*" writable="1"/>
+      <field name="auth_ctx" readable="1" type="SoupServerAuthContext*" writable="1"/>
+      <field name="callback" readable="1" type="SoupServerCallbackFn" writable="1"/>
+      <field name="unregister" readable="1" type="SoupServerUnregisterFn" writable="1"/>
+      <field name="user_data" readable="1" type="gpointer" writable="1"/>
+    </struct>
+    <struct get-type="" name="SoupUri" opaque="true" type-name="SoupUri">
+      <field access="public" name="protocol" readable="1" type="SoupProtocol" writable="1" writeable="true"/>
+      <field access="public" name="user" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="passwd" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="host" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="port" readable="1" type="guint" writable="1" writeable="true"/>
+      <field access="public" name="path" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="query" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="fragment" readable="1" type="char*" writable="1" writeable="true"/>
+      <field access="public" name="broken_encoding" readable="1" type="gboolean" writable="1" writeable="true"/>
+      <method name="copy" symbol="soup_uri_copy">
+        <return-type type="SoupUri*"/>
+        <parameters>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="copy_root" symbol="soup_uri_copy_root">
+        <return-type type="SoupUri*"/>
+        <parameters>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="decode" symbol="soup_uri_decode">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="part" type="char*"/>
+        </parameters>
+      </method>
+      <method name="encode" symbol="soup_uri_encode">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="part" type="const-char*"/>
+          <parameter name="escape_extra" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="equal" symbol="soup_uri_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="uri1" type="const-SoupUri*"/>
+          <parameter name="uri2" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="free" symbol="soup_uri_free">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="uri" type="SoupUri*"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="soup_uri_new">
+        <return-type type="SoupUri*"/>
+        <parameters>
+          <parameter name="uri_string" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="new_with_base" symbol="soup_uri_new_with_base">
+        <return-type type="SoupUri*"/>
+        <parameters>
+          <parameter name="base" type="const-SoupUri*"/>
+          <parameter name="uri_string" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="to_string" symbol="soup_uri_to_string">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="uri" type="const-SoupUri*"/>
+          <parameter name="just_path" type="gboolean"/>
+        </parameters>
+      </method>
+      <method name="uses_default_port" symbol="soup_uri_uses_default_port">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="uri" type="const-SoupUri*"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="add_idle" symbol="soup_add_idle">
+      <return-type type="GSource*"/>
+      <parameters>
+        <parameter name="async_context" type="GMainContext*"/>
+        <parameter name="function" type="GSourceFunc"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </function>
+    <function name="add_io_watch" symbol="soup_add_io_watch">
+      <return-type type="GSource*"/>
+      <parameters>
+        <parameter name="async_context" type="GMainContext*"/>
+        <parameter name="chan" type="GIOChannel*"/>
+        <parameter name="condition" type="GIOCondition"/>
+        <parameter name="function" type="GIOFunc"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </function>
+    <function name="add_timeout" symbol="soup_add_timeout">
+      <return-type type="GSource*"/>
+      <parameters>
+        <parameter name="async_context" type="GMainContext*"/>
+        <parameter name="interval" type="guint"/>
+        <parameter name="function" type="GSourceFunc"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </function>
+    <struct name="SoupDate">
+      <method name="generate" symbol="soup_date_generate">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="when" type="time_t"/>
+        </parameters>
+      </method>
+      <method name="iso8601_parse" symbol="soup_date_iso8601_parse">
+        <return-type type="time_t"/>
+        <parameters>
+          <parameter name="timestamp" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="parse" symbol="soup_date_parse">
+        <return-type type="time_t"/>
+        <parameters>
+          <parameter name="timestamp" type="const-char*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="SoupDns">
+      <method name="init" symbol="soup_dns_init">
+        <return-type type="void"/>
+      </method>
+      <method name="ntop" symbol="soup_dns_ntop">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="sa" type="sockaddr*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="SoupHeader">
+      <method name="param_copy_token" symbol="soup_header_param_copy_token">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="tokens" type="GHashTable*"/>
+          <parameter name="t" type="char*"/>
+        </parameters>
+      </method>
+      <method name="param_decode_token" symbol="soup_header_param_decode_token">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="in" type="char**"/>
+        </parameters>
+      </method>
+      <method name="param_destroy_hash" symbol="soup_header_param_destroy_hash">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="table" type="GHashTable*"/>
+        </parameters>
+      </method>
+      <method name="param_parse_list" symbol="soup_header_param_parse_list">
+        <return-type type="GHashTable*"/>
+        <parameters>
+          <parameter name="header" type="const-char*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="SoupHeaders">
+      <method name="parse_request" symbol="soup_headers_parse_request">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="str" type="const-char*"/>
+          <parameter name="len" type="int"/>
+          <parameter name="dest" type="GHashTable*"/>
+          <parameter name="req_method" type="char**"/>
+          <parameter name="req_path" type="char**"/>
+          <parameter name="ver" type="SoupHttpVersion*"/>
+        </parameters>
+      </method>
+      <method name="parse_response" symbol="soup_headers_parse_response">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="str" type="const-char*"/>
+          <parameter name="len" type="int"/>
+          <parameter name="dest" type="GHashTable*"/>
+          <parameter name="ver" type="SoupHttpVersion*"/>
+          <parameter name="status_code" type="guint*"/>
+          <parameter name="reason_phrase" type="char**"/>
+        </parameters>
+      </method>
+      <method name="parse_status_line" symbol="soup_headers_parse_status_line">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="status_line" type="const-char*"/>
+          <parameter name="ver" type="SoupHttpVersion*"/>
+          <parameter name="status_code" type="guint*"/>
+          <parameter name="reason_phrase" type="char**"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="method_get_id" symbol="soup_method_get_id">
+      <return-type type="SoupMethodId"/>
+      <parameters>
+        <parameter name="method" type="const-char*"/>
+      </parameters>
+    </function>
+    <function name="mktime_utc" symbol="soup_mktime_utc">
+      <return-type type="time_t"/>
+      <parameters>
+        <parameter name="tm" type="tm*"/>
+      </parameters>
+    </function>
+    <function name="signal_connect_once" symbol="soup_signal_connect_once">
+      <return-type type="guint"/>
+      <parameters>
+        <parameter name="instance" type="gpointer"/>
+        <parameter name="detailed_signal" type="const-char*"/>
+        <parameter name="c_handler" type="GCallback"/>
+        <parameter name="data" type="gpointer"/>
+      </parameters>
+    </function>
+    <struct name="SoupSoap">
+      <method name="parameter_get_first_child" symbol="soup_soap_parameter_get_first_child">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_first_child_by_name" symbol="soup_soap_parameter_get_first_child_by_name">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_int_value" symbol="soup_soap_parameter_get_int_value">
+        <return-type type="int"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_name" symbol="soup_soap_parameter_get_name">
+        <return-type type="const-char*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_next_child" symbol="soup_soap_parameter_get_next_child">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_next_child_by_name" symbol="soup_soap_parameter_get_next_child_by_name">
+        <return-type type="SoupSoapParameter*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+          <parameter name="name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_property" symbol="soup_soap_parameter_get_property">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+          <parameter name="prop_name" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="parameter_get_string_value" symbol="soup_soap_parameter_get_string_value">
+        <return-type type="char*"/>
+        <parameters>
+          <parameter name="param" type="SoupSoapParameter*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="SoupSsl">
+      <method name="error_quark" symbol="soup_ssl_error_quark">
+        <return-type type="GQuark"/>
+      </method>
+      <method name="free_client_credentials" symbol="soup_ssl_free_client_credentials">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="creds" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="free_server_credentials" symbol="soup_ssl_free_server_credentials">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="creds" type="gpointer"/>
+        </parameters>
+      </method>
+      <method name="get_client_credentials" symbol="soup_ssl_get_client_credentials">
+        <return-type type="gpointer"/>
+        <parameters>
+          <parameter name="ca_file" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="get_server_credentials" symbol="soup_ssl_get_server_credentials">
+        <return-type type="gpointer"/>
+        <parameters>
+          <parameter name="cert_file" type="const-char*"/>
+          <parameter name="key_file" type="const-char*"/>
+        </parameters>
+      </method>
+      <method name="wrap_iochannel" symbol="soup_ssl_wrap_iochannel">
+        <return-type type="GIOChannel*"/>
+        <parameters>
+          <parameter name="sock" type="GIOChannel*"/>
+          <parameter name="type" type="SoupSSLType"/>
+          <parameter name="remote_host" type="const-char*"/>
+          <parameter name="credentials" type="gpointer"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="status_get_phrase" symbol="soup_status_get_phrase">
+      <return-type type="const-char*"/>
+      <parameters>
+        <parameter name="status_code" type="guint"/>
+      </parameters>
+    </function>
+    <struct name="SoupStr">
+      <method name="case_equal" symbol="soup_str_case_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="v1" type="gconstpointer"/>
+          <parameter name="v2" type="gconstpointer"/>
+        </parameters>
+      </method>
+      <method name="case_hash" symbol="soup_str_case_hash">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="key" type="gconstpointer"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="xml_real_node" symbol="soup_xml_real_node">
+      <return-type type="xmlNode*"/>
+      <parameters>
+        <parameter name="node" type="xmlNode*"/>
+      </parameters>
+    </function>
+    <struct name="SoupXmlrpc">
+      <method name="value_array_get_iterator" symbol="soup_xmlrpc_value_array_get_iterator">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="iter" type="SoupXmlrpcValueArrayIterator**"/>
+        </parameters>
+      </method>
+      <method name="value_array_iterator_get_value" symbol="soup_xmlrpc_value_array_iterator_get_value">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="iter" type="SoupXmlrpcValueArrayIterator*"/>
+          <parameter name="value" type="SoupXmlrpcValue**"/>
+        </parameters>
+      </method>
+      <method name="value_array_iterator_next" symbol="soup_xmlrpc_value_array_iterator_next">
+        <return-type type="SoupXmlrpcValueArrayIterator*"/>
+        <parameters>
+          <parameter name="iter" type="SoupXmlrpcValueArrayIterator*"/>
+        </parameters>
+      </method>
+      <method name="value_array_iterator_prev" symbol="soup_xmlrpc_value_array_iterator_prev">
+        <return-type type="SoupXmlrpcValueArrayIterator*"/>
+        <parameters>
+          <parameter name="iter" type="SoupXmlrpcValueArrayIterator*"/>
+        </parameters>
+      </method>
+      <method name="value_dump" symbol="soup_xmlrpc_value_dump">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+        </parameters>
+      </method>
+      <method name="value_get_base64" symbol="soup_xmlrpc_value_get_base64">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="data" type="GByteArray**"/>
+        </parameters>
+      </method>
+      <method name="value_get_boolean" symbol="soup_xmlrpc_value_get_boolean">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="b" type="gboolean*"/>
+        </parameters>
+      </method>
+      <method name="value_get_datetime" symbol="soup_xmlrpc_value_get_datetime">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="timeval" type="time_t*"/>
+        </parameters>
+      </method>
+      <method name="value_get_double" symbol="soup_xmlrpc_value_get_double">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="b" type="double*"/>
+        </parameters>
+      </method>
+      <method name="value_get_int" symbol="soup_xmlrpc_value_get_int">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="i" type="long*"/>
+        </parameters>
+      </method>
+      <method name="value_get_string" symbol="soup_xmlrpc_value_get_string">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="str" type="char**"/>
+        </parameters>
+      </method>
+      <method name="value_get_struct" symbol="soup_xmlrpc_value_get_struct">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+          <parameter name="table" type="GHashTable**"/>
+        </parameters>
+      </method>
+      <method name="value_get_type" symbol="soup_xmlrpc_value_get_type">
+        <return-type type="SoupXmlrpcValueType"/>
+        <parameters>
+          <parameter name="value" type="SoupXmlrpcValue*"/>
+        </parameters>
+      </method>
+    </struct>
+  </namespace>
+</api>
diff --git a/vapi/packages/libsoup-2.2/libsoup-2.2.metadata b/vapi/packages/libsoup-2.2/libsoup-2.2.metadata
new file mode 100644 (file)
index 0000000..cd6920b
--- /dev/null
@@ -0,0 +1,27 @@
+Soup cheader_filename="libsoup/soup.h"
+soup_add_io_watch hidden="1"
+soup_address_new_from_sockaddr hidden="1"
+soup_dns_lookup_address hidden="1"
+soup_dns_ntop hidden="1"
+SoupMessage::finished has_emitter="1"
+soup_message_foreach_header hidden="1"
+SoupMessage::got_body has_emitter="1"
+SoupMessage::got_chunk has_emitter="1"
+SoupMessage::got_headers has_emitter="1"
+SoupMessage::got_informational has_emitter="1"
+SoupMessage::restarted has_emitter="1"
+SoupMessage::wrote_body has_emitter="1"
+SoupMessage::wrote_chunk has_emitter="1"
+SoupMessage::wrote_headers has_emitter="1"
+SoupMessage::wrote_informational has_emitter="1"
+soup_mktime_utc hidden="1"
+soup_server_new ellipsis="1"
+SoupServerAuthContext.realm hidden="1"
+SoupSoap hidden="1"
+SoupSoapMessage hidden="1"
+SoupSoapResponse hidden="1"
+soup_xml_real_node hidden="1"
+SoupXmlrpc hidden="1"
+SoupXmlrpcMessage hidden="1"
+SoupXmlrpcResponse hidden="1"
+
diff --git a/vapi/packages/libsoup-2.2/libsoup-2.2.namespace b/vapi/packages/libsoup-2.2/libsoup-2.2.namespace
new file mode 100644 (file)
index 0000000..6f78284
--- /dev/null
@@ -0,0 +1 @@
+Soup
index ebcb536724b3a678ffd52b295a75bd06e01f8f4b..0f227f0a093a4b2b22bc2ad5f8e7d88683ea1bb0 100644 (file)
@@ -208,6 +208,9 @@ public class Vala.GIdlParser : CodeVisitor {
                                current_source_file.add_node (en);
                        } else if (node.type == IdlNodeTypeId.OBJECT) {
                                var cl = parse_object ((IdlNodeInterface) node);
+                               if (cl == null) {
+                                       continue;
+                               }
                                cl.name = fix_type_name (cl.name, module);
                                ns.add_class (cl);
                                current_source_file.add_node (cl);
@@ -285,6 +288,10 @@ public class Vala.GIdlParser : CodeVisitor {
                                var nv = attr.split ("=", 2);
                                if (nv[0] == "is_value_type" && eval (nv[1]) == "1") {
                                        st.set_is_reference_type (false);
+                               } else if (nv[0] == "hidden") {
+                                       if (eval (nv[1]) == "1") {
+                                               return null;
+                                       }
                                }
                        }
                }
@@ -391,6 +398,10 @@ public class Vala.GIdlParser : CodeVisitor {
                                var nv = attr.split ("=", 2);
                                if (nv[0] == "cheader_filename") {
                                        cl.add_cheader_filename (eval (nv[1]));
+                               } else if (nv[0] == "hidden") {
+                                       if (eval (nv[1]) == "1") {
+                                               return null;
+                                       }
                                }
                        }
                }
@@ -683,6 +694,9 @@ public class Vala.GIdlParser : CodeVisitor {
                        type.type_name = "int";
                } else if (n == "ClutterFixed" || n == "ClutterUnit" || n == "ClutterAngle") {
                        type.type_name = "int32";
+               } else if (n == "SoupProtocol") {
+                       type.namespace_name = "GLib";
+                       type.type_name = "Quark";
                } else if (n == "GStrv") {
                        type.type_name = "string";
                        type.array_rank = 1;