X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fclient.c;h=9f7576eff20051feb3d96ca36fa53ae8c19799c2;hb=ad3bc56f96b024ac31e8927f21d1f5e7b8f61b56;hp=7322aee56ba26ff4bc3c95d81a076fedc8afeb44;hpb=237691dc7eb239c3cffb06c22291105cb5510ace;p=umurmur.git diff --git a/src/client.c b/src/client.c index 7322aee..9f7576e 100644 --- a/src/client.c +++ b/src/client.c @@ -91,9 +91,9 @@ int Client_getfds(struct pollfd *pollfds) void Client_janitor() { - struct dlist *itr; + struct dlist *itr, *save; int bwTop = maxBandwidth + maxBandwidth / 4; - list_iterate(itr, &clients) { + list_iterate_safe(itr, save, &clients) { client_t *c; c = list_get_entry(itr, client_t, node); Log_debug("Client %s BW available %d", c->username, c->availableBandwidth); @@ -486,7 +486,10 @@ int Client_read(client_t *client) } else { if (SSLi_get_error(client->ssl, rc) == SSLI_ERROR_SYSCALL) { - Log_info_client(client, "Connection closed by peer"); + Log_info_client(client,"Error: %s - Closing connection", strerror(errno)); + } + else if (SSLi_get_error(client->ssl, rc) == SSLI_ERROR_CONNRESET) { + Log_info_client(client, "Connection reset by peer"); } else { Log_info_client(client, "SSL error: %d - Closing connection", SSLi_get_error(client->ssl, rc)); @@ -541,10 +544,15 @@ int Client_write(client_t *client) return 0; } else { - if (SSLi_get_error(client->ssl, rc) == SSLI_ERROR_SYSCALL) - Log_warn("Client_write: Error: %s - Closing connection", strerror(errno)); - else - Log_warn("Client_write: SSL error: %d - Closing connection.", SSLi_get_error(client->ssl, rc)); + if (SSLi_get_error(client->ssl, rc) == SSLI_ERROR_SYSCALL) { + Log_info_client(client, "Error: %s - Closing connection", strerror(errno)); + } + else if (SSLi_get_error(client->ssl, rc) == SSLI_ERROR_CONNRESET) { + Log_info_client(client, "Connection reset by peer"); + } + else { + Log_info_client(client, "SSL error: %d - Closing connection.", SSLi_get_error(client->ssl, rc)); + } Client_free(client); return -1; }