Merge remote-tracking branch 'origin/master'
[unleashed/lotheac.git] / share / man / man3sip / sip_add_from.3sip
blob98e7c26879fac47b46e9d776dcc3bfc9380fa91b
1 '\" te
2 .\"  Copyright (c) 2007, Sun Microsystems, Inc.  All Rights Reserved
3 .\" 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.
4 .\" 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.
5 .\" 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]
6 .TH SIP_ADD_FROM 3SIP "Feb 09, 2007"
7 .SH NAME
8 sip_add_from, sip_add_to, sip_add_contact, sip_add_via, sip_add_maxforward,
9 sip_add_callid, sip_add_cseq, sip_add_content_type, sip_add_content,
10 sip_add_accept, sip_add_accept_enc, sip_add_accept_lang, sip_add_alert_info,
11 sip_add_allow, sip_add_call_info, sip_add_content_disp, sip_add_content_enc,
12 sip_add_content_lang, sip_add_date, sip_add_error_info, sip_add_expires,
13 sip_add_in_reply_to, sip_add_mime_version, sip_add_min_expires, sip_add_org,
14 sip_add_priority, sip_add_reply_to, sip_add_passertedid, sip_add_ppreferredid,
15 sip_add_require, sip_add_retry_after, sip_add_route, sip_add_record_route,
16 sip_add_server, sip_add_subject, sip_add_supported, sip_add_tstamp,
17 sip_add_unsupported, sip_add_user_agent, sip_add_warning, sip_add_rseq,
18 sip_add_privacy, sip_add_rack, sip_add_author, sip_add_authen_info,
19 sip_add_proxy_authen, sip_add_proxy_author, sip_add_proxy_require,
20 sip_add_www_authen, sip_add_allow_events, sip_add_event, sip_add_substate \-
21 add specific SIP headers to the SIP message
22 .SH SYNOPSIS
23 .LP
24 .nf
25 \fBcc\fR [ \fIflag\fR ... ] \fIfile\fR ... \fB-lsip\fR [ \fIlibrary\fR ... ]
26 #include <sip.h>
28 \fBint\fR \fIsip_add_from\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR, \fBchar *\fR\fIfrom_uri\fR,
29      \fBchar *\fR\fIfrom_tag\fR, \fBboolean_t\fR \fIadd_aquot\fR, \fBchar *\fR\fIfrom_params\fR);
30 .fi
32 .LP
33 .nf
34 \fBint\fR \fIsip_add_to\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR, \fBchar *\fR\fIto_uri\fR,
35      \fBchar *\fR\fIto_tag\fR, \fBboolean_t\fR \fIadd_aquot\fR, \fBchar *\fR\fIto_params\fR);
36 .fi
38 .LP
39 .nf
40 \fBint\fR \fIsip_add_contact\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR,
41      \fBchar *\fR\fIcontact_uri\fR, \fBboolean_t\fR \fIadd_aquot\fR, \fBchar *\fR\fIcontact_params\fR);
42 .fi
44 .LP
45 .nf
46 \fBint\fR \fIsip_add_via\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIsent_protocol_transport\fR,
47      \fBchar *\fR\fIsent_by_host\fR, \fBint\fR \fIsent_by_port\fR, \fBchar *\fR\fIvia_params\fR);
48 .fi
50 .LP
51 .nf
52 \fBint\fR \fIsip_add_maxforward\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBuint_t\fR \fImaxforward\fR);
53 .fi
55 .LP
56 .nf
57 \fBint\fR \fIsip_add_callid\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIcallid\fR);
58 .fi
60 .LP
61 .nf
62 \fBint\fR \fIsip_add_cseq\fR(\fBsip_msg_t\fR \fIsip_msg,\fR \fBsip_method_t\fR \fImethod\fR, \fBuint32_t\fR \fIcseq\fR);
63 .fi
65 .LP
66 .nf
67 \fBint\fR \fIsip_add_content_type\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR \fItype\fR, \fBchar *\fR\fIsubtype\fR);
68 .fi
70 .LP
71 .nf
72 \fBint\fR \fIsip_add_content\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR \fIcontent\fR);
73 .fi
75 .LP
76 .nf
77 \fBint\fR \fIsip_add_accept\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fItype\fR, \fBchar *\fR\fIsubtype\fR,
78      \fBchar *\fR\fImedia_param\fR, \fBchar *\fR\fIaccept_param\fR);
79 .fi
81 .LP
82 .nf
83 \fBint\fR \fIsip_add_accept_enc\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIcode\fR,
84      \fBchar *\fR\fIparam\fR);
85 .fi
87 .LP
88 .nf
89 \fBint\fR \fIsip_add_accept_lang\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIlang\fR,
90      \fBchar *\fR\fIparam\fR);
91 .fi
93 .LP
94 .nf
95 \fBint\fR \fIsip_add_alert_info\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIalert\fR,
96      \fBchar *\fR\fIparam\fR);
97 .fi
99 .LP
101 \fBint\fR \fIsip_add_allow\fR(\fBsip_msg_t\fR \fIsip_msg,\fR \fBsip_method_t\fR \fImethod_name\fR);
106 \fBint\fR \fIsip_add_call_info\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIuri\fR,
107      \fBchar *\fR\fIparam\fR);
112 \fBint\fR \fIsip_add_content_disp\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdis_type\fR, \fBchar *\fR\fIparam\fR);
117 \fBint\fR \fIsip_add_content_enc\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIcode\fR);
122 \fBint\fR \fIsip_add_content_lang\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIlang\fR);
127 \fBint\fR \fIsip_add_date\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdate\fR);
132 \fBint\fR \fIsip_add_error_info\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIuri\fR, \fBchar *\fR\fIparam\fR);
137 \fBint\fR \fIsip_add_expires\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIsecs\fR);
142 \fBint\fR \fIsip_add_in_reply_to\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIreply_id\fR);
147 \fBint\fR \fIsip_add_mime_version\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIversion\fR);
152 \fBint\fR \fIsip_add_min_expires\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIsecs\fR);
157 \fBint\fR \fIsip_add_org\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIorg\fR);
162 \fBint\fR \fIsip_add_priority\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIprio\fR);
167 \fBint\fR \fIsip_add_reply_to\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR,
168      \fBchar *\fR\fIaddr\fR, \fBchar *\fR\fIparam\fR, \fBboolean_t\fR \fIadd_aquot\fR);
173 \fBint\fR \fIsip_add_passertedid\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR,
174      \fBchar *\fR\fIaddr\fR, \fBboolean_t\fR \fIadd_aqout\fR);
179 \fBint\fR \fIsip_add_ppreferredid\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR,
180      \fBchar *\fR\fIaddr\fR, \fBboolean_t\fR \fIadd_aquot\fR);
185 \fBint\fR \fIsip_add_require\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIreq\fR);
190 \fBint\fR \fIsip_add_retry_after\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIsecs\fR, \fBchar *\fR\fIcmt\fR,
191      \fBchar *\fR\fIparam\fR);
196 \fBint\fR \fIsip_add_route\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR, \fBchar *\fR\fIuri\fR,
197      \fBchar *\fR\fIroute_params\fR);
202 \fBint\fR \fIsip_add_record_route\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIdisplay_name\fR,
203      \fBchar *\fR\fIuri\fR, \fBchar *\fR\fIroute_params\fR);
208 \fBint\fR \fIsip_add_server\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIsvr\fR);
213 \fBint\fR \fIsip_add_subject\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIsubject\fR);
218 \fBint\fR \fIsip_add_supported\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIsupport\fR);
223 \fBint\fR \fIsip_add_tstamp\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fItime\fR, \fBchar *\fR\fIdelay\fR);
228 \fBint\fR \fIsip_add_unsupported\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIunsupport\fR);
233 \fBint\fR \fIsip_add_user_agent\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIusr\fR);
238 \fBint\fR \fIsip_add_warning\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIcode\fR, \fBchar *\fR\fIaddr\fR, \fBchar *\fR\fImsg\fR);
243 \fBint\fR \fIsip_add_privacy\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIpriv_val\fR);
248 \fBint\fR \fIsip_add_rseq\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIresp_num\fR);
253 \fBint\fR \fIsip_add_rack\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBint\fR \fIresp_num\fR, \fBint\fR \fIcseq\fR,
254      \fBsip_method_t\fR \fImethod\fR);
259 \fBint\fR \fIsip_add_author\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIscheme\fR, \fBchar *\fR\fIparam\fR);
264 \fBint\fR \fIsip_add_authen_info\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIainfo\fR);
269 \fBint\fR \fIsip_add_proxy_authen\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIpascheme\fR,
270      \fBchar *\fR\fIparam\fR);
275 \fBint\fR \fIsip_add_proxy_author\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIpascheme\fR,
276      \fBchar *\fR\fIparam\fR);
281 \fBint\fR \fIsip_add_proxy_require\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIopt\fR);
286 \fBint\fR \fIsip_add_www_authen\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIwascheme\fR,
287      \fBchar *\fR\fIparam\fR);
292 \fBint\fR \fIsip_add_allow_events\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIevents\fR);
297 \fBint\fR \fIsip_add_event\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIevent\fR, \fBchar *\fR\fIparam\fR);
302 \fBint\fR \fIsip_add_substate\fR(\fBsip_msg_t\fR \fIsip_msg\fR, \fBchar *\fR\fIsub\fR, \fBchar *\fR\fIparam\fR);
305 .SH DESCRIPTION
308 For each of the following functions that add a header to a \fBSIP\fR message,
309 the function adds a \fBCRLF\fR before appending the header to the \fBSIP\fR
310 message.
313 The \fBsip_add_from()\fR and \fBsip_add_to()\fR functions appends a \fBFROM\fR
314 and \fBTO\fR header respectively to the \fBSIP\fR message \fIsip_msg\fR. The
315 header is created using the \fIdisplay_name\fR, if non-null, and the \fIuri\fR
316 values. The \fIadd_aquot\fR parameter is used to specify whether the \fIuri\fR
317 should be enclosed within '\fI<>\fR\&'. If a \fIdisplay_name\fR is provided
318 then \fIadd_aquot\fR cannot be \fBB_FALSE\fR. The \fIdisplay_name\fR parameter,
319 if provided, is enclosed within quotes before creating to the \fBSIP\fR header.
320 Tag value for the \fBFROM/TO\fR header can be specified which will be added to
321 the \fBSIP\fR header by prefixing it with "\fBTAG=\fR". Any generic parameters
322 can be specified as the last argument, which will be added, as is, to the
323 \fBSIP\fR header.
326 Either the tag or the generic parameter can be specified not both, if both are
327 specified, the resulting header contains only the tag parameter.
330 The \fBsip_add_contact()\fR function appends a \fBCONTACT\fR header to the
331 \fBSIP\fR message \fIsip_msg\fR using the \fIdisplay_name\fR and
332 \fIcontact_uri\fR. The \fIadd_aquot\fR parameter has the same semantics as in
333 \fBsip_add_from()\fR/\fBsip_add_to()\fR. Any contact parameters specified in
334 \fIcontact_param\fR is added to the \fBCONTACT\fR header before appending the
335 header to the message.
338 The \fBsip_add_via()\fR function appends a \fBVIA\fR header to the \fBSIP\fR
339 message \fIsip_msg\fR. The \fBVIA\fR header is constructed using
340 \fBsent_protocol_transport\fR, \fBsent_by_host\fR and \fIsent_by_port\fR. A
341 value of \fB0\fR for \fIsent_by_port\fR means that the port information is not
342 present in the resulting \fBVIA\fR header. The \fBVIA\fR header that is created
343 has the protocol set to "\fBSIP\fR" and version set to "2.0". Any parameters
344 specific in \fIvia_params\fR is added to the \fBVIA\fR header before appending
345 the header to the \fBSIP\fR message.
348 The \fBsip_add_maxforward()\fR function appends a \fBMAX-FORWARDS\fR header to
349 the \fBSIP\fR message \fIsip_msg\fR using the value in \fImaxforward\fR. The
350 \fImaxforward\fR value is a positive integer.
353 The \fBsip_add_callid()\fR function appends a \fBCALL-ID\fR header to the
354 \fBSIP\fR message \fIsip_msg\fR using the value in \fIcallid\fR, if non-null.
355 If \fIcallid\fR is null, this function creates a \fBCALL-ID\fR header using a
356 randomly generated value.
359 The \fBsip_add_cseq()\fR function appends a \fBCSEQ\fR header to the \fBSIP\fR
360 message using the values in \fImethod\fR and \fIcseq\fR. Permissible values for
361 method include:
363 .in +2
364 INVITE
365 .in -2
367 .in +2
369 .in -2
371 .in +2
372 OPTIONS
373 .in -2
375 .in +2
377 .in -2
379 .in +2
380 CANCEL
381 .in -2
383 .in +2
384 REGISTER
385 .in -2
387 .in +2
388 REFER
389 .in -2
391 .in +2
392 SUBSCRIBE
393 .in -2
395 .in +2
396 NOTIFY
397 .in -2
399 .in +2
400 PRACK
401 .in -2
403 .in +2
404 INFO
405 .in -2
408 The \fIcseq\fR value is a positive integer.
411 The \fBsip_add_content_type()\fR function appends a \fBCONTENT-TYPE\fR to the
412 \fBSIP\fR message \fIsip_msg\fR. The \fBCONTENT-TYPE\fR is created using the
413 type and subtype, both should be non-null.
416 The \fBsip_add_content()\fR function adds a message body to the \fBSIP\fR
417 message \fIsip_msg\fR. The message body is given by the null terminated string
418 contents. Once the function returns, the caller may reuse or delete contents as
419 \fBsip_add_content()\fR creates a new buffer and copies over contents for its
420 use.
423 The \fBsip_add_accept()\fR function appends an \fBACCEPT\fR header to the
424 \fBSIP\fR message \fIsip_msg\fR. The \fBACCEPT\fR header is created using type
425 and subtype. If both type and subtype are null, then an empty \fBACCEPT\fR
426 header is added to the \fBSIP\fR message. If type is non-null, but subtype is
427 null, then the \fBACCEPT\fR header has the specified type and sets the subtype
428 in the header to '\fB*\fR'. Any \fIaccept_param\fR or \fImedia_param\fR, if
429 provided, are added to the \fBACCEPT\fR header before appending the header to
430 the \fBSIP\fR message.
433 The \fBsip_add_accept_enc()\fR function appends an \fBACCEPT-ENCODING\fR header
434 to the \fBSIP\fR message \fIsip_msg\fR. The \fBACCEPT-ENCODING\fR is created
435 using code. Any parameter specified in \fIparam\fR is added to the
436 \fBACCEPT-ENCODING\fR header before appending the header to the \fBSIP\fR
437 message.
440 The \fBsip_add_accept_lang()\fR function appends an \fBACCEPT-LANGUAGE\fR
441 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBACCEPT-LANGUAGE\fR header
442 is created using lang. Any parameter specified in \fIparam\fR is added to the
443 \fBACCEPT-LANGUAGE\fR header before appending the header to the \fBSIP\fR
444 message.
447 The \fBsip_add_alert_info()\fR function appends an \fBALERT-INFO\fR header to
448 the \fBSIP\fR message \fIsip_msg\fR. The \fBALERT-INFO\fR header is created
449 using alert. Any parameter specified in \fIparam\fR is added to the
450 \fBALERT-INFO\fR header before appending the header to the \fBSIP\fR message.
453 The \fBsip_add_allow()\fR function appends an \fBALLOW\fR header to the
454 \fBSIP\fR message \fIsip_msg\fR. The \fBALLOW\fR header is created using alert
455 and method. Permissible values for method include:
457 .in +2
458 INVITE
459 .in -2
461 .in +2
463 .in -2
465 .in +2
466 OPTIONS
467 .in -2
469 .in +2
471 .in -2
473 .in +2
474 CANCEL
475 .in -2
477 .in +2
478 REGISTER
479 .in -2
481 .in +2
482 REFER
483 .in -2
485 .in +2
486 INFO
487 .in -2
489 .in +2
490 SUBSCRIBE
491 .in -2
493 .in +2
494 NOTIFY
495 .in -2
497 .in +2
498 PRACK
499 .in -2
502 The \fBsip_add_call_info()\fR function appends a \fBCALL-INFO\fR header to the
503 \fBSIP\fR message \fIsip_msg\fR. The \fBCALL-INFO\fR header is created using
504 \fIuri\fR. Any parameter specified in \fIparam\fR is added to the
505 \fBCALL-INFO\fR before appending the header to the \fBSIP\fR message.
508 The \fBsip_add_content_disp()\fR function appends a \fBCONTENT-DISPOSITION\fR
509 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBCONTENT-DISPOSITION\fR
510 header is created using \fIdisp_type\fR. Any parameter specified in \fIparam\fR
511 is added to the \fBCONTENT-DISPOSITION\fR header before appending the header to
512 the \fBSIP\fR message.
515 The \fBsip_add_content_enc()\fR function appends a \fBCONTENT-ENCODING\fR
516 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBCONTENT-ENCODING\fR
517 header is created using code.
520 The \fBsip_add_content_lang()\fR function appends a \fBCONTENT-LANGUAGE\fR
521 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBCONTENT-LANGUAGE\fR
522 header is created using \fIlang\fR.
525 The \fBsip_add_date()\fR appends a \fBDATE\fR header to the \fBSIP\fR message
526 \fIsip_msg\fR. The \fBDATE\fR header is created using the date information
527 specified in date. The semantics for the date string is given is RFC 3261,
528 section 25.1.
531 The \fBsip_add_error_info()\fR function appends an \fBERROR-INFO\fR header to
532 the \fBSIP\fR message \fIsip_msg\fR. The \fBERROR-INFO\fR header is created
533 using \fIuri\fR. An parameters specified in \fIparam\fR is added to the
534 \fBERROR-INFO\fR header before adding the header to the \fBSIP\fR message.
537 The \fBsip_add_expires()\fR function appends an \fBEXPIRES\fR header to the
538 \fBSIP\fR message \fIsip_msg\fR. The \fBEXPIRES\fR header is created using the
539 seconds specified in \fIsecs\fR.
542 The \fBsip_add_in_reply_to()\fR function appends a \fBIN-REPLY-TO\fR header to
543 the \fBSIP\fR message \fIsip_msg\fR. The \fBIN-REPLY-TO\fR header is created
544 using the \fIcall-id\fR value specified in \fIreply_id\fR.
547 The \fBsip_add_mime_version()\fR function appends a \fBMIME-VERSION\fR header
548 to the \fBSIP\fR message \fIsip_msg\fR. The \fBMIME-VERSION\fR header is
549 created using version.
552 The \fBsip_add_min_expires()\fR function appends a \fBMIN-EXPIRES\fR header to
553 the \fBSIP\fR message \fIsip_msg\fR. The \fBMIN-EXPIRES\fR is created using the
554 time in seconds specified in \fIsecs\fR.
557 The \fBsip_add_org()\fR function appends a \fBORGANIZATION\fR header to the
558 \fBSIP\fR message \fIsip_msg\fR. The \fBORGANIZATION\fR header is created using
559 the information specified in \fIorg\fR.
562 The \fBsip_add_priority()\fR function appends a \fBPRIORITY\fR header to the
563 \fBSIP\fR message \fIsip_msg\fR. The \fBPRIORITY\fR header is created using the
564 value specified in \fIprio\fR.
567 The \fBsip_add_reply_to()\fR function appends a \fBREPLY-TO\fR header to the
568 \fBSIP\fR message \fIsip_msg\fR. The \fBREPLY-TO\fR header is created using the
569 \fIdisplay_name\fR, if provided, and \fIaddr\fR. The \fIadd_aquot\fR parameter
570 has the same semantics as in \fBsip_add_from()\fR/\fBsip_add_to()\fR. Any
571 parameters specified in \fIparam\fR is added to the  \fBREPLY-TO\fR header
572 before appending the header to the \fBSIP\fR message.
575 The \fBsip_add_passertedid()\fR function appends a \fBP-ASSERTED-IDENTITY\fR
576 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBP-ASSERTED-IDENTITY\fR
577 header is created using the \fIdisplay_name\fR, if provided, and the
578 \fIaddr\fR. The \fIadd_aquot\fR parameter has the same semantics as in
579 \fBsip_add_from()\fR/\fBsip_add_to()\fR.
582 The \fBsip_add_ppreferredid()\fR function appends a \fBP-PREFERRED-IDENTITY\fR
583 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBP-PREFERRED-IDENTITY\fR
584 header is created using the \fIdisplay_name\fR, if provided, and the
585 \fIaddr\fR. The \fIadd_aquot\fR parameter has the same semantics as in
586 \fBsip_add_from()\fR/\fBsip_add_to()\fR.
589 The \fBsip_add_require()\fR function appends a \fBREQUIRE\fR header to the
590 \fBSIP\fR message \fIsip_msg\fR. The \fBREQUIRE\fR header is created using the
591 information in \fIreq\fR.
594 The \fBsip_add_retry_after()\fR function appends a \fBRETRY-AFTER\fR header to
595 the \fBSIP\fR message \fIsip_msg\fR. The \fBRETRY-AFTER\fR is created using the
596 time in seconds specified in \fIsecs\fR comments, if any, in \fIcmt\fR. Any
597 parameters specified in \fIparam\fR, if provided, is added to the
598 \fBRETRY-AFTER\fR header before appending the header to the \fBSIP\fR message.
601 The \fBsip_add_route()\fR function appends a \fBROUTE\fR header to the
602 \fBSIP\fR message \fIsip_msg\fR. The \fBROUTE\fR header is created using the
603 \fIdisplay_name\fR, if any, and the \fIuri\fR. The \fIuri\fR is enclosed
604 in '<>' before adding to the header. Parameters specified in \fIroute_params\fR
605 are added to the \fBROUTE\fR header before appending the header to the
606 \fBSIP\fR message.
609 The \fBsip_add_record_route()\fR function appends a \fBRECORD-ROUTE\fR header
610 to the \fBSIP\fR message \fIsip_msg\fR. The \fBRECORD-ROUTE\fR header is
611 created using the \fIdisplay_name\fR, if any, and the \fIuri\fR. The \fIuri\fR
612 parameter is enclosed in '<>' before adding to the header. Any parameters
613 specified in \fIroute_params\fR is added to the \fBROUTE\fR header before
614 appending the header to the \fBSIP\fR message.
617 The \fBsip_add_server()\fR function appends a \fBSERVER\fR header to the
618 \fBSIP\fR message \fIsip_msg\fR. The \fBSERVER\fR header is created using the
619 information in \fIsrv\fR.
622 The \fBsip_add_subject()\fR function appends a \fBSUBJECT\fR header to the
623 \fBSIP\fR message \fIsip_msg\fR. The \fBSUBJECT\fR header is created using the
624 information in \fIsubject\fR.
627 The \fBsip_add_supported()\fR function appends a \fBSUPPORTED\fR header to the
628 \fBSIP\fR message \fIsip_msg\fR. The \fBSUPPORTED\fR header is created using
629 the information in \fIsupport\fR.
632 The \fBsip_add_tstamp()\fR function appends a \fBTIMESTAMP\fR header to the
633 \fBSIP\fR message \fIsip_msg\fR. The \fBTIMESTAMP\fR header is created using
634 the time value in \fItime\fR and the delay value, if provided, in \fIdelay\fR.
637 The \fBsip_add_unsupported()\fR function appends an \fBUNSUPPORTED\fR header to
638 the \fBSIP\fR message \fIsip_msg\fR. The \fBUNSUPPORTED\fR header is created
639 using the \fBoption-tag\fR value in \fIunsupport\fR.
642 The \fBsip_add_user_agent()\fR function appends an \fBUSER-AGENT\fR header to
643 the \fBSIP\fR message \fIsip_msg\fR. The \fBUSER-AGENT\fR header is created
644 using the \fBserver-val\fR specified in \fIusr\fR.
647 The \fBsip_add_warning()\fR function appends a \fBWARNING\fR header to the
648 \fBSIP\fR message \fIsip_msg\fR. The \fBWARNING\fR header is created using the
649 \fBwarn-code\fR in \fIcode\fR, \fBwarn-agent\fR in \fIaddr\fR and
650 \fBwarn-test\fR in \fImsg\fR.
653 The \fBsip_add_privacy()\fR function appends a \fBPRIVACY\fR header to the
654 \fBSIP\fR message \fIsip_msg\fR. The \fBPRIVACY\fR header  is created using the
655 privacy value specified in \fIpriv_val\fR.
658 The \fBsip_add_rseq()\fR function appends a \fBRSEQ\fR header to the \fBSIP\fR
659 message \fIsip_msg\fR. The \fBRSEQ\fR header is created using the sequence
660 number specified in \fIresp_num\fR.
663 The \fBsip_add_rack()\fR function appends a \fBRACK\fR header to the \fBSIP\fR
664 message \fIsip_msg\fR. The \fBRACK\fR header is created using the sequence
665 number in \fIresp_num\fR, the \fBSIP\fR method in \fImethod\fR and the
666 \fBCSEQ\fR number in \fIcseq\fR. Permissible values for method include:
667 \fBINVITE\fR, \fBACK\fR, \fBOPTIONS\fR, \fBBYE\fR, \fBCANCEL\fR,
668 \fBREGISTER\fR, \fBREFER\fR, \fBINFO\fR, \fBSUBSCRIBE\fR, \fBNOTIFY\fR,
669 \fBPRACK\fR.
672 The \fBsip_add_author()\fR function appends an \fBAUTHORIZATION\fR header to
673 the \fBSIP\fR message \fIsip_msg\fR. The \fBAUTHORIZATION\fR header is created
674 using scheme. Any parameter specified in \fIparam\fR is added to the
675 \fBAUTHORIZATION\fR header before the header is appended to the \fBSIP\fR
676 message.
679 The \fBsip_add_authen_info()\fR function appends an \fBAUTHENTICATION-INFO()\fR
680 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBAUTHENTICATION-INFO\fR
681 header is created using the authentication information in \fIainfo\fR.
684 The \fBsip_add_proxy_authen()\fR function appends a \fBPROXY-AUTHENTICATE\fR
685 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBPROXY-AUTHENTICATE\fR is
686 created using the value specified in \fIpsacheme\fR. Any parameter in
687 \fIparam\fR is added to the \fBPROXY-AUTHENTICATE\fR header before adding the
688 header to the \fBSIP\fR message.
691 The \fBsip_add_proxy_author()\fR function appends a \fBPROXY-AUTHORIZATION\fR
692 header to the \fBSIP\fR message \fIsip_msg\fR. The \fBPROXY-AUTHORIZATION\fR
693 header is created using the value specified in \fIpascheme\fR. Any parameter in
694 \fIparam\fR is added to the \fBPROXY-AUTHORIZATION\fR header before adding the
695 header to the \fBSIP\fR message.
698 The \fBsip_add_proxy_require()\fR function appends a \fBPROXY-REQUIRE\fR header
699 to the \fBSIP\fR message \fIsip_msg\fR. The \fBPROXY-REQUIRE\fR header is
700 created using the \fBoption-tag\fR in \fIopt\fR.
703 The \fBsip_add_www_authen()\fR function appends a \fBWWW-AUTHENTICATE\fR header
704 to the \fBSIP\fR message \fIsip_msg\fR. The \fBWWW-AUTHENTICATE\fR header is
705 created using the challenge in \fIwascheme\fR. Any parameter in \fIparam\fR is
706 added to the \fBWWW-AUTHENTICATE\fR header before adding the header to the
707 \fBSIP\fR message.
710 The \fBsip_add_allow_events()\fR function appends an \fBALLOW-EVENTS\fR header
711 to the \fBSIP\fR message The \fBALLOW-EVENTS\fR header is created using the
712 event specified in events.
715 The \fBsip_add_event()\fR function appends an \fBEVENT\fR header to the
716 \fBSIP\fR message. The \fBEVENT\fR header is created using the value specified
717 in \fIevent\fR. Any parameter in \fIparam\fR is added to the \fBEVENT\fR header
718 before appending the header to the \fBSIP\fR message.
721 The \fBsip_add_substate()\fR function appends a \fBSUBSCRIPTION-STATE\fR header
722 to the \fBSIP\fR message. The \fBSUBSCRIPTION-STATE\fR header is created using
723 the \fBstate\fR specified in \fIsub\fR. Any parameter in \fIparam\fR is added
724 to the \fBSUBSCRIPTION-STATE\fR header before appending the header to the
725 \fBSIP\fR message.
726 .SH RETURN VALUES
729 These functions return \fB0\fR on success and the appropriate error value on
730 failure.
731 .SH ERRORS
734 On failure, functions that return an error value can return one of the
735 following:
737 .ne 2
739 \fB\fBEINVAL\fR\fR
741 .RS 10n
742 Mandatory parameters are not provided, i.e. null.
744 For \fBsip_add_from()\fR, \fBsip_add_to()\fR, \fBsip_add_contact()\fR,
745 \fBsip_add_reply_to()\fR, \fBsip_add_passertedid()\fR,
746 \fBsip_add_ppreferredid()\fR if \fIdisplay_name\fR is non-null and
747 \fIadd_aquot\fR is \fBB_FALSE\fR.
749 For \fBsip_add_branchid_to_via()\fR the topmost \fBVIA\fR header already has a
750 branch \fIparam\fR or the \fBSIP\fR message does not have a \fBVIA\fR header.
754 .ne 2
756 \fB\fBEPERM\fR\fR
758 .RS 10n
759 The message cannot be modified.
763 .ne 2
765 \fB\fBENOMEM\fR\fR
767 .RS 10n
768 There is an error allocating memory for creating headers/parameters.
771 .SH ATTRIBUTES
774 See \fBattributes\fR(5) for descriptions of the following attributes:
779 box;
780 c | c
781 l | l .
782 ATTRIBUTE TYPE  ATTRIBUTE VALUE
784 Interface Stability     Committed
786 MT-Level        MT-Safe
789 .SH SEE ALSO
792 \fBlibsip\fR(3LIB)