projects
/
m6w6
/
libmemcached
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
Typed clone and cleanup functions with memcached_ prefixes,
[m6w6/libmemcached]
/
lib
/
memcached_connect.c
diff --git
a/lib/memcached_connect.c
b/lib/memcached_connect.c
index 0bb28177f060b6ff9f8b6d17e33a22aa1c8d0dbf..d3237fa8978509f134a6dfce4878addc1ffc0061 100644
(file)
--- a/
lib/memcached_connect.c
+++ b/
lib/memcached_connect.c
@@
-12,7
+12,7
@@
static memcached_return set_hostinfo(memcached_server_st *server)
memset(&hints, 0, sizeof(hints));
hints.ai_family= AF_INET;
hints.ai_socktype= SOCK_STREAM;
memset(&hints, 0, sizeof(hints));
hints.ai_family= AF_INET;
hints.ai_socktype= SOCK_STREAM;
- hints.ai_protocol=
0
;
+ hints.ai_protocol=
IPPROTO_TCP
;
e= getaddrinfo(server->hostname, str_port, &hints, &ai);
if (e != 0)
e= getaddrinfo(server->hostname, str_port, &hints, &ai);
if (e != 0)
@@
-110,9
+110,10
@@
static memcached_return tcp_connect(memcached_st *ptr, unsigned int server_key)
{
if (ptr->hosts[server_key].fd == -1)
{
{
if (ptr->hosts[server_key].fd == -1)
{
+ struct addrinfo *use;
+
/* Old connection junk still is in the structure */
WATCHPOINT_ASSERT(ptr->hosts[server_key].cursor_active == 0);
/* Old connection junk still is in the structure */
WATCHPOINT_ASSERT(ptr->hosts[server_key].cursor_active == 0);
- struct addrinfo *use;
if (ptr->hosts[server_key].sockaddr_inited == MEMCACHED_NOT_ALLOCATED ||
(!(ptr->flags & MEM_USE_CACHE_LOOKUPS)))
if (ptr->hosts[server_key].sockaddr_inited == MEMCACHED_NOT_ALLOCATED ||
(!(ptr->flags & MEM_USE_CACHE_LOOKUPS)))
@@
-217,7
+218,10
@@
test_connect:
break;
default:
ptr->cached_errno= errno;
break;
default:
ptr->cached_errno= errno;
+ WATCHPOINT_ASSERT(errno == ECONNREFUSED);
WATCHPOINT_ERRNO(ptr->cached_errno);
WATCHPOINT_ERRNO(ptr->cached_errno);
+ close(ptr->hosts[server_key].fd);
+ ptr->hosts[server_key].fd= -1;
return MEMCACHED_ERRNO;
}
ptr->connected++;
return MEMCACHED_ERRNO;
}
ptr->connected++;