sip_create_OKack(3SIP) Session Initiation Protocol Library Functions sip_create_OKack(3SIP)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(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Committed |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO libsip(3LIB)SunOS 5.11 25 Jan 2007 sip_create_OKack(3SIP)
Check Out this Related Man Page
sip_create_dialog_req(3SIP) Session Initiation Protocol Library Functions sip_create_dialog_req(3SIP)NAME
sip_create_dialog_req, sip_create_dialog_req_nocontact - create an in-dialog request
SYNOPSIS
cc [ flag ... ] file ... -lsip [ library ... ]
#include <sip.h>
sip_msg_t sip_create_dialog_req(sip_method_t method,
sip_dialog_t dialog, char *transport, char *sent_by,
int sent_by_port, char *via_param, uint32_t smaxforward,
int cseq);
sip_msg_t sip_create_dialog_req_nocontact(sip_method_t method,
sip_dialog_t dialog, char *transport, char *sent_by,
int sent_by_port, char *via_param, uint32_t smaxforward,
int cseq);
DESCRIPTION
The sip_create_dialog_req() function creates and returns a SIP request with the state information contained in dialog. The method in the
resulting request is from method. The method can be one of the following:
INVITE
ACK
OPTIONS
BYE
CANCEL
REGISTER
REFER
INFO
SUBSCRIBE
NOTIFY
PRACK
The resulting request line in the SIP message has the SIP-Version of "2.0". The URI in the request line is from the remote target in the
dialog or from the route set in the dialog, if present. See RFC 3261 (section 12.2) for details. The FROM, TO, and CALL-ID headers are
added from the dialog. The MAX-FORWARDS header is added using the value in maxforward. The CSEQ header is added using the SIP method in
method and the sequence number value in cseq. If cseq is -1, the sequence number is obtained from the local sequence number in the dialog.
The local sequence number in the dialog is incremented and is used in the CSEQ header. The VIA header added is created using the transport,
sent_by, sent_by_port (if non-zero), and via_param (if any). If dialog has a non-empty route set, the resulting SIP request has the route
set from the dialog.
The sip_create_dialog_req_nocontact() function is similar to sip_create_dialog_req(), except that it does not add the contact header.
RETURN VALUES
The sip_create_dialog_req() and sip_create_dialog_req_nocontact() functions return the resulting SIP message on success and NULL on fail-
ure.
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), attributes(5)SunOS 5.11 6 Aug 2007 sip_create_dialog_req(3SIP)