Beginnings of GSocket API, small fixes for InetAddress
[cascardo/gnio.git] / gnio / gsocket.c
index c6d1ce9..c0a8a1a 100644 (file)
 #include "ginet6address.h"
 #include "gsocket.h"
 #include "gnioerror.h"
-#include "gsocket.h"
+#include "ginetsocketaddress.h"
 
 G_DEFINE_TYPE (GSocket, g_socket, G_TYPE_OBJECT);
 
+struct _GSocketPrivate
+{
+  int fd;
+};
+
 static void
 g_socket_class_init (GSocketClass *klass)
 {
   GObjectClass *gobject_class G_GNUC_UNUSED = G_OBJECT_CLASS (klass);
+
+  g_type_class_add_private (klass, sizeof (GSocketPrivate));
 }
 
 static void
 g_socket_init (GSocket *address)
 {
+  address->priv = G_TYPE_INSTANCE_GET_PRIVATE (address, G_TYPE_SOCKET, GSocketPrivate);
+}
+
+GSocket *
+g_socket_new ()
+{
+  return G_SOCKET (g_object_new (G_TYPE_SOCKET, NULL));
+}
+
+void
+g_socket_listen (GSocket *socket, gint backlog)
+{
+  g_return_if_fail (G_IS_SOCKET (socket));
 
+  listen (socket->priv->fd, backlog);
 }