OpenVPN
|
#include "buffer.h"
Go to the source code of this file.
Data Structures | |
struct | tls_cipher_name_pair |
Get a tls_cipher_name_pair containing OpenSSL and IANA names for supplied TLS cipher name. More... | |
Functions | |
char * | extract_var_peer_info (const char *peer_info, const char *var, struct gc_arena *gc) |
Extracts a variable from peer info, the returned string will be allocated using the supplied gc_arena. More... | |
unsigned int | extract_iv_proto (const char *peer_info) |
Extracts the IV_PROTO variable and returns its value or 0 if it cannot be extracted. More... | |
const char * | options_string_compat_lzo (const char *options, struct gc_arena *gc) |
Takes a locally produced OCC string for TLS server mode and modifies as if the option comp-lzo was enabled. More... | |
const tls_cipher_name_pair * | tls_get_cipher_name_pair (const char *cipher_name, size_t len) |
int | get_num_elements (const char *string, char delimiter) |
Returns the occurrences of 'delimiter' in a string +1 This is typically used to find out the number elements in a cipher string or similar that is separated by : like. More... | |
unsigned int extract_iv_proto | ( | const char * | peer_info | ) |
Extracts the IV_PROTO variable and returns its value or 0 if it cannot be extracted.
peer_info | peer info string to search for IV_PROTO |
Definition at line 62 of file ssl_util.c.
Referenced by multi_client_set_protocol_options(), p2p_ncp_set_options(), and send_auth_pending_messages().
char* extract_var_peer_info | ( | const char * | peer_info, |
const char * | var, | ||
struct gc_arena * | gc | ||
) |
Extracts a variable from peer info, the returned string will be allocated using the supplied gc_arena.
peer_info | The peer's peer_info |
var | The variable including =, e.g. IV_CIPHERS= |
Definition at line 32 of file ssl_util.c.
References string_alloc().
Referenced by check_auth_pending_method(), get_p2p_ncp_cipher(), prepare_push_reply(), and tls_peer_ncp_list().
int get_num_elements | ( | const char * | string, |
char | delimiter | ||
) |
Returns the occurrences of 'delimiter' in a string +1 This is typically used to find out the number elements in a cipher string or similar that is separated by : like.
X25519:secp256r1:X448:secp512r1:secp384r1:brainpoolP384r1
string | the string to work on |
delimiter | the delimiter to count, typically ':' |
Definition at line 284 of file ssl_util.c.
References ASSERT.
Referenced by tls_ctx_set_tls_groups().
const char* options_string_compat_lzo | ( | const char * | options, |
struct gc_arena * | gc | ||
) |
Takes a locally produced OCC string for TLS server mode and modifies as if the option comp-lzo was enabled.
This is to send a client in comp-lzo migrate mode the expected OCC string.
Note: This function expects the string to be in the locally generated format and does not accept arbitrary strings.
options | the locally generated OCC string |
gc | gc_arena to allocate the returned string in |
Definition at line 78 of file ssl_util.c.
References alloc_buf_gc(), BSTR, buf_printf(), and buf_write().
Referenced by key_method_2_read(), and test_compat_lzo_string().
const tls_cipher_name_pair* tls_get_cipher_name_pair | ( | const char * | cipher_name, |
size_t | len | ||
) |
Definition at line 265 of file ssl_util.c.
References tls_cipher_name_pair::iana_name, buffer::len, tls_cipher_name_pair::openssl_name, and tls_cipher_name_translation_table.
Referenced by convert_tls_list_to_openssl(), and show_available_tls_ciphers_list().