From 42329bda00ed00c6cf5c9a7b619f8f436c3b429e Mon Sep 17 00:00:00 2001 From: Jay Sorg Date: Fri, 7 Jun 2013 23:43:58 -0700 Subject: [PATCH] adding xrdp.ini option to turn off new cursors --- common/xrdp_client_info.h | 2 +- libxrdp/libxrdp.c | 3 ++- libxrdp/xrdp_rdp.c | 4 ++++ xrdp/xrdp.ini | 1 + 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/common/xrdp_client_info.h b/common/xrdp_client_info.h index 591d49d7..86d0dc25 100644 --- a/common/xrdp_client_info.h +++ b/common/xrdp_client_info.h @@ -90,7 +90,7 @@ struct xrdp_client_info char orders[32]; int order_flags_ex; int use_bulk_comp; - int pointer_flags; /* 0 color, 1 new */ + int pointer_flags; /* 0 color, 1 new, 2 no new */ }; #endif diff --git a/libxrdp/libxrdp.c b/libxrdp/libxrdp.c index 19e8a2c6..3da32937 100644 --- a/libxrdp/libxrdp.c +++ b/libxrdp/libxrdp.c @@ -437,7 +437,8 @@ libxrdp_send_pointer(struct xrdp_session *session, int cache_idx, { if (bpp != 24) { - g_writeln("libxrdp_send_pointer: error"); + g_writeln("libxrdp_send_pointer: error client does not support " + "new cursors and bpp is %d", bpp); return 1; } } diff --git a/libxrdp/xrdp_rdp.c b/libxrdp/xrdp_rdp.c index 642da9b0..cd127964 100644 --- a/libxrdp/xrdp_rdp.c +++ b/libxrdp/xrdp_rdp.c @@ -131,6 +131,10 @@ xrdp_rdp_read_config(struct xrdp_client_info *client_info) { client_info->max_bpp = g_atoi(value); } + else if (g_strcasecmp(item, "new_cursors") == 0) + { + client_info->pointer_flags = text2bool(value) == 0 ? 2 : 0; + } } list_delete(items); diff --git a/xrdp/xrdp.ini b/xrdp/xrdp.ini index bdf1b177..ea6576cb 100644 --- a/xrdp/xrdp.ini +++ b/xrdp/xrdp.ini @@ -27,6 +27,7 @@ tcp_keepalive=yes #bulk_compression=yes # You can set the PAM error text in a gateway setup (MAX 256 chars) #pamerrortxt=change your password according to policy at http://url +#new_cursors=no [Logging] LogFile=xrdp.log