diff mncc/main.c @ 167:2ebad02adbe5

themwi-mncc: route outbound calls to themwi-sip-out
author Mychaela Falconia <falcon@freecalypso.org>
date Wed, 12 Oct 2022 18:08:34 -0800
parents ccc5ab6d8388
children
line wrap: on
line diff
--- a/mncc/main.c	Wed Oct 12 17:07:49 2022 -0800
+++ b/mncc/main.c	Wed Oct 12 18:08:34 2022 -0800
@@ -18,6 +18,8 @@
 extern int mtcall_listener;
 extern struct socket_conn *mtcall_socket_head;
 
+struct socket_conn outcall_conn;
+
 static int max_fd;
 
 update_max_fd(newfd)
@@ -47,6 +49,7 @@
 		exit(1);
 	}
 	signal(SIGPIPE, SIG_IGN);
+	outcall_conn.fd = -1;
 	/* main select loop */
 	for (;;) {
 		FD_ZERO(&fds);
@@ -61,6 +64,8 @@
 			FD_SET(conn->fd, &fds);
 			connp = &conn->next;
 		}
+		if (outcall_conn.fd >= 0)
+			FD_SET(outcall_conn.fd, &fds);
 		c = select(max_fd+1, &fds, 0, 0, 0);
 		if (c < 0) {
 			if (errno == EINTR)
@@ -75,6 +80,8 @@
 		for (conn = mtcall_socket_head; conn; conn = conn->next)
 			if (FD_ISSET(conn->fd, &fds))
 				extsock_read_select(conn);
+		if (outcall_conn.fd >= 0 && FD_ISSET(outcall_conn.fd, &fds))
+			extsock_read_select(&outcall_conn);
 		gc_call_list();
 	}
 }