X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=clients%2Fmemcat.cc;h=3e073650345750b35b3325855f1b4fe63af77fca;hb=3dffdabbb7e41075f7998cd2af6498b42c97f471;hp=12df34799a160b16c066999c4e8937d915fd427f;hpb=ae6bc7501efd5aeaaee92dabe2da0ec2d1625c5b;p=awesomized%2Flibmemcached diff --git a/clients/memcat.cc b/clients/memcat.cc index 12df3479..3e073650 100644 --- a/clients/memcat.cc +++ b/clients/memcat.cc @@ -9,13 +9,13 @@ * */ -#include "config.h" +#include -#include -#include -#include -#include +#include +#include #include +#include +#include #include #include "utilities.h" @@ -73,12 +73,24 @@ int main(int argc, char *argv[]) memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL, (uint64_t)opt_binary); - if (!initialize_sasl(memc, opt_username, opt_passwd)) + if (opt_username and LIBMEMCACHED_WITH_SASL_SUPPORT == 0) { memcached_free(memc); + std::cerr << "--username was supplied, but binary was not built with SASL support." << std::endl; return EXIT_FAILURE; } + if (opt_username) + { + memcached_return_t ret; + if (memcached_failed(ret= memcached_set_sasl_auth_data(memc, opt_username, opt_passwd))) + { + std::cerr << memcached_last_error_message(memc) << std::endl; + memcached_free(memc); + return EXIT_FAILURE; + } + } + while (optind < argc) { string= memcached_get(memc, argv[optind], strlen(argv[optind]), @@ -162,8 +174,6 @@ int main(int argc, char *argv[]) if (opt_hash) free(opt_hash); - shutdown_sasl(); - return return_code; }