man pages section 3: Networking Library Functions

Exit Print View

Updated: July 2014
 
 

sip_get_dialog_local_cseq(3SIP)

Name

sip_get_dialog_state, sip_get_dialog_callid, sip_get_dialog_local_tag, sip_get_dialog_remote_tag, sip_get_dialog_local_uri, sip_get_dialog_remote_uri, sip_get_dialog_local_contact_uri, sip_get_dialog_remote_target_uri, sip_get_dialog_route_set, sip_get_dialog_local_cseq, sip_get_dialog_remote_cseq, sip_get_dialog_type, sip_get_dialog_method, sip_is_dialog_secure, sip_get_dialog_msgcnt - get dialog attributes

Synopsis

cc [ flag ... ] file ... –lsip [ library ... ]
#include <sip.h>

int sip_get_dialog_state(sip_dialog_t dialog, int *error);
const sip_str_t *sip_get_dialog_callid(sip_dialog_t dialog, 
     int *error);
const sip_str_t *sip_get_dialog_local_tag(sip_dialog_t dialog, 
     int *error);
const sip_str_t *sip_get_dialog_remote_tag(sip_dialog_t dialog, 
     int *error);
const struct sip_uri *sip_get_dialog_local_uri(sip_dialog_t dialog, 
     int *error);
const struct sip_uri *sip_get_dialog_remote_uri(sip_dialog_t dialog, 
     int *error);
const struct sip_uri *sip_get_dialog_local_contact_uri(
     sip_dialog_t dialog, int *error);
const struct sip_uri *sip_get_dialog_remote_target_uri(
     sip_dialog_t dialog, int *error);
const sip_str_t *sip_get_dialog_route_set(sip_dialog_t dialog, 
     int *error);
boolean_t sip_is_dialog_secure(sip_dialog_t dialog, 
     int *error);
uint32_t sip_get_dialog_local_cseq(sip_dialog_t dialog, 
     int *error);
uint32_t sip_get_dialog_remote_cseq(sip_dialog_t dialog, 
     int *error);
int sip_get_dialog_type(sip_dialog_t dialog,int *error);
int sip_get_dialog_method(sip_dialog_t dialog,int *error);
int sip_get_dialog_msgcnt(sip_dialog_t dialog,int *error);

Description

For functions that return a pointer of type sip_str_t, sip_str_t is supplied by:

typedef struct sip_str {
     char	*sip_str_ptr;
     int	sip_str_len;
}sip_str_t;

The sip_str_ptr parameter points to the start of the returned value and sip_str_len supplies the length of the returned value.

The sip_get_dialog_state() returns the state of the dialog. A dialog can be in one of the following states:

SIP_DLG_NEW
SIP_DLG_EARLY
SIP_DLG_CONFIRMED
SIP_DLG_DESTROYED

The sip_get_dialog_callid() function returns the call ID value maintained in the dialog.

The sip_get_dialog_local_tag() and sip_get_dialog_remote_tag() functions return the local and remote tag values, maintained in the dialog.

The sip_get_dialog_local_uri(), sip_get_dialog_remote_uri(), sip_get_dialog_local_contact_uri(), and sip_get_dialog_remote_target_uri() functions return the local, remote, local contract, and the remote target URIs, maintained in the dialog.

The sip_get_dialog_route_set() function returns the route set, if any, maintained in the dialog.

The sip_get_dialog_local_cseq() and sip_get_dialog_remote_cseq() functions return the local and remote CSEQ numbers maintained in the dialog.

The sip_get_dialog_type() function returns one of the following dialog types, depending on whether it is created by the client or the server.

SIP_UAC_DIALOG

created by client

SIP_UAS_DIALOG

created by server

The sip_get_dialog_method() function returns the SIP method, INVITE or SUBSCRIBE, of the request that created the dialog.

The sip_is_dialog_secure() function returns B_TRUE if the dialog is secure and B_FALSE otherwise.

The sip_get_dialog_msgcnt() function returns the number of SIP messages (requests and responses) that were sent and received within the context of the given dialog.

Return Values

The sip_get_dialog_state(), sip_get_dialog_local_cseq(), sip_get_dialog_remote_cseq(), sip_get_dialog_type(), sip_get_dialog_method(), and sip_get_dialog_msgcnt() functions return the required value on success and -1 on failure.

The sip_get_dialog_callid(), sip_get_dialog_local_tag(), sip_get_dialog_remote_tag(), sip_get_dialog_local_uri(), sip_get_dialog_remote_uri(), sip_get_dialog_local_contact_uri(), sip_get_dialog_remote_target_uri(), and sip_get_dialog_route_set() functions return the required value on success and NULL on failure.

The value of errno is not changed by these calls in the event of an error.

Errors

These functions take an error argument.

If the error is non-null, one of the following values is set:

EINVAL

The dialog is NULL or the stack is not configured to manage dialogs.

ENOTSUP

The input SIP message cannot be modified.

ENOMEM

The memory allocation fails when the request/response line or the headers in the ACK request are created.

On success, the value of the location pointed to by error is set to 0.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
MT-Safe

See also

libsip(3LIB)