summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2017-10-30 20:20:49 +0100
committerSimon Rettberg2017-10-30 20:20:49 +0100
commit3691d45622a54c1957d89b89bb65611e1661b450 (patch)
tree0a415030cab87a084e63402e8dcea8fe6ee3da35
parent[BENCH] Fix compile (diff)
downloaddnbd3-3691d45622a54c1957d89b89bb65611e1661b450.tar.gz
dnbd3-3691d45622a54c1957d89b89bb65611e1661b450.tar.xz
dnbd3-3691d45622a54c1957d89b89bb65611e1661b450.zip
[SERVER] Missed occurence of AF_INET(6) -> HOST_IP[46]
-rw-r--r--src/server/server.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/server.c b/src/server/server.c
index 1e63dcc..5932b0b 100644
--- a/src/server/server.c
+++ b/src/server/server.c
@@ -98,7 +98,6 @@ void dnbd3_cleanup()
int retries;
_shutdown = true;
- debug_locks_stop_watchdog();
logadd( LOG_INFO, "Cleanup..." );
if ( listeners != NULL ) sock_destroyPollList( listeners );
@@ -122,6 +121,9 @@ void dnbd3_cleanup()
// Wait for clients to disconnect
net_waitForAllDisconnected();
+ // Watchdog not needed anymore
+ debug_locks_stop_watchdog();
+
// Clean up images
retries = 5;
while ( !image_tryFreeAll() && --retries > 0 ) {
@@ -351,12 +353,12 @@ static dnbd3_client_t* dnbd3_prepareClient(struct sockaddr_storage *client, int
if ( client->ss_family == AF_INET ) {
struct sockaddr_in *v4 = (struct sockaddr_in *)client;
- dnbd3_client->host.type = AF_INET;
+ dnbd3_client->host.type = HOST_IP4;
memcpy( dnbd3_client->host.addr, &(v4->sin_addr), 4 );
dnbd3_client->host.port = v4->sin_port;
} else if ( client->ss_family == AF_INET6 ) {
struct sockaddr_in6 *v6 = (struct sockaddr_in6 *)client;
- dnbd3_client->host.type = AF_INET6;
+ dnbd3_client->host.type = HOST_IP6;
memcpy( dnbd3_client->host.addr, &(v6->sin6_addr), 16 );
dnbd3_client->host.port = v6->sin6_port;
} else {
@@ -370,6 +372,7 @@ static dnbd3_client_t* dnbd3_prepareClient(struct sockaddr_storage *client, int
static void dnbd3_handleSignal(int signum)
{
+ if ( _shutdown ) return;
if ( signum == SIGINT || signum == SIGTERM ) {
_shutdown = true;
} else if ( signum == SIGUSR1 || signum == SIGHUP ) {