/*
* CDDL HEADER START
*
* 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
* 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]
*
* CDDL HEADER END
*/
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#pragma ident "%Z%%M% %I% %E% SMI"
#include <stdlib.h>
#include <assert.h>
#include <errno.h>
#include <pthread.h>
#include <sip.h>
#include "sip_msg.h"
#include "sip_miscdefs.h"
#include "sip_parse_uri.h"
#include "sip_dialog.h"
/*
* Create a request using the state maintained in the dialog.
*/
{
char *uri;
int oldseq = 0;
return (NULL);
}
return (NULL);
/*
* Depending on the route set, if any, the request URI could either
* be the contact URI or the 1st URI from the route set.
*/
goto err_ret;
goto err_ret;
}
goto err_ret;
0) {
goto err_ret;
}
goto err_ret;
0) {
goto err_ret;
}
goto err_ret;
goto err_ret;
if (cseq < 0) {
if (_dialog->sip_dlg_local_cseq == 0)
}
goto err_ret;
}
/*
* The route set, even if empty, overrides any pre-existing route set.
* If the route set is empty, the UAC MUST NOT add a Route header
* field to the request.
*/
NULL) != 0) {
goto err_ret;
}
}
return (sip_msg);
return (NULL);
}
/*
* Create a request using the state maintained in the dialog. The request will
* not have Contact header.
*/
{
return (NULL);
}
}
return (sip_msg);
}
/*
* Get the Dialog method
*/
int
{
*error = 0;
if (!sip_manage_dialog) {
return (0);
}
return (0);
}
return (_dialog->sip_dlg_method);
}
/*
* Get the Dialog state
*/
int
{
*error = 0;
if (!sip_manage_dialog) {
return (0);
}
return (0);
}
return (_dialog->sip_dlg_state);
}
/*
* Return the dialog callid
*/
const sip_str_t *
{
*error = 0;
return (NULL);
}
return (NULL);
}
}
return (callid);
}
/*
* Return the dialog localtag.
*/
const sip_str_t *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
error);
}
return (ltag);
}
/*
* Return the dialog remotetag
*/
const sip_str_t *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
error);
}
return (ttag);
}
/*
* Return the dialog localuri.
*/
const struct sip_uri *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
}
}
/*
* Return the dialog remoteuri.
*/
const struct sip_uri *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
}
}
/*
* Return the dialog remotetarg.
*/
const struct sip_uri *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
}
}
/*
* Return the dialog local contact uri.
*/
const struct sip_uri *
{
*error = 0;
return (NULL);
}
error);
return (NULL);
}
}
}
/*
* Return the dialog route set
*/
const sip_str_t *
{
*error = 0;
return (NULL);
}
return (&_dialog->sip_dlg_rset);
return (NULL);
}
/*
* Return the dialog secure
*/
{
*error = 0;
return (B_FALSE);
}
return (issecure);
}
/*
* Return the dialog local cseq
*/
{
*error = 0;
return (0);
}
return (cseq);
}
/*
* Return the dialog remote cseq
*/
{
*error = 0;
return (0);
}
return (cseq);
}
/*
* Return the dialog type
*/
int
{
int type;
*error = 0;
return (-1);
}
return (type);
}
/*
* Return the number of messages exchanged within a dialog.
*/
int
{
int nmsgs;
*error = 0;
return (-1);
}
return (nmsgs);
}
/*
* Partial dialog ?
*/
{
return (B_FALSE);
return (isnew);
}
/*
* Hold dialog
*/
void
{
return;
}
/*
* Release dialog
*/
void
{
return;
}
/*
* Delete a dialog
*/
void
{
return;
}