X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fcommon.h;h=c49b3b9614783e834f49f25a6ee1d3d81d33fef5;hb=3bd95102380ff8d9f2599f0965c09776344d0691;hp=31a65ea9aad0fa490cc3a7d013faf4176d4844c2;hpb=583fff6ac27c305e31e2b4b906f4e0702e26fee6;p=m6w6%2Flibmemcached diff --git a/lib/common.h b/lib/common.h index 31a65ea9..c49b3b96 100644 --- a/lib/common.h +++ b/lib/common.h @@ -19,6 +19,10 @@ #include #include #include +#include +#include +#include + #include @@ -43,19 +47,22 @@ typedef enum { MEM_USE_MD5= (1 << 3), MEM_USE_KETAMA= (1 << 4), MEM_USE_CRC= (1 << 5), + MEM_USE_CACHE_LOOKUPS= (1 << 6), + MEM_SUPPORT_CAS= (1 << 7), } memcached_flags; /* Hashing algo */ void md5_signature(unsigned char *key, unsigned int length, unsigned char *result); uint32_t hash_crc32(const char *data, size_t data_len); +uint32_t hsieh_hash(char *key, size_t key_length); memcached_return memcached_connect(memcached_st *ptr, unsigned int server_key); memcached_return memcached_response(memcached_st *ptr, char *buffer, size_t buffer_length, unsigned int server_key); unsigned int memcached_generate_hash(memcached_st *ptr, char *key, size_t key_length); -void memcached_quit_server(memcached_st *ptr, unsigned int server_key); +void memcached_quit_server(memcached_st *ptr, unsigned int server_key, uint8_t io_death); #define memcached_server_response_increment(A,B) A->hosts[B].stack_responses++ #define memcached_server_response_decrement(A,B) A->hosts[B].stack_responses-- @@ -78,18 +85,12 @@ memcached_return memcached_string_append(memcached_string_st *string, size_t memcached_string_backspace(memcached_string_st *string, size_t remove); memcached_return memcached_string_reset(memcached_string_st *string); void memcached_string_free(memcached_string_st *string); +memcached_return memcached_do(memcached_st *ptr, unsigned int server_key, char *commmand, + size_t command_length, char with_flush); +memcached_return memcached_version(memcached_st *ptr); +memcached_return memcached_finish_server(memcached_st *ptr, unsigned int server_key); +void memcached_finish(memcached_st *ptr); -/* Result Struct */ -#define memcache_result_key_value(A) memcached_string_value(A->key) -#define memcache_result_key_length(A) memcached_string_length(A->key) -#define memcache_result_result_value(A) memcached_string_value(A->value) -#define memcache_result_result_length(A) memcached_string_length(A->value) -#define memcache_result_flags(A) A->flags -#define memcache_result_cas(A) A->cas - -memcached_result_st *memcached_result_create(memcached_st *ptr, - memcached_result_st *result); -void memcached_result_free(memcached_result_st *result); #endif /* __COMMON_H__ */