diff --git a/libwvdrmengine/oemcrypto/odk/include/odk_structs.h b/libwvdrmengine/oemcrypto/odk/include/odk_structs.h index 20e73e9a..f2cfc126 100644 --- a/libwvdrmengine/oemcrypto/odk/include/odk_structs.h +++ b/libwvdrmengine/oemcrypto/odk/include/odk_structs.h @@ -19,7 +19,7 @@ extern "C" { #define ODK_MINOR_VERSION 2 /* ODK Version string. Date changed automatically on each release. */ -#define ODK_RELEASE_DATE "ODK v18.2 2023-04-14" +#define ODK_RELEASE_DATE "ODK v18.2 2023-04-18" /* The lowest version number for an ODK message. */ #define ODK_FIRST_VERSION 16 diff --git a/libwvdrmengine/oemcrypto/odk/src/core_message_serialize_proto.cpp b/libwvdrmengine/oemcrypto/odk/src/core_message_serialize_proto.cpp index 78b20fb8..7d575c7f 100644 --- a/libwvdrmengine/oemcrypto/odk/src/core_message_serialize_proto.cpp +++ b/libwvdrmengine/oemcrypto/odk/src/core_message_serialize_proto.cpp @@ -147,6 +147,19 @@ bool CreateCoreLicenseResponseFromProto(const CoreMessageFeatures& features, } parsed_lic.nonce_required = nonce_required; const auto& policy = lic.policy(); + switch (policy.initial_renewal_delay_base()) { + case video_widevine::License_Policy::LICENSE_LOAD: + parsed_lic.renewal_delay_base = OEMCrypto_License_Load; + break; + case video_widevine::License_Policy::FIRST_DECRYPT: + parsed_lic.renewal_delay_base = OEMCrypto_First_Decrypt; + break; + case video_widevine::License_Policy::TIMER_DELAY_BASE_UNSPECIFIED: + case video_widevine::License_Policy::LICENSE_START: + default: + parsed_lic.renewal_delay_base = OEMCrypto_License_Start; + break; + } ODK_TimerLimits& timer_limits = parsed_lic.timer_limits; timer_limits.soft_enforce_rental_duration = policy.soft_enforce_rental_duration();