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
}