eX_setup.h(3)

πŸ“¦ version 5.3.0, in epel 9

🌸 NAME 🌸

eX_setup.h β€” eXosip setup API. This is the libeXosip2 manual page for eX_setup.h(3), and it's literally the setup-and-configure era. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

Okay bestie, start by pulling in these includes:

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

πŸŽ€ Data Structures πŸŽ€

The structs in the group chat are:

  • struct eXosip_dns_cache
  • struct eXosip_stats
  • struct eXosip_tls_credentials_s
  • struct eXosip_tls_ctx_s

πŸ”₯ Macros πŸ”₯

Every macro, exactly as listed β€” no missing entries, bestie:

#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 🌈

The enum, all codes present and accounted for:

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 πŸ‘‘

All the functions, no disappearing acts:

  • 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 β€” periodt. This file provides the API needed to setup and configure the SIP endpoint. 🫢

🫢 Author 🫢

Generated automatically by Doxygen for libeXosip2 from the source code. No cap, that's the author situation. ✨


Version 5.3.0 Β· Thu May 18 2023 β€” that's the whole manual page, bestie. Go configure that SIP endpoint. πŸ’–πŸŽ€

πŸ“¦ where this page comes from