[libvirt] [PATCH] Add conditionals to allow build without SASL
Jason Helfman
jhelfman at e-e.com
Thu Jun 30 17:35:54 UTC 2011
On Thu, Jun 30, 2011 at 06:18:43PM +0100, Daniel P. Berrange thus spake:
>* daemon/libvirtd.c, daemon/remote.c: Add #if HAVE_SASL and
> suitable function stubs to allow build without SASL
>---
> daemon/libvirtd.c | 6 ++++++
> daemon/remote.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+), 0 deletions(-)
>
>diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c
>index 118aa92..60ee705 100644
>--- a/daemon/libvirtd.c
>+++ b/daemon/libvirtd.c
>@@ -91,7 +91,9 @@
>
> #include "configmake.h"
>
>+#if HAVE_SASL
> virNetSASLContextPtr saslCtxt = NULL;
>+#endif
> virNetServerProgramPtr remoteProgram = NULL;
> virNetServerProgramPtr qemuProgram = NULL;
>
>@@ -560,6 +562,7 @@ static int daemonSetupNetworking(virNetServerPtr srv,
> }
> }
>
>+#if HAVE_SASL
> if (config->auth_unix_rw == REMOTE_AUTH_SASL ||
> config->auth_unix_ro == REMOTE_AUTH_SASL ||
> config->auth_tcp == REMOTE_AUTH_SASL ||
>@@ -569,6 +572,7 @@ static int daemonSetupNetworking(virNetServerPtr srv,
> if (!saslCtxt)
> goto error;
> }
>+#endif
>
> #if HAVE_POLKIT0
> if (auth_unix_rw == REMOTE_AUTH_POLKIT ||
>@@ -745,8 +749,10 @@ static int remoteConfigGetAuth(virConfPtr conf, const char *key, int *auth, cons
>
> if (STREQ(p->str, "none")) {
> *auth = VIR_NET_SERVER_SERVICE_AUTH_NONE;
>+#if HAVE_SASL
> } else if (STREQ(p->str, "sasl")) {
> *auth = VIR_NET_SERVER_SERVICE_AUTH_SASL;
>+#endif
> } else if (STREQ(p->str, "polkit")) {
> *auth = VIR_NET_SERVER_SERVICE_AUTH_POLKIT;
> } else {
>diff --git a/daemon/remote.c b/daemon/remote.c
>index 9e6cf77..2889908 100644
>--- a/daemon/remote.c
>+++ b/daemon/remote.c
>@@ -1653,6 +1653,7 @@ cleanup:
> }
>
>
>+#ifdef HAVE_SASL
> /*
> * Initializes the SASL session in prepare for authentication
> * and gives the client a list of allowed mechanisms to choose
>@@ -1969,6 +1970,49 @@ error:
> virMutexUnlock(&priv->lock);
> return -1;
> }
>+#else
>+static int
>+remoteDispatchAuthSaslInit(virNetServerPtr server ATTRIBUTE_UNUSED,
>+ virNetServerClientPtr client ATTRIBUTE_UNUSED,
>+ virNetMessageHeaderPtr hdr ATTRIBUTE_UNUSED,
>+ virNetMessageErrorPtr rerr,
>+ remote_auth_sasl_init_ret *ret ATTRIBUTE_UNUSED)
>+{
>+ VIR_WARN("Client tried unsupported SASL auth");
>+ virNetError(VIR_ERR_AUTH_FAILED, "%s",
>+ _("authentication failed"));
>+ virNetMessageSaveError(rerr);
>+ return -1;
>+}
>+static int
>+remoteDispatchAuthSaslStart(virNetServerPtr server ATTRIBUTE_UNUSED,
>+ virNetServerClientPtr client ATTRIBUTE_UNUSED,
>+ virNetMessageHeaderPtr hdr ATTRIBUTE_UNUSED,
>+ virNetMessageErrorPtr rerr,
>+ remote_auth_sasl_start_args *args ATTRIBUTE_UNUSED,
>+ remote_auth_sasl_start_ret *ret ATTRIBUTE_UNUSED)
>+{
>+ VIR_WARN("Client tried unsupported SASL auth");
>+ virNetError(VIR_ERR_AUTH_FAILED, "%s",
>+ _("authentication failed"));
>+ virNetMessageSaveError(rerr);
>+ return -1;
>+}
>+static int
>+remoteDispatchAuthSaslStep(virNetServerPtr server ATTRIBUTE_UNUSED,
>+ virNetServerClientPtr client ATTRIBUTE_UNUSED,
>+ virNetMessageHeaderPtr hdr ATTRIBUTE_UNUSED,
>+ virNetMessageErrorPtr rerr,
>+ remote_auth_sasl_step_args *args ATTRIBUTE_UNUSED,
>+ remote_auth_sasl_step_ret *ret ATTRIBUTE_UNUSED)
>+{
>+ VIR_WARN("Client tried unsupported SASL auth");
>+ virNetError(VIR_ERR_AUTH_FAILED, "%s",
>+ _("authentication failed"));
>+ virNetMessageSaveError(rerr);
>+ return -1;
>+}
>+#endif
>
>
>
>--
>1.7.4.4
>
>--
>libvir-list mailing list
>libvir-list at redhat.com
>https://www.redhat.com/mailman/listinfo/libvir-list
>
Build was successful. Thanks!
--
Jason Helfman
System Administrator
experts-exchange.com
http://www.experts-exchange.com/M_4830110.html
E4AD 7CF1 1396 27F6 79DD 4342 5E92 AD66 8C8C FBA5
More information about the libvir-list
mailing list