summaryrefslogtreecommitdiffstats
path: root/xrdp/xrdp_wm.c
diff options
context:
space:
mode:
authornorrarvid <norrarvid@gmail.com>2012-05-30 17:11:53 +0200
committernorrarvid <norrarvid@gmail.com>2012-05-30 17:11:53 +0200
commitf4ffaafc20f454481b87e500ef5ca8d651083a1d (patch)
tree277460e442b8a8c390774c7c000422c2a4017cb8 /xrdp/xrdp_wm.c
parent60b052965634be151d88f7011149d0edc71f23d8 (diff)
downloadxrdp-proprietary-f4ffaafc20f454481b87e500ef5ca8d651083a1d.tar.gz
xrdp-proprietary-f4ffaafc20f454481b87e500ef5ca8d651083a1d.zip
channels can be disabled by XRDP
Diffstat (limited to 'xrdp/xrdp_wm.c')
-rw-r--r--xrdp/xrdp_wm.c23
1 files changed, 13 insertions, 10 deletions
diff --git a/xrdp/xrdp_wm.c b/xrdp/xrdp_wm.c
index 3f9d3c6e..4bf9f1b4 100644
--- a/xrdp/xrdp_wm.c
+++ b/xrdp/xrdp_wm.c
@@ -1391,21 +1391,24 @@ xrdp_wm_process_channel_data(struct xrdp_wm* self,
tbus param3, tbus param4)
{
int rv;
-
+ int chanid ;
rv = 1;
if (self->mm->mod != 0)
- {
- if (self->mm->usechansrv)
- {
- rv = xrdp_mm_process_channel_data(self->mm, param1, param2,
+ {
+ chanid = LOWORD(param1);
+ if(is_channel_allowed(self, chanid)){
+ if (self->mm->usechansrv)
+ {
+ rv = xrdp_mm_process_channel_data(self->mm, param1, param2,
param3, param4);
- }
- else
- {
- if (self->mm->mod->mod_event != 0)
+ }
+ else
{
- rv = self->mm->mod->mod_event(self->mm->mod, 0x5555, param1, param2,
+ if (self->mm->mod->mod_event != 0)
+ {
+ rv = self->mm->mod->mod_event(self->mm->mod, 0x5555, param1, param2,
param3, param4);
+ }
}
}
}