summaryrefslogtreecommitdiffstats
path: root/xrdp/xrdp_process.c
diff options
context:
space:
mode:
authorjsorg71 <jsorg71>2007-01-14 05:04:00 +0000
committerjsorg71 <jsorg71>2007-01-14 05:04:00 +0000
commit4b802ae8dd102ee8bab5b3af77438060c4525ef9 (patch)
treea9c5fee0d221906ac890ef844ebd813fb90e90a6 /xrdp/xrdp_process.c
parent08e292faf4c20317c761749e812aa565659eb11b (diff)
downloadxrdp-proprietary-4b802ae8dd102ee8bab5b3af77438060c4525ef9.tar.gz
xrdp-proprietary-4b802ae8dd102ee8bab5b3af77438060c4525ef9.zip
setup is_term callback function
Diffstat (limited to 'xrdp/xrdp_process.c')
-rw-r--r--xrdp/xrdp_process.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/xrdp/xrdp_process.c b/xrdp/xrdp_process.c
index ef63f3cd..dd217faf 100644
--- a/xrdp/xrdp_process.c
+++ b/xrdp/xrdp_process.c
@@ -67,6 +67,15 @@ xrdp_process_loop(struct xrdp_process* self)
}
/*****************************************************************************/
+/* returns boolean */
+/* this is so libxrdp.so can known when to quit looping */
+static int DEFAULT_CC
+xrdp_is_term(void)
+{
+ return g_is_term();
+}
+
+/*****************************************************************************/
int APP_CC
xrdp_process_main_loop(struct xrdp_process* self)
{
@@ -74,7 +83,10 @@ xrdp_process_main_loop(struct xrdp_process* self)
self->status = 1;
self->session = libxrdp_init((long)self, self->sck);
+ /* this callback function is in xrdp_wm.c */
self->session->callback = callback;
+ /* this function is just above */
+ self->session->is_term = xrdp_is_term;
g_tcp_set_non_blocking(self->sck);
g_tcp_set_no_delay(self->sck);
if (libxrdp_process_incomming(self->session) == 0)