eXosip2_authentication - Man Page
eXosip2 authentication API
Synopsis
Functions
int eXosip_add_authentication_info (struct eXosip_t *excontext, const char *username, const char *userid, const char *passwd, const char *ha1, const char *realm)
int eXosip_remove_authentication_info (struct eXosip_t *excontext, const char *username, const char *realm)
int eXosip_clear_authentication_info (struct eXosip_t *excontext)
int eXosip_default_action (struct eXosip_t *excontext, eXosip_event_t *je)
void eXosip_automatic_action (struct eXosip_t *excontext)
int eXosip_insubscription_automatic (struct eXosip_t *excontext, eXosip_event_t *evt)
int eXosip_generate_random (char *buf, int buf_size)
int eXosip_hexa_generate_random (char *buf, int buf_size, char *str1, char *str2, char *str3)
int eXosip_byte_generate_random (char *buf, int buf_size)
Detailed Description
Function Documentation
int eXosip_add_authentication_info (struct eXosip_t * excontext, const char * username, const char * userid, const char * passwd, const char * ha1, const char * realm)
Add authentication credentials. These are used when an outgoing request comes back with an authorization required response.
- Parameters
excontext eXosip_t instance.
username username
userid login (usually equals the username)
passwd password
ha1 MD5 ha1
realm realm within which credentials apply, or NULL to apply credentials to unrecognized realms
int eXosip_remove_authentication_info (struct eXosip_t * excontext, const char * username, const char * realm)
Remove authentication credentials.
- Parameters
excontext eXosip_t instance.
username username
realm realm must be exact same arg as for eXosip_add_authentication_info
int eXosip_clear_authentication_info (struct eXosip_t * excontext)
Clear all authentication credentials stored in eXosip
- Parameters
excontext eXosip_t instance.
int eXosip_default_action (struct eXosip_t * excontext, eXosip_event_t * je)
Initiate some default actions:
Retry with credentials upon reception of 401/407. Retry with Contact header upon reception of 3xx request.
Usefull & required when eXosip_automatic_action() can't do the automatic action: 1/ if you receive a 401 or 407 for BYE (event EXOSIP_CALL_MESSAGE_REQUESTFAILURE). 2/ if you receive 401 or 407 for any sip request outside of dialog (EXOSIP_MESSAGE_REQUESTFAILURE)
- Parameters
excontext eXosip_t instance.
je event to work on.
void eXosip_automatic_action (struct eXosip_t * excontext)
Initiate some automatic actions:
Retry with credentials upon reception of 401/407. Retry with higher Session-Expires upon reception of 422. Refresh REGISTER and SUBSCRIBE/REFER before the expiration delay. Retry with Contact header upon reception of 3xx request. Send automatic UPDATE for session-timer feature.
- Parameters
excontext eXosip_t instance.
int eXosip_insubscription_automatic (struct eXosip_t * excontext, eXosip_event_t * evt)
Automatic internal handling of dialog package.
- Parameters
excontext eXosip_t instance.
evt Incoming SUBSCRIBE for dialog package.
int eXosip_generate_random (char * buf, int buf_size)
Generate random string: (only digit, and maximum unsigned int)
- Parameters
buf destination buffer for random string.
buf_size size of destination buffer
int eXosip_hexa_generate_random (char * buf, int buf_size, char * str1, char * str2, char * str3)
Generate random string: (low entropy, only hexa)
- Parameters
buf destination buffer for random string.
buf_size size of destination buffer
str1 random1 input string
str2 random2 input string
str3 random3 input string
int eXosip_byte_generate_random (char * buf, int buf_size)
Generate random string: (high entropy when compiled with openssl)
- Parameters
buf destination buffer for random string.
buf_size size of destination buffer
Author
Generated automatically by Doxygen for libeXosip2 from the source code.