From ce08ad0486ac8e6d5abe2919e6c6b84b3a04b5b7 Mon Sep 17 00:00:00 2001 From: jsorg71 Date: Tue, 3 Aug 2004 03:39:35 +0000 Subject: [PATCH] add xrdp.c --- xrdp/xrdp.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 xrdp/xrdp.c diff --git a/xrdp/xrdp.c b/xrdp/xrdp.c new file mode 100644 index 00000000..ba91216a --- /dev/null +++ b/xrdp/xrdp.c @@ -0,0 +1,55 @@ +/* + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + + Copyright (C) Jay Sorg 2004 + + main program + +*/ + +#include "xrdp.h" + +static struct xrdp_listen* g_listen = 0; + +/*****************************************************************************/ +/* i can't get stupid in_val to work, hum using global var for now */ +void* xrdp_listen_run(void* in_val) +{ + + DEBUG(("listener started\n")) + xrdp_listen_main_loop(g_listen); + DEBUG(("listener done\n")) + return 0; +} + +/*****************************************************************************/ +int main(int argc, char** argv) +{ + int rv; + + rv = 0; + g_listen = xrdp_listen_create(); + if (g_thread_create(xrdp_listen_run, 0) == 0) + { + g_getchar(); + g_set_term(1); + while (g_listen->status > 0) + g_sleep(100); + } + else + rv = 1; + xrdp_listen_delete(g_listen); + return rv; +}