//////////////////////////////////////////////////////////////////////////////// // Copyright 2019 Google LLC. // // This software is licensed under the terms defined in the Widevine Master // License Agreement. For a copy of this agreement, please contact // widevine-licensing@google.com. //////////////////////////////////////////////////////////////////////////////// #ifndef COMMON_CONTENT_ID_UTIL_H_ #define COMMON_CONTENT_ID_UTIL_H_ #include "common/status.h" #include "protos/public/external_license.pb.h" #include "protos/public/license_protocol.pb.h" #include "protos/public/widevine_pssh.pb.h" namespace widevine { // Get content identifier as a std::string from a SignedMessage that includes a // serialized ExternalLicenseRequest. Status GetContentIdFromSignedExternalLicenseRequest( const SignedMessage& signed_message, std::string* content_id); // Get content identifier as a std::string from an ExternalLicenseRequest. Status GetContentIdFromExternalLicenseRequest( const ExternalLicenseRequest& external_license_request, std::string* content_id); // Returns OK if successful and |widevine_pssh_data| will be populated by // parsing |external_license_request|. Else, error and |widevine_pssh_data| // will not be set within this method. Status ParsePsshData(ExternalLicenseRequest external_license_request, WidevinePsshData* widevine_pssh_data); } // namespace widevine #endif // COMMON_CONTENT_ID_UTIL_H_