Remove the async stuff per IRC discussion
[cascardo/gnio.git] / gnio / gsocket.h
index 4143d3e..0f0a5e0 100644 (file)
@@ -55,77 +55,58 @@ struct _GSocketClass
   GObjectClass parent_class;
 };
 
-GType          g_socket_get_type         (void) G_GNUC_CONST;
-
-GSocket *      g_socket_new              (void);
-
-gboolean       g_socket_bind             (GSocket         *socket,
-                                          GSocketAddress  *address,
-                                          GError         **error);
-
-void           g_socket_connect          (GSocket        *socket,
-                                          GSocketAddress *address,
-                                          GCancellable   *cancellable);
-
-void           g_socket_connect_async    (GSocket             *socket,
-                                          GSocketAddress      *address,
-                                          GCancellable        *cancellable,
-                                          GAsyncReadyCallback *callback,
-                                          gpointer             user_data);
-
-void           g_socket_connect_finish   (GSocket       *socket,
-                                          GAsyncResult  *result,
-                                          GError       **error);
-
-GSocket *      g_socket_accept           (GSocket       *socket,
-                                          GCancellable  *cancellable,
-                                          GError       **error);
-
-void           g_socket_accept_async     (GSocket             *socket,
-                                          GCancellable        *cancellable,
-                                          GAsyncReadyCallback *callback,
-                                          gpointer             user_data);
-
-GSocket *      g_socket_accept_finish    (GSocket       *socket,
-                                          GAsyncResult  *result,
-                                          GError       **error);
-
-void           g_socket_listen           (GSocket *socket,
-                                          int backlog);
-
-gssize         g_socket_receive          (GSocket       *socket,
-                                          gchar         *buffer,
-                                          gsize          size,
-                                          GCancellable  *cancellable,
-                                          GError       **error);
-
-void           g_socket_receive_async    (GSocket             *socket,
-                                          gchar               *buffer,
-                                          gsize                size,
-                                          GCancellable        *cancellable,
-                                          GAsyncReadyCallback *callback,
-                                          gpointer             user_data);
-
-gssize         g_socket_receive_finish   (GSocket       *socket,
-                                          GAsyncResult  *result,
-                                          GError       **error);
-
-gssize         g_socket_send             (GSocket       *socket,
-                                          gchar         *buffer,
-                                          gsize          size,
-                                          GCancellable  *cancellable,
-                                          GError       **error);
-
-void           g_socket_send_async       (GSocket             *socket,
-                                          gchar               *buffer,
-                                          gsize                size,
-                                          GCancellable        *cancellable,
-                                          GAsyncReadyCallback *callback,
-                                          gpointer             user_data);
-
-gssize         g_socket_send_finish      (GSocket       *socket,
-                                          GAsyncResult  *result,
-                                          GError       **error);
+typedef enum
+{
+  G_SOCKET_DOMAIN_INET,
+  G_SOCKET_DOMAIN_INET6,
+  G_SOCKET_DOMAIN_UNIX
+} GSocketDomain;
+
+typedef enum
+{
+  G_SOCKET_TYPE_STREAM,
+  G_SOCKET_TYPE_DATAGRAM,
+  G_SOCKET_TYPE_SEQPACKET
+} GSocketType;
+
+GType            g_socket_get_type           (void) G_GNUC_CONST;
+
+GSocket *        g_socket_new                (GSocketDomain domain, GSocketType type, const gchar *protocol, GError **error);
+
+GSocket *        g_socket_new_from_fd        (gint fd);
+
+GSocketAddress * g_socket_get_local_address  (GSocket *socket, GError **error);
+
+GSocketAddress * g_socket_get_remote_address (GSocket *socket, GError **error);
+
+void             g_socket_set_blocking       (GSocket  *socket,
+                                              gboolean  blocking);
+
+gboolean         g_socket_get_blocking       (GSocket  *socket);
+
+gboolean         g_socket_bind               (GSocket         *socket,
+                                              GSocketAddress  *address,
+                                              GError         **error);
+
+gboolean         g_socket_connect            (GSocket         *socket,
+                                              GSocketAddress  *address,
+                                              GError         **error);
+
+GSocket *        g_socket_accept             (GSocket       *socket,
+                                              GError       **error);
+
+void             g_socket_listen             (GSocket *socket,
+                                              gint backlog);
+
+gssize           g_socket_receive            (GSocket       *socket,
+                                              gchar         *buffer,
+                                              gsize          size,
+                                              GError       **error);
+
+gssize           g_socket_send               (GSocket       *socket,
+                                              gchar         *buffer,
+                                              gsize          size,
+                                              GError       **error);
 
 G_END_DECLS