From 9ef1a7a2ef4b81eb9ddb57ec8c3af7622480198a Mon Sep 17 00:00:00 2001 From: Nick Peng Date: Thu, 1 Nov 2018 22:47:33 +0800 Subject: [PATCH] Bugfix --- src/dns_client.c | 6 +++++- src/smartdns.c | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/dns_client.c b/src/dns_client.c index 1c2500e..dae6a61 100644 --- a/src/dns_client.c +++ b/src/dns_client.c @@ -1078,7 +1078,7 @@ static int _dns_client_socket_recv(SSL *ssl, void *buf, int num) ret = -1; break; case SSL_ERROR_SYSCALL: - tlog(TLOG_DEBUG, "SSL syscall failed, %s, ", strerror(errno)); + tlog(TLOG_ERROR, "SSL syscall failed, %s, ", strerror(errno)); ret = -1; return ret; default: @@ -1451,6 +1451,10 @@ static int _dns_client_send_tls(struct dns_server_info *server_info, void *packe memcpy(inpacket + 2, packet, len); len += 2; + if (server_info->status != DNS_SERVER_STATUS_CONNECTED) { + return _dns_client_send_data_to_buffer(server_info, inpacket, len); + } + send_len = _dns_client_socket_send(server_info->ssl, inpacket, len); if (send_len < 0) { if (errno == EAGAIN || server_info->ssl == NULL) { diff --git a/src/smartdns.c b/src/smartdns.c index b7a0385..c6654b0 100644 --- a/src/smartdns.c +++ b/src/smartdns.c @@ -327,7 +327,7 @@ int main(int argc, char *argv[]) } signal(SIGABRT, sig_handle); - signal(SIGPIPE, sig_handle); + signal(SIGPIPE, SIG_IGN); signal(SIGBUS, sig_handle); signal(SIGSEGV, sig_handle); signal(SIGILL, sig_handle);