create bindings for gnet-2.0 first attempt to generate gnet-2.0 bindings.
authorMathias Hasselmann <mathias.hasselmann@gmx.de>
Thu, 6 Sep 2007 08:23:51 +0000 (08:23 +0000)
committerMathias Hasselmann <hasselmm@src.gnome.org>
Thu, 6 Sep 2007 08:23:51 +0000 (08:23 +0000)
2007-09-06  Mathias Hasselmann  <mathias.hasselmann@gmx.de>

* vapi/packages/gnet-2.0/*: create bindings for gnet-2.0
* vapi/gnet-2.0.vala: first attempt to generate gnet-2.0 bindings.
  not adding to Makefile.am for now, as this VAPI is untested,
  well and because gnet-2.0 uses depricated glib API

svn path=/trunk/; revision=585

ChangeLog
vapi/gnet-2.0.vala [new file with mode: 0644]
vapi/packages/gnet-2.0/gnet-2.0-custom.vala [new file with mode: 0644]
vapi/packages/gnet-2.0/gnet-2.0.files [new file with mode: 0644]
vapi/packages/gnet-2.0/gnet-2.0.gidl [new file with mode: 0644]
vapi/packages/gnet-2.0/gnet-2.0.metadata [new file with mode: 0644]
vapi/packages/gnet-2.0/gnet-2.0.namespace [new file with mode: 0644]

index 3457be6..c262936 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2007-09-06  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
 
+       * vapi/packages/gnet-2.0/*: create bindings for gnet-2.0
+       * vapi/gnet-2.0.vala: first attempt to generate gnet-2.0 bindings. 
+         not adding to Makefile.am for now, as this VAPI is untested, 
+         well and because gnet-2.0 uses depricated glib API
+
+2007-09-06  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
+
        * vala/valanamespace.vala, vapigen/valagidlparser.vala:
          support multiple namespace mappings for binding really broken
          libraries like gnet-2.0. support shell patterns to lookup attributes
diff --git a/vapi/gnet-2.0.vala b/vapi/gnet-2.0.vala
new file mode 100644 (file)
index 0000000..1bd00e6
--- /dev/null
@@ -0,0 +1,582 @@
+/* gnet-2.0.vala generated by lt-vapigen, do not modify. */
+
+[CCode (cprefix = "G", lower_case_cprefix = "gnet_")]
+namespace GNet {
+       [CCode (cprefix = "GNET_IO_ERROR_", cheader_filename = "gnet-2.0-custom.h")]
+       public enum IOError {
+               NONE,
+               AGAIN,
+               INVAL,
+               UNKNOWN,
+       }
+       [CCode (cprefix = "GNET_CONN_", cheader_filename = "gnet-2.0.h")]
+       public enum ConnEventType {
+               ERROR,
+               CONNECT,
+               CLOSE,
+               TIMEOUT,
+               READ,
+               WRITE,
+               READABLE,
+               WRITABLE,
+       }
+       [CCode (cprefix = "GNET_CONN_HTTP_ERROR_", cheader_filename = "gnet-2.0.h")]
+       public enum ConnHttpError {
+               UNSPECIFIED,
+               PROTOCOL_UNSUPPORTED,
+       }
+       [CCode (cprefix = "GNET_CONN_HTTP_", cheader_filename = "gnet-2.0.h")]
+       public enum ConnHttpEventType {
+               RESOLVED,
+               CONNECTED,
+               RESPONSE,
+               REDIRECT,
+               DATA_PARTIAL,
+               DATA_COMPLETE,
+               TIMEOUT,
+               ERROR,
+       }
+       [CCode (cprefix = "GNET_CONN_HTTP_FLAG_SKIP_HEADER_", cheader_filename = "gnet-2.0.h")]
+       public enum ConnHttpHeaderFlags {
+               CHECK,
+       }
+       [CCode (cprefix = "GNET_CONN_HTTP_METHOD_", cheader_filename = "gnet-2.0.h")]
+       public enum ConnHttpMethod {
+               GET,
+               POST,
+       }
+       [CCode (cprefix = "GIPV6_POLICY_", cheader_filename = "gnet-2.0.h")]
+       public enum IPv6Policy {
+               IPV4_THEN_IPV6,
+               IPV6_THEN_IPV4,
+               IPV4_ONLY,
+               IPV6_ONLY,
+       }
+       [CCode (cprefix = "GNET_TOS_", cheader_filename = "gnet-2.0.h")]
+       public enum TOS {
+               NONE,
+               LOWDELAY,
+               THROUGHPUT,
+               RELIABILITY,
+               LOWCOST,
+       }
+       [CCode (cprefix = "GTCP_SOCKET_CONNECT_ASYNC_STATUS_", cheader_filename = "gnet-2.0.h")]
+       public enum TcpSocketConnectAsyncStatus {
+               OK,
+               INETADDR_ERROR,
+               TCP_ERROR,
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class NetTOS {
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class InetAddrGetNameAsyncID {
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class InetAddrNewAsyncID {
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class InetAddrNewListAsyncID {
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class TcpSocketConnectAsyncID {
+       }
+       [CCode (cheader_filename = "gnet-2.0-custom.h")]
+       public class TcpSocketNewAsyncID {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class Conn {
+               public weak string hostname;
+               public int port;
+               public weak GLib.IOChannel iochannel;
+               public weak GNet.TcpSocket socket;
+               public weak GNet.InetAddr inetaddr;
+               public uint ref_count;
+               public uint ref_count_internal;
+               public weak GNet.TcpSocketConnectAsyncID connect_id;
+               public weak GNet.TcpSocketNewAsyncID new_id;
+               public weak GLib.List write_queue;
+               public uint bytes_written;
+               public weak string buffer;
+               public uint length;
+               public uint bytes_read;
+               public bool read_eof;
+               public weak GLib.List read_queue;
+               public uint process_buffer_timeout;
+               public bool watch_readable;
+               public bool watch_writable;
+               public uint watch_flags;
+               public uint watch;
+               public uint timer;
+               public GNet.ConnFunc func;
+               public pointer user_data;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnEvent {
+               public GNet.ConnEventType type;
+               public weak string buffer;
+               public int length;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttp {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEvent {
+               public GNet.ConnHttpEventType type;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEventData {
+               public uint64 content_length;
+               public uint64 data_received;
+               public weak string buffer;
+               public ulong buffer_length;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEventError {
+               public GNet.ConnHttpError code;
+               public weak string message;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEventRedirect {
+               public uint num_redirects;
+               public uint max_redirects;
+               public weak string new_location;
+               public bool auto_redirect;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEventResolved {
+               public weak GNet.InetAddr ia;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class ConnHttpEventResponse {
+               public uint response_code;
+               public weak string header_fields;
+               public weak string header_values;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class InetAddr {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class MD5 {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class McastSocket {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class SHA {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class Server {
+               public weak GNet.InetAddr iface;
+               public int port;
+               public weak GNet.TcpSocket socket;
+               public uint ref_count;
+               public GNet.ServerFunc func;
+               public pointer user_data;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class TcpSocket {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class URI {
+               public weak string scheme;
+               public weak string userinfo;
+               public weak string hostname;
+               public int port;
+               public weak string path;
+               public weak string query;
+               public weak string fragment;
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class UdpSocket {
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class UnixSocket {
+       }
+       [CCode (ref_function = "gnet_conn_ref", unref_function = "gnet_conn_unref", cheader_filename = "gnet-2.0.h")]
+       public class netConn {
+               [CCode (cname = "gnet_conn_connect")]
+               public static void connect (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_delete")]
+               public static void delete (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_disconnect")]
+               public static void disconnect (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_http_cancel")]
+               public static void http_cancel (GNet.ConnHttp conn);
+               [CCode (cname = "gnet_conn_http_delete")]
+               public static void http_delete (GNet.ConnHttp conn);
+               [CCode (cname = "gnet_conn_http_new")]
+               public static weak GNet.ConnHttp http_new ();
+               [CCode (cname = "gnet_conn_http_run")]
+               public static bool http_run (GNet.ConnHttp conn, GNet.ConnHttpFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_http_run_async")]
+               public static void http_run_async (GNet.ConnHttp conn, GNet.ConnHttpFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_http_set_header")]
+               public static bool http_set_header (GNet.ConnHttp conn, string field, string value, GNet.ConnHttpHeaderFlags flags);
+               [CCode (cname = "gnet_conn_http_set_max_redirects")]
+               public static void http_set_max_redirects (GNet.ConnHttp conn, uint num);
+               [CCode (cname = "gnet_conn_http_set_method")]
+               public static bool http_set_method (GNet.ConnHttp conn, GNet.ConnHttpMethod method, string post_data, ulong post_data_len);
+               [CCode (cname = "gnet_conn_http_set_timeout")]
+               public static void http_set_timeout (GNet.ConnHttp conn, uint timeout);
+               [CCode (cname = "gnet_conn_http_set_uri")]
+               public static bool http_set_uri (GNet.ConnHttp conn, string uri);
+               [CCode (cname = "gnet_conn_http_set_user_agent")]
+               public static bool http_set_user_agent (GNet.ConnHttp conn, string agent);
+               [CCode (cname = "gnet_conn_http_steal_buffer")]
+               public static bool http_steal_buffer (GNet.ConnHttp conn, string buffer, ulong length);
+               [CCode (cname = "gnet_conn_is_connected")]
+               public static bool is_connected (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_new")]
+               public netConn (string hostname, int port, GNet.ConnFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_new_inetaddr")]
+               public netConn.from_inetaddr (GNet.InetAddr inetaddr, GNet.ConnFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_new_socket")]
+               public netConn.from_socket (GNet.TcpSocket socket, GNet.ConnFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_read")]
+               public static void read (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_readline")]
+               public static void readline (GNet.Conn conn);
+               [CCode (cname = "gnet_conn_readn")]
+               public static void readn (GNet.Conn conn, int length);
+               [CCode (cname = "gnet_conn_set_callback")]
+               public static void set_callback (GNet.Conn conn, GNet.ConnFunc func, pointer user_data);
+               [CCode (cname = "gnet_conn_set_watch_error")]
+               public static void set_watch_error (GNet.Conn conn, bool enable);
+               [CCode (cname = "gnet_conn_set_watch_readable")]
+               public static void set_watch_readable (GNet.Conn conn, bool enable);
+               [CCode (cname = "gnet_conn_set_watch_writable")]
+               public static void set_watch_writable (GNet.Conn conn, bool enable);
+               [CCode (cname = "gnet_conn_timeout")]
+               public static void timeout (GNet.Conn conn, uint timeout);
+               [CCode (cname = "gnet_conn_write")]
+               public static void write (GNet.Conn conn, string buffer, int length);
+       }
+       [CCode (ref_function = "gnet_inetaddr_ref", unref_function = "gnet_inetaddr_unref", cheader_filename = "gnet-2.0.h")]
+       public class netInetaddr {
+               [CCode (cname = "gnet_inetaddr_autodetect_internet_interface")]
+               public static weak GNet.InetAddr autodetect_internet_interface ();
+               [CCode (cname = "gnet_inetaddr_clone")]
+               public static weak GNet.InetAddr clone (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_delete")]
+               public static void delete (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_delete_list")]
+               public static void delete_list (GLib.List list);
+               [CCode (cname = "gnet_inetaddr_equal")]
+               public static bool equal (pointer p1, pointer p2);
+               [CCode (cname = "gnet_inetaddr_get_bytes")]
+               public static void get_bytes (GNet.InetAddr inetaddr, string buffer);
+               [CCode (cname = "gnet_inetaddr_get_canonical_name")]
+               public static weak string get_canonical_name (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_get_host_addr")]
+               public static weak GNet.InetAddr get_host_addr ();
+               [CCode (cname = "gnet_inetaddr_get_host_name")]
+               public static weak string get_host_name ();
+               [CCode (cname = "gnet_inetaddr_get_interface_to")]
+               public static weak GNet.InetAddr get_interface_to (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_get_internet_interface")]
+               public static weak GNet.InetAddr get_internet_interface ();
+               [CCode (cname = "gnet_inetaddr_get_length")]
+               public static int get_length (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_get_name")]
+               public static weak string get_name (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_get_name_async")]
+               public static weak GNet.InetAddrGetNameAsyncID get_name_async (GNet.InetAddr inetaddr, GNet.InetAddrGetNameAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_inetaddr_get_name_async_cancel")]
+               public static void get_name_async_cancel (GNet.InetAddrGetNameAsyncID id);
+               [CCode (cname = "gnet_inetaddr_get_name_nonblock")]
+               public static weak string get_name_nonblock (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_get_port")]
+               public static int get_port (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_hash")]
+               public static uint hash (pointer p);
+               [CCode (cname = "gnet_inetaddr_is_broadcast")]
+               public static bool is_broadcast (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_canonical")]
+               public static bool is_canonical (string hostname);
+               [CCode (cname = "gnet_inetaddr_is_internet")]
+               public static bool is_internet (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_internet_domainname")]
+               public static bool is_internet_domainname (string name);
+               [CCode (cname = "gnet_inetaddr_is_ipv4")]
+               public static bool is_ipv4 (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_ipv6")]
+               public static bool is_ipv6 (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_loopback")]
+               public static bool is_loopback (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_multicast")]
+               public static bool is_multicast (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_private")]
+               public static bool is_private (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_is_reserved")]
+               public static bool is_reserved (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_inetaddr_list_interfaces")]
+               public static weak GLib.List list_interfaces ();
+               [CCode (cname = "gnet_inetaddr_new")]
+               public netInetaddr (string hostname, int port);
+               [CCode (cname = "gnet_inetaddr_new_async")]
+               public netInetaddr.async (string hostname, int port, GNet.InetAddrNewAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_inetaddr_new_async_cancel")]
+               public netInetaddr.async_cancel (GNet.InetAddrNewAsyncID id);
+               [CCode (cname = "gnet_inetaddr_new_bytes")]
+               public netInetaddr.bytes (string bytes, uint length);
+               [CCode (cname = "gnet_inetaddr_new_list")]
+               public netInetaddr.list (string hostname, int port);
+               [CCode (cname = "gnet_inetaddr_new_list_async")]
+               public netInetaddr.list_async (string hostname, int port, GNet.InetAddrNewListAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_inetaddr_new_list_async_cancel")]
+               public netInetaddr.list_async_cancel (GNet.InetAddrNewListAsyncID id);
+               [CCode (cname = "gnet_inetaddr_new_nonblock")]
+               public netInetaddr.nonblock (string hostname, int port);
+               [CCode (cname = "gnet_inetaddr_noport_equal")]
+               public static bool noport_equal (pointer p1, pointer p2);
+               [CCode (cname = "gnet_inetaddr_set_bytes")]
+               public static void set_bytes (GNet.InetAddr inetaddr, string bytes, int length);
+               [CCode (cname = "gnet_inetaddr_set_port")]
+               public static void set_port (GNet.InetAddr inetaddr, int port);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netIo {
+               [CCode (cname = "gnet_io_channel_readline")]
+               public static GNet.IOError channel_readline (GLib.IOChannel channel, string buffer, ulong length, ulong bytes_readp);
+               [CCode (cname = "gnet_io_channel_readline_strdup")]
+               public static GNet.IOError channel_readline_strdup (GLib.IOChannel channel, string bufferp, ulong bytes_readp);
+               [CCode (cname = "gnet_io_channel_readn")]
+               public static GNet.IOError channel_readn (GLib.IOChannel channel, pointer buffer, ulong length, ulong bytes_readp);
+               [CCode (cname = "gnet_io_channel_writen")]
+               public static GNet.IOError channel_writen (GLib.IOChannel channel, pointer buffer, ulong length, ulong bytes_writtenp);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netMcast {
+               [CCode (cname = "gnet_mcast_socket_delete")]
+               public static void socket_delete (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_get_io_channel")]
+               public static weak GLib.IOChannel socket_get_io_channel (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_get_local_inetaddr")]
+               public static weak GNet.InetAddr socket_get_local_inetaddr (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_get_ttl")]
+               public static int socket_get_ttl (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_has_packet")]
+               public static bool socket_has_packet (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_is_loopback")]
+               public static int socket_is_loopback (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_join_group")]
+               public static int socket_join_group (GNet.McastSocket socket, GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_mcast_socket_leave_group")]
+               public static int socket_leave_group (GNet.McastSocket socket, GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_mcast_socket_new")]
+               public static weak GNet.McastSocket socket_new ();
+               [CCode (cname = "gnet_mcast_socket_new_full")]
+               public static weak GNet.McastSocket socket_new_full (GNet.InetAddr iface, int port);
+               [CCode (cname = "gnet_mcast_socket_new_with_port")]
+               public static weak GNet.McastSocket socket_new_with_port (int port);
+               [CCode (cname = "gnet_mcast_socket_receive")]
+               public static int socket_receive (GNet.McastSocket socket, string buffer, int length, GNet.InetAddr src);
+               [CCode (cname = "gnet_mcast_socket_ref")]
+               public static void socket_ref (GNet.McastSocket socket);
+               [CCode (cname = "gnet_mcast_socket_send")]
+               public static int socket_send (GNet.McastSocket socket, string buffer, int length, GNet.InetAddr dst);
+               [CCode (cname = "gnet_mcast_socket_set_loopback")]
+               public static int socket_set_loopback (GNet.McastSocket socket, bool enable);
+               [CCode (cname = "gnet_mcast_socket_set_ttl")]
+               public static int socket_set_ttl (GNet.McastSocket socket, int ttl);
+               [CCode (cname = "gnet_mcast_socket_unref")]
+               public static void socket_unref (GNet.McastSocket socket);
+       }
+       [CCode (ref_function = "gnet_server_ref", unref_function = "gnet_server_unref", cheader_filename = "gnet-2.0.h")]
+       public class netServer {
+               [CCode (cname = "gnet_server_delete")]
+               public static void delete (GNet.Server server);
+               [CCode (cname = "gnet_server_new")]
+               public netServer (GNet.InetAddr iface, int port, GNet.ServerFunc func, pointer user_data);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netSha {
+               [CCode (cname = "gnet_sha_clone")]
+               public static weak GNet.SHA clone (GNet.SHA sha);
+               [CCode (cname = "gnet_sha_copy_string")]
+               public static void copy_string (GNet.SHA sha, string buffer);
+               [CCode (cname = "gnet_sha_delete")]
+               public static void delete (GNet.SHA sha);
+               [CCode (cname = "gnet_sha_equal")]
+               public static bool equal (pointer p1, pointer p2);
+               [CCode (cname = "gnet_sha_final")]
+               public static void final (GNet.SHA sha);
+               [CCode (cname = "gnet_sha_get_digest")]
+               public static weak string get_digest (GNet.SHA sha);
+               [CCode (cname = "gnet_sha_get_string")]
+               public static weak string get_string (GNet.SHA sha);
+               [CCode (cname = "gnet_sha_hash")]
+               public static uint hash (pointer p);
+               [CCode (cname = "gnet_sha_new")]
+               public netSha (string buffer, uint length);
+               [CCode (cname = "gnet_sha_new_incremental")]
+               public netSha.incremental ();
+               [CCode (cname = "gnet_sha_new_string")]
+               public netSha.string (string str);
+               [CCode (cname = "gnet_sha_update")]
+               public static void update (GNet.SHA sha, string buffer, uint length);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netSocks {
+               [CCode (cname = "gnet_socks_get_enabled")]
+               public static bool get_enabled ();
+               [CCode (cname = "gnet_socks_get_server")]
+               public static weak GNet.InetAddr get_server ();
+               [CCode (cname = "gnet_socks_get_version")]
+               public static int get_version ();
+               [CCode (cname = "gnet_socks_set_enabled")]
+               public static void set_enabled (bool enabled);
+               [CCode (cname = "gnet_socks_set_server")]
+               public static void set_server (GNet.InetAddr inetaddr);
+               [CCode (cname = "gnet_socks_set_version")]
+               public static void set_version (int version);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netTcp {
+               [CCode (cname = "gnet_tcp_socket_connect")]
+               public static weak GNet.TcpSocket socket_connect (string hostname, int port);
+               [CCode (cname = "gnet_tcp_socket_connect_async")]
+               public static weak GNet.TcpSocketConnectAsyncID socket_connect_async (string hostname, int port, GNet.TcpSocketConnectAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_tcp_socket_connect_async_cancel")]
+               public static void socket_connect_async_cancel (GNet.TcpSocketConnectAsyncID id);
+               [CCode (cname = "gnet_tcp_socket_delete")]
+               public static void socket_delete (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_get_io_channel")]
+               public static weak GLib.IOChannel socket_get_io_channel (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_get_local_inetaddr")]
+               public static weak GNet.InetAddr socket_get_local_inetaddr (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_get_port")]
+               public static int socket_get_port (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_get_remote_inetaddr")]
+               public static weak GNet.InetAddr socket_get_remote_inetaddr (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_new")]
+               public static weak GNet.TcpSocket socket_new (GNet.InetAddr addr);
+               [CCode (cname = "gnet_tcp_socket_new_async")]
+               public static weak GNet.TcpSocketNewAsyncID socket_new_async (GNet.InetAddr addr, GNet.TcpSocketNewAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_tcp_socket_new_async_cancel")]
+               public static void socket_new_async_cancel (GNet.TcpSocketNewAsyncID id);
+               [CCode (cname = "gnet_tcp_socket_new_async_direct")]
+               public static weak GNet.TcpSocketNewAsyncID socket_new_async_direct (GNet.InetAddr addr, GNet.TcpSocketNewAsyncFunc func, pointer data);
+               [CCode (cname = "gnet_tcp_socket_new_direct")]
+               public static weak GNet.TcpSocket socket_new_direct (GNet.InetAddr addr);
+               [CCode (cname = "gnet_tcp_socket_ref")]
+               public static void socket_ref (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_server_accept")]
+               public static weak GNet.TcpSocket socket_server_accept (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_server_accept_async")]
+               public static void socket_server_accept_async (GNet.TcpSocket socket, GNet.TcpSocketAcceptFunc accept_func, pointer user_data);
+               [CCode (cname = "gnet_tcp_socket_server_accept_async_cancel")]
+               public static void socket_server_accept_async_cancel (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_server_accept_nonblock")]
+               public static weak GNet.TcpSocket socket_server_accept_nonblock (GNet.TcpSocket socket);
+               [CCode (cname = "gnet_tcp_socket_server_new")]
+               public static weak GNet.TcpSocket socket_server_new ();
+               [CCode (cname = "gnet_tcp_socket_server_new_full")]
+               public static weak GNet.TcpSocket socket_server_new_full (GNet.InetAddr iface, int port);
+               [CCode (cname = "gnet_tcp_socket_server_new_with_port")]
+               public static weak GNet.TcpSocket socket_server_new_with_port (int port);
+               [CCode (cname = "gnet_tcp_socket_set_tos")]
+               public static void socket_set_tos (GNet.TcpSocket socket, GNet.NetTOS tos);
+               [CCode (cname = "gnet_tcp_socket_unref")]
+               public static void socket_unref (GNet.TcpSocket socket);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netUdp {
+               [CCode (cname = "gnet_udp_socket_delete")]
+               public static void socket_delete (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_get_io_channel")]
+               public static weak GLib.IOChannel socket_get_io_channel (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_get_local_inetaddr")]
+               public static weak GNet.InetAddr socket_get_local_inetaddr (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_get_ttl")]
+               public static int socket_get_ttl (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_has_packet")]
+               public static bool socket_has_packet (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_new")]
+               public static weak GNet.UdpSocket socket_new ();
+               [CCode (cname = "gnet_udp_socket_new_full")]
+               public static weak GNet.UdpSocket socket_new_full (GNet.InetAddr iface, int port);
+               [CCode (cname = "gnet_udp_socket_new_with_port")]
+               public static weak GNet.UdpSocket socket_new_with_port (int port);
+               [CCode (cname = "gnet_udp_socket_receive")]
+               public static int socket_receive (GNet.UdpSocket socket, string buffer, int length, GNet.InetAddr src);
+               [CCode (cname = "gnet_udp_socket_ref")]
+               public static void socket_ref (GNet.UdpSocket socket);
+               [CCode (cname = "gnet_udp_socket_send")]
+               public static int socket_send (GNet.UdpSocket socket, string buffer, int length, GNet.InetAddr dst);
+               [CCode (cname = "gnet_udp_socket_set_ttl")]
+               public static int socket_set_ttl (GNet.UdpSocket socket, int ttl);
+               [CCode (cname = "gnet_udp_socket_unref")]
+               public static void socket_unref (GNet.UdpSocket socket);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netUnix {
+               [CCode (cname = "gnet_unix_socket_delete")]
+               public static void socket_delete (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_get_io_channel")]
+               public static weak GLib.IOChannel socket_get_io_channel (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_get_path")]
+               public static weak string socket_get_path (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_new")]
+               public static weak GNet.UnixSocket socket_new (string path);
+               [CCode (cname = "gnet_unix_socket_ref")]
+               public static void socket_ref (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_server_accept")]
+               public static weak GNet.UnixSocket socket_server_accept (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_server_accept_nonblock")]
+               public static weak GNet.UnixSocket socket_server_accept_nonblock (GNet.UnixSocket socket);
+               [CCode (cname = "gnet_unix_socket_server_new")]
+               public static weak GNet.UnixSocket socket_server_new (string path);
+               [CCode (cname = "gnet_unix_socket_unref")]
+               public static void socket_unref (GNet.UnixSocket socket);
+       }
+       [CCode (cheader_filename = "gnet-2.0.h")]
+       public class netUri {
+               [CCode (cname = "gnet_uri_clone")]
+               public static weak GNet.URI clone (GNet.URI uri);
+               [CCode (cname = "gnet_uri_delete")]
+               public static void delete (GNet.URI uri);
+               [CCode (cname = "gnet_uri_equal")]
+               public static bool equal (pointer p1, pointer p2);
+               [CCode (cname = "gnet_uri_escape")]
+               public static void escape (GNet.URI uri);
+               [CCode (cname = "gnet_uri_get_string")]
+               public static weak string get_string (GNet.URI uri);
+               [CCode (cname = "gnet_uri_hash")]
+               public static uint hash (pointer p);
+               [CCode (cname = "gnet_uri_new")]
+               public netUri (string uri);
+               [CCode (cname = "gnet_uri_new_fields")]
+               public netUri.fields (string scheme, string hostname, int port, string path);
+               [CCode (cname = "gnet_uri_new_fields_all")]
+               public netUri.fields_all (string scheme, string userinfo, string hostname, int port, string path, string query, string fragment);
+               [CCode (cname = "gnet_uri_set_fragment")]
+               public static void set_fragment (GNet.URI uri, string fragment);
+               [CCode (cname = "gnet_uri_set_hostname")]
+               public static void set_hostname (GNet.URI uri, string hostname);
+               [CCode (cname = "gnet_uri_set_path")]
+               public static void set_path (GNet.URI uri, string path);
+               [CCode (cname = "gnet_uri_set_port")]
+               public static void set_port (GNet.URI uri, int port);
+               [CCode (cname = "gnet_uri_set_query")]
+               public static void set_query (GNet.URI uri, string query);
+               [CCode (cname = "gnet_uri_set_scheme")]
+               public static void set_scheme (GNet.URI uri, string scheme);
+               [CCode (cname = "gnet_uri_set_userinfo")]
+               public static void set_userinfo (GNet.URI uri, string userinfo);
+               [CCode (cname = "gnet_uri_unescape")]
+               public static void unescape (GNet.URI uri);
+       }
+       public static delegate void ConnFunc (GNet.Conn conn, GNet.ConnEvent event, pointer user_data);
+       public static delegate void ConnHttpFunc (GNet.ConnHttp conn, GNet.ConnHttpEvent event, pointer user_data);
+       public static delegate void InetAddrGetNameAsyncFunc (string hostname, pointer data);
+       public static delegate void InetAddrNewAsyncFunc (GNet.InetAddr inetaddr, pointer data);
+       public static delegate void InetAddrNewListAsyncFunc (GLib.List list, pointer data);
+       public static delegate void ServerFunc (GNet.Server server, GNet.Conn conn, pointer user_data);
+       public static delegate void TcpSocketAcceptFunc (GNet.TcpSocket server, GNet.TcpSocket client, pointer data);
+       public static delegate void TcpSocketConnectAsyncFunc (GNet.TcpSocket socket, GNet.TcpSocketConnectAsyncStatus status, pointer data);
+       public static delegate void TcpSocketNewAsyncFunc (GNet.TcpSocket socket, pointer data);
+       public static bool http_get (string url, string buffer, ulong length, uint response);
+       public static int pack_strdup (string format, string bufferp);
+}
diff --git a/vapi/packages/gnet-2.0/gnet-2.0-custom.vala b/vapi/packages/gnet-2.0/gnet-2.0-custom.vala
new file mode 100644 (file)
index 0000000..6165b2b
--- /dev/null
@@ -0,0 +1,17 @@
+[CCode (cprefix = "G")]
+namespace GNet {
+       public class NetTOS  {}
+       public class InetAddrGetNameAsyncID {}
+       public class InetAddrNewAsyncID {}
+       public class InetAddrNewListAsyncID {}
+       public class TcpSocketConnectAsyncID {}
+       public class TcpSocketNewAsyncID {}
+
+       /* Deprecated glib API */
+       public enum IOError {
+               NONE,
+               AGAIN,
+               INVAL,
+               UNKNOWN
+       }
+}
diff --git a/vapi/packages/gnet-2.0/gnet-2.0.files b/vapi/packages/gnet-2.0/gnet-2.0.files
new file mode 100644 (file)
index 0000000..8eba6c8
--- /dev/null
@@ -0,0 +1 @@
+src/
diff --git a/vapi/packages/gnet-2.0/gnet-2.0.gidl b/vapi/packages/gnet-2.0/gnet-2.0.gidl
new file mode 100644 (file)
index 0000000..e0683c0
--- /dev/null
@@ -0,0 +1,1401 @@
+<?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="GNet">
+    <enum name="GConnEventType" type-name="GConnEventType" type="enum">
+      <member name="GNET_CONN_ERROR" value=""/>
+      <member name="GNET_CONN_CONNECT" value=""/>
+      <member name="GNET_CONN_CLOSE" value=""/>
+      <member name="GNET_CONN_TIMEOUT" value=""/>
+      <member name="GNET_CONN_READ" value=""/>
+      <member name="GNET_CONN_WRITE" value=""/>
+      <member name="GNET_CONN_READABLE" value=""/>
+      <member name="GNET_CONN_WRITABLE" value=""/>
+    </enum>
+    <enum name="GConnHttpError" type-name="GConnHttpError" type="enum">
+      <member name="GNET_CONN_HTTP_ERROR_UNSPECIFIED" value=""/>
+      <member name="GNET_CONN_HTTP_ERROR_PROTOCOL_UNSUPPORTED" value=""/>
+    </enum>
+    <enum name="GConnHttpEventType" type-name="GConnHttpEventType" type="enum">
+      <member name="GNET_CONN_HTTP_RESOLVED" value=""/>
+      <member name="GNET_CONN_HTTP_CONNECTED" value=""/>
+      <member name="GNET_CONN_HTTP_RESPONSE" value=""/>
+      <member name="GNET_CONN_HTTP_REDIRECT" value=""/>
+      <member name="GNET_CONN_HTTP_DATA_PARTIAL" value=""/>
+      <member name="GNET_CONN_HTTP_DATA_COMPLETE" value=""/>
+      <member name="GNET_CONN_HTTP_TIMEOUT" value=""/>
+      <member name="GNET_CONN_HTTP_ERROR" value=""/>
+    </enum>
+    <enum name="GConnHttpHeaderFlags" type-name="GConnHttpHeaderFlags" type="enum">
+      <member name="GNET_CONN_HTTP_FLAG_SKIP_HEADER_CHECK" value="1"/>
+    </enum>
+    <enum name="GConnHttpMethod" type-name="GConnHttpMethod" type="enum">
+      <member name="GNET_CONN_HTTP_METHOD_GET" value=""/>
+      <member name="GNET_CONN_HTTP_METHOD_POST" value=""/>
+    </enum>
+    <enum name="GIPv6Policy" type-name="GIPv6Policy" type="enum">
+      <member name="GIPV6_POLICY_IPV4_THEN_IPV6" value=""/>
+      <member name="GIPV6_POLICY_IPV6_THEN_IPV4" value=""/>
+      <member name="GIPV6_POLICY_IPV4_ONLY" value=""/>
+      <member name="GIPV6_POLICY_IPV6_ONLY" value=""/>
+    </enum>
+    <enum name="GNetTOS" type-name="GNetTOS" type="enum">
+      <member name="GNET_TOS_NONE" value=""/>
+      <member name="GNET_TOS_LOWDELAY" value=""/>
+      <member name="GNET_TOS_THROUGHPUT" value=""/>
+      <member name="GNET_TOS_RELIABILITY" value=""/>
+      <member name="GNET_TOS_LOWCOST" value=""/>
+    </enum>
+    <enum name="GTcpSocketConnectAsyncStatus" type-name="GTcpSocketConnectAsyncStatus" type="enum">
+      <member name="GTCP_SOCKET_CONNECT_ASYNC_STATUS_OK" value=""/>
+      <member name="GTCP_SOCKET_CONNECT_ASYNC_STATUS_INETADDR_ERROR" value=""/>
+      <member name="GTCP_SOCKET_CONNECT_ASYNC_STATUS_TCP_ERROR" value=""/>
+    </enum>
+    <callback name="GConnFunc" type-name="GConnFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GConn*" name="conn"/>
+        <parameter type="GConnEvent*" name="event"/>
+        <parameter type="gpointer" name="user_data"/>
+      </parameters>
+    </callback>
+    <callback name="GConnHttpFunc" type-name="GConnHttpFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GConnHttp*" name="conn"/>
+        <parameter type="GConnHttpEvent*" name="event"/>
+        <parameter type="gpointer" name="user_data"/>
+      </parameters>
+    </callback>
+    <callback name="GInetAddrGetNameAsyncFunc" type-name="GInetAddrGetNameAsyncFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="gchar*" name="hostname"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <callback name="GInetAddrNewAsyncFunc" type-name="GInetAddrNewAsyncFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GInetAddr*" name="inetaddr"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <callback name="GInetAddrNewListAsyncFunc" type-name="GInetAddrNewListAsyncFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GList*" name="list"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <callback name="GServerFunc" type-name="GServerFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GServer*" name="server"/>
+        <parameter type="GConn*" name="conn"/>
+        <parameter type="gpointer" name="user_data"/>
+      </parameters>
+    </callback>
+    <callback name="GTcpSocketAcceptFunc" type-name="GTcpSocketAcceptFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GTcpSocket*" name="server"/>
+        <parameter type="GTcpSocket*" name="client"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <callback name="GTcpSocketConnectAsyncFunc" type-name="GTcpSocketConnectAsyncFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GTcpSocket*" name="socket"/>
+        <parameter type="GTcpSocketConnectAsyncStatus" name="status"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <callback name="GTcpSocketNewAsyncFunc" type-name="GTcpSocketNewAsyncFunc">
+      <return-type type="void"/>
+      <parameters>
+        <parameter type="GTcpSocket*" name="socket"/>
+        <parameter type="gpointer" name="data"/>
+      </parameters>
+    </callback>
+    <struct name="GConn" type-name="GConn" get-type="">
+      <field name="hostname" type="gchar*" readable="1" writable="1"/>
+      <field name="port" type="gint" readable="1" writable="1"/>
+      <field name="iochannel" type="GIOChannel*" readable="1" writable="1"/>
+      <field name="socket" type="GTcpSocket*" readable="1" writable="1"/>
+      <field name="inetaddr" type="GInetAddr*" readable="1" writable="1"/>
+      <field name="ref_count" type="guint" readable="1" writable="1"/>
+      <field name="ref_count_internal" type="guint" readable="1" writable="1"/>
+      <field name="connect_id" type="GTcpSocketConnectAsyncID" readable="1" writable="1"/>
+      <field name="new_id" type="GTcpSocketNewAsyncID" readable="1" writable="1"/>
+      <field name="write_queue" type="GList*" readable="1" writable="1"/>
+      <field name="bytes_written" type="guint" readable="1" writable="1"/>
+      <field name="buffer" type="gchar*" readable="1" writable="1"/>
+      <field name="length" type="guint" readable="1" writable="1"/>
+      <field name="bytes_read" type="guint" readable="1" writable="1"/>
+      <field name="read_eof" type="gboolean" readable="1" writable="1"/>
+      <field name="read_queue" type="GList*" readable="1" writable="1"/>
+      <field name="process_buffer_timeout" type="guint" readable="1" writable="1"/>
+      <field name="watch_readable" type="gboolean" readable="1" writable="1"/>
+      <field name="watch_writable" type="gboolean" readable="1" writable="1"/>
+      <field name="watch_flags" type="guint" readable="1" writable="1"/>
+      <field name="watch" type="guint" readable="1" writable="1"/>
+      <field name="timer" type="guint" readable="1" writable="1"/>
+      <field name="func" type="GConnFunc" readable="1" writable="1"/>
+      <field name="user_data" type="gpointer" readable="1" writable="1"/>
+    </struct>
+    <struct name="GConnEvent" type-name="GConnEvent" get-type="">
+      <field name="type" type="GConnEventType" readable="1" writable="1"/>
+      <field name="buffer" type="gchar*" readable="1" writable="1"/>
+      <field name="length" type="gint" readable="1" writable="1"/>
+    </struct>
+    <struct name="GConnHttp" type-name="GConnHttp" get-type="" opaque="true"/>
+    <struct name="GConnHttpEvent" type-name="GConnHttpEvent" get-type="">
+      <field name="type" type="GConnHttpEventType" readable="1" writable="1"/>
+      <field name="stsize" type="gsize"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GConnHttpEventData" type-name="GConnHttpEventData" get-type="">
+      <field name="parent" type="GConnHttpEvent"/>
+      <field name="content_length" type="guint64" readable="1" writable="1"/>
+      <field name="data_received" type="guint64" readable="1" writable="1"/>
+      <field name="buffer" type="const-gchar*" readable="1" writable="1"/>
+      <field name="buffer_length" type="gsize" readable="1" writable="1"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GConnHttpEventError" type-name="GConnHttpEventError" get-type="">
+      <field name="parent" type="GConnHttpEvent"/>
+      <field name="code" type="GConnHttpError" readable="1" writable="1"/>
+      <field name="message" type="gchar*" readable="1" writable="1"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GConnHttpEventRedirect" type-name="GConnHttpEventRedirect" get-type="">
+      <field name="parent" type="GConnHttpEvent"/>
+      <field name="num_redirects" type="guint" readable="1" writable="1"/>
+      <field name="max_redirects" type="guint" readable="1" writable="1"/>
+      <field name="new_location" type="gchar*" readable="1" writable="1"/>
+      <field name="auto_redirect" type="gboolean" readable="1" writable="1"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GConnHttpEventResolved" type-name="GConnHttpEventResolved" get-type="">
+      <field name="parent" type="GConnHttpEvent"/>
+      <field name="ia" type="GInetAddr*" readable="1" writable="1"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GConnHttpEventResponse" type-name="GConnHttpEventResponse" get-type="">
+      <field name="parent" type="GConnHttpEvent"/>
+      <field name="response_code" type="guint" readable="1" writable="1"/>
+      <field name="header_fields" type="gchar**" readable="1" writable="1"/>
+      <field name="header_values" type="gchar**" readable="1" writable="1"/>
+      <field name="padding" type="gpointer"/>
+    </struct>
+    <struct name="GInetAddr" type-name="GInetAddr" get-type="" opaque="true"/>
+    <struct name="GMD5" type-name="GMD5" get-type="" opaque="true"/>
+    <struct name="GMcastSocket" type-name="GMcastSocket" get-type="" opaque="true"/>
+    <struct name="GSHA" type-name="GSHA" get-type="" opaque="true"/>
+    <struct name="GServer" type-name="GServer" get-type="">
+      <field name="iface" type="GInetAddr*" readable="1" writable="1"/>
+      <field name="port" type="gint" readable="1" writable="1"/>
+      <field name="socket" type="GTcpSocket*" readable="1" writable="1"/>
+      <field name="ref_count" type="guint" readable="1" writable="1"/>
+      <field name="func" type="GServerFunc" readable="1" writable="1"/>
+      <field name="user_data" type="gpointer" readable="1" writable="1"/>
+    </struct>
+    <struct name="GTcpSocket" type-name="GTcpSocket" get-type="" opaque="true"/>
+    <struct name="GURI" type-name="GURI" get-type="">
+      <field name="scheme" type="gchar*" readable="1" writable="1"/>
+      <field name="userinfo" type="gchar*" readable="1" writable="1"/>
+      <field name="hostname" type="gchar*" readable="1" writable="1"/>
+      <field name="port" type="gint" readable="1" writable="1"/>
+      <field name="path" type="gchar*" readable="1" writable="1"/>
+      <field name="query" type="gchar*" readable="1" writable="1"/>
+      <field name="fragment" type="gchar*" readable="1" writable="1"/>
+    </struct>
+    <struct name="GUdpSocket" type-name="GUdpSocket" get-type="" opaque="true"/>
+    <struct name="GUnixSocket" type-name="GUnixSocket" get-type="" opaque="true"/>
+    <struct name="GnetConn">
+      <method name="connect" symbol="gnet_conn_connect">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="delete" symbol="gnet_conn_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="disconnect" symbol="gnet_conn_disconnect">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="http_cancel" symbol="gnet_conn_http_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="http_delete" symbol="gnet_conn_http_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="http_new" symbol="gnet_conn_http_new">
+        <return-type type="GConnHttp*"/>
+      </method>
+      <method name="http_run" symbol="gnet_conn_http_run">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="GConnHttpFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="http_run_async" symbol="gnet_conn_http_run_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="GConnHttpFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="http_set_header" symbol="gnet_conn_http_set_header">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="const-gchar*" name="field"/>
+          <parameter type="const-gchar*" name="value"/>
+          <parameter type="GConnHttpHeaderFlags" name="flags"/>
+        </parameters>
+      </method>
+      <method name="http_set_max_redirects" symbol="gnet_conn_http_set_max_redirects">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="guint" name="num"/>
+        </parameters>
+      </method>
+      <method name="http_set_method" symbol="gnet_conn_http_set_method">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="GConnHttpMethod" name="method"/>
+          <parameter type="const-gchar*" name="post_data"/>
+          <parameter type="gsize" name="post_data_len"/>
+        </parameters>
+      </method>
+      <method name="http_set_timeout" symbol="gnet_conn_http_set_timeout">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="guint" name="timeout"/>
+        </parameters>
+      </method>
+      <method name="http_set_uri" symbol="gnet_conn_http_set_uri">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="const-gchar*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="http_set_user_agent" symbol="gnet_conn_http_set_user_agent">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="const-gchar*" name="agent"/>
+        </parameters>
+      </method>
+      <method name="http_steal_buffer" symbol="gnet_conn_http_steal_buffer">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="GConnHttp*" name="conn"/>
+          <parameter type="gchar**" name="buffer"/>
+          <parameter type="gsize*" name="length"/>
+        </parameters>
+      </method>
+      <method name="is_connected" symbol="gnet_conn_is_connected">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="gnet_conn_new">
+        <return-type type="GConn*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+          <parameter type="GConnFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="new_inetaddr" symbol="gnet_conn_new_inetaddr">
+        <return-type type="GConn*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+          <parameter type="GConnFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="new_socket" symbol="gnet_conn_new_socket">
+        <return-type type="GConn*"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+          <parameter type="GConnFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="read" symbol="gnet_conn_read">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="readline" symbol="gnet_conn_readline">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="readn" symbol="gnet_conn_readn">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="gint" name="length"/>
+        </parameters>
+      </method>
+      <method name="ref" symbol="gnet_conn_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="set_callback" symbol="gnet_conn_set_callback">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="GConnFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="set_watch_error" symbol="gnet_conn_set_watch_error">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="gboolean" name="enable"/>
+        </parameters>
+      </method>
+      <method name="set_watch_readable" symbol="gnet_conn_set_watch_readable">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="gboolean" name="enable"/>
+        </parameters>
+      </method>
+      <method name="set_watch_writable" symbol="gnet_conn_set_watch_writable">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="gboolean" name="enable"/>
+        </parameters>
+      </method>
+      <method name="timeout" symbol="gnet_conn_timeout">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="guint" name="timeout"/>
+        </parameters>
+      </method>
+      <method name="unref" symbol="gnet_conn_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+        </parameters>
+      </method>
+      <method name="write" symbol="gnet_conn_write">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GConn*" name="conn"/>
+          <parameter type="gchar*" name="buffer"/>
+          <parameter type="gint" name="length"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="http_get" symbol="gnet_http_get">
+      <return-type type="gboolean"/>
+      <parameters>
+        <parameter type="const-gchar*" name="url"/>
+        <parameter type="gchar**" name="buffer"/>
+        <parameter type="gsize*" name="length"/>
+        <parameter type="guint*" name="response"/>
+      </parameters>
+    </function>
+    <struct name="GnetInetaddr">
+      <method name="autodetect_internet_interface" symbol="gnet_inetaddr_autodetect_internet_interface">
+        <return-type type="GInetAddr*"/>
+      </method>
+      <method name="clone" symbol="gnet_inetaddr_clone">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="delete" symbol="gnet_inetaddr_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="delete_list" symbol="gnet_inetaddr_delete_list">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GList*" name="list"/>
+        </parameters>
+      </method>
+      <method name="equal" symbol="gnet_inetaddr_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p1"/>
+          <parameter type="gconstpointer" name="p2"/>
+        </parameters>
+      </method>
+      <method name="get_bytes" symbol="gnet_inetaddr_get_bytes">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+          <parameter type="gchar*" name="buffer"/>
+        </parameters>
+      </method>
+      <method name="get_canonical_name" symbol="gnet_inetaddr_get_canonical_name">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="get_host_addr" symbol="gnet_inetaddr_get_host_addr">
+        <return-type type="GInetAddr*"/>
+      </method>
+      <method name="get_host_name" symbol="gnet_inetaddr_get_host_name">
+        <return-type type="gchar*"/>
+      </method>
+      <method name="get_interface_to" symbol="gnet_inetaddr_get_interface_to">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="get_internet_interface" symbol="gnet_inetaddr_get_internet_interface">
+        <return-type type="GInetAddr*"/>
+      </method>
+      <method name="get_length" symbol="gnet_inetaddr_get_length">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="get_name" symbol="gnet_inetaddr_get_name">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="get_name_async" symbol="gnet_inetaddr_get_name_async">
+        <return-type type="GInetAddrGetNameAsyncID"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+          <parameter type="GInetAddrGetNameAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="get_name_async_cancel" symbol="gnet_inetaddr_get_name_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddrGetNameAsyncID" name="id"/>
+        </parameters>
+      </method>
+      <method name="get_name_nonblock" symbol="gnet_inetaddr_get_name_nonblock">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="get_port" symbol="gnet_inetaddr_get_port">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="hash" symbol="gnet_inetaddr_hash">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p"/>
+        </parameters>
+      </method>
+      <method name="is_broadcast" symbol="gnet_inetaddr_is_broadcast">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_canonical" symbol="gnet_inetaddr_is_canonical">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+        </parameters>
+      </method>
+      <method name="is_internet" symbol="gnet_inetaddr_is_internet">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_internet_domainname" symbol="gnet_inetaddr_is_internet_domainname">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-gchar*" name="name"/>
+        </parameters>
+      </method>
+      <method name="is_ipv4" symbol="gnet_inetaddr_is_ipv4">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_ipv6" symbol="gnet_inetaddr_is_ipv6">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_loopback" symbol="gnet_inetaddr_is_loopback">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_multicast" symbol="gnet_inetaddr_is_multicast">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_private" symbol="gnet_inetaddr_is_private">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="is_reserved" symbol="gnet_inetaddr_is_reserved">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="list_interfaces" symbol="gnet_inetaddr_list_interfaces">
+        <return-type type="GList*"/>
+      </method>
+      <method name="new" symbol="gnet_inetaddr_new">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="new_async" symbol="gnet_inetaddr_new_async">
+        <return-type type="GInetAddrNewAsyncID"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+          <parameter type="GInetAddrNewAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="new_async_cancel" symbol="gnet_inetaddr_new_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddrNewAsyncID" name="id"/>
+        </parameters>
+      </method>
+      <method name="new_bytes" symbol="gnet_inetaddr_new_bytes">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="bytes"/>
+          <parameter type="const-guint" name="length"/>
+        </parameters>
+      </method>
+      <method name="new_list" symbol="gnet_inetaddr_new_list">
+        <return-type type="GList*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="new_list_async" symbol="gnet_inetaddr_new_list_async">
+        <return-type type="GInetAddrNewListAsyncID"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+          <parameter type="GInetAddrNewListAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="new_list_async_cancel" symbol="gnet_inetaddr_new_list_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddrNewListAsyncID" name="id"/>
+        </parameters>
+      </method>
+      <method name="new_nonblock" symbol="gnet_inetaddr_new_nonblock">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="noport_equal" symbol="gnet_inetaddr_noport_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p1"/>
+          <parameter type="gconstpointer" name="p2"/>
+        </parameters>
+      </method>
+      <method name="ref" symbol="gnet_inetaddr_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="set_bytes" symbol="gnet_inetaddr_set_bytes">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+          <parameter type="const-gchar*" name="bytes"/>
+          <parameter type="gint" name="length"/>
+        </parameters>
+      </method>
+      <method name="set_port" symbol="gnet_inetaddr_set_port">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="unref" symbol="gnet_inetaddr_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetIo">
+      <method name="channel_readline" symbol="gnet_io_channel_readline">
+        <return-type type="GIOError"/>
+        <parameters>
+          <parameter type="GIOChannel*" name="channel"/>
+          <parameter type="gchar*" name="buffer"/>
+          <parameter type="gsize" name="length"/>
+          <parameter type="gsize*" name="bytes_readp"/>
+        </parameters>
+      </method>
+      <method name="channel_readline_strdup" symbol="gnet_io_channel_readline_strdup">
+        <return-type type="GIOError"/>
+        <parameters>
+          <parameter type="GIOChannel*" name="channel"/>
+          <parameter type="gchar**" name="bufferp"/>
+          <parameter type="gsize*" name="bytes_readp"/>
+        </parameters>
+      </method>
+      <method name="channel_readn" symbol="gnet_io_channel_readn">
+        <return-type type="GIOError"/>
+        <parameters>
+          <parameter type="GIOChannel*" name="channel"/>
+          <parameter type="gpointer" name="buffer"/>
+          <parameter type="gsize" name="length"/>
+          <parameter type="gsize*" name="bytes_readp"/>
+        </parameters>
+      </method>
+      <method name="channel_writen" symbol="gnet_io_channel_writen">
+        <return-type type="GIOError"/>
+        <parameters>
+          <parameter type="GIOChannel*" name="channel"/>
+          <parameter type="gpointer" name="buffer"/>
+          <parameter type="gsize" name="length"/>
+          <parameter type="gsize*" name="bytes_writtenp"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetMcast">
+      <method name="socket_delete" symbol="gnet_mcast_socket_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_io_channel" symbol="gnet_mcast_socket_get_io_channel">
+        <return-type type="GIOChannel*"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_local_inetaddr" symbol="gnet_mcast_socket_get_local_inetaddr">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_ttl" symbol="gnet_mcast_socket_get_ttl">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_has_packet" symbol="gnet_mcast_socket_has_packet">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_is_loopback" symbol="gnet_mcast_socket_is_loopback">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_join_group" symbol="gnet_mcast_socket_join_group">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="socket_leave_group" symbol="gnet_mcast_socket_leave_group">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="socket_new" symbol="gnet_mcast_socket_new">
+        <return-type type="GMcastSocket*"/>
+      </method>
+      <method name="socket_new_full" symbol="gnet_mcast_socket_new_full">
+        <return-type type="GMcastSocket*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="iface"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_new_with_port" symbol="gnet_mcast_socket_new_with_port">
+        <return-type type="GMcastSocket*"/>
+        <parameters>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_receive" symbol="gnet_mcast_socket_receive">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="gchar*" name="buffer"/>
+          <parameter type="gint" name="length"/>
+          <parameter type="GInetAddr**" name="src"/>
+        </parameters>
+      </method>
+      <method name="socket_ref" symbol="gnet_mcast_socket_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_send" symbol="gnet_mcast_socket_send">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="const-gchar*" name="buffer"/>
+          <parameter type="gint" name="length"/>
+          <parameter type="const-GInetAddr*" name="dst"/>
+        </parameters>
+      </method>
+      <method name="socket_set_loopback" symbol="gnet_mcast_socket_set_loopback">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="gboolean" name="enable"/>
+        </parameters>
+      </method>
+      <method name="socket_set_ttl" symbol="gnet_mcast_socket_set_ttl">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+          <parameter type="gint" name="ttl"/>
+        </parameters>
+      </method>
+      <method name="socket_unref" symbol="gnet_mcast_socket_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GMcastSocket*" name="socket"/>
+        </parameters>
+      </method>
+    </struct>
+    <function name="pack_strdup" symbol="gnet_pack_strdup">
+      <return-type type="gint"/>
+      <parameters>
+        <parameter type="const-gchar*" name="format"/>
+        <parameter type="gchar**" name="bufferp"/>
+      </parameters>
+    </function>
+    <struct name="GnetServer">
+      <method name="delete" symbol="gnet_server_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GServer*" name="server"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="gnet_server_new">
+        <return-type type="GServer*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="iface"/>
+          <parameter type="gint" name="port"/>
+          <parameter type="GServerFunc" name="func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="ref" symbol="gnet_server_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GServer*" name="server"/>
+        </parameters>
+      </method>
+      <method name="unref" symbol="gnet_server_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GServer*" name="server"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetSha">
+      <method name="clone" symbol="gnet_sha_clone">
+        <return-type type="GSHA*"/>
+        <parameters>
+          <parameter type="const-GSHA*" name="sha"/>
+        </parameters>
+      </method>
+      <method name="copy_string" symbol="gnet_sha_copy_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="const-GSHA*" name="sha"/>
+          <parameter type="gchar*" name="buffer"/>
+        </parameters>
+      </method>
+      <method name="delete" symbol="gnet_sha_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GSHA*" name="sha"/>
+        </parameters>
+      </method>
+      <method name="equal" symbol="gnet_sha_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p1"/>
+          <parameter type="gconstpointer" name="p2"/>
+        </parameters>
+      </method>
+      <method name="final" symbol="gnet_sha_final">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GSHA*" name="sha"/>
+        </parameters>
+      </method>
+      <method name="get_digest" symbol="gnet_sha_get_digest">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="const-GSHA*" name="sha"/>
+        </parameters>
+      </method>
+      <method name="get_string" symbol="gnet_sha_get_string">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="const-GSHA*" name="sha"/>
+        </parameters>
+      </method>
+      <method name="hash" symbol="gnet_sha_hash">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="gnet_sha_new">
+        <return-type type="GSHA*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="buffer"/>
+          <parameter type="guint" name="length"/>
+        </parameters>
+      </method>
+      <method name="new_incremental" symbol="gnet_sha_new_incremental">
+        <return-type type="GSHA*"/>
+      </method>
+      <method name="new_string" symbol="gnet_sha_new_string">
+        <return-type type="GSHA*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="str"/>
+        </parameters>
+      </method>
+      <method name="update" symbol="gnet_sha_update">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GSHA*" name="sha"/>
+          <parameter type="const-gchar*" name="buffer"/>
+          <parameter type="guint" name="length"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetSocks">
+      <method name="get_enabled" symbol="gnet_socks_get_enabled">
+        <return-type type="gboolean"/>
+      </method>
+      <method name="get_server" symbol="gnet_socks_get_server">
+        <return-type type="GInetAddr*"/>
+      </method>
+      <method name="get_version" symbol="gnet_socks_get_version">
+        <return-type type="gint"/>
+      </method>
+      <method name="set_enabled" symbol="gnet_socks_set_enabled">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="gboolean" name="enabled"/>
+        </parameters>
+      </method>
+      <method name="set_server" symbol="gnet_socks_set_server">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="inetaddr"/>
+        </parameters>
+      </method>
+      <method name="set_version" symbol="gnet_socks_set_version">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="gint" name="version"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetTcp">
+      <method name="socket_connect" symbol="gnet_tcp_socket_connect">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_connect_async" symbol="gnet_tcp_socket_connect_async">
+        <return-type type="GTcpSocketConnectAsyncID"/>
+        <parameters>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="gint" name="port"/>
+          <parameter type="GTcpSocketConnectAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="socket_connect_async_cancel" symbol="gnet_tcp_socket_connect_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocketConnectAsyncID" name="id"/>
+        </parameters>
+      </method>
+      <method name="socket_delete" symbol="gnet_tcp_socket_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_io_channel" symbol="gnet_tcp_socket_get_io_channel">
+        <return-type type="GIOChannel*"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_local_inetaddr" symbol="gnet_tcp_socket_get_local_inetaddr">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_port" symbol="gnet_tcp_socket_get_port">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_remote_inetaddr" symbol="gnet_tcp_socket_get_remote_inetaddr">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_new" symbol="gnet_tcp_socket_new">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="addr"/>
+        </parameters>
+      </method>
+      <method name="socket_new_async" symbol="gnet_tcp_socket_new_async">
+        <return-type type="GTcpSocketNewAsyncID"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="addr"/>
+          <parameter type="GTcpSocketNewAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="socket_new_async_cancel" symbol="gnet_tcp_socket_new_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocketNewAsyncID" name="id"/>
+        </parameters>
+      </method>
+      <method name="socket_new_async_direct" symbol="gnet_tcp_socket_new_async_direct">
+        <return-type type="GTcpSocketNewAsyncID"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="addr"/>
+          <parameter type="GTcpSocketNewAsyncFunc" name="func"/>
+          <parameter type="gpointer" name="data"/>
+        </parameters>
+      </method>
+      <method name="socket_new_direct" symbol="gnet_tcp_socket_new_direct">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="addr"/>
+        </parameters>
+      </method>
+      <method name="socket_ref" symbol="gnet_tcp_socket_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept" symbol="gnet_tcp_socket_server_accept">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept_async" symbol="gnet_tcp_socket_server_accept_async">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+          <parameter type="GTcpSocketAcceptFunc" name="accept_func"/>
+          <parameter type="gpointer" name="user_data"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept_async_cancel" symbol="gnet_tcp_socket_server_accept_async_cancel">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept_nonblock" symbol="gnet_tcp_socket_server_accept_nonblock">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_new" symbol="gnet_tcp_socket_server_new">
+        <return-type type="GTcpSocket*"/>
+      </method>
+      <method name="socket_server_new_full" symbol="gnet_tcp_socket_server_new_full">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="iface"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_server_new_with_port" symbol="gnet_tcp_socket_server_new_with_port">
+        <return-type type="GTcpSocket*"/>
+        <parameters>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_set_tos" symbol="gnet_tcp_socket_set_tos">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+          <parameter type="GNetTOS" name="tos"/>
+        </parameters>
+      </method>
+      <method name="socket_unref" symbol="gnet_tcp_socket_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GTcpSocket*" name="socket"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetUdp">
+      <method name="socket_delete" symbol="gnet_udp_socket_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_io_channel" symbol="gnet_udp_socket_get_io_channel">
+        <return-type type="GIOChannel*"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_local_inetaddr" symbol="gnet_udp_socket_get_local_inetaddr">
+        <return-type type="GInetAddr*"/>
+        <parameters>
+          <parameter type="const-GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_ttl" symbol="gnet_udp_socket_get_ttl">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="const-GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_has_packet" symbol="gnet_udp_socket_has_packet">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="const-GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_new" symbol="gnet_udp_socket_new">
+        <return-type type="GUdpSocket*"/>
+      </method>
+      <method name="socket_new_full" symbol="gnet_udp_socket_new_full">
+        <return-type type="GUdpSocket*"/>
+        <parameters>
+          <parameter type="const-GInetAddr*" name="iface"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_new_with_port" symbol="gnet_udp_socket_new_with_port">
+        <return-type type="GUdpSocket*"/>
+        <parameters>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="socket_receive" symbol="gnet_udp_socket_receive">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+          <parameter type="gchar*" name="buffer"/>
+          <parameter type="gint" name="length"/>
+          <parameter type="GInetAddr**" name="src"/>
+        </parameters>
+      </method>
+      <method name="socket_ref" symbol="gnet_udp_socket_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_send" symbol="gnet_udp_socket_send">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+          <parameter type="const-gchar*" name="buffer"/>
+          <parameter type="gint" name="length"/>
+          <parameter type="const-GInetAddr*" name="dst"/>
+        </parameters>
+      </method>
+      <method name="socket_set_ttl" symbol="gnet_udp_socket_set_ttl">
+        <return-type type="gint"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+          <parameter type="gint" name="ttl"/>
+        </parameters>
+      </method>
+      <method name="socket_unref" symbol="gnet_udp_socket_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUdpSocket*" name="socket"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetUnix">
+      <method name="socket_delete" symbol="gnet_unix_socket_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_io_channel" symbol="gnet_unix_socket_get_io_channel">
+        <return-type type="GIOChannel*"/>
+        <parameters>
+          <parameter type="GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_get_path" symbol="gnet_unix_socket_get_path">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="const-GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_new" symbol="gnet_unix_socket_new">
+        <return-type type="GUnixSocket*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="path"/>
+        </parameters>
+      </method>
+      <method name="socket_ref" symbol="gnet_unix_socket_ref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept" symbol="gnet_unix_socket_server_accept">
+        <return-type type="GUnixSocket*"/>
+        <parameters>
+          <parameter type="const-GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_accept_nonblock" symbol="gnet_unix_socket_server_accept_nonblock">
+        <return-type type="GUnixSocket*"/>
+        <parameters>
+          <parameter type="const-GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+      <method name="socket_server_new" symbol="gnet_unix_socket_server_new">
+        <return-type type="GUnixSocket*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="path"/>
+        </parameters>
+      </method>
+      <method name="socket_unref" symbol="gnet_unix_socket_unref">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GUnixSocket*" name="socket"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="GnetUri">
+      <method name="clone" symbol="gnet_uri_clone">
+        <return-type type="GURI*"/>
+        <parameters>
+          <parameter type="const-GURI*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="delete" symbol="gnet_uri_delete">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="equal" symbol="gnet_uri_equal">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p1"/>
+          <parameter type="gconstpointer" name="p2"/>
+        </parameters>
+      </method>
+      <method name="escape" symbol="gnet_uri_escape">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="get_string" symbol="gnet_uri_get_string">
+        <return-type type="gchar*"/>
+        <parameters>
+          <parameter type="const-GURI*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="hash" symbol="gnet_uri_hash">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter type="gconstpointer" name="p"/>
+        </parameters>
+      </method>
+      <method name="new" symbol="gnet_uri_new">
+        <return-type type="GURI*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="uri"/>
+        </parameters>
+      </method>
+      <method name="new_fields" symbol="gnet_uri_new_fields">
+        <return-type type="GURI*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="scheme"/>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="const-gint" name="port"/>
+          <parameter type="const-gchar*" name="path"/>
+        </parameters>
+      </method>
+      <method name="new_fields_all" symbol="gnet_uri_new_fields_all">
+        <return-type type="GURI*"/>
+        <parameters>
+          <parameter type="const-gchar*" name="scheme"/>
+          <parameter type="const-gchar*" name="userinfo"/>
+          <parameter type="const-gchar*" name="hostname"/>
+          <parameter type="const-gint" name="port"/>
+          <parameter type="const-gchar*" name="path"/>
+          <parameter type="const-gchar*" name="query"/>
+          <parameter type="const-gchar*" name="fragment"/>
+        </parameters>
+      </method>
+      <method name="set_fragment" symbol="gnet_uri_set_fragment">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="fragment"/>
+        </parameters>
+      </method>
+      <method name="set_hostname" symbol="gnet_uri_set_hostname">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="hostname"/>
+        </parameters>
+      </method>
+      <method name="set_path" symbol="gnet_uri_set_path">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="path"/>
+        </parameters>
+      </method>
+      <method name="set_port" symbol="gnet_uri_set_port">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="gint" name="port"/>
+        </parameters>
+      </method>
+      <method name="set_query" symbol="gnet_uri_set_query">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="query"/>
+        </parameters>
+      </method>
+      <method name="set_scheme" symbol="gnet_uri_set_scheme">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="scheme"/>
+        </parameters>
+      </method>
+      <method name="set_userinfo" symbol="gnet_uri_set_userinfo">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+          <parameter type="const-gchar*" name="userinfo"/>
+        </parameters>
+      </method>
+      <method name="unescape" symbol="gnet_uri_unescape">
+        <return-type type="void"/>
+        <parameters>
+          <parameter type="GURI*" name="uri"/>
+        </parameters>
+      </method>
+    </struct>
+  </namespace>
+</api>
diff --git a/vapi/packages/gnet-2.0/gnet-2.0.metadata b/vapi/packages/gnet-2.0/gnet-2.0.metadata
new file mode 100644 (file)
index 0000000..170c1f9
--- /dev/null
@@ -0,0 +1,5 @@
+GNet cprefix="Gnet,G"
+gnet_conn_new_inetaddr name="from_inetaddr"
+gnet_conn_new_socket name="from_socket"
+
+G* cprefix="G"
diff --git a/vapi/packages/gnet-2.0/gnet-2.0.namespace b/vapi/packages/gnet-2.0/gnet-2.0.namespace
new file mode 100644 (file)
index 0000000..72624ab
--- /dev/null
@@ -0,0 +1 @@
+GNet