OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef NET_SSL_SCOPED_OPENSSL_TYPES_H_ | 5 #ifndef NET_SSL_SCOPED_OPENSSL_TYPES_H_ |
6 #define NET_SSL_SCOPED_OPENSSL_TYPES_H_ | 6 #define NET_SSL_SCOPED_OPENSSL_TYPES_H_ |
7 | 7 |
8 #include <openssl/ssl.h> | 8 #include <openssl/ssl.h> |
| 9 #include <openssl/stack.h> |
9 #include <openssl/x509.h> | 10 #include <openssl/x509.h> |
10 | 11 |
11 #include "crypto/scoped_openssl_types.h" | 12 #include "crypto/scoped_openssl_types.h" |
12 | 13 |
13 namespace net { | 14 namespace net { |
14 | 15 |
| 16 void FreeX509Stack(STACK_OF(X509)* ptr); |
| 17 void FreeX509NameStack(STACK_OF(X509_NAME)* ptr); |
| 18 |
15 using ScopedPKCS8_PRIV_KEY_INFO = | 19 using ScopedPKCS8_PRIV_KEY_INFO = |
16 crypto::ScopedOpenSSL<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_free>; | 20 crypto::ScopedOpenSSL<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_free>; |
17 using ScopedSSL = crypto::ScopedOpenSSL<SSL, SSL_free>; | 21 using ScopedSSL = crypto::ScopedOpenSSL<SSL, SSL_free>; |
18 using ScopedSSL_CTX = crypto::ScopedOpenSSL<SSL_CTX, SSL_CTX_free>; | 22 using ScopedSSL_CTX = crypto::ScopedOpenSSL<SSL_CTX, SSL_CTX_free>; |
19 using ScopedSSL_SESSION = crypto::ScopedOpenSSL<SSL_SESSION, SSL_SESSION_free>; | 23 using ScopedSSL_SESSION = crypto::ScopedOpenSSL<SSL_SESSION, SSL_SESSION_free>; |
20 using ScopedX509 = crypto::ScopedOpenSSL<X509, X509_free>; | 24 using ScopedX509 = crypto::ScopedOpenSSL<X509, X509_free>; |
| 25 using ScopedX509_NAME = crypto::ScopedOpenSSL<X509_NAME, X509_NAME_free>; |
| 26 using ScopedX509Stack = crypto::ScopedOpenSSL<STACK_OF(X509), FreeX509Stack>; |
| 27 using ScopedX509NameStack = |
| 28 crypto::ScopedOpenSSL<STACK_OF(X509_NAME), FreeX509NameStack>; |
21 | 29 |
22 } // namespace net | 30 } // namespace net |
23 | 31 |
24 #endif // NET_SSL_SCOPED_OPENSSL_TYPES_H_ | 32 #endif // NET_SSL_SCOPED_OPENSSL_TYPES_H_ |
OLD | NEW |