X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=clients%2Fmemcat.cc;h=86535123789679c1c068654e1beb33e6546e45c8;hb=d9e936513312018c4c7e62827992ea6b9d0696f4;hp=92dce5d38cba2dc6d90eb591b7f9e20d28606c75;hpb=23dca174eef8d846e3d4402729b57f6ded035e64;p=awesomized%2Flibmemcached diff --git a/clients/memcat.cc b/clients/memcat.cc index 92dce5d3..86535123 100644 --- a/clients/memcat.cc +++ b/clients/memcat.cc @@ -39,19 +39,17 @@ static char *opt_file; int main(int argc, char *argv[]) { - memcached_st *memc; char *string; size_t string_length; uint32_t flags; memcached_return_t rc; - memcached_server_st *servers; int return_code= EXIT_SUCCESS; options_parse(argc, argv); initialize_sockets(); - if (!opt_servers) + if (opt_servers == NULL) { char *temp; @@ -59,17 +57,23 @@ int main(int argc, char *argv[]) { opt_servers= strdup(temp); } - else + + if (opt_servers == NULL) { - std::cerr << "No servers provied" << std::endl; + std::cerr << "No servers provided" << std::endl; exit(EXIT_FAILURE); } } - memc= memcached_create(NULL); - process_hash_option(memc, opt_hash); + memcached_server_st* servers= memcached_servers_parse(opt_servers); + if (servers == NULL or memcached_server_list_count(servers) == 0) + { + std::cerr << "Invalid server list provided:" << opt_servers << std::endl; + return EXIT_FAILURE; + } - servers= memcached_servers_parse(opt_servers); + memcached_st* memc= memcached_create(NULL); + process_hash_option(memc, opt_hash); memcached_server_push(memc, servers); memcached_server_list_free(servers); @@ -111,7 +115,7 @@ int main(int argc, char *argv[]) { if (opt_verbose) { - std::cout << "key: " << argv[optind] << std::endl << "flags: " << flags << "length: " << string_length << std::endl << "value: "; + std::cout << "key: " << argv[optind] << std::endl << "flags: " << flags << std::endl << "length: " << string_length << std::endl << "value: "; } if (opt_file) @@ -253,7 +257,7 @@ void options_parse(int argc, char *argv[]) case '?': /* getopt_long already printed an error message. */ - exit(1); + exit(EXIT_FAILURE); default: abort(); }