[guacamole-server] Update to build against new FreeRDP snapshot
David Woodhouse
dwmw2 at fedoraproject.org
Tue Mar 17 14:35:50 UTC 2015
commit 99565b1d78101f7bc427a920839c67e3ade9fed5
Author: David Woodhouse <David.Woodhouse at intel.com>
Date: Tue Mar 17 14:10:30 2015 +0000
Update to build against new FreeRDP snapshot
guacamole-server-0.9.5-clipboard-id-update.patch | 104 +++++++++++++++++++++++
guacamole-server-0.9.5-glyph-order.patch | 24 ++++++
guacamole-server.spec | 9 +-
3 files changed, 136 insertions(+), 1 deletion(-)
---
diff --git a/guacamole-server-0.9.5-clipboard-id-update.patch b/guacamole-server-0.9.5-clipboard-id-update.patch
new file mode 100644
index 0000000..4191479
--- /dev/null
+++ b/guacamole-server-0.9.5-clipboard-id-update.patch
@@ -0,0 +1,104 @@
+--- guacamole-server-0.9.5/src/protocols/rdp/rdp_cliprdr.c.orig 2015-03-17 12:39:58.316549546 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_cliprdr.c 2015-03-17 12:40:57.059229957 +0000
+@@ -104,8 +104,8 @@ void guac_rdp_process_cb_monitor_ready(g
+
+ /* Respond with supported format list */
+ format_list->formats = (UINT32*) malloc(sizeof(UINT32)*2);
+- format_list->formats[0] = CB_FORMAT_TEXT;
+- format_list->formats[1] = CB_FORMAT_UNICODETEXT;
++ format_list->formats[0] = CF_TEXT;
++ format_list->formats[1] = CF_UNICODETEXT;
+ format_list->num_formats = 2;
+
+ freerdp_channels_send_event(channels, (wMessage*) format_list);
+@@ -147,22 +147,22 @@ void guac_rdp_process_cb_format_list(gua
+ for (i=0; i<event->num_formats; i++) {
+
+ /* If plain text available, request it */
+- if (event->formats[i] == CB_FORMAT_TEXT)
++ if (event->formats[i] == CF_TEXT)
+ formats |= GUAC_RDP_CLIPBOARD_FORMAT_CP1252;
+- else if (event->formats[i] == CB_FORMAT_UNICODETEXT)
++ else if (event->formats[i] == CF_UNICODETEXT)
+ formats |= GUAC_RDP_CLIPBOARD_FORMAT_UTF16;
+
+ }
+
+ /* Prefer Unicode to plain text */
+ if (formats & GUAC_RDP_CLIPBOARD_FORMAT_UTF16) {
+- __guac_rdp_cb_request_format(client, CB_FORMAT_UNICODETEXT);
++ __guac_rdp_cb_request_format(client, CF_UNICODETEXT);
+ return;
+ }
+
+ /* Use plain text if Unicode unavailable */
+ if (formats & GUAC_RDP_CLIPBOARD_FORMAT_CP1252) {
+- __guac_rdp_cb_request_format(client, CB_FORMAT_TEXT);
++ __guac_rdp_cb_request_format(client, CF_TEXT);
+ return;
+ }
+
+@@ -186,11 +186,11 @@ void guac_rdp_process_cb_data_request(gu
+ /* Determine output encoding */
+ switch (event->format) {
+
+- case CB_FORMAT_TEXT:
++ case CF_TEXT:
+ writer = GUAC_WRITE_CP1252;
+ break;
+
+- case CB_FORMAT_UNICODETEXT:
++ case CF_UNICODETEXT:
+ writer = GUAC_WRITE_UTF16;
+ break;
+
+@@ -232,12 +232,12 @@ void guac_rdp_process_cb_data_response(g
+ switch (client_data->requested_clipboard_format) {
+
+ /* Non-Unicode */
+- case CB_FORMAT_TEXT:
++ case CF_TEXT:
+ reader = GUAC_READ_CP1252;
+ break;
+
+ /* Unicode (UTF-16) */
+- case CB_FORMAT_UNICODETEXT:
++ case CF_UNICODETEXT:
+ reader = GUAC_READ_UTF16;
+ break;
+
+--- guacamole-server-0.9.5/src/protocols/rdp/client.c.orig 2015-03-17 12:40:07.079651048 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/client.c 2015-03-17 12:40:57.064230015 +0000
+@@ -722,7 +722,7 @@ int guac_client_init(guac_client* client
+ guac_client_data->rdp_inst = rdp_inst;
+ guac_client_data->mouse_button_mask = 0;
+ guac_client_data->clipboard = guac_common_clipboard_alloc(GUAC_RDP_CLIPBOARD_MAX_LENGTH);
+- guac_client_data->requested_clipboard_format = CB_FORMAT_TEXT;
++ guac_client_data->requested_clipboard_format = CF_TEXT;
+ guac_client_data->audio = NULL;
+ guac_client_data->filesystem = NULL;
+ guac_client_data->available_svc = guac_common_list_alloc();
+--- guacamole-server-0.9.5/src/protocols/rdp/rdp_stream.c.orig 2015-03-17 12:40:13.952730659 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_stream.c 2015-03-17 12:40:57.066230038 +0000
+@@ -289,8 +289,8 @@ int guac_rdp_clipboard_end_handler(guac_
+
+ /* Notify server that text data is now available */
+ format_list->formats = (UINT32*) malloc(sizeof(UINT32));
+- format_list->formats[0] = CB_FORMAT_TEXT;
+- format_list->formats[1] = CB_FORMAT_UNICODETEXT;
++ format_list->formats[0] = CF_TEXT;
++ format_list->formats[1] = CF_UNICODETEXT;
+ format_list->num_formats = 2;
+
+ freerdp_channels_send_event(channels, (wMessage*) format_list);
+--- guacamole-server-0.9.5/src/protocols/rdp/client.h.orig 2015-03-17 12:40:22.535830076 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/client.h 2015-03-17 12:40:57.067230050 +0000
+@@ -143,7 +143,7 @@ typedef struct rdp_guac_client_data {
+ * The format of the clipboard which was requested. Data received from
+ * the RDP server should conform to this format. This will be one of
+ * several legal clipboard format values defined within FreeRDP, such as
+- * CB_FORMAT_TEXT.
++ * CF_TEXT.
+ */
+ int requested_clipboard_format;
+
diff --git a/guacamole-server-0.9.5-glyph-order.patch b/guacamole-server-0.9.5-glyph-order.patch
new file mode 100644
index 0000000..70bba86
--- /dev/null
+++ b/guacamole-server-0.9.5-glyph-order.patch
@@ -0,0 +1,24 @@
+--- guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.c~ 2015-02-04 05:58:22.000000000 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.c 2015-03-17 14:04:45.549617112 +0000
+@@ -126,7 +126,8 @@ void guac_rdp_glyph_free(rdpContext* con
+ }
+
+ void guac_rdp_glyph_begindraw(rdpContext* context,
+- int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor) {
++ int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor,
++ BOOL fOpRedundant) {
+
+ guac_client* client = ((rdp_freerdp_context*) context)->client;
+ rdp_guac_client_data* guac_client_data =
+--- guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.h~ 2015-02-04 05:58:22.000000000 +0000
++++ guacamole-server-0.9.5/src/protocols/rdp/rdp_glyph.h 2015-03-17 14:05:27.929142981 +0000
+@@ -53,7 +53,8 @@ void guac_rdp_glyph_new(rdpContext* cont
+ void guac_rdp_glyph_draw(rdpContext* context, rdpGlyph* glyph, int x, int y);
+ void guac_rdp_glyph_free(rdpContext* context, rdpGlyph* glyph);
+ void guac_rdp_glyph_begindraw(rdpContext* context,
+- int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor);
++ int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor,
++ BOOL fOpRedundant);
+ void guac_rdp_glyph_enddraw(rdpContext* context,
+ int x, int y, int width, int height, UINT32 fgcolor, UINT32 bgcolor);
+
diff --git a/guacamole-server.spec b/guacamole-server.spec
index 996a3c2..d3fa658 100644
--- a/guacamole-server.spec
+++ b/guacamole-server.spec
@@ -3,12 +3,14 @@
Name: guacamole-server
Version: 0.9.5
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Server-side native components that form the Guacamole proxy
License: MPLv1.1 or GPLv2+
URL: http://guac-dev.org/
Source0: http://downloads.sourceforge.net/guacamole/%{name}-%{version}.tar.gz
+Patch1: guacamole-server-0.9.5-clipboard-id-update.patch
+Patch2: guacamole-server-0.9.5-glyph-order.patch
Source1: %{name}.sysconfig
Source2: %{name}.service
Source3: %{name}.init
@@ -121,6 +123,8 @@ framework to translate between arbitrary protocols and the Guacamole protocol.
%prep
%setup -q
+%patch1 -p1
+%patch2 -p1
%build
autoreconf -vif
@@ -257,6 +261,9 @@ fi
%attr(750,%{username},%{username}) %{_sharedstatedir}/guacd
%changelog
+* Tue Mar 17 2015 David Woodhouse <dwmw2 at infradead.org> - 0.9.5-3
+- API updates for new FreeRDP snapshot.
+
* Wed Feb 25 2015 Simone Caronni <negativo17 at gmail.com> - 0.9.5-2
- Add license macro.
More information about the scm-commits
mailing list