X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fversion.cc;h=53d24c1cb02dc7eb51003a0557675b661fd4cc7d;hb=fc51e5255fe2e55848823d838c1326dd8d27ccad;hp=e779a76971e15a8d2c0449f133e12e25a9883340;hpb=a6522efa221a7f60181159642c2d52d71cd2b88d;p=awesomized%2Flibmemcached diff --git a/libmemcached/version.cc b/libmemcached/version.cc index e779a769..53d24c1c 100644 --- a/libmemcached/version.cc +++ b/libmemcached/version.cc @@ -199,6 +199,29 @@ void memcached_version_instance(memcached_instance_st* instance) } } +int8_t memcached_version_instance_cmp(memcached_instance_st *instance, + uint8_t maj, uint8_t min, uint8_t mic) +{ + if (!instance || memcached_server_major_version(instance) == UINT8_MAX) { + return INT8_MIN; + } else { + uint32_t sv, cv; + + sv = memcached_server_micro_version(instance) + |memcached_server_minor_version(instance) << 8 + |memcached_server_major_version(instance) << 16 + ; + cv = mic + |min << 8 + |maj << 16 + ; + if (sv < cv) { + return -1; + } + return sv != cv; + } +} + memcached_return_t memcached_version(memcached_st *shell) { Memcached* memc= memcached2Memcached(shell);