libeXosip2  5.3.0
Data Structures | Macros | Enumerations | Functions
eX_setup.h File Reference

eXosip setup API More...

#include <eXosip2/eXosip.h>
#include <osipparser2/osip_message.h>
#include <time.h>

Data Structures

struct  eXosip_dns_cache
 
struct  eXosip_stats
 
struct  eXosip_tls_credentials_s
 
struct  eXosip_tls_ctx_s
 

Macros

#define EXOSIP_OPT_UDP_KEEP_ALIVE   (EXOSIP_OPT_BASE_OPTION + 1)
 
#define EXOSIP_OPT_AUTO_MASQUERADE_CONTACT   (EXOSIP_OPT_BASE_OPTION + 2)
 
#define EXOSIP_OPT_USE_RPORT   (EXOSIP_OPT_BASE_OPTION + 7)
 
#define EXOSIP_OPT_SET_IPV4_FOR_GATEWAY   (EXOSIP_OPT_BASE_OPTION + 8)
 
#define EXOSIP_OPT_ADD_DNS_CACHE   (EXOSIP_OPT_BASE_OPTION + 9)
 
#define EXOSIP_OPT_DELETE_DNS_CACHE   (EXOSIP_OPT_BASE_OPTION + 10)
 
#define EXOSIP_OPT_SET_IPV6_FOR_GATEWAY   (EXOSIP_OPT_BASE_OPTION + 12)
 
#define EXOSIP_OPT_ADD_ACCOUNT_INFO   (EXOSIP_OPT_BASE_OPTION + 13)
 
#define EXOSIP_OPT_DNS_CAPABILITIES   (EXOSIP_OPT_BASE_OPTION + 14)
 
#define EXOSIP_OPT_SET_DSCP   (EXOSIP_OPT_BASE_OPTION + 15)
 
#define EXOSIP_OPT_REGISTER_WITH_DATE   (EXOSIP_OPT_BASE_OPTION + 16)
 
#define EXOSIP_OPT_SET_HEADER_USER_AGENT   (EXOSIP_OPT_BASE_OPTION + 17)
 
#define EXOSIP_OPT_ENABLE_DNS_CACHE   (EXOSIP_OPT_BASE_OPTION + 18)
 
#define EXOSIP_OPT_ENABLE_AUTOANSWERBYE   (EXOSIP_OPT_BASE_OPTION + 19)
 
#define EXOSIP_OPT_ENABLE_IPV6   (EXOSIP_OPT_BASE_OPTION + 20)
 
#define EXOSIP_OPT_ENABLE_REUSE_TCP_PORT   (EXOSIP_OPT_BASE_OPTION + 21)
 
#define EXOSIP_OPT_ENABLE_USE_EPHEMERAL_PORT   (EXOSIP_OPT_BASE_OPTION + 22)
 
#define EXOSIP_OPT_SET_CALLBACK_WAKELOCK   (EXOSIP_OPT_BASE_OPTION + 23)
 
#define EXOSIP_OPT_ENABLE_OUTBOUND   (EXOSIP_OPT_BASE_OPTION + 24)
 
#define EXOSIP_OPT_SET_OC_LOCAL_ADDRESS   (EXOSIP_OPT_BASE_OPTION + 25)
 
#define EXOSIP_OPT_SET_OC_PORT_RANGE   (EXOSIP_OPT_BASE_OPTION + 26)
 
#define EXOSIP_OPT_REMOVE_PREROUTESET   (EXOSIP_OPT_BASE_OPTION + 27)
 
#define EXOSIP_OPT_SET_SIP_INSTANCE   (EXOSIP_OPT_BASE_OPTION + 28)
 
#define EXOSIP_OPT_SET_MAX_MESSAGE_TO_READ   (EXOSIP_OPT_BASE_OPTION + 29)
 
#define EXOSIP_OPT_SET_MAX_READ_TIMEOUT   (EXOSIP_OPT_BASE_OPTION + 30)
 
