te
Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
SIP_ADD_REQUEST_LINE 3SIP "Jan 25, 2007"
NAME
sip_add_request_line, sip_add_response_line - add a request/response line to a SIP message
SYNOPSIS

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

int sip_add_request_line(sip_msg_t sip_request,
 sip_method_t method, char *request_uri);

int sip_add_response_line(sip_msg_t sip_response,
 int response_code, char *response_phase);
DESCRIPTION

The sip_add_request_line() function adds a request line to the SIP message sip_request. The request line is created using the SIP method specified in method and the URI in request_uri. The SIP method can be one of the following:

INVITE

ACK

OPTIONS

BYE

CANCEL

REGISTER

REFER

SUBSCRIBE

NOTIFY

PRACK

INFO

The resulting request line has the SIP-Version of "2.0".

The sip_add_response_line() function adds a response line to the SIP message sip_response. The response line is created using the response code response_code and the phrase in response_phrase. If the response_code is one that is listed in RFC 3261, sip_get_resp_desc() can be used to get the response phase for the response_code. The resulting response line has the SIP-Version of "2.0".

RETURN VALUES

The sip_add_response_line() and sip_add_request_line() functions return 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_add_response_line() and sip_add_request_line() functions could return one of the following errors: EINVAL

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

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)