summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsorg71 <jsorg71>2005-07-11 00:41:07 +0000
committerjsorg71 <jsorg71>2005-07-11 00:41:07 +0000
commit666b5dd175a1cc837d6ae45d7923679ddeeed241 (patch)
treeee1bfa837f83006eafce57e0126b1e106b7cf179
parentd349f6920a4d97632d0216fbd0d48de50498eb4b (diff)
downloadxrdp-proprietary-666b5dd175a1cc837d6ae45d7923679ddeeed241.tar.gz
xrdp-proprietary-666b5dd175a1cc837d6ae45d7923679ddeeed241.zip
SIGCHLD can differ
-rw-r--r--common/os_calls.c10
-rw-r--r--common/os_calls.h2
-rw-r--r--sesman/sesman.c2
-rw-r--r--xrdp/xrdp.ini8
4 files changed, 21 insertions, 1 deletions
diff --git a/common/os_calls.c b/common/os_calls.c
index b04d71fe..0a4efba3 100644
--- a/common/os_calls.c
+++ b/common/os_calls.c
@@ -770,6 +770,16 @@ g_signal(int sig_num, void (*func)(int))
}
/*****************************************************************************/
+void
+g_signal_child_stop(void (*func)(int))
+{
+#if defined(_WIN32)
+#else
+ signal(SIGCHLD, func);
+#endif
+}
+
+/*****************************************************************************/
int
g_fork(void)
{
diff --git a/common/os_calls.h b/common/os_calls.h
index e05345f8..af300817 100644
--- a/common/os_calls.h
+++ b/common/os_calls.h
@@ -134,6 +134,8 @@ g_execlp11(char* a1, char* a2, char* a3, char* a4, char* a5, char* a6,
char* a7, char* a8, char* a9, char* a10, char* a11);
void
g_signal(int sig_num, void (*func)(int));
+void
+g_signal_child_stop(void (*func)(int));
int
g_fork(void);
int
diff --git a/sesman/sesman.c b/sesman/sesman.c
index 0d2ae2f1..2af57885 100644
--- a/sesman/sesman.c
+++ b/sesman/sesman.c
@@ -296,7 +296,7 @@ start_session(int width, int height, int bpp, char* username, char* password)
}
else /* parent */
{
- g_signal(17, cterm); /* SIGCHLD */
+ g_signal_child_stop(cterm); /* SIGCHLD */
session_items[display].pid = pid;
g_strcpy(session_items[display].name, username);
session_items[display].display = display;
diff --git a/xrdp/xrdp.ini b/xrdp/xrdp.ini
index 84f526c0..ef72bb46 100644
--- a/xrdp/xrdp.ini
+++ b/xrdp/xrdp.ini
@@ -26,3 +26,11 @@ ip=ask
port=ask5900
username=na
password=ask
+
+[vnc4]
+name=sesman-any
+lib=../vnc/libvnc.so
+ip=ask
+port=-1
+username=ask
+password=ask