#define EXOSIP_OPT_SET_DEFAULT_CONTACT_DISPLAYNAME   (EXOSIP_OPT_BASE_OPTION + 31)
 
#define EXOSIP_OPT_SET_SESSIONTIMERS_FORCE    (EXOSIP_OPT_BASE_OPTION + 32)
 
#define EXOSIP_OPT_FORCE_CONNECTIONREUSE   (EXOSIP_OPT_BASE_OPTION + 33)
 
#define EXOSIP_OPT_SET_CONTACT_DIALOG_EXTRA_PARAMS   (EXOSIP_OPT_BASE_OPTION + 34)
 
#define EXOSIP_OPT_SET_TLS_VERIFY_CERTIFICATE   (EXOSIP_OPT_BASE_OPTION + 500)
 
#define EXOSIP_OPT_SET_TLS_CERTIFICATES_INFO   (EXOSIP_OPT_BASE_OPTION + 501)
 
#define EXOSIP_OPT_SET_TLS_CLIENT_CERTIFICATE_NAME   (EXOSIP_OPT_BASE_OPTION + 502)
 
#define EXOSIP_OPT_SET_TLS_SERVER_CERTIFICATE_NAME   (EXOSIP_OPT_BASE_OPTION + 503)
 
#define EXOSIP_OPT_SET_TSC_SERVER   (EXOSIP_OPT_BASE_OPTION + 1001)
 
#define EXOSIP_OPT_GET_STATISTICS   (EXOSIP_OPT_BASE_OPTION + 2000)
 

Enumerations

enum  eXosip_tls_ctx_error {
  TLS_OK = 0 ,
  TLS_ERR_NO_RAND = -1 ,
  TLS_ERR_NO_DH_PARAM = -2 ,
  TLS_ERR_NO_PW = -3 ,
  TLS_ERR_NO_ROOT_CA = -4 ,
  TLS_ERR_MISSING_AUTH_PART = -5
}
 

Functions

struct eXosip_t * eXosip_malloc (void)
 
int eXosip_init (struct eXosip_t *excontext)
 
void eXosip_quit (struct eXosip_t *excontext)
 
int eXosip_lock (struct eXosip_t *excontext)
 
int eXosip_unlock (struct eXosip_t *excontext)
 
int eXosip_execute (struct eXosip_t *excontext)
 
int eXosip_set_option (struct eXosip_t *excontext, int opt, const void *value)
 
struct osip_naptr * eXosip_dnsutils_naptr (struct eXosip_t *excontext, const char *domain, const char *protocol, const char *transport, int keep_in_cache)
 
void eXosip_dnsutils_release (struct osip_naptr *naptr_record)
 
int eXosip_dnsutils_dns_process (struct osip_naptr *output_record, int force)
 
int eXosip_dnsutils_rotate_srv (struct osip_srv_record *output_record)
 
int eXosip_listen_addr (struct eXosip_t *excontext, int transport, const char *addr, int port, int family, int secure)
 
int eXosip_reset_transports (struct eXosip_t *excontext)
 
int eXosip_set_socket (struct eXosip_t *excontext, int transport, int socket, int port)
 
void eXosip_set_user_agent (struct eXosip_t *excontext, const char *user_agent)
 
const char * eXosip_get_version (void)
 
int eXosip_set_cbsip_message (struct eXosip_t *excontext, CbSipCallback cbsipCallback)
 
void eXosip_masquerade_contact (struct eXosip_t *excontext, const char *public_address, int port)
 
int eXosip_find_free_port (struct eXosip_t *excontext, int free_port, int transport)
 
int eXosip_transport_set (osip_message_t *msg, const char *transport)
 
int eXosip_guess_localip (struct eXosip_t *excontext, int family, char *address, int size)
 

Detailed Description

eXosip setup API

This file provide the API needed to setup and configure the SIP endpoint.