X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fsasl.cc;h=cb609257cac36dc634e9ccef3be56d5ff6697695;hb=edbdb9c55b66d2cc1befe6e589c2bfc98ea2d7fb;hp=40d37e3a6e9f165743f22e56fc84803b5f35cbcf;hpb=0a1ee4b1b5307c14168780fde95431e92311c89a;p=m6w6%2Flibmemcached diff --git a/libmemcached/sasl.cc b/libmemcached/sasl.cc index 40d37e3a..cb609257 100644 --- a/libmemcached/sasl.cc +++ b/libmemcached/sasl.cc @@ -65,7 +65,7 @@ sasl_callback_t *memcached_get_sasl_callbacks(memcached_st *ptr) * @param raddr remote address (out) * @return true on success false otherwise (errno contains more info) */ -static memcached_return_t resolve_names(memcached_server_st& server, char *laddr, size_t laddr_length, char *raddr, size_t raddr_length) +static memcached_return_t resolve_names(memcached_instance_st& server, char *laddr, size_t laddr_length, char *raddr, size_t raddr_length) { char host[NI_MAXHOST]; char port[NI_MAXSERV]; @@ -74,12 +74,12 @@ static memcached_return_t resolve_names(memcached_server_st& server, char *laddr if (getsockname(server.fd, (struct sockaddr *)&saddr, &salen) < 0) { - return memcached_set_errno(server, MEMCACHED_ERRNO, MEMCACHED_AT); + return memcached_set_error(server, MEMCACHED_HOST_LOOKUP_FAILURE, MEMCACHED_AT); } if (getnameinfo((struct sockaddr *)&saddr, salen, host, sizeof(host), port, sizeof(port), NI_NUMERICHOST | NI_NUMERICSERV) < 0) { - return MEMCACHED_HOST_LOOKUP_FAILURE; + return memcached_set_error(server, MEMCACHED_HOST_LOOKUP_FAILURE, MEMCACHED_AT); } (void)snprintf(laddr, laddr_length, "%s;%s", host, port); @@ -87,7 +87,7 @@ static memcached_return_t resolve_names(memcached_server_st& server, char *laddr if (getpeername(server.fd, (struct sockaddr *)&saddr, &salen) < 0) { - return memcached_set_errno(server, MEMCACHED_ERRNO, MEMCACHED_AT); + return memcached_set_error(server, MEMCACHED_HOST_LOOKUP_FAILURE, MEMCACHED_AT); } if (getnameinfo((struct sockaddr *)&saddr, salen, host, sizeof(host), @@ -123,7 +123,7 @@ static void sasl_startup_function(void) } // extern "C" -memcached_return_t memcached_sasl_authenticate_connection(memcached_server_st *server) +memcached_return_t memcached_sasl_authenticate_connection(memcached_instance_st *server) { if (LIBMEMCACHED_WITH_SASL_SUPPORT == 0) { @@ -147,7 +147,9 @@ memcached_return_t memcached_sasl_authenticate_connection(memcached_server_st *s * as authenticated */ protocol_binary_request_no_extras request= { }; - request.message.header.request.magic= PROTOCOL_BINARY_REQ; + + initialize_binary_request(ptr, request.message.header); + request.message.header.request.opcode= PROTOCOL_BINARY_CMD_SASL_LIST_MECHS; if (memcached_io_write(server, request.bytes, @@ -240,7 +242,7 @@ memcached_return_t memcached_sasl_authenticate_connection(memcached_server_st *s { data, len } }; - if (memcached_io_writev(server, vector, 3, true) == -1) + if (memcached_io_writev(server, vector, 3, true) == false) { rc= MEMCACHED_WRITE_FAILURE; break;