| Index: webrtc/base/sslidentity.h
|
| diff --git a/webrtc/base/sslidentity.h b/webrtc/base/sslidentity.h
|
| index cf9942637e480de935bdfaad3667f18555ddccc2..b8063cee1569c0d7fea44f9a625e4f8e734cbbd3 100644
|
| --- a/webrtc/base/sslidentity.h
|
| +++ b/webrtc/base/sslidentity.h
|
| @@ -19,6 +19,7 @@
|
|
|
| #include "webrtc/base/buffer.h"
|
| #include "webrtc/base/messagedigest.h"
|
| +#include "webrtc/base/timeutils.h"
|
|
|
| namespace rtc {
|
|
|
| @@ -68,6 +69,9 @@ class SSLCertificate {
|
| unsigned char* digest,
|
| size_t size,
|
| size_t* length) const = 0;
|
| +
|
| + // Returns the time in seconds relative to epoch.
|
| + virtual int64_t CertificateExpirationTime() const = 0;
|
| };
|
|
|
| // SSLCertChain is a simple wrapper for a vector of SSLCertificates. It serves
|
| @@ -168,8 +172,8 @@ KeyType IntKeyTypeFamilyToKeyType(int key_type_family);
|
| // random string will be used.
|
| struct SSLIdentityParams {
|
| std::string common_name;
|
| - int not_before; // offset from current time in seconds.
|
| - int not_after; // offset from current time in seconds.
|
| + time_t not_before; // Absolute time since epoch in seconds.
|
| + time_t not_after; // Absolute time since epoch in seconds.
|
| KeyParams key_params;
|
| };
|
|
|
| @@ -217,6 +221,11 @@ class SSLIdentity {
|
| size_t length);
|
| };
|
|
|
| +// Convert from ASN1 time as restricted by RFC 5280 to seconds from 1970-01-01
|
| +// 00.00 ("epoch"). If the ASN1 time cannot be read, return -1. The data at
|
| +// |s| is not 0-terminated; its char count is defined by |length|.
|
| +int64_t ASN1TimeToSec(const unsigned char* s, size_t length, bool long_format);
|
| +
|
| extern const char kPemTypeCertificate[];
|
| extern const char kPemTypeRsaPrivateKey[];
|
| extern const char kPemTypeEcPrivateKey[];
|
|
|