Session Initiation Protocol Library Functions
sipparseuri(3SIP)
NAME
sipparseuri, sipfreeparseduri - parse a URI and free a
parsed URI
SYNOPSIS
cc [ flag ... ] file ... -lsip [ library ... ]
#include
sipurit sipparseuri(sipstrt *uristr,
int *error);
void sipfreeparseduri(sipurit sipuri);
DESCRIPTION
For functions that return a pointer of type sipstrt,
sipstrt is supplied by:
typedef struct sipstr {
char *sipstrptr;
int sipstrlen;
}sipstrt;
The sipstrptr parameter points to the start of the
returned value and sipstrlen supplies the length of the
returned value.
For example, given the following request line in a SIP mes-
sage input to sipgetrequesturistr():
INVITE sip:marconi@radio.org SIP/2.0
the return is a pointer to sipstrt with the sipstrptr
member pointing to "s" of sip:marconi@radio.org and
sipstrlen being set to 21, the length of
sip:marconi@radio.org.
The sipparseuri() function takes a URI string in the form
sipstrt and returns a parsed URI sipuri. The syntax of
the URI is as specified in RFC 3261, section 25.1. If the
parser encounters an error when parsing a component, it sets
the appropriate error bit in the error flags and proceeds to
the next component, if present.
SunOS 5.11 Last change: 25 Jan 2007 1
Session Initiation Protocol Library Functions
sipparseuri(3SIP)
The sipfreeparseduri() function takes a parsed URI
sipuri, obtained from sipparseuri(), and frees any asso-
ciated memory.
RETURN VALUES
The sipparseuri() function returns the parsed URI sipuri
on success. It returns a NUL if memory cannot be allocated
for the parsed URI.
The value of errno is not changed by these calls in the
event of an error.
ERORS
If the error is non-null, the following values is set:
EINVAL The SIP header value of the SIP message is NUL or
there is no URI.
The input URI is null or the requested URI com-
ponent is invalid. The error flag is set for the
requested component.
The URI parameters or headers are requested from a
non-SIP[S] URI; or the 'opaque', 'query', 'path',
'reg-name' components are requested from a SIP[S]
URI.
On success, the value of the location pointed to by error is
set to 0.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
SEE ALSO
libsip(3LIB)
SunOS 5.11 Last change: 25 Jan 2007 2
Session Initiation Protocol Library Functions
sipparseuri(3SIP)
SunOS 5.11 Last change: 25 Jan 2007 3
|