SIP_CREATE_OKACK(3SIP) Session Initiation Protocol Library Functions

NAME


sip_create_OKack - create an ACK request for a final response

SYNOPSIS


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

int sip_create_OKack(sip_msg_t response,
sip_msg_t ack_msg, char *transport,
char *sent_by, int sent_by_port,
char *via_params);


DESCRIPTION


The sip_create_OKack() function constructs an ACK request in ack_msg
for the final 2XX SIP response. The request line is created using the
URI in the CONTACT header from the response. The SIP-Version in the
request line is "2.0". The VIA header for the ACK request is created
using transport, sent_by, sent_by_port (if non-zero), and via_params
(if non-null). The following headers are copied to ack_msg from
response:
FROM
TO
CALL-ID
MAX_FORWARDS


The CSEQ header is created using the method as ACK and the sequence
number from the CSEQ header in response.

RETURN VALUES


The sip_create_OKack() function returns 0 on success and the
appropriate error value in case of failure.


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

ERRORS


On failure, the sip_create_OKack() function could return one of the
following errors:

EINVAL
If mandatory input is not provided or if the input is
invalid.

The sip_create_OKack() function can return this error if
it does not find a CONTACT header or if it is unable to
obtain the URI from the CONTACT header for the request
line.


ENOTSUP
If the input SIP message cannot be modified.


ENOMEM
If memory allocation fails when creating the
request/response line or when creating headers in the ACK
request.


ATTRIBUTES


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


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

SEE ALSO


libsip(3LIB)

January 25, 2007 SIP_CREATE_OKACK(3SIP)

tribblix@gmail.com :: GitHub :: Privacy