From c565b67a6afcd470a3238008ac045b540d4ebed6 Mon Sep 17 00:00:00 2001 From: Matthias Bolte Date: Wed, 29 Jun 2011 00:33:09 +0200 Subject: [PATCH] Fix compilation with systemtap 1.3 Version 1.3 of uses this macro #define STAP_CAST(t) (size_t)t that breaks like this if t is a function remote.c:1775: error: cast from function call of type 'const char *' to non-matching type 'long unsigned int' [-Wbad-function-cast] For that to work it should probably look like this #define STAP_CAST(t) ((size_t)(t)) In systemtap 1.4 this was completely rewritten. Anyway, before commit df0b57a95a767c t was always a variable, but now also a function is used here, namely virNetSASLSessionGetIdentity. Use an intermediate variable to avoid this problem. --- daemon/remote.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c index 9547702961..9e6cf77f27 100644 --- a/daemon/remote.c +++ b/daemon/remote.c @@ -1759,13 +1759,13 @@ remoteSASLFinish(virNetServerClientPtr client) if (virNetServerClientSetIdentity(client, identity) < 0) goto error; - virNetServerClientSetSASLSession(client, priv->sasl); VIR_DEBUG("Authentication successful %d", virNetServerClientGetFD(client)); + + identity = virNetSASLSessionGetIdentity(priv->sasl); PROBE(CLIENT_AUTH_ALLOW, "fd=%d, auth=%d, username=%s", - virNetServerClientGetFD(client), REMOTE_AUTH_SASL, - virNetSASLSessionGetIdentity(priv->sasl)); + virNetServerClientGetFD(client), REMOTE_AUTH_SASL, identity); virNetSASLSessionFree(priv->sasl); priv->sasl = NULL; @@ -1793,6 +1793,7 @@ remoteDispatchAuthSaslStart(virNetServerPtr server ATTRIBUTE_UNUSED, int rv = -1; struct daemonClientPrivate *priv = virNetServerClientGetPrivateData(client); + const char *identity; virMutexLock(&priv->lock); @@ -1856,9 +1857,9 @@ authfail: goto error; authdeny: + identity = virNetSASLSessionGetIdentity(priv->sasl); PROBE(CLIENT_AUTH_DENY, "fd=%d, auth=%d, username=%s", - virNetServerClientGetFD(client), REMOTE_AUTH_SASL, - virNetSASLSessionGetIdentity(priv->sasl)); + virNetServerClientGetFD(client), REMOTE_AUTH_SASL, identity); goto error; error: @@ -1888,7 +1889,7 @@ remoteDispatchAuthSaslStep(virNetServerPtr server ATTRIBUTE_UNUSED, int rv = -1; struct daemonClientPrivate *priv = virNetServerClientGetPrivateData(client); - + const char *identity; virMutexLock(&priv->lock); @@ -1952,9 +1953,9 @@ authfail: goto error; authdeny: + identity = virNetSASLSessionGetIdentity(priv->sasl); PROBE(CLIENT_AUTH_DENY, "fd=%d, auth=%d, username=%s", - virNetServerClientGetFD(client), REMOTE_AUTH_SASL, - virNetSASLSessionGetIdentity(priv->sasl)); + virNetServerClientGetFD(client), REMOTE_AUTH_SASL, identity); goto error; error: