aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2012-02-13 20:00:33 +0100
committerMax Kellermann <max@duempel.org>2012-02-13 20:05:31 +0100
commit1d66e714e6a8fef2e0b1abfe7005b259996b408c (patch)
treed0e0abc80eea8578197f16c3af02f3c6e5c4eb21
parentd98a863b82ade86ba538faf0ff9e11d483d681e4 (diff)
downloadmpd-1d66e714e6a8fef2e0b1abfe7005b259996b408c.tar.gz
mpd-1d66e714e6a8fef2e0b1abfe7005b259996b408c.tar.xz
mpd-1d66e714e6a8fef2e0b1abfe7005b259996b408c.zip
client: add function client_is_local()
Diffstat (limited to '')
-rw-r--r--src/client.h11
-rw-r--r--src/command.c2
2 files changed, 12 insertions, 1 deletions
diff --git a/src/client.h b/src/client.h
index 0bd02d0a3..0302a2e0a 100644
--- a/src/client.h
+++ b/src/client.h
@@ -45,6 +45,17 @@ bool client_is_expired(const struct client *client);
G_GNUC_PURE
int client_get_uid(const struct client *client);
+/**
+ * Is this client running on the same machine, connected with a local
+ * (UNIX domain) socket?
+ */
+G_GNUC_PURE
+static inline bool
+client_is_local(const struct client *client)
+{
+ return client_get_uid(client) > 0;
+}
+
G_GNUC_PURE
unsigned client_get_permission(const struct client *client);
diff --git a/src/command.c b/src/command.c
index 854f16083..4479b803e 100644
--- a/src/command.c
+++ b/src/command.c
@@ -451,7 +451,7 @@ static enum command_return
handle_urlhandlers(struct client *client,
G_GNUC_UNUSED int argc, G_GNUC_UNUSED char *argv[])
{
- if (client_get_uid(client) > 0)
+ if (client_is_local(client))
client_puts(client, "handler: file://\n");
print_supported_uri_schemes(client);
return COMMAND_RETURN_OK;