summaryrefslogtreecommitdiff
path: root/implementation/security/src/policy_manager_impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'implementation/security/src/policy_manager_impl.cpp')
-rw-r--r--implementation/security/src/policy_manager_impl.cpp64
1 files changed, 7 insertions, 57 deletions
diff --git a/implementation/security/src/policy_manager_impl.cpp b/implementation/security/src/policy_manager_impl.cpp
index 7789fcc..a816714 100644
--- a/implementation/security/src/policy_manager_impl.cpp
+++ b/implementation/security/src/policy_manager_impl.cpp
@@ -20,67 +20,17 @@ policy_manager_impl::create_policy() const {
void
policy_manager_impl::print_policy(const std::shared_ptr<policy> &_policy) const {
- for (auto its_credential : _policy->ids_) {
- for (auto its_range : std::get<0>(its_credential)) {
- if (std::get<0>(its_range) == 0xFFFFFFFF) {
- VSOMEIP_INFO << "print_policy Security configuration: UID: any";
- } else {
- VSOMEIP_INFO << "print_policy Security configuration: UID: 0x"
- << std::hex << std::get<0>(its_range);
- }
- }
- for (auto its_range : std::get<1>(its_credential)) {
- if (std::get<0>(its_range) == 0xFFFFFFFF) {
- VSOMEIP_INFO << "print_policy Security configuration: GID: any";
- } else {
- VSOMEIP_INFO << "print_policy Security configuration: GID: 0x"
- << std::hex << std::get<0>(its_range);
- }
- }
- }
-
- VSOMEIP_INFO << "print_policy Security configuration: RQUESTS POLICY SIZE: "
- << std::dec << _policy->services_.size();
- for (auto its_offer : _policy->services_) {
- VSOMEIP_INFO << "print_policy ALLOWED REQUESTS Service: 0x"
- << std::hex << std::get<0>(its_offer);
- for (auto its_ids : std::get<1>(its_offer)) {
- VSOMEIP_INFO << "print_policy Instances: ";
- for (auto its_instance_range : std::get<0>(its_ids)) {
- VSOMEIP_INFO << "print_policy first: 0x"
- << std::hex << std::get<0>(its_instance_range)
- << " last: 0x" << std::get<1>(its_instance_range);
- }
- VSOMEIP_INFO << "print_policy Methods: ";
- for (auto its_method_range : std::get<1>(its_ids)) {
- VSOMEIP_INFO << "print_policy first: 0x"
- << std::hex << std::get<0>(its_method_range)
- << " last: 0x" << std::get<1>(its_method_range);
- }
- }
- }
-
- VSOMEIP_INFO << "print_policy Security configuration: OFFER POLICY SIZE: "
- << std::dec << _policy->offers_.size();
- for (auto its_offer : _policy->offers_) {
- VSOMEIP_INFO << "print_policy ALLOWED OFFERS Service: 0x"
- << std::hex << std::get<0>(its_offer);
- for (auto its_ids : std::get<1>(its_offer)) {
- VSOMEIP_INFO << "print_policy Instances: ";
- VSOMEIP_INFO << "print_policy first: 0x"
- << std::hex << std::get<0>(its_ids)
- << " last: 0x" << std::get<1>(its_ids);
- }
- }
+ if (_policy)
+ _policy->print();
}
bool
-policy_manager_impl::parse_uid_gid(const byte_t* &_buffer, uint32_t &_buffer_size,
- uint32_t &_uid, uint32_t &_gid) const {
+policy_manager_impl::parse_uid_gid(const byte_t* &_buffer,
+ uint32_t &_buffer_size, uint32_t &_uid, uint32_t &_gid) const {
- auto its_security = security_impl::get();
- return (its_security
- && its_security->parse_uid_gid(_buffer, _buffer_size, _uid, _gid));
+ const auto its_policy = std::make_shared<policy>();
+ return (its_policy
+ && its_policy->deserialize_uid_gid(_buffer, _buffer_size, _uid, _gid));
}
bool