You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by vn...@apache.org on 2018/09/27 08:36:48 UTC

[2/6] guacamole-server git commit: GUACAMOLE-623: Use libwebsockets' dummy callback only if defined.

GUACAMOLE-623: Use libwebsockets' dummy callback only if defined.


Project: http://git-wip-us.apache.org/repos/asf/guacamole-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/guacamole-server/commit/b48a1b3a
Tree: http://git-wip-us.apache.org/repos/asf/guacamole-server/tree/b48a1b3a
Diff: http://git-wip-us.apache.org/repos/asf/guacamole-server/diff/b48a1b3a

Branch: refs/heads/master
Commit: b48a1b3a5d15e6c95fa64222342033eb584dc0a3
Parents: d8618b0
Author: Michael Jumper <mj...@apache.org>
Authored: Wed Sep 26 21:51:07 2018 -0700
Committer: Michael Jumper <mj...@apache.org>
Committed: Wed Sep 26 21:51:07 2018 -0700

----------------------------------------------------------------------
 configure.ac                          |  8 ++++++++
 src/protocols/kubernetes/kubernetes.c | 11 ++++++++++-
 2 files changed, 18 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/guacamole-server/blob/b48a1b3a/configure.ac
----------------------------------------------------------------------
diff --git a/configure.ac b/configure.ac
index bb23f62..672d19e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1224,6 +1224,14 @@ then
                    [Whether LCCSCF_USE_SSL is defined])],,
         [#include <libwebsockets.h>])
 
+    # Older versions of libwebsockets do not define a dummy callback which
+    # must be invoked after the main event callback is invoked; the main event
+    # callback must instead manually return zero
+    AC_CHECK_DECL([lws_callback_http_dummy],
+        [AC_DEFINE([HAVE_LWS_CALLBACK_HTTP_DUMMY],,
+                   [Whether lws_callback_http_dummy() is defined])],,
+        [#include <libwebsockets.h>])
+
 fi
 
 AM_CONDITIONAL([ENABLE_WEBSOCKETS],

http://git-wip-us.apache.org/repos/asf/guacamole-server/blob/b48a1b3a/src/protocols/kubernetes/kubernetes.c
----------------------------------------------------------------------
diff --git a/src/protocols/kubernetes/kubernetes.c b/src/protocols/kubernetes/kubernetes.c
index 9cb0b13..fb38d68 100644
--- a/src/protocols/kubernetes/kubernetes.c
+++ b/src/protocols/kubernetes/kubernetes.c
@@ -66,8 +66,13 @@ static int guac_kubernetes_lws_callback(struct lws* wsi,
     guac_client* client = guac_kubernetes_lws_current_client;
 
     /* Do not handle any further events if connection is closing */
-    if (client->state != GUAC_CLIENT_RUNNING)
+    if (client->state != GUAC_CLIENT_RUNNING) {
+#ifdef HAVE_LWS_CALLBACK_HTTP_DUMMY
         return lws_callback_http_dummy(wsi, reason, user, in, length);
+#else
+        return 0;
+#endif
+    }
 
     switch (reason) {
 
@@ -127,7 +132,11 @@ static int guac_kubernetes_lws_callback(struct lws* wsi,
 
     }
 
+#ifdef HAVE_LWS_CALLBACK_HTTP_DUMMY
     return lws_callback_http_dummy(wsi, reason, user, in, length);
+#else
+    return 0;
+#endif
 
 }