X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fmemcached.cc;h=c52873ad3d4fcbccecb86ded6961a9844dc48dcf;hb=fc21f9b9bc7d55fc4ce9d7a323b9e9173dbbe3ba;hp=0574cc6cb40ae46fc36f9acac8a69c3d36dccac5;hpb=ca663a567bc8d3facb22b035bcad19349e42a9b1;p=m6w6%2Flibmemcached diff --git a/libmemcached/memcached.cc b/libmemcached/memcached.cc index 0574cc6c..c52873ad 100644 --- a/libmemcached/memcached.cc +++ b/libmemcached/memcached.cc @@ -59,6 +59,8 @@ static inline bool _memcached_init(memcached_st *self) self->flags.use_udp= false; self->flags.verify_key= false; self->flags.tcp_keepalive= false; + self->flags.is_aes= false; + self->flags.is_fetching_version= false; self->virtual_bucket= NULL; @@ -75,7 +77,7 @@ static inline bool _memcached_init(memcached_st *self) self->ketama.continuum_count= 0; self->ketama.continuum_points_counter= 0; self->ketama.next_distribution_rebuild= 0; - self->ketama.weighted= false; + self->ketama.weighted_= false; self->number_of_hosts= 0; self->servers= NULL; @@ -133,7 +135,7 @@ static void __memcached_free(memcached_st *ptr, bool release_st) memcached_virtual_bucket_free(ptr); - memcached_instance_free(ptr->last_disconnected_server); + memcached_instance_free((org::libmemcached::Instance*)ptr->last_disconnected_server); if (ptr->on_cleanup) { @@ -279,7 +281,7 @@ void memcached_servers_reset(memcached_st *self) memcached_instance_set(self, NULL); self->number_of_hosts= 0; - memcached_instance_free(self->last_disconnected_server); + memcached_instance_free((org::libmemcached::Instance*)self->last_disconnected_server); self->last_disconnected_server= NULL; } } @@ -288,7 +290,7 @@ void memcached_reset_last_disconnected_server(memcached_st *self) { if (self) { - memcached_instance_free(self->last_disconnected_server); + memcached_instance_free((org::libmemcached::Instance*)self->last_disconnected_server); self->last_disconnected_server= NULL; } } @@ -421,10 +423,10 @@ void *memcached_set_user_data(memcached_st *ptr, void *data) memcached_return_t memcached_push(memcached_st *destination, const memcached_st *source) { - return memcached_instance_push(destination, source->servers, source->number_of_hosts); + return memcached_instance_push(destination, (org::libmemcached::Instance*)source->servers, source->number_of_hosts); } -memcached_server_write_instance_st memcached_server_instance_fetch(memcached_st *ptr, uint32_t server_key) +org::libmemcached::Instance* memcached_instance_fetch(memcached_st *ptr, uint32_t server_key) { if (ptr == NULL) { @@ -444,6 +446,16 @@ memcached_server_instance_st memcached_server_instance_by_position(const memcach return &ptr->servers[server_key]; } +org::libmemcached::Instance* memcached_instance_by_position(const memcached_st *ptr, uint32_t server_key) +{ + if (ptr == NULL) + { + return NULL; + } + + return &ptr->servers[server_key]; +} + uint64_t memcached_query_id(const memcached_st *self) { if (self == NULL) @@ -453,3 +465,14 @@ uint64_t memcached_query_id(const memcached_st *self) return self->query_id; } + +org::libmemcached::Instance* memcached_instance_list(const memcached_st *self) +{ + if (self) + { + return (org::libmemcached::Instance*)self->servers; + } + + return NULL; +} +