ipa: Add a callback to detect if the server_conn was closed
diff --git a/src/input/ipa.c b/src/input/ipa.c
index c881b22..a887959 100644
--- a/src/input/ipa.c
+++ b/src/input/ipa.c
@@ -443,7 +443,7 @@
 struct ipa_server_conn *
 ipa_server_conn_create(void *ctx, struct ipa_server_link *link, int fd,
 		int (*cb)(struct ipa_server_conn *conn, struct msgb *msg),
-		void *data)
+		int (*closed_cb)(struct ipa_server_conn *conn), void *data)
 {
 	struct ipa_server_conn *conn;
 
@@ -459,6 +459,7 @@
 	conn->ofd.cb = ipa_server_conn_cb;
 	conn->ofd.when = BSC_FD_READ;
 	conn->cb = cb;
+	conn->closed_cb = closed_cb;
 	conn->data = data;
 	INIT_LLIST_HEAD(&conn->tx_queue);
 
@@ -474,6 +475,8 @@
 {
 	close(conn->ofd.fd);
 	osmo_fd_unregister(&conn->ofd);
+	if (conn->closed_cb)
+		conn->closed_cb(conn);
 	talloc_free(conn);
 }