hnb-test: Handle closed connections correctly
diff --git a/src/tests/hnb-test.c b/src/tests/hnb-test.c
index bfbedfc..e5f4951 100644
--- a/src/tests/hnb-test.c
+++ b/src/tests/hnb-test.c
@@ -213,9 +213,19 @@
 	if (rc < 0) {
 		LOGP(DMAIN, LOGL_ERROR, "Error during sctp_recvmsg()\n");
 		/* FIXME: clean up after disappeared HNB */
+		close(fd->fd);
+		osmo_fd_unregister(fd);
 		return rc;
-	} else
+	} else if (rc == 0) {
+		LOGP(DMAIN, LOGL_INFO, "Connection to HNB closed\n");
+		close(fd->fd);
+		osmo_fd_unregister(fd);
+		fd->fd = -1;
+
+		return -1;
+	} else {
 		msgb_put(msg, rc);
+	}
 
 	if (flags & MSG_NOTIFICATION) {
 		LOGP(DMAIN, LOGL_DEBUG, "Ignoring SCTP notification\n");