JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
SIPAPI Developer's Guide     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information


1.  SIP Overview

2.  Oracle Solaris SIP Internals

3.  Multithreading and URI Support

4.  SIP API Functions

A.  Examples of Use

B.  Programming with the SIP API

Initializing the SIP Stack

Upper Layer Registrations

Connection Manager Interfaces

Custom SIP Headers

C.  Transaction Timers


Custom SIP Headers

An application can optionally provide a table of custom headers and associated parsing functions. The table is an array with an entry for each header. The table contains the following for each header:

char *header_name

The full name of the header. The application must take care that this does not conflict with existing headers. If the same header name is present in the application registered function table and the one maintained by the stack, the one registered by the application takes precedence.

char *header_short_name

Compact name, if any, for the header.

int (*header_parse_func)(struct sip_header *,
            struct sip_parsed_header **);

The parsing function for the header. The parser will set the second argument to the parsed structure. A return value of 0 indicates success.

void (*header_free)(struct sip_parsed_header *);

The function that will free the parsed header.

boolean_t (*header_check_compliance)(struct sip_parsed_header *);

An application can optionally provide this function that will check if the header is compliant or not. The compliance for a custom header will be defined by the application.

boolean_t (*header_is_equal)(struct sip_parsed_header *,
           struct sip_parsed_header *);

An application can optionally provide this function to check if the two input headers are equivalent. The equivalence criteria is defined by the application.