// Copyright 2022 Google LLC. All Rights Reserved. This file and proprietary // source code may only be used and distributed under the Widevine License // Agreement. #ifndef WVCDM_CDM_READ_CLIENT_INFO_H_ #define WVCDM_CDM_READ_CLIENT_INFO_H_ #include namespace widevine { // This function must be implemented by partners who wish to use run-time client // information. (i.e. Those that set 'client_info_source' to 'runtime' in their // platform's properties.) These partners must set 'read_client_info_path' to // a GYP target that contains an implementation of this function. This function // will be called by the CE CDM during Cdm::initialize() to retrieve the client // information at runtime. // // This function should fill in each of the strings with the relevant piece of // client information and return true. If for any reason the platform cannot // fill in all the strings or an error occurs, the function should return false. // // For a definition of each string's meaning, see the client info property // documentation in platform_properties.gypi. bool ReadClientInformation(std::string* company_name, std::string* model_name, std::string* model_year, std::string* product_name, std::string* device_name, std::string* arch_name, std::string* platform, std::string* form_factor, std::string* version); } // namespace widevine #endif // WVCDM_CDM_READ_CLIENT_INFO_H_