45
location::service::Credentials
46
46
location::dbus::skeleton::Service::DBusDaemonCredentialsResolver::resolve_credentials_for_incoming_message(const core::dbus::Message::Ptr& msg)
48
return location::service::Credentials
48
return location::Credentials
50
50
static_cast<pid_t>(daemon.get_connection_unix_process_id(msg->sender())),
51
51
static_cast<uid_t>(daemon.get_connection_unix_user(msg->sender()))
55
core::dbus::types::ObjectPath location::dbus::skeleton::Service::ObjectPathGenerator::object_path_for_caller_credentials(const location::service::Credentials&)
55
core::dbus::types::ObjectPath location::dbus::skeleton::Service::ObjectPathGenerator::object_path_for_caller_credentials(const location::Credentials&)
57
57
static std::uint32_t index{0};
58
58
std::stringstream ss; ss << "/sessions/" << index++;
79
properties.state->changed().connect([this](State state)
81
on_state_changed(state);
83
properties.does_satellite_based_positioning->changed().connect([this](bool value)
85
on_does_satellite_based_positioning_changed(value);
87
properties.does_report_cell_and_wifi_ids->changed().connect([this](bool value)
89
on_does_report_cell_and_wifi_ids_changed(value);
91
properties.is_online->changed().connect([this](bool value)
93
on_is_online_changed(value);
80
properties.state->changed().connect([this](State state)
82
on_state_changed(state);
84
properties.does_satellite_based_positioning->changed().connect([this](bool value) mutable
86
on_does_satellite_based_positioning_changed(value); Service::configuration.impl->does_satellite_based_positioning() = value;
88
properties.does_report_cell_and_wifi_ids->changed().connect([this](bool value) mutable
90
on_does_report_cell_and_wifi_ids_changed(value); Service::configuration.impl->does_report_cell_and_wifi_ids() = value;
92
properties.is_online->changed().connect([this](bool value) mutable
94
on_is_online_changed(value); Service::configuration.impl->is_online() = value;
98
Service::configuration.impl->state().changed().connect([this](State state) mutable
100
properties.state->set(state);
102
Service::configuration.impl->does_satellite_based_positioning().changed().connect([this](bool value) mutable
104
properties.does_satellite_based_positioning->set(value);
106
Service::configuration.impl->does_report_cell_and_wifi_ids().changed().connect([this](bool value) mutable
108
properties.does_report_cell_and_wifi_ids->set(value);
110
Service::configuration.impl->is_online().changed().connect([this](bool value) mutable
112
properties.is_online->set(value);
97
117
object->install_method_handler<location::dbus::Service::CreateSessionForCriteria>([this](const core::dbus::Message::Ptr& msg)
130
150
configuration.permission_manager->check_permission_for_credentials(criteria, credentials);
132
if (service::PermissionManager::Result::rejected == result) throw std::runtime_error
152
if (PermissionManager::Result::rejected == result) throw std::runtime_error
134
154
"Client lacks permissions to access the service with the given criteria"