#include <glib.h>
#include <gnet.h>
#include <stdio.h>
+#include <stdlib.h>
#include <unistd.h>
+#include <gnutls/gnutls.h>
#include "log.h"
#include "nethook.h"
#include "null.h"
+#include "ssl.h"
#define CONFFILE SYSCONFDIR "/popproxy.conf"
return;
}
g_message ("Received connection from %s.", conn->hostname);
- hook = null_hook_new (conn, data);
+ hook = ssl_hook_new (conn, data);
gnet_conn_read (conn);
}
gint port;
gchar *server_address;
+ gnutls_global_init ();
gnet_init ();
pop_log_init ();
port = g_key_file_get_integer (keyfile, "global", "port", NULL);
server_address = g_key_file_get_string (keyfile, "global", "server", NULL);
- g_message ("Listen address is %s:%d.", conf_address, port);
-
inetaddr = gnet_inetaddr_new_nonblock (conf_address, port);
- gnet_server_new (inetaddr, port, new_client, server_address);
+ if (gnet_server_new (inetaddr, port,
+ new_client, server_address) == NULL)
+ {
+ fprintf (stderr, "Could not create server.\n");
+ exit (1);
+ }
+
+ g_message ("Listening at %s:%d.", conf_address, port);
daemon (0, 0);
g_main_loop_run (g_main_loop_new (g_main_context_default (), TRUE));
+ gnutls_global_deinit ();
+
return 0;
}