diff options
Diffstat (limited to 'rpc/rpc-transport/socket')
-rw-r--r-- | rpc/rpc-transport/socket/src/name.c | 7 | ||||
-rw-r--r-- | rpc/rpc-transport/socket/src/socket.c | 24 |
2 files changed, 20 insertions, 11 deletions
diff --git a/rpc/rpc-transport/socket/src/name.c b/rpc/rpc-transport/socket/src/name.c index c6eae9739..f731bab4b 100644 --- a/rpc/rpc-transport/socket/src/name.c +++ b/rpc/rpc-transport/socket/src/name.c @@ -23,13 +23,6 @@ #include "socket.h" #include "common-utils.h" -int32_t -gf_resolve_ip6 (const char *hostname, - uint16_t port, - int family, - void **dnscache, - struct addrinfo **addr_info); - static int32_t af_inet_bind_to_port_lt_ceiling (int fd, struct sockaddr *sockaddr, socklen_t sockaddr_len, int ceiling) diff --git a/rpc/rpc-transport/socket/src/socket.c b/rpc/rpc-transport/socket/src/socket.c index 490fe8a7e..c5e8b889f 100644 --- a/rpc/rpc-transport/socket/src/socket.c +++ b/rpc/rpc-transport/socket/src/socket.c @@ -1098,7 +1098,8 @@ socket_event_poll_out (rpc_transport_t *this) } pthread_mutex_unlock (&priv->lock); - ret = rpc_transport_notify (this, RPC_TRANSPORT_MSG_SENT, NULL); + if (ret == 0) + ret = rpc_transport_notify (this, RPC_TRANSPORT_MSG_SENT, NULL); out: return ret; @@ -2491,8 +2492,10 @@ socket_server_event_handler (int fd, int idx, void *data, new_trans = GF_CALLOC (1, sizeof (*new_trans), gf_common_mt_rpc_trans_t); - if (!new_trans) + if (!new_trans) { + close (new_sock); goto unlock; + } ret = pthread_mutex_init(&new_trans->lock, NULL); if (ret == -1) { @@ -2500,6 +2503,7 @@ socket_server_event_handler (int fd, int idx, void *data, "pthread_mutex_init() failed: %s", strerror (errno)); close (new_sock); + GF_FREE (new_trans); goto unlock; } @@ -2520,6 +2524,8 @@ socket_server_event_handler (int fd, int idx, void *data, "getsockname on %d failed (%s)", new_sock, strerror (errno)); close (new_sock); + GF_FREE (new_trans->name); + GF_FREE (new_trans); goto unlock; } @@ -2527,6 +2533,8 @@ socket_server_event_handler (int fd, int idx, void *data, ret = socket_init(new_trans); if (ret != 0) { close(new_sock); + GF_FREE (new_trans->name); + GF_FREE (new_trans); goto unlock; } new_trans->ops = this->ops; @@ -2549,6 +2557,8 @@ socket_server_event_handler (int fd, int idx, void *data, gf_log(this->name,GF_LOG_ERROR, "server setup failed"); close(new_sock); + GF_FREE (new_trans->name); + GF_FREE (new_trans); goto unlock; } } @@ -2562,6 +2572,8 @@ socket_server_event_handler (int fd, int idx, void *data, new_sock, strerror (errno)); close (new_sock); + GF_FREE (new_trans->name); + GF_FREE (new_trans); goto unlock; } } @@ -2600,6 +2612,8 @@ socket_server_event_handler (int fd, int idx, void *data, if (ret == -1) { gf_log (this->name, GF_LOG_WARNING, "failed to register the socket with event"); + close (new_sock); + rpc_transport_unref (new_trans); goto unlock; } @@ -3557,7 +3571,8 @@ socket_init (rpc_transport_t *this) } priv->ssl_ca_list = gf_strdup(priv->ssl_ca_list); - gf_log(this->name,GF_LOG_INFO,"SSL support is %s", + gf_log(this->name, priv->ssl_enabled ? GF_LOG_INFO: GF_LOG_DEBUG, + "SSL support is %s", priv->ssl_enabled ? "ENABLED" : "NOT enabled"); /* * This might get overridden temporarily in socket_connect (q.v.) @@ -3572,7 +3587,8 @@ socket_init (rpc_transport_t *this) "invalid value given for own-thread boolean"); } } - gf_log(this->name,GF_LOG_INFO,"using %s polling thread", + gf_log(this->name, priv->own_thread ? GF_LOG_INFO: GF_LOG_DEBUG, + "using %s polling thread", priv->own_thread ? "private" : "system"); if (priv->use_ssl) { |