Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / policy / device_policy_decoder_chromeos.cc
index 0e740a6..73bb30e 100644 (file)
@@ -198,6 +198,11 @@ void DecodeLoginPolicies(const em::ChromeDeviceSettingsProto& policy,
               chromeos::kAccountsPrefDeviceLocalAccountsKeyKioskAppId,
               entry->kiosk_app().app_id());
         }
+        if (entry->kiosk_app().has_update_url()) {
+          entry_dict->SetStringWithoutPathExpansion(
+              chromeos::kAccountsPrefDeviceLocalAccountsKeyKioskAppUpdateURL,
+              entry->kiosk_app().update_url());
+        }
       } else if (entry->has_deprecated_public_session_id()) {
         // Deprecated public session specification.
         entry_dict->SetStringWithoutPathExpansion(
@@ -259,6 +264,18 @@ void DecodeLoginPolicies(const em::ChromeDeviceSettingsProto& policy,
                     NULL);
     }
   }
+
+  if (policy.has_saml_settings()) {
+    const em::SAMLSettingsProto& container(policy.saml_settings());
+    if (container.has_transfer_saml_cookies()) {
+      policies->Set(key::kDeviceTransferSAMLCookies,
+                    POLICY_LEVEL_MANDATORY,
+                    POLICY_SCOPE_MACHINE,
+                    new base::FundamentalValue(
+                        container.transfer_saml_cookies()),
+                    NULL);
+    }
+  }
 }
 
 void DecodeKioskPolicies(const em::ChromeDeviceSettingsProto& policy,
@@ -769,6 +786,18 @@ void DecodeGenericPolicies(const em::ChromeDeviceSettingsProto& policy,
       }
     }
   }
+
+  if (policy.has_system_settings()) {
+    const em::SystemSettingsProto& container(policy.system_settings());
+    if (container.has_block_devmode()) {
+      policies->Set(
+          key::kDeviceBlockDevmode,
+          POLICY_LEVEL_MANDATORY,
+          POLICY_SCOPE_MACHINE,
+          new base::FundamentalValue(container.block_devmode()),
+          NULL);
+    }
+  }
 }
 
 }  // namespace