SIP_GET_CONTACT_DISPLAY_NAME(3SIP)
Session Initiation Protocol Library Functions
NAME
sip_get_contact_display_name, sip_get_from_display_name,
sip_get_to_display_name, sip_get_from_tag, sip_get_to_tag,
sip_get_callid, sip_get_callseq_num, sip_get_callseq_method,
sip_get_via_sent_by_host, sip_get_via_sent_by_port,
sip_get_via_sent_protocol_version, sip_get_via_sent_protocol_name,
sip_get_via_sent_transport, sip_get_maxforward,
sip_get_content_length, sip_get_content_type,
sip_get_content_sub_type, sip_get_content, sip_get_accept_type,
sip_get_accept_sub_type, sip_get_accept_enc, sip_get_accept_lang,
sip_get_alert_info_uri, sip_get_allow_method, sip_get_min_expires,
sip_get_mime_version, sip_get_org, sip_get_priority,
sip_get_replyto_display_name, sip_get_replyto_uri_str,
sip_get_date_time, sip_get_date_day, sip_get_date_month,
sip_get_date_wkday, sip_get_date_year, sip_get_date_timezone,
sip_get_content_disp, sip_get_content_enc, sip_get_error_info_uri,
sip_get_expires, sip_get_require, sip_get_subject, sip_get_supported,
sip_get_tstamp_delay, sip_get_unsupported, sip_get_server,
sip_get_user_agent, sip_get_warning_code, sip_get_warning_agent,
sip_get_warning_text, sip_get_call_info_uri, sip_get_in_reply_to,
sip_get_retry_after_time, sip_get_retry_after_cmts,
sip_get_rack_resp_num, sip_get_rack_cseq_num, sip_get_rack_method,
sip_get_rseq_resp_num, sip_get_priv_value,
sip_get_passertedid_display_name, sip_get_passertedid_uri_str,
sip_get_ppreferredid_display_name, sip_get_ppreferredid_uri_str,
sip_get_author_scheme, sip_get_author_param, sip_get_authen_info,
sip_get_proxy_authen_scheme, sip_get_proxy_authen_param,
sip_get_proxy_author_scheme, sip_get_proxy_author_param,
sip_get_proxy_require, sip_get_www_authen_scheme,
sip_get_www_authen_param, sip_get_allow_events, sip_get_event,
sip_get_substate, sip_get_content_lang, sip_get_tstamp_value,
sip_get_route_uri_str, sip_get_route_display_name,
sip_get_contact_uri_str, sip_get_from_uri_str, sip_get_to_uri_str -
obtain header specific attributes
SYNOPSIS
cc [
flag ... ]
file ...
-lsip [
library ... ]
#include <sip.h>
const sip_str_t *sip_get_contact_display_name(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_from_display_name(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_to_display_name(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_contact_uri_str(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_from_uri_str(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_to_uri_str(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_from_tag(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_to_tag(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_callid(
sip_msg_t sip_msg,
int *error);
int sip_get_callseq_num(
sip_msg_t sip_msg,
int *error);
sip_method_t sip_get_callseq_method(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_via_sent_by_host(
sip_header_value_t value,
int *error);
int sip_get_via_sent_by_port (
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_via_sent_protocol_version (
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_via_sent_transport(
sip_header_value_t value,
int *error);
int sip_get_maxforward(
sip_msg_t sip_msg,
int *error);
int sip_get_content_length(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_content_type(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_content_sub_type(
sip_msg_t sip_msg,
int *error);
char *sip_get_content(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_accept_type(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_accept_sub_type(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_accept_enc(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_accept_lang(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_alert_info_uri(
sip_header_value_t value,
int *error);
sip_method_t sip_get_allow_method(
sip_header_value_t value,
int *error);
int sip_get_min_expire(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_mime_version(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_org(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_priority(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_replyto_display_name(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_replyto_uri_str(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_date_time(
sip_msg_t sip_msg,
int *error);
int sip_get_date_day(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_date_month(
sip_msg_t sip_msg,
int *error);
int sip_get_date_year(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_date_wkday(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_date_timezone(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_content_disp(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_content_enc(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_error_info_uri(
sip_header_value_t value,
int *error);
int sip_get_expires(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_require(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_subject(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_supported(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_tstamp_delay(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_unsupported(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_server(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_user_agent(
sip_msg_t sip_msg,
int *error);
int sip_get_warning_code(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_warning_agent(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_warning_text(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_call_info_uri(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_in_reply_to(
sip_header_value_t value,
int *error);
int sip_get_retry_after_time(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_retry_after_cmts(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_passertedid_display_name (
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_passertedid_uri_str (
sip_header_value_t value,
int *error);
int sip_get_rack_resp_num(
sip_msg_t sip_msg,
int *error);
int sip_get_rack_cseq_num(
sip_msg_t sip_msg, int *error); sip_method_t
sip_get_rack_method(
sip_msg_t sip_msg,
int *error);
int sip_get_rseq_resp_num(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_priv_value(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_author_scheme(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_author_param(
sip_msg_t sip_msg,
char *name,
int *error);
const sip_str_t *sip_get_authen_info(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_proxy_authen_scheme(
sip_msg_t msg,
int *error);
const sip_str_t *sip_get_proxy_authen_param(
sip_msg_t sip_msg,
char *name,
int *error);
const sip_str_t *sip_get_proxy_author_scheme(
sip_msg_t msg,
int *error);
const sip_str_t *sip_get_proxy_author_param(
sip_msg_t sip_msg,
char *name,
int *error);
const sip_str_t *sip_get_proxy_require(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_www_authen_scheme(
sip_msg_t msg,
int *error);
const sip_str_t *sip_get_www_authen_param(
sip_msg_t sip_msg,
char *name,
int *error);
const sip_str_t *sip_get_allow_events(
sip_header_value_t value, int *error); const sip_str_t *sip_get_event(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_substate(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_content_lang(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_tstamp_value(
sip_msg_t sip_msg,
int *error);
const sip_str_t *sip_get_route_uri_str(
sip_header_value_t value,
int *error);
const sip_str_t *sip_get_route_display_name(
sip_header_value_t value,
int *error);
DESCRIPTION
For functions that return a pointer of type
sip_str_t,
sip_str_t is
supplied by:
typedef struct sip_str {
char *sip_str_ptr;
int sip_str_len;
}sip_str_t;
The
sip_str_ptr parameter points to the start of the returned value
and
sip_str_len supplies the length of the returned value.
For example, given the following request line in a
SIP message
sip_msg that is input to
sip_get_request_uri_str():
FROM : <Alice sip:alice@example.com>;tag=1928301774
the return is a pointer to
sip_str_t with the
sip_str_ptr member
pointing to "
A" of
Alice and
sip_str_len being set to
5, the length
of
Alice.
Access functions for headers that can have multiple values take the
value as the input, while those that can have only one value take the
SIP message
sip_msg as the input.
The
sip_get_contact_display_name(),
sip_get_from_display_name(), and
sip_get_to_display_name() functions will return the display name, if
present, from the
CONTACT header value,
FROM and
TO header
respectively.
The
sip_get_contact_uri_str(),
sip_get_from_uri_str(), and
sip_get_to_uri_str() functions will return the
URI string from the
CONTACT value,
FROM and
TO header respectively.
The
sip_get_from_tag() and
sip_get_to_tag() functions will return the
TAG parameter value, if present, from the
FROM and
TO header,
respectively, in the provided
SIP message
sip_msg.
The
sip_get_callid() function will return the value from the
CALL-ID header in the provided
SIP message
sip_msg.
The
sip_get_callseq_num() function will return the call sequence
number from the
CSEQ header in the provided
SIP message
sip_msg.
The
sip_get_callseq_method() function will return the method from the
CSEQ header in the provided
SIP message
sip_msg. The method can be
one of the following:
INVITE
ACK
OPTIONS
BYE
CANCEL
REGISTER
REFER
INFO
SUBSCRIBE
NOTIFY
PRACK
UNKNOWN
The
sip_get_via_sent_by_host(),
sip_get_via_sent_by_port(),
sip_get_via_sent_protocol_version(),
sip_get_via_sent_protocol_name(), and
sip_get_via_sent_transport() functions will return the sent-by host, port (if present), protocol
version, protocol name and transport information from the provided
VIA header value. Example, if the
VIA value is given by
SIP/2.0/UDP bobspc.biloxi.com:5060, then the sent-by host is "
bobspc.biloxi.com",
protocol name is "
SIP", protocol version is "
2.0", port is
5060 and
transport is
UDP.
The
sip_get_maxforward() function will return the value of the
MAX- FORWARDS header in the provided
SIP message
sip_msg.
INVITE
ACK
OPTIONS
BYE
CANCEL
REGISTER
REFER
INFO
SUBSCRIBE
NOTIFY
PRACK
UNKNOWN
The
sip_get_content_length() function will return the value of the
CONTENT-LENGTH header in the provided
SIP message
sip_msg. The
method can return one of the following:
The
sip_get_content_type() and
sip_get_content_sub_type() functions
will return the value of the Type and Sub-Type field, respectively,
from the
CONTENT-TYPE header in the provided
SIP message
sip_msg.
The
sip_get_content() function will return the message body from the
provided
SIP message
sip_msg. The returned string is a copy of the
message body and the caller is responsible for freeing the string
after use.
The
sip_get_accept_type() and
sip_get_accept_sub_type() functions
will return the value of the Type and Sub-Type field, respectively,
from the provided
ACCEPT header value.
The
sip_get_accept_enc() function will return the content-coding from
the provided
ACCEPT-ENCODING header value.
The
sip_get_accept_lang() function will return the language from the
provided
ACCEPT-LANGUAGE header value.
The
sip_get_alert_info_uri() function will return the
URI string from
the provided
ALERT-INFO header value.
The
sip_get_allow_method() function will return the
SIP method from
the provided
ALLOW header value. The method can return one of the
following:
INVITE
ACK
OPTIONS
BYE
CANCEL
REGISTER
REFER
INFO
SUBSCRIBE
NOTIFY
PRACK
UNKNOWN
The
sip_get_min_expire() function will return the time in seconds
from the
MIN-EXPIRES header in the provided
SIP message
sip_msg.
The
sip_get_mime_version() function will return the
MIME version
string from the
MIME-VERSION header in the provided
SIP message
sip_msg.
The
sip_get_org() function will return the organization string value
from the
ORGANIZATION header in the provided
SIP message
sip_msg.
The
sip_get_priority() function will return the priority string value
from the
PRIORITY header in the provided
SIP message
sip_msg.
The
sip_get_replyto_display_name() and
sip_get_replyto_uri_str() functions will return the display name (if present) and the
URI string, respectively, from the
REPLY-TO header in the provided
SIP message
sip_msg.
The
sip_get_date_time(),
sip_get_date_day(),
sip_get_date_month(),
sip_get_date_wkday(),
sip_get_date_year() and
sip_get_date_timezone() functions will return the time, day, month, week day, year and
timezone value from the
DATE header in the provided
SIP message
sip_msg. Example, if the DATE header has the following value:
Sat, 13 Nov 2010 23:29:00 GMT
the time is "
23:29:00 ", week day is "
Sat", day is "
13", month is
"
Nov", year is "
2010", timezone is "
GMT".
The
sip_get_content_disp() function will return the content-
disposition type from the
CONTENT-DISPOSITION header in the provided
SIP message
sip_msg.
The
sip_get_content_enc() function will return the content-coding
value from the
CONTENT-ENCODING header value.
The
sip_get_error_info_uri() function will return the
URI string from
the provided
ERROR-INFO header value.
The
sip_get_expires() function will return the time in seconds from
the
EXPIRES header in the provided
SIP message
sip_msg.
The
sip_get_require() function will return the option-tag value from
the provided
REQUIRE header value.
The
sip_get_subject() function will return the value of the
SUBJECT header in the provided
SIP message
sip_msg.
The
sip_get_supported() function will return the extension value from
the provided
SUPPORTED header value.
The
sip_get_tstamp_delay() function will return the value from the
TIMESTAMP header in the provided
SIP message
sip_msg.
The
sip_get_unsupported() function will return the extension value
from the provided
UNSUPPORTED header value.
The
sip_get_server() function will return the value from the
SERVER header in the provided
SIP message
sip_msg.
The
sip_get_user_agent() function will return the value from the
USER-AGENT header in the provided
SIP message
sip_msg.
The
sip_get_warning_code(),
sip_get_warning_agent(), and
sip_get_warning_text() functions will return the value of the warn-
code, warn-agent and warn-text, respectively, in the provided
WARNING header value.
The
sip_get_call_info_uri() function will return the
URI string in
the provided
CALL-INFO header value.
The
sip_get_in_reply_to() function will return the Call-Id value in
the provided
IN-REPLY-TO header value.
The
sip_get_retry_after_time(), and
sip_get_retry_after_cmts() functions return the time and comments (if any), respectively, from
the
RETRY-AFTER header in the provided
SIP message
sip_msg.
The
sip_get_passertedid_display_name() and
sip_get_passertedid_uri_str() functions will return the display name
(if any) and the
URI string, respectively, in the provided
P- ASSERTED-IDENTITY header value.
The
sip_get_ppreferredid_display_name() and
sip_get_ppreferredid_uri_str() functions will return the display name
(if any) and the
URI string, respectively, in the provided
P- PREFERRED-IDENTITY header value.
The
sip_get_rack_resp_num(),
sip_get_rack_cseq_num(), and
sip_get_rack_method() functions will return the response-number, the
CSEQ number and the
SIP method from the
RACK header in the provided
SIP message
sip_msg. The method can return one of the following:
INVITE
ACK
OPTIONS
BYE
CANCEL
REGISTER
REFER
INFO
SUBSCRIBE
NOTIFY
PRACK
UNKNOWN
The
sip_get_rseq_resp_num() function will return the response-number,
the
RSEQ header in the provided
SIP message
sip_msg.
The
sip_get_priv_value() function will return the priv-value in the
provided
PRIVACY header value.
The
sip_get_route_uri_str() and
sip_get_route_display_name() functions will return the
URI string, and display name (if present)
from the provided
ROUTE or
RECORD-ROUTE header value.
The
sip_get_author_scheme() function will return the scheme from the
AUTHORIZATION header in the provided
SIP message
sip_msg.
The
sip_get_author_param() function will return the value of the
parameter specified in name from the
AUTHORIZATION header in the
SIP message
sip_msg.
The
sip_get_authen_info() function will return the authentication
information from the provided
AUTHORIZATION-INFO header value.
The
sip_get_proxy_authen_scheme() function will return the scheme
from the
PROXY-AUTHENTICATE header in the
SIP message
sip_msg.
The
sip_get_proxy_authen_param() function will return the value of
the parameter in name from the
PROXY-AUTHENTICATE header in the
SIP message
sip_msg.
The
sip_get_proxy_author_scheme() function will return the value of
the scheme from the
PROXY-AUTHORIZATION header in the
SIP message
sip_msg.
The
sip_get_proxy_author_param() function will return the value of
the parameter specified in name from the
PROXY-AUTHORIZATION header
in the
SIP message
sip_msg.
The
sip_get_proxy_require() function will return the option-tag from
the provided
PROXY-REQUIRE header value.
The
sip_get_www_authen_scheme() function will return the challenge
from the
WWW-AUTHENTICATE header in the
SIP message
sip_msg.
The
sip_get_www_authen_param() function will return the value of the
parameter specified in name from the
WWW-AUTHENTICATE header in the
SIP message
sip_msg.
The
sip_get_allow_events() function returns the value of the allowed
event from the provided
ALLOW-EVENTS header value.
The
sip_get_event() function returns the event in the
EVENT header in
the
SIP message
sip_msg.
The
sip_get_substate() function the subscription state from the
SUBSCRIPTION-STATE header in the provided
SIP message
sip_msg.
The
sip_get_content_lang() function will return the language from the
provided
CONTENT-LANGUAGE value.
The
sip_get_tstamp_value() function will return the timestamp value
from the
TIMESTAMP header in the
SIP message
sip_msg.
RETURN VALUES
For functions that return a pointer to
sip_str_t, the return value is
the specified value on success or
NULL in case of error. For
functions that return an integer, the return value is the specified
value on success and
-1 on error.
The value of
errno is not changed by these calls in the event of an
error.
ERRORS
These functions take a pointer to an integer
error as an argument. If
the error is non-null, one of the following values is set:
EINVAL The input
SIP message
sip_msg or the header value is null;
or the specified header/header value is deleted.
EPROTO The header value is not present or invalid. The parser
could not parse it correctly.
ENOMEM There is an error allocating memory for the return value.
On success, the value of the location pointed to by
error is set to
0.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
libsip(3LIB) November 22, 2021
SIP_GET_CONTACT_DISPLAY_NAME(3SIP)