// Copyright 2017 The Chromium OS Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef LIBBRILLO_POLICY_POLICY_UTIL_H_ #define LIBBRILLO_POLICY_POLICY_UTIL_H_ #include #include #include #include "bindings/device_management_backend.pb.h" namespace policy { // The detailed information of the result from loading the policy data. enum class BRILLO_EXPORT LoadPolicyResult { kSuccess = 0, kFileNotFound = 1, kFailedToReadFile = 2, kEmptyFile = 3, kInvalidPolicyData = 4 }; // Reads and parses the policy data from |policy_path|. Returns the details // in LoadPolicyResult. In case response is |kSuccess|, |policy_data_str_out| // contains the raw data from the file, while |policy_out| contains the parsed // policy data. Otherwise the contents of |policy_data_str_out| and |policy_out| // is undefined. BRILLO_EXPORT LoadPolicyResult LoadPolicyFromPath( const base::FilePath& policy_path, std::string* policy_data_str_out, enterprise_management::PolicyFetchResponse* policy_out); } // namespace policy #endif // LIBBRILLO_POLICY_POLICY_UTIL_H_