From f5cf675641e63cefc36c8a9a7a5872cc8600abcd Mon Sep 17 00:00:00 2001 From: Havoc Pennington Date: Fri, 21 Jan 2005 03:44:10 +0000 Subject: 2005-01-20 Havoc Pennington * doc/dbus-tutorial.xml: replace > with > * bus/services.c (bus_registry_acquire_service): validate the name and return a better error if it's no good. * doc/dbus-specification.xml: note NO_AUTO_START change * dbus/dbus-protocol.h (DBUS_HEADER_FLAG_NO_AUTO_START): change from AUTO_START, we're toggling the default * bus/dispatch.c: adapt the tests to change of auto-start default --- bus/services.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'bus/services.c') diff --git a/bus/services.c b/bus/services.c index 90c8d1d8..4392daa2 100644 --- a/bus/services.c +++ b/bus/services.c @@ -24,6 +24,7 @@ #include #include #include +#include #include "driver.h" #include "services.h" @@ -283,12 +284,14 @@ bus_registry_acquire_service (BusRegistry *registry, retval = FALSE; - if (_dbus_string_get_length (service_name) == 0) + if (!_dbus_validate_bus_name (service_name, 0, + _dbus_string_get_length (service_name))) { - dbus_set_error (error, DBUS_ERROR_ACCESS_DENIED, - "Zero-length service name is not allowed"); + dbus_set_error (error, DBUS_ERROR_INVALID_ARGS, + "Requested bus name \"%s\" is not valid", + _dbus_string_get_const_data (service_name)); - _dbus_verbose ("Attempt to acquire zero-length service name\n"); + _dbus_verbose ("Attempt to acquire invalid service name\n"); goto out; } @@ -296,7 +299,7 @@ bus_registry_acquire_service (BusRegistry *registry, if (_dbus_string_get_byte (service_name, 0) == ':') { /* Not allowed; only base services can start with ':' */ - dbus_set_error (error, DBUS_ERROR_ACCESS_DENIED, + dbus_set_error (error, DBUS_ERROR_INVALID_ARGS, "Cannot acquire a service starting with ':' such as \"%s\"", _dbus_string_get_const_data (service_name)); -- cgit