summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Lewycky <nlewycky@google.com>2016-01-28 12:58:43 -0800
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2016-07-01 16:39:05 +0100
commit42a514d9178ef16eb9a860a2ca2d813811457d38 (patch)
tree5f66f08df814a90e2232036b3b6d1d73c3e76680
parent66ab9b43a2acbb394eea34093cf2e479ef09edb2 (diff)
Add an invalid state in DBusAuthState to use for invalid lines in auth scripts.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=93909 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
-rw-r--r--dbus/dbus-auth-script.c4
-rw-r--r--dbus/dbus-auth.h3
-rw-r--r--dbus/dbus-transport-socket.c2
3 files changed, 7 insertions, 2 deletions
diff --git a/dbus/dbus-auth-script.c b/dbus/dbus-auth-script.c
index aaaed30d..e42c8e51 100644
--- a/dbus/dbus-auth-script.c
+++ b/dbus/dbus-auth-script.c
@@ -146,7 +146,7 @@ auth_state_from_string (const DBusString *str)
else if (_dbus_string_starts_with_c_str (str, "AUTHENTICATED"))
return DBUS_AUTH_STATE_AUTHENTICATED;
else
- return -1;
+ return DBUS_AUTH_STATE_INVALID;
}
static const char*
@@ -164,6 +164,8 @@ auth_state_to_string (DBusAuthState state)
return "NEED_DISCONNECT";
case DBUS_AUTH_STATE_AUTHENTICATED:
return "AUTHENTICATED";
+ default:
+ break;
}
return "unknown";
diff --git a/dbus/dbus-auth.h b/dbus/dbus-auth.h
index e0323023..c62bcd18 100644
--- a/dbus/dbus-auth.h
+++ b/dbus/dbus-auth.h
@@ -38,7 +38,8 @@ typedef enum
DBUS_AUTH_STATE_WAITING_FOR_MEMORY,
DBUS_AUTH_STATE_HAVE_BYTES_TO_SEND,
DBUS_AUTH_STATE_NEED_DISCONNECT,
- DBUS_AUTH_STATE_AUTHENTICATED
+ DBUS_AUTH_STATE_AUTHENTICATED,
+ DBUS_AUTH_STATE_INVALID = -1
} DBusAuthState;
DBUS_PRIVATE_EXPORT
diff --git a/dbus/dbus-transport-socket.c b/dbus/dbus-transport-socket.c
index dce5c7d3..88fde42b 100644
--- a/dbus/dbus-transport-socket.c
+++ b/dbus/dbus-transport-socket.c
@@ -476,6 +476,8 @@ do_authentication (DBusTransport *transport,
_dbus_verbose (" %s auth state: authenticated\n",
TRANSPORT_SIDE (transport));
break;
+ default:
+ _dbus_assert_not_reached ("invalid auth state");
}
}