man pages section 3: Networking Library Functions

Exit Print View

Updated: July 2014
 
 

sip_create_response(3SIP)

Name

sip_create_response - create a response for a SIP request

Synopsis

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

sip_msg_t sip_create_response(sip_msg_t sip_request, 
     int response_code, char *response_phase, 
     char *totag, char *contact_uri);

Description

The sip_create_response() function creates and returns a SIP message in response to the SIP request sip_request. The response line in the resulting SIP message is created using the response code in response_code and the phrase in response_phrase. The response line has the SIP-Version of “2.0”. If a non-null totag is specified, the resulting SIP response has a TO header with a tag value from totag. If totag is null and the response_code is anything other than 100 (TRYING), sip_create_response() adds a TO header with a randomly generated tag value. If the response_code is 100 and totag is null, the SIP response has a TO header without a tag parameter. If contact_uri is non-null, a CONTACT header is added to the SIP response with the URI specified in contact_uri. The SIP response has the following headers copied from sip_request:

All VIA headers
FROM header
TO header (with tag added, if required, as stated above)
CALL-ID header
CSEQ header
All RECORD-ROUTE headers

Return Values

The sip_create_response() function returns the resulting SIP message on success and NULL on failure.

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

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)