return memcached_set_errno(*server, errno, MEMCACHED_AT, memcached_literal_param("getsockopt() errored while looking up error state from poll()"));
}
- // We check the value to see what happened wth the socket.
+ // We check the value to see what happened with the socket.
if (err == 0) // Should not happen
{
return MEMCACHED_SUCCESS;
{
case EINPROGRESS:
case EALREADY:
+ case EAGAIN:
server->events(POLLOUT);
break;
/* Create the socket */
while (server->address_info_next and server->fd == INVALID_SOCKET)
{
- /* Memcache server does not support IPV6 in udp mode, so skip if not ipv4 */
- if (memcached_is_udp(server->root) and server->address_info_next->ai_family != AF_INET)
- {
- server->address_info_next= server->address_info_next->ai_next;
- continue;
- }
-
int type= server->address_info_next->ai_socktype;
if (SOCK_CLOEXEC != 0)
{
timeout_error_occured= true;
break;
- case EAGAIN:
#if EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
#endif
// Probably not running service
default:
+ memcached_set_errno(*server, local_error, MEMCACHED_AT);
break;
}