Data Structures | Typedefs | Enumerations | Functions

tls_domain.h File Reference

SIP-router TLS support :: virtual domain configuration supportModule: SIP-router TLS support. More...

#include "../../str.h"
#include "../../ip_addr.h"
#include <openssl/ssl.h>
Include dependency graph for tls_domain.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

Typedefs

Enumerations

Functions


Detailed Description

Definition in file tls_domain.h.


Enumeration Type Documentation

Enumerator:
TLS_DOMAIN_DEF 

Default domain.

TLS_DOMAIN_SRV 

Server domain.

TLS_DOMAIN_CLI 

Client domain.

Definition at line 58 of file tls_domain.h.


Function Documentation

int tls_add_domain ( tls_domains_cfg_t cfg,
tls_domain_t d 
)
Parameters:
cfg configuration set
d TLS domain
Returns:
1 if domain already exists, 0 after addition, -1 on error

Definition at line 1149 of file tls_domain.c.

References tls_domains_cfg::cli_default, tls_domains_cfg::cli_list, domain_exists(), tls_domains_cfg::srv_default, tls_domains_cfg::srv_list, TLS_DOMAIN_CLI, TLS_DOMAIN_DEF, and TLS_DOMAIN_SRV.

Here is the call graph for this function:

char* tls_domain_str ( tls_domain_t d  ) 
Parameters:
d printed domain
Returns:
printed domain, with zero termination

Definition at line 155 of file tls_domain.c.

References int2str(), TLS_DOMAIN_DEF, and TLS_DOMAIN_SRV.

Referenced by fill_missing(), fix_domain(), load_ca_list(), load_cert(), load_crl(), load_private_key(), set_cipher_list(), set_verification(), tls_complete_init(), and tls_pre_init().

Here is the call graph for this function:

Here is the caller graph for this function:

int tls_fix_domains_cfg ( tls_domains_cfg_t cfg,
tls_domain_t srv_defaults,
tls_domain_t cli_defaults 
)

Initialize attributes of all domains from default domains if necessary, fill in missing parameters.

Parameters:
cfg initialized domain
srv_defaults server defaults
cli_defaults command line interface defaults
Returns:
0 on success, -1 on error

Definition at line 932 of file tls_domain.c.

References tls_domains_cfg::cli_default, tls_domains_cfg::cli_list, fix_domain(), load_private_key(), tls_domains_cfg::srv_default, tls_domains_cfg::srv_list, TLS_DOMAIN_CLI, TLS_DOMAIN_DEF, TLS_DOMAIN_SRV, tls_foreach_CTX_in_cfg(), tls_new_domain(), tls_ssl_ctx_mode(), tls_ssl_ctx_set_freelist(), tls_ssl_ctx_set_max_send_fragment(), and tls_ssl_ctx_set_read_ahead().

Here is the call graph for this function:

void tls_free_cfg ( tls_domains_cfg_t cfg  ) 
Parameters:
cfg freed configuration

Definition at line 105 of file tls_domain.c.

References tls_domains_cfg::cli_default, tls_domains_cfg::cli_list, tls_domains_cfg::srv_default, tls_domains_cfg::srv_list, and tls_free_domain().

Referenced by tls_destroy_cfg().

Here is the call graph for this function:

Here is the caller graph for this function:

void tls_free_domain ( tls_domain_t d  ) 
Parameters:
d freed domain

Definition at line 78 of file tls_domain.c.

References _str::s.

Referenced by tls_free_cfg().

Here is the caller graph for this function:

tls_domain_t* tls_lookup_cfg ( tls_domains_cfg_t cfg,
int  type,
struct ip_addr *  ip,
unsigned short  port 
)
Parameters:
cfg configuration set
type type of configuration
ip IP for configuration
port port for configuration
Returns:
found configuration or default, if not found

Definition at line 1090 of file tls_domain.c.

References tls_domains_cfg::cli_default, tls_domains_cfg::cli_list, tls_domains_cfg::srv_default, tls_domains_cfg::srv_list, TLS_DOMAIN_DEF, and TLS_DOMAIN_SRV.

Referenced by tls_complete_init().

Here is the caller graph for this function:

tls_domains_cfg_t* tls_new_cfg ( void   ) 

Create new configuration structure in new allocated shared memory.

Returns:
configuration structure or zero on error

Create new TLS configuration structure.

Create new configuration structure in new allocated shared memory

Returns:
configuration structure or zero on error

Definition at line 1068 of file tls_domain.c.

tls_domain_t* tls_new_domain ( int  type,
struct ip_addr *  ip,
unsigned short  port 
)

Create a new domain structure in new allocated shared memory.

Parameters:
type domain Type
ip domain IP
port domain port
Returns:
new domain

Definition at line 53 of file tls_domain.c.

Referenced by tls_fix_domains_cfg().

Here is the caller graph for this function: