More settings and debug logs.
authorMichael Jumper <zhangmaike@users.sourceforge.net>
Tue, 3 Jan 2012 23:41:42 +0000 (15:41 -0800)
committerMichael Jumper <zhangmaike@users.sourceforge.net>
Tue, 3 Jan 2012 23:41:42 +0000 (15:41 -0800)
src/client.c
src/guac_handlers.c

index b00f572..2bd8046 100644 (file)
@@ -46,6 +46,7 @@
 #include <freerdp/cache/bitmap.h>
 #include <freerdp/channels/channels.h>
 #include <freerdp/input.h>
+#include <freerdp/constants.h>
 
 #include <guacamole/socket.h>
 #include <guacamole/protocol.h>
@@ -151,6 +152,7 @@ int guac_client_init(guac_client* client, int argc, char** argv) {
 
     char* hostname;
     int port = RDP_DEFAULT_PORT;
+    boolean bitmap_cache;
 
     if (argc < 2) {
         guac_protocol_send_error(client->socket, "Wrong argument count received.");
@@ -202,6 +204,35 @@ int guac_client_init(guac_client* client, int argc, char** argv) {
        settings->window_title = strdup(hostname);
        settings->username = "guest";
 
+    /* Order support */
+    bitmap_cache = settings->bitmap_cache;
+    settings->os_major_type = OSMAJORTYPE_UNSPECIFIED;
+    settings->os_minor_type = OSMINORTYPE_UNSPECIFIED;
+    settings->order_support[NEG_DSTBLT_INDEX] = true;
+    settings->order_support[NEG_PATBLT_INDEX] = true;
+    settings->order_support[NEG_SCRBLT_INDEX] = true;
+    settings->order_support[NEG_OPAQUE_RECT_INDEX] = true;
+    settings->order_support[NEG_DRAWNINEGRID_INDEX] = false;
+    settings->order_support[NEG_MULTIDSTBLT_INDEX] = false;
+    settings->order_support[NEG_MULTIPATBLT_INDEX] = false;
+    settings->order_support[NEG_MULTISCRBLT_INDEX] = false;
+    settings->order_support[NEG_MULTIOPAQUERECT_INDEX] = false;
+    settings->order_support[NEG_MULTI_DRAWNINEGRID_INDEX] = false;
+    settings->order_support[NEG_LINETO_INDEX] = false;
+    settings->order_support[NEG_POLYLINE_INDEX] = false;
+    settings->order_support[NEG_MEMBLT_INDEX] = bitmap_cache;
+    settings->order_support[NEG_MEM3BLT_INDEX] = false;
+    settings->order_support[NEG_MEMBLT_V2_INDEX] = bitmap_cache;
+    settings->order_support[NEG_MEM3BLT_V2_INDEX] = false;
+    settings->order_support[NEG_SAVEBITMAP_INDEX] = false;
+    settings->order_support[NEG_GLYPH_INDEX_INDEX] = true;
+    settings->order_support[NEG_FAST_INDEX_INDEX] = true;
+    settings->order_support[NEG_FAST_GLYPH_INDEX] = true;
+    settings->order_support[NEG_POLYGON_SC_INDEX] = false;
+    settings->order_support[NEG_POLYGON_CB_INDEX] = false;
+    settings->order_support[NEG_ELLIPSE_SC_INDEX] = false;
+    settings->order_support[NEG_ELLIPSE_CB_INDEX] = false;
+
     /* Store client data */
     guac_client_data->rdp_inst = rdp_inst;
     guac_client_data->mouse_button_mask = 0;
index 2d1bc20..b7b9b1d 100644 (file)
@@ -78,6 +78,8 @@ int rdp_guac_client_handle_messages(guac_client* client) {
 
     fd_set rfds, wfds;
 
+    guac_client_log_info(client, "handle_messages() start");
+
     /* get rdp fds */
     if (!freerdp_get_fds(rdp_inst, read_fds, &read_count, write_fds, &write_count)) {
         guac_client_log_error(client, "Unable to read RDP file descriptors.");
@@ -141,6 +143,7 @@ int rdp_guac_client_handle_messages(guac_client* client) {
     }
 
     /* Success */
+    guac_client_log_info(client, "handle_messages() end");
     return 0;
 
 }