sip 1.13.17
Loading...
Searching...
No Matches
sip.h
Go to the documentation of this file.
1/*
2 * This file is part of the Sofia-SIP package
3 *
4 * Copyright (C) 2005 Nokia Corporation.
5 *
6 * Contact: Pekka Pessi <pekka.pessi@nokia-email.address.hidden>
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public License
10 * as published by the Free Software Foundation; either version 2.1 of
11 * the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21 * 02110-1301 USA
22 *
23 */
24
25#ifndef SIP_H
27#define SIP_H
28
38#ifndef MSG_TYPES_H
39#include <sofia-sip/msg_types.h>
40#endif
41#ifndef MSG_MIME_H
42#include <sofia-sip/msg_mime.h>
43#endif
44
45SOFIA_BEGIN_DECLS
46
66
67#define SIP_METHOD(s) sip_method_unknown, #s
68#define SIP_METHOD_ACK sip_method_ack, "ACK"
69#define SIP_METHOD_CANCEL sip_method_cancel, "CANCEL"
70#define SIP_METHOD_BYE sip_method_bye, "BYE"
71#define SIP_METHOD_INVITE sip_method_invite, "INVITE"
72#define SIP_METHOD_OPTIONS sip_method_options, "OPTIONS"
73#define SIP_METHOD_REGISTER sip_method_register, "REGISTER"
74#define SIP_METHOD_INFO sip_method_info, "INFO"
75#define SIP_METHOD_PRACK sip_method_prack, "PRACK"
76#define SIP_METHOD_UPDATE sip_method_update, "UPDATE"
77#define SIP_METHOD_MESSAGE sip_method_message, "MESSAGE"
78#define SIP_METHOD_SUBSCRIBE sip_method_subscribe, "SUBSCRIBE"
79#define SIP_METHOD_NOTIFY sip_method_notify, "NOTIFY"
80#define SIP_METHOD_REFER sip_method_refer, "REFER"
81#define SIP_METHOD_PUBLISH sip_method_publish, "PUBLISH"
82
84#ifndef _MSC_VER
85#define SIP_NONE ((void const *)-1L)
86#else
87#define SIP_NONE ((void const *)(INT_PTR)-1L)
88#endif
89
91#ifndef _MSC_VER
92#define SIP_PROTOCOL_TAG ((void *)0x53495020) /* 'SIP'20 */
93#else
94#define SIP_PROTOCOL_TAG ((void *)(UINT_PTR)0x53495020) /* 'SIP'20 */
95#endif
96
97enum {
99 SIP_DEFAULT_PORT = 5060,
100#define SIP_DEFAULT_PORT SIP_DEFAULT_PORT
101
103#define SIP_DEFAULT_SERV "5060"
104
106 SIPS_DEFAULT_PORT = 5061
107#define SIPS_DEFAULT_PORT SIPS_DEFAULT_PORT
109#define SIPS_DEFAULT_SERV "5061"
111
114
116#define SIP_TIME_MAX ((sip_time_t)MSG_TIME_MAX)
117
119typedef struct sip_s sip_t;
120
122typedef union sip_header_u sip_header_t;
123
126#define g_value g_string
127
130
132typedef msg_param_t sip_param_t;
133
135typedef struct sip_addr_s sip_addr_t;
136
138typedef msg_auth_t sip_auth_t;
139
146
148typedef msg_accept_any_t sip_accept_encoding_t;
149typedef msg_accept_any_t sip_accept_language_t;
156typedef struct sip_cseq_s sip_cseq_t;
165typedef struct sip_date_s sip_date_t;
168typedef struct sip_addr_s sip_from_t;
179typedef struct sip_rack_s sip_rack_t;
182
186
188
192
196typedef struct sip_rseq_s sip_rseq_t;
198typedef struct sip_session_expires_s
201typedef struct sip_subscription_state_s
205typedef struct sip_addr_s sip_to_t;
208typedef struct sip_via_s sip_via_t;
211
214
215/* RFC 3323 - @Privacy */
217
218/* SIP Identity Header, e.g. STIR-Shaken SIP Identity Header, RFC 8224 */
220
221/* RFC 3327 - @Path */
222typedef struct sip_route_s sip_path_t;
223
224/* RFC 3329 - Security Mechanism Agreement */
228
229/* RFC 3608 - Service Route */
231
232
241struct sip_s {
244 void *sip_user;
245 unsigned sip_size;
250 /* Pseudoheaders */
254 /* === Headers start here */
270 /* Caller Preferences */
300 /* RFC 3265 */
321 /* RFC 3515 */
326 /* draft-ietf-sip-session-timer */
345 /* Entity headers */
355 /* === Headers end here */
356
362};
363
364
377
389
394{
396 sip_error_t *a_next;
397 char const *a_display;
399 msg_param_t const *a_params;
400 char const *a_comment;
402 char const *a_tag;
403};
404
405#define a_user a_url->url_user
406#define a_host a_url->url_host
407
412{
415 char const *ac_type;
416 char const *ac_subtype;
417 msg_param_t const *ac_params;
418 char const *ac_q;
419};
420
434
446
456
468
480
485{
488 char const *id_value;
489 char const *id_info;
491 char const *id_info_alg;
492 char const *id_info_ppt;
493 msg_param_t const *id_info_params;
494};
495
500{
503 char const *m_display;
505 msg_param_t const *m_params;
506 char const *m_comment;
508 char const *m_q;
509 char const *m_expires;
510};
511
521
522#if DOCUMENTATION_ONLY
528{
531 char const *c_type;
532 char const *c_subtype;
533 msg_param_t const *c_params;
534};
535#endif
536
546
557
562{
565 char const * o_type;
566 msg_param_t const *o_params;
567 char const *o_id;
568};
569
581
591
601
614
619{
622 char const *r_display;
624 msg_param_t const *r_params;
625};
626
631{
634 char const *b_display;
636 msg_param_t const *b_params;
637 char const *b_cid;
638};
639
640
645{
648 char const *rp_call_id;
649 msg_param_t const *rp_params;
650 char const *rp_to_tag;
651 char const *rp_from_tag;
652 unsigned rp_early_only;
653};
654
655
667
677
682{
685 msg_param_t const *cp_params;
686 char const *cp_q;
687 unsigned cp_require :1;
688 unsigned cp_explicit :1;
689};
690
695{
698 char const *re_protocol;
699 msg_param_t const *re_params;
700 char const *re_cause;
701 char const *re_text;
702};
703
708{
711 char const *r_display;
713 msg_param_t const *r_params;
714};
715
725
730{
733 unsigned long x_delta;
734 msg_param_t const *x_params;
735 char const *x_refresher;
737};
738
743{
746 unsigned long min_delta;
747 msg_param_t const *min_params;
748};
749
754{
758 char const *ss_substate;
759 msg_param_t const *ss_params;
760 char const *ss_reason;
761 char const *ss_expires;
762 char const *ss_retry_after;
763};
764
775
780{
783 char const *v_protocol;
784 char const *v_host;
785 char const *v_port;
786 msg_param_t const *v_params;
787 char const *v_comment;
788 char const *v_ttl;
789 char const *v_maddr;
790 char const *v_received;
791 char const *v_branch;
792 char const *v_rport;
793 char const *v_comp;
794};
795
801{
805 char const *sa_mec;
806 msg_param_t const *sa_params;
807 char const *sa_q;
808 char const *sa_d_alg;
809 char const *sa_d_qop;
810 char const *sa_d_ver;
811};
812
822
823/* union representing any SIP header
824 * these are arrays of size 1 for easy casting
825 */
826union sip_header_u
827{
828 sip_common_t sh_common[1];
829 struct
830 {
831 sip_common_t shn_common;
832 sip_header_t *shn_next;
833 } sh_header_next[1];
834#define sh_next sh_header_next->shn_next
835#define sh_class sh_common->h_class
836#define sh_succ sh_common->h_succ
837#define sh_prev sh_common->h_prev
838#define sh_data sh_common->h_data
839#define sh_len sh_common->h_len
840
841 sip_addr_t sh_addr[1];
842 sip_auth_t sh_auth[1];
843 sip_generic_t sh_generic[1];
844
845 sip_request_t sh_request[1];
846 sip_status_t sh_status[1];
847
848 sip_error_t sh_error[1];
849
850 sip_via_t sh_via[1];
851 sip_route_t sh_route[1];
852 sip_record_route_t sh_record_route[1];
853 sip_max_forwards_t sh_max_forwards[1];
854
855 sip_from_t sh_from[1];
856 sip_to_t sh_to[1];
857 sip_contact_t sh_contact[1];
858 sip_call_id_t sh_call_id[1];
859 sip_cseq_t sh_cseq[1];
860 sip_rseq_t sh_rseq[1];
861 sip_rack_t sh_rack[1];
862
863 sip_subject_t sh_subject[1];
864 sip_priority_t sh_priority[1];
865
866 sip_date_t sh_date[1];
867 sip_retry_after_t sh_retry_after[1];
868 sip_timestamp_t sh_timestamp[1];
869 sip_expires_t sh_expires[1];
870 sip_min_expires_t sh_min_expires[1];
871
872 sip_call_info_t sh_call_info[1];
873 sip_organization_t sh_organization[1];
874 sip_server_t sh_server[1];
875 sip_user_agent_t sh_user_agent[1];
876 sip_in_reply_to_t sh_in_reply_to[1];
877
878 sip_accept_t sh_accept[1];
879 sip_accept_encoding_t sh_accept_encoding[1];
880 sip_accept_language_t sh_accept_language[1];
881
882 sip_allow_t sh_allow[1];
883 sip_require_t sh_require[1];
884 sip_proxy_require_t sh_proxy_require[1];
885 sip_supported_t sh_supported[1];
886 sip_unsupported_t sh_unsupported[1];
887
888 sip_event_t sh_event[1];
889 sip_allow_events_t sh_allow_events[1];
890 sip_subscription_state_t sh_subscription_state[1];
891
892 sip_proxy_authenticate_t sh_proxy_authenticate[1];
893 sip_proxy_authentication_info_t sh_proxy_authentication_info[1];
894 sip_proxy_authorization_t sh_proxy_authorization[1];
895
896 sip_authorization_t sh_authorization[1];
897 sip_www_authenticate_t sh_www_authenticate[1];
898 sip_authentication_info_t sh_authentication_info[1];
899
900 sip_error_info_t sh_error_info[1];
901 sip_warning_t sh_warning[1];
902
903 sip_refer_to_t sh_refer_to[1];
904 sip_referred_by_t sh_referred_by[1];
905 sip_replaces_t sh_replaces[1];
906
907 /* Caller-Preferences */
908 sip_caller_prefs_t sh_caller_prefs[1];
909 sip_request_disposition_t sh_request_disposition[1];
910 sip_accept_contact_t sh_accept_contact[1];
911 sip_reject_contact_t sh_reject_contact[1];
912
913 sip_session_expires_t sh_session_expires[1];
914 sip_min_se_t sh_min_se[1];
915
916 sip_path_t sh_path[1];
917 sip_service_route_t sh_service_route[1];
918
919 sip_reason_t sh_reason[1];
920
921 sip_security_client_t sh_security_client[1];
922 sip_security_server_t sh_security_server[1];
923 sip_security_verify_t sh_security_verify[1];
924
925 sip_privacy_t sh_privacy[1];
926
927 sip_etag_t sh_etag[1];
928 sip_if_match_t sh_if_match[1];
929
930 /* Entity headers */
931 sip_mime_version_t sh_mime_version[1];
932 sip_content_type_t sh_content_type[1];
933 sip_content_encoding_t sh_content_encoding[1];
934 sip_content_language_t sh_content_language[1];
935 sip_content_length_t sh_content_length[1];
936 sip_content_disposition_t sh_content_disposition[1];
937
938 sip_unknown_t sh_unknown[1];
939
940 sip_separator_t sh_separator[1];
941 sip_payload_t sh_payload[1];
942 sip_identity_t sh_identity[1];
943};
944
945SOFIA_END_DECLS
946
947#endif /* !defined(SIP_H) */
msg_accept_any_t sip_accept_encoding_t
@
Definition sip.h:148
msg_accept_any_t sip_accept_language_t
@
Definition sip.h:149
msg_list_t sip_allow_events_t
@
Definition sip.h:213
msg_content_disposition_t sip_content_disposition_t
@
Definition sip.h:159
msg_list_t sip_content_encoding_t
@
Definition sip.h:160
msg_list_t sip_content_language_t
@
Definition sip.h:161
msg_error_t sip_error_t
@
Definition sip.h:142
msg_list_t sip_in_reply_to_t
@
Definition sip.h:169
msg_payload_t sip_payload_t
@
Definition sip.h:145
msg_list_t sip_proxy_require_t
@
Definition sip.h:178
msg_list_t sip_require_t
@
Definition sip.h:193
msg_separator_t sip_separator_t
@
Definition sip.h:144
msg_list_t sip_supported_t
@
Definition sip.h:203
msg_unknown_t sip_unknown_t
@
Definition sip.h:143
msg_list_t sip_unsupported_t
@
Definition sip.h:206
msg_warning_t sip_warning_t
@
Definition sip.h:209
unsigned long msg_time_t
MSG_PUB_T msg_pub_t
msg_common_t sip_common_t
Common part of all the header structures.
Definition sip.h:129
msg_auth_t sip_auth_t
Authorization, Proxy-Authenticate, WWW-Authenticate
Definition sip.h:138
msg_time_t sip_time_t
Time in seconds since Jan 01 1900.
Definition sip.h:113
msg_param_t sip_param_t
SIP parameter string.
Definition sip.h:132
union sip_header_u sip_header_t
Any SIP header - union of all possible SIP headers.
Definition sip.h:122
sip_method_t
IDs for well-known SIP methods.
Definition sip.h:48
@ sip_method_refer
REFER.
Definition sip.h:63
@ sip_method_register
REGISTER.
Definition sip.h:56
@ sip_method_unknown
Unknown method, use method_name.
Definition sip.h:50
@ sip_method_prack
PRACK.
Definition sip.h:58
@ sip_method_update
UPDATE.
Definition sip.h:59
@ sip_method_message
MESSAGE.
Definition sip.h:60
@ sip_method_notify
NOTIFY.
Definition sip.h:62
@ sip_method_bye
BYE.
Definition sip.h:54
@ sip_method_cancel
CANCEL.
Definition sip.h:53
@ sip_method_subscribe
SUBSCRIBE.
Definition sip.h:61
@ sip_method_invite
INVITE.
Definition sip.h:51
@ sip_method_invalid
Invalid method name.
Definition sip.h:49
@ sip_method_publish
PUBLISH.
Definition sip.h:64
@ sip_method_ack
ACK.
Definition sip.h:52
@ sip_method_options
OPTIONS.
Definition sip.h:55
@ sip_method_info
INFO.
Definition sip.h:57
Structure for Accept header field.
Definition sip.h:412
char const * ac_type
Pointer to type/subtype.
Definition sip.h:415
char const * ac_q
Value of q parameter.
Definition sip.h:418
msg_param_t const * ac_params
List of parameters.
Definition sip.h:417
char const * ac_subtype
Points after first slash in type.
Definition sip.h:416
sip_common_t ac_common[1]
Common fragment info.
Definition sip.h:413
sip_accept_t * ac_next
Pointer to next Accept value.
Definition sip.h:414
Structure for From and To headers.
Definition sip.h:394
msg_param_t const * a_params
Parameter table
Definition sip.h:399
url_t a_url[1]
URL.
Definition sip.h:398
sip_common_t a_common[1]
Common fragment info.
Definition sip.h:395
char const * a_comment
Comment.
Definition sip.h:400
char const * a_display
Display name.
Definition sip.h:397
char const * a_tag
Tag parameter.
Definition sip.h:402
Structure for Allow header field.
Definition sip.h:427
msg_common_t k_common[1]
Common fragment info.
Definition sip.h:428
uint32_t k_bitmap
Bitmap of allowed methods.
Definition sip.h:431
msg_list_t * k_next
Link to next.
Definition sip.h:429
msg_param_t * k_items
List of allowed items.
Definition sip.h:430
Structure for Authentication-Info header.
Definition sip.h:441
sip_common_t ai_common[1]
Common fragment info.
Definition sip.h:442
sip_error_t * ai_next
Dummy link to next.
Definition sip.h:443
msg_param_t const * ai_params
List of authentication info.
Definition sip.h:444
Structure for Call-ID (and In-Reply-To) header fields.
Definition sip.h:450
char const * i_id
ID value.
Definition sip.h:453
sip_call_id_t * i_next
Link to next (In-Reply-To)
Definition sip.h:452
uint32_t i_hash
Hash value (always nonzero)
Definition sip.h:454
sip_common_t i_common[1]
Common fragment info.
Definition sip.h:451
Structure for Call-Info header.
Definition sip.h:461
msg_param_t const * ci_params
List of parameters.
Definition sip.h:465
url_t ci_url[1]
URI to call info
Definition sip.h:464
sip_call_info_t * ci_next
Link to next Call-Info.
Definition sip.h:463
sip_common_t ci_common[1]
Common fragment info.
Definition sip.h:462
char const * ci_purpose
Value of purpose parameter.
Definition sip.h:466
Structure for Accept-Contact and Reject-Contact header fields.
Definition sip.h:682
unsigned cp_explicit
Value of "explicit" parameter.
Definition sip.h:688
unsigned cp_require
Value of "require" parameter.
Definition sip.h:687
msg_param_t const * cp_params
List of parameters.
Definition sip.h:685
sip_common_t cp_common[1]
Common fragment info.
Definition sip.h:683
char const * cp_q
Priority
Definition sip.h:686
sip_caller_prefs_t * cp_next
Link to next (dummy)
Definition sip.h:684
Structure for Contact header field.
Definition sip.h:500
sip_contact_t * m_next
Link to next Contact header.
Definition sip.h:502
char const * m_expires
Expiration time.
Definition sip.h:509
char const * m_q
Priority
Definition sip.h:508
char const * m_display
Display name.
Definition sip.h:503
msg_param_t const * m_params
List of contact-params.
Definition sip.h:505
char const * m_comment
Comment.
Definition sip.h:506
url_t m_url[1]
SIP URL.
Definition sip.h:504
sip_common_t m_common[1]
Common fragment info.
Definition sip.h:501
Structure for Content-Length header.
Definition sip.h:516
sip_error_t * l_next
Link to next (dummy)
Definition sip.h:518
uint32_t l_length
Length in bytes.
Definition sip.h:519
sip_common_t l_common[1]
Common fragment info.
Definition sip.h:517
Structure for Content-Type header.
Definition sip.h:528
msg_param_t const * c_params
List of parameters.
Definition sip.h:533
sip_error_t * c_next
Dummy link to next.
Definition sip.h:530
sip_common_t c_common[1]
Common fragment info.
Definition sip.h:529
char const * c_type
Pointer to type/subtype.
Definition sip.h:531
char const * c_subtype
Points after first slash in type.
Definition sip.h:532
Structure for CSeq header.
Definition sip.h:473
sip_common_t cs_common[1]
Common fragment info.
Definition sip.h:474
sip_method_t cs_method
Method enum.
Definition sip.h:477
uint32_t cs_seq
Sequence number.
Definition sip.h:476
char const * cs_method_name
Method name.
Definition sip.h:478
sip_error_t * cs_next
Link to next (dummy)
Definition sip.h:475
Structure for Date header.
Definition sip.h:541
sip_common_t d_common[1]
Common fragment info.
Definition sip.h:542
sip_time_t d_time
Seconds since Jan 1, 1900.
Definition sip.h:544
sip_date_t * d_next
Link to next (dummy)
Definition sip.h:543
Structure for Error-Info header.
Definition sip.h:551
url_t ei_url[1]
URI to error description.
Definition sip.h:554
sip_common_t ei_common[1]
Common fragment info.
Definition sip.h:552
msg_param_t const * ei_params
List of parameters.
Definition sip.h:555
sip_call_info_t * ei_next
Link to next Error-Info.
Definition sip.h:553
Structure for Event header.
Definition sip.h:562
sip_error_t * o_next
Link to next (dummy)
Definition sip.h:564
char const * o_id
Event ID
Definition sip.h:567
sip_common_t o_common[1]
Common fragment info.
Definition sip.h:563
msg_param_t const * o_params
List of parameters.
Definition sip.h:566
char const * o_type
Event type
Definition sip.h:565
Structure for Expires header.
Definition sip.h:574
sip_time_t ex_date
Seconds since Jan 1, 1900.
Definition sip.h:577
sip_time_t ex_delta
Delta seconds.
Definition sip.h:579
sip_error_t * ex_next
Link to next (dummy)
Definition sip.h:576
sip_common_t ex_common[1]
Common fragment info.
Definition sip.h:575
Structure for @Identity SIP header.
Definition sip.h:485
char const * id_signed_identity_digest
Digest.
Definition sip.h:490
char const * id_info_ppt
Field containing PASSporT Type.
Definition sip.h:492
msg_param_t const * id_info_params
Field containing extensions.
Definition sip.h:493
sip_common_t id_common[1]
Common fragment info.
Definition sip.h:486
char const * id_info
Field containing URL of the cert.
Definition sip.h:489
char const * id_value
Identity text as shown in SIP Header.
Definition sip.h:488
sip_identity_t * id_next
Link to next Identity.
Definition sip.h:487
char const * id_info_alg
Field containing alg of the cert.
Definition sip.h:491
Structure for Max-Forwards header.
Definition sip.h:586
sip_common_t mf_common[1]
Common fragment info.
Definition sip.h:587
sip_error_t * mf_next
Link to next (dummy)
Definition sip.h:588
unsigned long mf_count
Forwarding count.
Definition sip.h:589
Structure for Min-Expires header.
Definition sip.h:596
sip_common_t me_common[1]
Common fragment info.
Definition sip.h:597
unsigned long me_delta
Seconds.
Definition sip.h:599
sip_error_t * me_next
Link to next (dummy)
Definition sip.h:598
Structure for Min-SE header.
Definition sip.h:743
msg_param_t const * min_params
List of extension parameters.
Definition sip.h:747
unsigned long min_delta
Delta-seconds.
Definition sip.h:746
sip_error_t * min_next
Dummy link to next.
Definition sip.h:745
sip_common_t min_common[1]
Common fragment info.
Definition sip.h:744
Structure for Privacy header.
Definition sip.h:817
sip_error_t * priv_next
Dummy link.
Definition sip.h:819
sip_common_t priv_common[1]
Common fragment info.
Definition sip.h:818
msg_param_t const * priv_values
Privacy values
Definition sip.h:820
Structure for RAck header.
Definition sip.h:606
uint32_t ra_response
Sequence number of response.
Definition sip.h:609
uint32_t ra_cseq
Sequence number of request
Definition sip.h:610
sip_common_t ra_common
Common fragment info.
Definition sip.h:607
char const * ra_method_name
Original request method name.
Definition sip.h:612
sip_method_t ra_method
Original request method.
Definition sip.h:611
sip_error_t * ra_next
Dummy link to next.
Definition sip.h:608
Structure for Reason header field.
Definition sip.h:695
char const * re_cause
Value of cause parameter.
Definition sip.h:700
sip_common_t re_common[1]
Common fragment info.
Definition sip.h:696
msg_param_t const * re_params
List of reason parameters.
Definition sip.h:699
sip_reason_t * re_next
Link to next.
Definition sip.h:697
char const * re_protocol
Protocol.
Definition sip.h:698
char const * re_text
Value of text parameter.
Definition sip.h:701
Structure for Refer-To header.
Definition sip.h:619
sip_error_t * r_next
Link to next (dummy)
Definition sip.h:621
url_t r_url[1]
URI to reference.
Definition sip.h:623
sip_common_t r_common[1]
Common fragment info.
Definition sip.h:620
msg_param_t const * r_params
List of parameters.
Definition sip.h:624
Structure for Referred-By header.
Definition sip.h:631
sip_error_t * b_next
Link to next (dummy)
Definition sip.h:633
sip_common_t b_common[1]
Common fragment info.
Definition sip.h:632
char const * b_cid
The cid parameter.
Definition sip.h:637
url_t b_url[1]
Referrer-URI.
Definition sip.h:635
msg_param_t const * b_params
List of parameters.
Definition sip.h:636
Structure for Replaces header.
Definition sip.h:645
sip_error_t * rp_next
Link to next (dummy)
Definition sip.h:647
unsigned rp_early_only
early-only parameter
Definition sip.h:652
sip_common_t rp_common[1]
Common fragment info.
Definition sip.h:646
char const * rp_call_id
Call-ID of dialog to replace
Definition sip.h:648
char const * rp_from_tag
Value of "from-tag" parameter.
Definition sip.h:651
char const * rp_to_tag
Value of "to-tag" parameter.
Definition sip.h:650
msg_param_t const * rp_params
List of parameters.
Definition sip.h:649
Structure for Request-Disposition header.
Definition sip.h:672
sip_error_t * rd_next
Link to next (dummy)
Definition sip.h:674
sip_common_t rd_common[1]
Common fragment info.
Definition sip.h:673
msg_param_t * rd_items
List of directives.
Definition sip.h:675
Structure for SIP request line.
Definition sip.h:369
sip_method_t rq_method
Method enum.
Definition sip.h:372
sip_common_t rq_common[1]
Common fragment info.
Definition sip.h:370
sip_error_t * rq_next
Link to next (dummy)
Definition sip.h:371
char const * rq_method_name
Method name.
Definition sip.h:373
char const * rq_version
Protocol version.
Definition sip.h:375
url_t rq_url[1]
RequestURI.
Definition sip.h:374
Structure for Retry-After header.
Definition sip.h:659
sip_error_t * af_next
Link to next (dummy)
Definition sip.h:661
char const * af_comment
Comment string.
Definition sip.h:663
sip_common_t af_common[1]
Common fragment info.
Definition sip.h:660
msg_param_t const * af_params
List of parameters.
Definition sip.h:664
sip_time_t af_delta
Seconds to before retry.
Definition sip.h:662
char const * af_duration
Value of "duration" parameter.
Definition sip.h:665
Structure for Route and Record-Route header fields.
Definition sip.h:708
char const * r_display
Display name.
Definition sip.h:711
sip_route_t * r_next
Link to next.
Definition sip.h:710
url_t r_url[1]
Route URL
Definition sip.h:712
sip_common_t r_common[1]
Common fragment info.
Definition sip.h:709
msg_param_t const * r_params
List of route parameters.
Definition sip.h:713
Structure for RSeq header.
Definition sip.h:720
unsigned long rs_response
Sequence number of response.
Definition sip.h:723
sip_common_t rs_common[1]
Common fragment info.
Definition sip.h:721
sip_error_t * rs_next
Dummy link to next.
Definition sip.h:722
SIP message object.
Definition sip.h:241
sip_security_server_t * sip_security_server
Security-Server.
Definition sip.h:337
sip_from_t * sip_from
From (f)
Definition sip.h:261
sip_call_info_t * sip_call_info
Call-Info.
Definition sip.h:285
sip_route_t * sip_route
Route.
Definition sip.h:256
sip_reject_contact_t * sip_reject_contact
Reject-Contact (j)
Definition sip.h:274
sip_call_id_t * sip_call_id
Call-ID (i)
Definition sip.h:263
sip_security_client_t * sip_security_client
Security-Client.
Definition sip.h:336
sip_if_match_t * sip_if_match
SIP-If-Match.
Definition sip.h:343
sip_separator_t * sip_separator
Separator between headers and payload.
Definition sip.h:358
sip_replaces_t * sip_replaces
Replaces.
Definition sip.h:324
sip_record_route_t * sip_record_route
Record-Route.
Definition sip.h:257
sip_cseq_t * sip_cseq
CSeq.
Definition sip.h:264
sip_retry_after_t * sip_retry_after
Retry-After.
Definition sip.h:278
sip_mime_version_t * sip_mime_version
MIME-Version.
Definition sip.h:346
sip_date_t * sip_date
Date.
Definition sip.h:277
sip_unsupported_t * sip_unsupported
Unsupported.
Definition sip.h:298
sip_service_route_t * sip_service_route
Service-Route.
Definition sip.h:332
sip_proxy_authentication_info_t * sip_proxy_authentication_info
Proxy-Authentication-Info.
Definition sip.h:308
unsigned sip_size
Size of structure.
Definition sip.h:245
sip_accept_contact_t * sip_accept_contact
Accept-Contact (a)
Definition sip.h:273
sip_expires_t * sip_expires
Expires.
Definition sip.h:276
sip_supported_t * sip_supported
Supported (k)
Definition sip.h:297
sip_organization_t * sip_organization
Organization.
Definition sip.h:286
sip_path_t * sip_path
Path.
Definition sip.h:331
sip_error_t * sip_error
Erroneous headers.
Definition sip.h:248
sip_identity_t * sip_identity
Identity.
Definition sip.h:265
sip_refer_to_t * sip_refer_to
Refer-To (r)
Definition sip.h:322
msg_pub_t * sip_next
Dummy link to msgfrag.
Definition sip.h:243
sip_allow_events_t * sip_allow_events
Allow-Events (u)
Definition sip.h:302
sip_content_type_t * sip_content_type
Content-Type (c)
Definition sip.h:347
sip_timestamp_t * sip_timestamp
Timestamp.
Definition sip.h:279
sip_via_t * sip_via
Via (v)
Definition sip.h:255
sip_content_length_t * sip_content_length
Content-Length (l)
Definition sip.h:353
sip_require_t * sip_require
Require.
Definition sip.h:296
sip_subscription_state_t * sip_subscription_state
Subscription-State.
Definition sip.h:303
sip_priority_t * sip_priority
Priority.
Definition sip.h:283
sip_privacy_t * sip_privacy
Privacy.
Definition sip.h:340
sip_max_forwards_t * sip_max_forwards
Max-Forwards.
Definition sip.h:258
msg_multipart_t * sip_multipart
Multipart MIME payload.
Definition sip.h:361
sip_payload_t * sip_payload
Message payload.
Definition sip.h:360
sip_content_language_t * sip_content_language
Content-Language.
Definition sip.h:350
sip_min_se_t * sip_min_se
Min-SE.
Definition sip.h:329
sip_proxy_authenticate_t * sip_proxy_authenticate
Proxy-Authenticate.
Definition sip.h:306
sip_event_t * sip_event
Event (o)
Definition sip.h:301
sip_accept_language_t * sip_accept_language
Accept-Language.
Definition sip.h:293
sip_allow_t * sip_allow
Allow.
Definition sip.h:295
sip_min_expires_t * sip_min_expires
Min-Expires.
Definition sip.h:280
sip_authorization_t * sip_authorization
Authorization.
Definition sip.h:312
sip_status_t * sip_status
Status line.
Definition sip.h:252
sip_in_reply_to_t * sip_in_reply_to
In-Reply-To.
Definition sip.h:289
sip_subject_t * sip_subject
Subject (s)
Definition sip.h:282
sip_content_disposition_t * sip_content_disposition
Content-Disposition.
Definition sip.h:351
void * sip_user
Application data.
Definition sip.h:244
sip_session_expires_t * sip_session_expires
Session-Expires (x)
Definition sip.h:327
sip_warning_t * sip_warning
Warning.
Definition sip.h:319
sip_etag_t * sip_etag
SIP-ETag.
Definition sip.h:342
sip_request_disposition_t * sip_request_disposition
Request-Disposition (d)
Definition sip.h:271
sip_accept_encoding_t * sip_accept_encoding
Accept-Encoding.
Definition sip.h:292
sip_rack_t * sip_rack
RAck.
Definition sip.h:268
sip_authentication_info_t * sip_authentication_info
Authentication-Info.
Definition sip.h:316
sip_contact_t * sip_contact
Contact (m)
Definition sip.h:266
sip_security_verify_t * sip_security_verify
Security-Verify.
Definition sip.h:338
int sip_flags
Parser flags.
Definition sip.h:246
sip_to_t * sip_to
To (t)
Definition sip.h:262
sip_referred_by_t * sip_referred_by
Referred-By (b)
Definition sip.h:323
sip_proxy_require_t * sip_proxy_require
Proxy-Require.
Definition sip.h:259
sip_www_authenticate_t * sip_www_authenticate
WWW-Authenticate.
Definition sip.h:314
sip_unknown_t * sip_unknown
Unknown headers.
Definition sip.h:357
msg_common_t sip_common[1]
For recursive inclusion.
Definition sip.h:242
sip_reason_t * sip_reason
Reason.
Definition sip.h:334
sip_request_t * sip_request
Request line
Definition sip.h:251
sip_proxy_authorization_t * sip_proxy_authorization
Proxy-Authorization.
Definition sip.h:310
sip_error_info_t * sip_error_info
Error-Info.
Definition sip.h:318
sip_content_encoding_t * sip_content_encoding
Content-Encoding (e)
Definition sip.h:348
sip_server_t * sip_server
Server.
Definition sip.h:287
sip_accept_t * sip_accept
Accept.
Definition sip.h:291
sip_rseq_t * sip_rseq
RSeq.
Definition sip.h:267
sip_user_agent_t * sip_user_agent
User-Agent.
Definition sip.h:288
Structure for Security-Client, Security-Server, and Security-Verify headers.
Definition sip.h:801
sip_common_t sa_common[1]
Common fragment info.
Definition sip.h:802
msg_param_t const * sa_params
List of mechanism parameters.
Definition sip.h:806
char const * sa_d_alg
Value of d-alg parameter.
Definition sip.h:808
char const * sa_d_ver
Value of d-ver parameter.
Definition sip.h:810
char const * sa_mec
Security mechanism.
Definition sip.h:805
struct sip_security_agree_s * sa_next
Link to next mechanism.
Definition sip.h:803
char const * sa_q
Value of q (preference) parameter.
Definition sip.h:807
char const * sa_d_qop
Value of d-qop parameter.
Definition sip.h:809
Structure for Session-Expires header.
Definition sip.h:730
sip_common_t x_common[1]
Common fragment info.
Definition sip.h:731
sip_error_t * x_next
Dummy link to next.
Definition sip.h:732
msg_param_t const * x_params
List of parameters.
Definition sip.h:734
unsigned long x_delta
Delta-seconds.
Definition sip.h:733
char const * x_refresher
Value of "refresher" parameter: UAS or UAC.
Definition sip.h:735
Structure for SIP status line.
Definition sip.h:382
char const * st_phrase
Status phrase.
Definition sip.h:387
char const * st_version
Protocol version.
Definition sip.h:385
int st_status
Status code.
Definition sip.h:386
sip_common_t st_common[1]
Common fragment info.
Definition sip.h:383
sip_error_t * st_next
Link to next (dummy)
Definition sip.h:384
Structure for Subscription-State header.
Definition sip.h:754
char const * ss_reason
Reason for termination
Definition sip.h:760
char const * ss_substate
Subscription state: "pending", "active" or "terminated".
Definition sip.h:758
msg_param_t const * ss_params
List of parameters.
Definition sip.h:759
sip_common_t ss_common[1]
Common fragment info.
Definition sip.h:755
char const * ss_retry_after
Value of retry-after parameter.
Definition sip.h:762
sip_error_t * ss_next
Dummy link to next.
Definition sip.h:756
char const * ss_expires
Subscription lifetime.
Definition sip.h:761
Structure for Timestamp header.
Definition sip.h:769
char const * ts_stamp
Original timestamp.
Definition sip.h:772
sip_common_t ts_common[1]
Common fragment info.
Definition sip.h:770
char const * ts_delay
Delay at UAS.
Definition sip.h:773
sip_error_t * ts_next
Dummy link to next.
Definition sip.h:771
Structure for Via header field.
Definition sip.h:780
sip_via_t * v_next
Link to next Via header.
Definition sip.h:782
char const * v_comp
Value of "comp" parameter.
Definition sip.h:793
char const * v_port
Port number.
Definition sip.h:785
msg_param_t const * v_params
List of via-params.
Definition sip.h:786
char const * v_protocol
Application and transport protocol.
Definition sip.h:783
char const * v_rport
Value of "rport" parameter.
Definition sip.h:792
char const * v_ttl
Value of "ttl" parameter.
Definition sip.h:788
sip_common_t v_common[1]
Common fragment info.
Definition sip.h:781
char const * v_comment
Comment.
Definition sip.h:787
char const * v_host
Hostname.
Definition sip.h:784
char const * v_maddr
Value of "maddr" parameter.
Definition sip.h:789
char const * v_branch
Value of "branch" parameter.
Definition sip.h:791
char const * v_received
Value of "received" parameter.
Definition sip.h:790
SU_U32_T uint32_t

Sofia-SIP 1.13.17 - Copyright (C) 2006 Nokia Corporation. All rights reserved. Licensed under the terms of the GNU Lesser General Public License.