1*3f982cf4SFabien Sanglard // Copyright 2019 The Chromium Authors. All rights reserved. 2*3f982cf4SFabien Sanglard // Use of this source code is governed by a BSD-style license that can be 3*3f982cf4SFabien Sanglard // found in the LICENSE file. 4*3f982cf4SFabien Sanglard 5*3f982cf4SFabien Sanglard #ifndef PLATFORM_BASE_TLS_CREDENTIALS_H_ 6*3f982cf4SFabien Sanglard #define PLATFORM_BASE_TLS_CREDENTIALS_H_ 7*3f982cf4SFabien Sanglard 8*3f982cf4SFabien Sanglard #include <stdint.h> 9*3f982cf4SFabien Sanglard 10*3f982cf4SFabien Sanglard #include <vector> 11*3f982cf4SFabien Sanglard 12*3f982cf4SFabien Sanglard namespace openscreen { 13*3f982cf4SFabien Sanglard 14*3f982cf4SFabien Sanglard struct TlsCredentials { 15*3f982cf4SFabien Sanglard TlsCredentials(); 16*3f982cf4SFabien Sanglard TlsCredentials(std::vector<uint8_t> der_rsa_private_key, 17*3f982cf4SFabien Sanglard std::vector<uint8_t> der_rsa_public_key, 18*3f982cf4SFabien Sanglard std::vector<uint8_t> der_x509_cert); 19*3f982cf4SFabien Sanglard ~TlsCredentials(); 20*3f982cf4SFabien Sanglard 21*3f982cf4SFabien Sanglard // DER-encoded RSA private key. 22*3f982cf4SFabien Sanglard std::vector<uint8_t> der_rsa_private_key; 23*3f982cf4SFabien Sanglard 24*3f982cf4SFabien Sanglard // DER-encoded RSA public key. 25*3f982cf4SFabien Sanglard std::vector<uint8_t> der_rsa_public_key; 26*3f982cf4SFabien Sanglard 27*3f982cf4SFabien Sanglard // DER-encoded X509 Certificate that is based on the above keys. 28*3f982cf4SFabien Sanglard std::vector<uint8_t> der_x509_cert; 29*3f982cf4SFabien Sanglard }; 30*3f982cf4SFabien Sanglard 31*3f982cf4SFabien Sanglard } // namespace openscreen 32*3f982cf4SFabien Sanglard 33*3f982cf4SFabien Sanglard #endif // PLATFORM_BASE_TLS_CREDENTIALS_H_ 34