diff options
| author | Rémi Verschelde | 2018-06-07 10:46:05 +0200 |
|---|---|---|
| committer | Rémi Verschelde | 2018-06-07 10:46:05 +0200 |
| commit | d0811ed3f9604b2dab755ab6df0a2950fd1ccede (patch) | |
| tree | ebb74de9c5c8c2b9eecb898121307755ca5ba0a7 /thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h | |
| parent | 7d392cd6f496374aea98e8f5c85792acb6f8bc7a (diff) | |
| download | godot-d0811ed3f9604b2dab755ab6df0a2950fd1ccede.tar.gz godot-d0811ed3f9604b2dab755ab6df0a2950fd1ccede.tar.zst godot-d0811ed3f9604b2dab755ab6df0a2950fd1ccede.zip | |
Diffstat (limited to 'thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h')
| -rw-r--r-- | thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h b/thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h new file mode 100644 index 000000000..cd2f8c053 --- /dev/null +++ b/thirdparty/libwebsockets/mbedtls_wrapper/include/internal/ssl_methods.h @@ -0,0 +1,121 @@ +// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at + +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef _SSL_METHODS_H_ +#define _SSL_METHODS_H_ + +#include "ssl_types.h" + +#ifdef __cplusplus + extern "C" { +#endif + +/** + * TLS method function implement + */ +#define IMPLEMENT_TLS_METHOD_FUNC(func_name, \ + new, free, \ + handshake, shutdown, clear, \ + read, send, pending, \ + set_fd, get_fd, \ + set_bufflen, \ + get_verify_result, \ + get_state) \ + static const SSL_METHOD_FUNC func_name LOCAL_ATRR = { \ + new, \ + free, \ + handshake, \ + shutdown, \ + clear, \ + read, \ + send, \ + pending, \ + set_fd, \ + get_fd, \ + set_bufflen, \ + get_verify_result, \ + get_state \ + }; + +#define IMPLEMENT_TLS_METHOD(ver, mode, fun, func_name) \ + const SSL_METHOD* func_name(void) { \ + static const SSL_METHOD func_name##_data LOCAL_ATRR = { \ + ver, \ + mode, \ + &(fun), \ + }; \ + return &func_name##_data; \ + } + +#define IMPLEMENT_SSL_METHOD(ver, mode, fun, func_name) \ + const SSL_METHOD* func_name(void) { \ + static const SSL_METHOD func_name##_data LOCAL_ATRR = { \ + ver, \ + mode, \ + &(fun), \ + }; \ + return &func_name##_data; \ + } + +#define IMPLEMENT_X509_METHOD(func_name, \ + new, \ + free, \ + load, \ + show_info) \ + const X509_METHOD* func_name(void) { \ + static const X509_METHOD func_name##_data LOCAL_ATRR = { \ + new, \ + free, \ + load, \ + show_info \ + }; \ + return &func_name##_data; \ + } + +#define IMPLEMENT_PKEY_METHOD(func_name, \ + new, \ + free, \ + load) \ + const PKEY_METHOD* func_name(void) { \ + static const PKEY_METHOD func_name##_data LOCAL_ATRR = { \ + new, \ + free, \ + load \ + }; \ + return &func_name##_data; \ + } + +/** + * @brief get X509 object method + * + * @param none + * + * @return X509 object method point + */ +const X509_METHOD* X509_method(void); + +/** + * @brief get private key object method + * + * @param none + * + * @return private key object method point + */ +const PKEY_METHOD* EVP_PKEY_method(void); + +#ifdef __cplusplus +} +#endif + +#endif |
