Bug 1381720 - Add content_decryption_module_ext.h. r=gerald

Updates to Chromium revision 6e4c388c0117fe408b66fbede91081fb1018c5fe.

Adds Verified Media Pipeline function definitions.

MozReview-Commit-ID: 2H8mMNacQqR

--HG--
extra : rebase_source : d544d6a0c6854ccc29da6ddcc11b4efc8f621036
This commit is contained in:
Chris Pearce 2017-05-29 17:14:52 +12:00
Родитель c4af620223
Коммит 9b79f3e2c6
2 изменённых файлов: 65 добавлений и 0 удалений

Просмотреть файл

@ -68,6 +68,7 @@ EXPORTS += [
'GMPVideoPlaneImpl.h',
'widevine-adapter/content_decryption_module.h',
'widevine-adapter/content_decryption_module_export.h',
'widevine-adapter/content_decryption_module_ext.h',
]
UNIFIED_SOURCES += [

Просмотреть файл

@ -0,0 +1,64 @@
// Copyright 2017 The Chromium 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 CDM_CONTENT_DECRYPTION_MODULE_EXT_H_
#define CDM_CONTENT_DECRYPTION_MODULE_EXT_H_
#if defined(_WIN32)
#include <windows.h>
#endif
#include "content_decryption_module_export.h"
#if defined(_MSC_VER)
typedef unsigned int uint32_t;
#else
#include <stdint.h>
#endif
namespace cdm {
#if defined(_WIN32)
typedef wchar_t FilePathCharType;
typedef HANDLE PlatformFile;
const PlatformFile kInvalidPlatformFile = INVALID_HANDLE_VALUE;
#else
typedef char FilePathCharType;
typedef int PlatformFile;
const PlatformFile kInvalidPlatformFile = -1;
#endif // defined(_WIN32)
struct HostFile {
HostFile(const FilePathCharType* file_path,
PlatformFile file,
PlatformFile sig_file)
: file_path(file_path), file(file), sig_file(sig_file) {}
// File that is part of the host of the CDM.
const FilePathCharType* file_path = nullptr;
PlatformFile file = kInvalidPlatformFile;
// Signature file for |file|.
PlatformFile sig_file = kInvalidPlatformFile;
};
} // namespace cdm
extern "C" {
// Functions in this file are dynamically retrieved by their versioned function
// names. Increment the version number for any backward incompatible API
// changes.
// Verifies CDM host. All files in |host_files| are opened in read-only mode.
//
// Returns false and closes all files if there is an immediate failure.
// Otherwise returns true as soon as possible and processes the files
// asynchronously. All files MUST be closed by the CDM after this one-time
// processing is finished.
CDM_API bool VerifyCdmHost_0(const cdm::HostFile* host_files,
uint32_t num_files);
}
#endif // CDM_CONTENT_DECRYPTION_MODULE_EXT_H_