WIP
[awesomized/libmemcached] / example / memcached_light.cc
index e7f952eacee1a1d3633cdfbbdcc0313eb63873f8..714bb16f3dedafb216c753a81cb870f9b074df6e 100644 (file)
@@ -9,11 +9,11 @@
  * With that in mind, let me give you some pointers into the source:
  *   storage.c/h       - Implements the item store for this server and not really
  *                       interesting for this example.
- *   interface_v0.c    - Shows an implementation of the memcached server by using
+ *   interface_v0.cc   - Shows an implementation of the memcached server by using
  *                       the "raw" access to the packets as they arrive
- *   interface_v1.c    - Shows an implementation of the memcached server by using
+ *   interface_v1.cc   - Shows an implementation of the memcached server by using
  *                       the more "logical" interface.
- *   memcached_light.c - This file sets up all of the sockets and run the main
+ *   memcached_light.cc- This file sets up all of the sockets and run the main
  *                       message loop.
  *
  *
@@ -23,7 +23,7 @@
  * the library)
  */
 
-#include "config.h"
+#include <mem_config.h>
 
 #include <libmemcachedprotocol-0.0/handler.h>
 #include <libmemcached/socket.hpp>
@@ -48,8 +48,9 @@ using namespace datadifferential;
 #include <getopt.h>
 #include <iostream>
 #include <sys/types.h>
-#include <unistd.h>
-
+#if HAVE_UNISTD_H
+#  include <unistd.h>
+#endif
 extern memcached_binary_protocol_callback_st interface_v0_impl;
 extern memcached_binary_protocol_callback_st interface_v1_impl;
 
@@ -77,7 +78,8 @@ struct options_st {
 
   options_st() :
     service("9999"),
-    is_verbose(false)
+    is_verbose(false),
+    opt_daemon(false)
   {
   }
 };
@@ -134,7 +136,7 @@ static void drive_client(memcached_socket_t fd, short, void *arg)
       flags|= EV_READ;
     }
 
-    event_set(&client->event, (intptr_t)fd, flags, drive_client, client);
+    event_set(&client->event, int(fd), flags, drive_client, client);
     event_base_set(event_base, &client->event);
 
     if (event_add(&client->event, 0) == -1)
@@ -183,7 +185,7 @@ static void accept_handler(memcached_socket_t fd, short, void *arg)
     struct connection *client = &socket_userdata_map[sock];
     client->userdata= c;
 
-    event_set(&client->event, (intptr_t)sock, EV_READ, drive_client, client);
+    event_set(&client->event, int(sock), EV_READ, drive_client, client);
     event_base_set(event_base, &client->event);
     if (event_add(&client->event, 0) == -1)
     {
@@ -604,7 +606,7 @@ int main(int argc, char **argv)
     struct connection *conn= &socket_userdata_map[server_sockets[xx]];
     conn->userdata= protocol_handle;
 
-    event_set(&conn->event, (intptr_t)server_sockets[xx], EV_READ | EV_PERSIST, accept_handler, conn);
+    event_set(&conn->event, int(server_sockets[xx]), EV_READ | EV_PERSIST, accept_handler, conn);
 
     event_base_set(event_base, &conn->event);
     if (event_add(&conn->event, 0) == -1)