From ddc45a5a00c22b5a9b2c86afa9b06381a48673fb Mon Sep 17 00:00:00 2001 From: Claudio Takahasi Date: Fri, 17 Nov 2006 13:46:14 +0000 Subject: Check if the service path is valid: Avoid seg fault when there isn't D-Bus data assigned to the path --- hcid/dbus-security.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hcid/dbus-security.c b/hcid/dbus-security.c index b15885b3..c197f7f3 100644 --- a/hcid/dbus-security.c +++ b/hcid/dbus-security.c @@ -774,6 +774,9 @@ static DBusHandlerResult authorize_service(DBusConnection *conn, (void *) &sagent)) return error_rejected(conn, msg); + if (!sagent) + return error_service_does_not_exist(conn, msg); + if (strcmp(dbus_message_get_sender(msg), sagent->id)) return error_rejected(conn, msg); @@ -837,6 +840,9 @@ static DBusHandlerResult cancel_authorization_process(DBusConnection *conn, (void *) &sagent)) return error_not_authorized(conn, msg); + if (!sagent) + return error_service_does_not_exist(conn, msg); + if (strcmp(dbus_message_get_sender(msg), sagent->id)) return error_not_authorized(conn, msg); -- cgit