Updates to clean server structure.
[awesomized/libmemcached] / include / memcached.h
index 1633872fea0412bdc903871d265c699bd756e1ce..6797279b5dbf0e701a6f13375e01fa09aa8abcd3 100644 (file)
@@ -66,6 +66,8 @@ typedef enum {
   MEMCACHED_END,
   MEMCACHED_DELETED,
   MEMCACHED_VALUE,
+  MEMCACHED_STAT,
+  MEMCACHED_ERRNO,
   MEMCACHED_MAXIMUM_RETURN, /* Always add new error code before */
 } memcached_return;
 
@@ -73,6 +75,7 @@ typedef enum {
   MEMCACHED_BEHAVIOR_NO_BLOCK,
   MEMCACHED_BEHAVIOR_TCP_NODELAY,
   MEMCACHED_BEHAVIOR_MD5_HASHING,
+  MEMCACHED_BEHAVIOR_KETAMA,
 } memcached_behavior;
 
 typedef enum {
@@ -84,6 +87,8 @@ struct memcached_server_st {
   char *hostname;
   unsigned int port;
   int fd;
+  unsigned int stack_responses;
+  unsigned int cursor_active;
 };
 
 struct memcached_stat_st {
@@ -134,7 +139,6 @@ struct memcached_st {
   size_t write_buffer_offset;
   char connected;
   int my_errno;
-  unsigned int stack_responses;
   unsigned long long flags;
   memcached_return warning; /* Future Use */
 };
@@ -194,6 +198,9 @@ char *memcached_fetch(memcached_st *ptr, char *key, size_t *key_length,
 #define memcached_server_name(A,B) B.hostname
 #define memcached_server_port(A,B) B.port
 #define memcached_server_list(A) A->hosts
+#define memcached_server_response_increment(A,B) A->hosts[B].stack_responses++
+#define memcached_server_response_decrement(A,B) A->hosts[B].stack_responses--
+#define memcached_server_response_count(A,B) A->hosts[B].stack_responses
 
 memcached_return memcached_server_add(memcached_st *ptr, char *hostname, 
                                       unsigned int port);