diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/client.h | 11 | ||||
-rw-r--r-- | src/command.c | 2 |
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; |