if (transport->disconnected)
return FALSE;
- /* paranoia ref since we call user callbacks sometimes */
- _dbus_connection_ref_unlocked (transport->connection);
-
maybe_authenticated =
(!(transport->send_credentials_pending ||
transport->receive_credentials_pending));
_dbus_verbose ("Client expected GUID '%s' and we got '%s' from the server\n",
transport->expected_guid, server_guid);
_dbus_transport_disconnect (transport);
- _dbus_connection_unref_unlocked (transport->connection);
return FALSE;
}
}
- /* If we're the server, see if we want to allow this identity to proceed.
- */
- if (maybe_authenticated && transport->is_server)
- {
- DBusCredentials *auth_identity;
-
- auth_identity = _dbus_auth_get_identity (transport->auth);
- _dbus_assert (auth_identity != NULL);
-
- /* If we have an authenticated user, delegate deciding whether auth
- * credentials are good enough to the app */
- if (!_dbus_authorization_do_authorization (transport->authorization, auth_identity))
- {
- _dbus_transport_disconnect (transport);
- maybe_authenticated = FALSE;
- }
- }
-
transport->authenticated = maybe_authenticated;
- _dbus_connection_unref_unlocked (transport->connection);
return maybe_authenticated;
}
}