X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=inline;f=libmemcached%2Fserver.h;h=9000454988f7ac99dbc2d27e7c8df0b955139e6d;hb=9fd31c03436acf24c593dc3a77c905eb137ef570;hp=d4005f89c222cfb456916a2fdacc50e8e887aeae;hpb=f0b9c972a973d997db6660680938dd5acb2baa46;p=awesomized%2Flibmemcached diff --git a/libmemcached/server.h b/libmemcached/server.h index d4005f89..90004549 100644 --- a/libmemcached/server.h +++ b/libmemcached/server.h @@ -38,6 +38,13 @@ #pragma once +enum memcached_server_state_t { + MEMCACHED_SERVER_STATE_NEW, // fd == -1, no address lookup has been done + MEMCACHED_SERVER_STATE_ADDRINFO, // ADDRRESS information has been gathered + MEMCACHED_SERVER_STATE_IN_PROGRESS, + MEMCACHED_SERVER_STATE_CONNECTED +}; + struct memcached_server_st { struct { bool is_allocated:1; @@ -53,6 +60,7 @@ struct memcached_server_st { uint32_t io_bytes_sent; /* # bytes sent since last read */ uint32_t server_failure_counter; uint32_t weight; + enum memcached_server_state_t state; struct { uint32_t read; uint32_t write; @@ -118,6 +126,13 @@ LIBMEMCACHED_API memcached_return_t memcached_server_add(memcached_st *ptr, const char *hostname, in_port_t port); +LIBMEMCACHED_LOCAL + memcached_return_t memcached_server_add_parsed(memcached_st *ptr, + const char *hostname, + size_t hostname_length, + in_port_t port, + uint32_t weight); + LIBMEMCACHED_API memcached_return_t memcached_server_add_udp_with_weight(memcached_st *ptr, const char *hostname,