diff options
author | Anders Broman <anders.broman@ericsson.com> | 2004-10-17 21:57:04 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2004-10-17 21:57:04 +0000 |
commit | 8df4148db62fd76e84badc08d0d3c3b0d26e184c (patch) | |
tree | a36aaaffdd84be86543eb5a4dba0eac7d099d2fc /epan/dissectors/packet-sip.c | |
parent | 5dbaf6c29ea5924212db1d07cbe739ca199d0620 (diff) |
Update some SIP headers from http://www.iana.org/assignments/sip-parameters.
svn path=/trunk/; revision=12331
Diffstat (limited to 'epan/dissectors/packet-sip.c')
-rw-r--r-- | epan/dissectors/packet-sip.c | 717 |
1 files changed, 402 insertions, 315 deletions
diff --git a/epan/dissectors/packet-sip.c b/epan/dissectors/packet-sip.c index a3c315ca09..fd6089f7a1 100644 --- a/epan/dissectors/packet-sip.c +++ b/epan/dissectors/packet-sip.c @@ -111,22 +111,23 @@ static const char *sip_methods[] = { "PUBLISH" }; -/* from RFC 3261 */ -/* Updated with info from http://www.iana.org/assignments/sip-parameters */ -/* (last updated 2003-10-31) */ -/* Added two headsers ( Etag and If-Match )from http://www.ietf.org/internet-drafts/draft-ietf-sip-publish-01.txt */ +/* from RFC 3261 + * Updated with info from http://www.iana.org/assignments/sip-parameters + * (last updated 2004-10-17) + */ typedef struct { char *name; char *compact_name; } sip_header_t; static const sip_header_t sip_headers[] = { - { "Unknown-header", NULL }, /* Pad so that the real headers start at index 1 */ + { "Unknown-header", NULL }, /* 0 Pad so that the real headers start at index 1 */ { "Accept", NULL }, + { "Accept-Contact", "a" }, /* 2 RFC3841 */ { "Accept-Encoding", NULL }, { "Accept-Language", NULL }, { "Alert-Info", NULL }, { "Allow", NULL }, - { "Allow-Events", NULL }, + { "Allow-Events", "u" }, /* 7 RFC3265 */ { "Authentication-Info", NULL }, { "Authorization", NULL }, { "Call-ID", "i" }, @@ -143,202 +144,233 @@ static const sip_header_t sip_headers[] = { { "Event", "o" }, { "Expires", NULL }, { "From", "f" }, - { "In-Reply-To", NULL }, + { "In-Reply-To", NULL }, /* 24 RFC3261 */ + { "Join", NULL }, /* 25 RFC-ietf-sip-join-03.txt */ { "Max-Forwards", NULL }, { "MIME-Version", NULL }, { "Min-Expires", NULL }, + { "Min-SE", NULL }, /* 29 RFC-ietf-sip-session-timer-15.txt */ { "Organization", NULL }, + { "P-Access-Network-Info", NULL }, /* 31 RFC3455 */ + { "P-Asserted-Identity", NULL }, /* 32 RFC3325 */ + { "P-Associated-URI", NULL }, /* 33 RFC3455 */ + { "P-Called-Party-ID", NULL }, /* 34 RFC3455 */ + { "P-Charging-Function-Addresses",NULL },/* 35 RFC3455 */ + { "P-Charging-Vector", NULL }, /* 36 RFC3455 */ + { "P-DCS-Trace-Party-ID", NULL }, /* 37 RFC3603 */ + { "P-DCS-OSPS", NULL }, /* 38 RFC3603 */ + { "P-DCS-Billing-Info", NULL }, /* 39 RFC3603 */ + { "P-DCS-LAES", NULL }, /* 40 RFC3603 */ + { "P-DCS-Redirect", NULL }, /* 41 RFC3603 */ + { "P-Media-Authorization", NULL }, /* 42 RFC3313 */ + { "P-Preferred-Identity", NULL }, /* 43 RFC3325 */ + { "P-Visited-Network-ID", NULL }, /* 44 RFC3455 */ + { "Path", NULL }, /* 45 RFC3327 */ { "Priority", NULL }, + { "Privacy", NULL }, /* 47 RFC3323 */ { "Proxy-Authenticate", NULL }, { "Proxy-Authorization", NULL }, { "Proxy-Require", NULL }, { "RAck", NULL }, - { "RSeq", NULL }, + { "Reason", NULL }, /* 53 RFC3326 */ { "Record-Route", NULL }, - { "Reply-To", NULL }, - { "Require", NULL }, - { "Retry-After", NULL }, - { "Route", NULL }, - { "Server", NULL }, - { "Subject", "s" }, - { "Subscription-State", NULL }, - { "Supported", "k" }, - { "Timestamp", NULL }, - { "To", "t" }, - { "Unsupported", NULL }, - { "User-Agent", NULL }, - { "Via", "v" }, - { "Warning", NULL }, - { "WWW-Authenticate", NULL }, - { "P-Access-Network-Info", NULL }, /* RFC3455 */ - { "P-Asserted-Identity", NULL }, /* RFC3325 */ - { "P-Associated-URI", NULL }, /* RFC3455 */ - { "P-Called-Party-ID", NULL }, /* RFC3455 */ - { "P-Charging-Function-Addresses",NULL }, /* RFC3455 */ - { "P-Charging-Vector", NULL }, /* RFC3455 */ - { "P-DCS-Trace-Party-ID", NULL }, /* RFC3603 */ - { "P-DCS-OSPS", NULL }, /* RFC3603 */ - { "P-DCS-Billing-Info", NULL }, /* RFC3603 */ - { "P-DCS-LAES", NULL }, /* RFC3603 */ - { "P-DCS-Redirect", NULL }, /* RFC3603 */ - { "P-Media-Authorization", NULL }, /* RFC3313 */ - { "P-Preferred-Identity", NULL }, /* RFC3325 */ - { "P-Visited-Network-ID", NULL }, /* RFC3455 */ - { "Path", NULL }, /* RFC3327 */ - { "Privacy", NULL }, /* RFC3323 */ - { "Reason", NULL }, /* RFC3326 */ - { "Refer-To", "r" }, /* RFC3515 */ - { "Service-Route", NULL }, /* RFC3608 */ - { "SIP-ETag", NULL }, /* draft-ietf-sip-publish-03 */ - { "SIP-If-Match", NULL }, /* draft-ietf-sip-publish-03 */ + { "Referred-By", "b" }, /* 55 RFC3892 */ + { "Reject-Contact", "j" }, /* 56 RFC3841 */ + { "Replaces", NULL }, /* 57 RFC3891 */ + { "Reply-To", NULL }, /* 58 RFC3261 */ + { "Request-Disposition", "d" }, /* 59 RFC3841 */ + { "Require", NULL }, /* 60 RFC3261 */ + { "Retry-After", NULL }, /* 61 RFC3261 */ + { "Route", NULL }, /* 62 RFC3261 */ + { "RSeq", NULL }, /* 63 RFC3841 */ + { "Security-Client", NULL }, /* 64 RFC3329 */ + { "Security-Server", NULL }, /* 65 RFC3329 */ + { "Security-Verify", NULL }, /* 66 RFC3329 */ + { "Server", NULL }, /* 67 RFC3261 */ + { "Service-Route", NULL }, /* 68 RFC3608 */ + { "Session-Expires", "x" }, /* 69 RFC-ietf-sip-session-timer-15.txt */ + { "SIP-ETag", NULL }, /* 70 draft-ietf-sip-publish-03 */ + { "SIP-If-Match", NULL }, /* 71 draft-ietf-sip-publish-03 */ + { "Subject", "s" }, /* 72 RFC3261 */ + { "Subscription-State", NULL }, /* 73 RFC3265 */ + { "Supported", "k" }, /* 74 RFC3261 */ + { "Timestamp", NULL }, /* 75 RFC3261 */ + { "To", "t" }, /* 76 RFC3261 */ + { "Unsupported", NULL }, /* 77 RFC3261 */ + { "User-Agent", NULL }, /* 78 RFC3261 */ + { "Via", "v" }, /* 79 RFC3261 */ + { "Warning", NULL }, /* 80 RFC3261 */ + { "WWW-Authenticate", NULL }, /* 81 RFC3261 */ + { "Refer-To", "r" }, /* 82 RFC3515 */ }; -#define POS_ACCEPT 1 -#define POS_ACCEPT_ENCODING 2 -#define POS_ACCEPT_LANGUAGE 3 -#define POS_ALERT_INFO 4 -#define POS_ALLOW 5 -#define POS_ALLOW_EVENTS 6 -#define POS_AUTHENTICATION_INFO 7 -#define POS_AUTHORIZATION 8 -#define POS_CALL_ID 9 -#define POS_CALL_INFO 10 -#define POS_CONTACT 11 -#define POS_CONTENT_DISPOSITION 12 -#define POS_CONTENT_ENCODING 13 -#define POS_CONTENT_LANGUAGE 14 -#define POS_CONTENT_LENGTH 15 -#define POS_CONTENT_TYPE 16 -#define POS_CSEQ 17 -#define POS_DATE 18 -#define POS_ERROR_INFO 19 -#define POS_EVENT 20 -#define POS_EXPIRES 21 -#define POS_FROM 22 -#define POS_IN_REPLY_TO 23 -#define POS_MAX_FORWARDS 24 -#define POS_MIME_VERSION 25 -#define POS_MIN_EXPIRES 26 -#define POS_ORGANIZATION 27 -#define POS_PRIORITY 28 -#define POS_PROXY_AUTHENTICATE 29 -#define POS_PROXY_AUTHORIZATION 30 -#define POS_PROXY_REQUIRE 31 -#define POS_RACK 32 -#define POS_RSEQ 33 -#define POS_RECORD_ROUTE 34 -#define POS_REPLY_TO 35 -#define POS_REQUIRE 36 -#define POS_RETRY_AFTER 37 -#define POS_ROUTE 38 -#define POS_SERVER 39 -#define POS_SUBJECT 40 -#define POS_SUBSCRIPTION_STATE 41 -#define POS_SUPPORTED 42 -#define POS_TIMESTAMP 43 -#define POS_TO 44 -#define POS_UNSUPPORTED 45 -#define POS_USER_AGENT 46 -#define POS_VIA 47 -#define POS_WARNING 48 -#define POS_WWW_AUTHENTICATE 49 - -#define POS_P_ACCESS_NETWORK_INFO 50 -#define POS_P_ASSERTED_IDENTITY 51 -#define POS_P_ASSOCIATED_URI 52 -#define POS_P_CALLED_PARTY_ID 53 -#define POS_P_CHARGING_FUNCTION_ADDRESSES 54 -#define POS_P_CHARGING_VECTOR 55 -#define POS_P_DCS_TRACE_PARTY_ID 56 -#define POS_P_DCS_OSPS 57 -#define POS_P_DCS_BILLING_INFO 58 -#define POS_P_DCS_LAES 59 -#define POS_P_DCS_REDIRECT 60 -#define POS_P_MEDIA_AUTHORIZATION 61 -#define POS_P_PREFERRED_IDENTITY 62 -#define POS_P_VISITED_NETWORK_ID 63 -#define POS_PATH 64 -#define POS_PRIVACY 65 -#define POS_REASON 66 -#define POS_REFER_TO 67 -#define POS_SERVICE_ROUTE 68 +#define POS_ACCEPT 1 +#define POS_ACCEPT_CONTACT 2 +#define POS_ACCEPT_ENCODING 3 +#define POS_ACCEPT_LANGUAGE 4 +#define POS_ALERT_INFO 5 +#define POS_ALLOW 6 +#define POS_ALLOW_EVENTS 7 +#define POS_AUTHENTICATION_INFO 8 +#define POS_AUTHORIZATION 9 +#define POS_CALL_ID 10 +#define POS_CALL_INFO 11 +#define POS_CONTACT 12 +#define POS_CONTENT_DISPOSITION 13 +#define POS_CONTENT_ENCODING 14 +#define POS_CONTENT_LANGUAGE 15 +#define POS_CONTENT_LENGTH 16 +#define POS_CONTENT_TYPE 17 +#define POS_CSEQ 18 +#define POS_DATE 19 +#define POS_ERROR_INFO 20 +#define POS_EVENT 21 +#define POS_EXPIRES 22 +#define POS_FROM 23 +#define POS_IN_REPLY_TO 24 +#define POS_JOIN 25 +#define POS_MAX_FORWARDS 26 +#define POS_MIME_VERSION 27 +#define POS_MIN_EXPIRES 28 +#define POS_MIN_SE 29 +#define POS_ORGANIZATION 30 +#define POS_P_ACCESS_NETWORK_INFO 31 +#define POS_P_ASSERTED_IDENTITY 32 +#define POS_P_ASSOCIATED_URI 33 +#define POS_P_CALLED_PARTY_ID 34 +#define POS_P_CHARGING_FUNCTION_ADDRESSES 35 +#define POS_P_CHARGING_VECTOR 36 +#define POS_P_DCS_TRACE_PARTY_ID 37 +#define POS_P_DCS_OSPS 38 +#define POS_P_DCS_BILLING_INFO 39 +#define POS_P_DCS_LAES 40 +#define POS_P_DCS_REDIRECT 41 +#define POS_P_MEDIA_AUTHORIZATION 42 +#define POS_P_PREFERRED_IDENTITY 43 +#define POS_P_VISITED_NETWORK_ID 44 +#define POS_PATH 45 +#define POS_PRIORITY 46 +#define POS_PRIVACY 47 +#define POS_PROXY_AUTHENTICATE 48 +#define POS_PROXY_AUTHORIZATION 49 +#define POS_PROXY_REQUIRE 50 +#define POS_RACK 51 +#define POS_REASON 52 +#define POS_RECORD_ROUTE 53 +#define POS_REFERED_BY 54 +#define POS_REJECT_CONTACT 55 +#define POS_REPLACES 56 +#define POS_REPLY_TO 57 +#define POS_REQUEST_DISPOSITION 58 +#define POS_REQUIRE 59 +#define POS_RETRY_AFTER 60 +#define POS_ROUTE 61 +#define POS_RSEQ 62 +#define POS_SECURITY_CLIENT 63 +#define POS_SECURITY_SERVER 64 +#define POS_SECURITY_VERIFY 65 +#define POS_SERVER 66 +#define POS_SERVICE_ROUTE 67 +#define POS_SESSION_EXPIRES 68 #define POS_SIP_ETAG 69 #define POS_SIP_IF_MATCH 70 +#define POS_SUBJECT 71 +#define POS_SUBSCRIPTION_STATE 72 +#define POS_SUPPORTED 73 +#define POS_TIMESTAMP 74 +#define POS_TO 75 +#define POS_UNSUPPORTED 76 +#define POS_USER_AGENT 77 +#define POS_VIA 78 +#define POS_WARNING 79 +#define POS_WWW_AUTHENTICATE 80 +#define POS_REFER_TO 81 static gint hf_header_array[] = { - -1, /* "Unknown-header" - Pad so that the real headers start at index 1 */ - -1, /* "Accept" */ - -1, /* "Accept-Encoding" */ - -1, /* "Accept-Language" */ - -1, /* "Alert-Info" */ - -1, /* "Allow" */ - -1, /* "Allow-Events" - RFC 3265 */ - -1, /* "Authentication-Info" */ - -1, /* "Authorization" */ - -1, /* "Call-ID" */ - -1, /* "Call-Info" */ - -1, /* "Contact" */ - -1, /* "Content-Disposition" */ - -1, /* "Content-Encoding" */ - -1, /* "Content-Language" */ - -1, /* "Content-Length" */ - -1, /* "Content-Type" */ - -1, /* "CSeq" */ - -1, /* "Date" */ - -1, /* "Error-Info" */ - -1, /* "Expires" */ - -1, /* "Event" - RFC 3265 */ - -1, /* "From" */ - -1, /* "In-Reply-To" */ - -1, /* "Max-Forwards" */ - -1, /* "MIME-Version" */ - -1, /* "Min-Expires" */ - -1, /* "Organization" */ - -1, /* "Priority" */ - -1, /* "Proxy-Authenticate" */ - -1, /* "Proxy-Authorization" */ - -1, /* "Proxy-Require" */ - -1, /* "RAck" - RFC 3262 */ - -1, /* "RSeq" - RFC 3261 */ - -1, /* "Record-Route" */ - -1, /* "Reply-To" */ - -1, /* "Require" */ - -1, /* "Retry-After" */ - -1, /* "Route" */ - -1, /* "Server" */ - -1, /* "Subject" */ - -1, /* "Subscription-State" - RFC 3265 */ - -1, /* "Supported" */ - -1, /* "Timestamp" */ - -1, /* "To" */ - -1, /* "Unsupported" */ - -1, /* "User-Agent" */ - -1, /* "Via" */ - -1, /* "Warning" */ - -1, /* "WWW-Authenticate" */ - -1, /* "P-Access-Network-Info" - RFC3455 */ - -1, /* "P-Asserted-Identity" - RFC3325 */ - -1, /* "P-Associated-URI" - RFC3455 */ - -1, /* "P-Called-Party-ID" - RFC3455 */ - -1, /* "P-Charging-Function-Addresses" - RFC3455 */ - -1, /* "P-Charging-Vector" - RFC3455 */ - -1, /* "P-DCS-Trace-Party-ID" - RFC3603 */ - -1, /* "P-DCS-OSPS" - RFC3603 */ - -1, /* "P-DCS-Billing-Info" - RFC3603 */ - -1, /* "P-DCS-LAES" - RFC3603 */ - -1, /* "P-DCS-Redirect" - RFC3603 */ - -1, /* "P-Media-Authorization" - RFC3313 */ - -1, /* "P-Preferred-Identity" - RFC3325 */ - -1, /* "P-Visited-Network-ID" - RFC3455 */ - -1, /* "Path" - RFC3327 */ - -1, /* "Privacy" - RFC3323 */ - -1, /* "Reason" - RFC3326 */ - -1, /* "Refer-To" - RFC3515 */ - -1, /* "Service-Route" - RFC3608 */ - -1, /* "ETag" draft-ietf-sip-publish-01 */ - -1, /* "If-Match draft-ietf-sip-publish-01 */ + -1, /* 0"Unknown-header" - Pad so that the real headers start at index 1 */ + -1, /* 1"Accept" */ + -1, /* 2"Accept-Contact" RFC3841 */ + -1, /* 3"Accept-Encoding" */ + -1, /* 4"Accept-Language" */ + -1, /* 5"Alert-Info", */ + -1, /* 6"Allow", */ + -1, /* 7"Allow-Events", RFC3265 */ + -1, /* 8"Authentication-Info" */ + -1, /* 9"Authorization", */ + -1, /* 10"Call-ID", */ + -1, /* 11"Call-Info" */ + -1, /* 12"Contact", */ + -1, /* 13"Content-Disposition", */ + -1, /* 14"Content-Encoding", */ + -1, /* 15"Content-Language", */ + -1, /* 16"Content-Length", */ + -1, /* 17"Content-Type", */ + -1, /* 18"CSeq", */ + -1, /* 19"Date", */ + -1, /* 20"Error-Info", */ + -1, /* 21"Event", */ + -1, /* 22"Expires", */ + -1, /* 23"From", */ + -1, /* 24"In-Reply-To", RFC3261 */ + -1, /* 25"Join", RFC-ietf-sip-join-03.txt */ + -1, /* 26"Max-Forwards", */ + -1, /* 27"MIME-Version", */ + -1, /* 28"Min-Expires", */ + -1, /* 29"Min-SE", RFC-ietf-sip-session-timer-15.txt */ + -1, /* 30"Organization", */ + -1, /* 31"P-Access-Network-Info", RFC3455 */ + -1, /* 32"P-Asserted-Identity", RFC3325 */ + -1, /* 33"P-Associated-URI", RFC3455 */ + -1, /* 34"P-Called-Party-ID", RFC3455 */ + -1, /* 35"P-Charging-Function-Addresses", RFC3455 */ + -1, /* 36"P-Charging-Vector", RFC3455 */ + -1, /* 37"P-DCS-Trace-Party-ID", RFC3603 */ + -1, /* 38"P-DCS-OSPS", RFC3603 */ + -1, /* 39"P-DCS-Billing-Info", RFC3603 */ + -1, /* 40"P-DCS-LAES", RFC3603 */ + -1, /* 41"P-DCS-Redirect", RFC3603 */ + -1, /* 42"P-Media-Authorization", RFC3313 */ + -1, /* 43"P-Preferred-Identity", RFC3325 */ + -1, /* 44"P-Visited-Network-ID", RFC3455 */ + -1, /* 45"Path", RFC3327 */ + -1, /* 46"Priority" */ + -1, /* 47"Privacy", RFC3323 */ + -1, /* 48"Proxy-Authenticate", */ + -1, /* 49"Proxy-Authorization", */ + -1, /* 50"Proxy-Require", */ + -1, /* 51"RAck", */ + -1, /* 52"Reason", RFC3326 */ + -1, /* 53"Record-Route", */ + -1, /* 54"Referred-By", */ + -1, /* 55"Reject-Contact", RFC3841 */ + -1, /* 56"Replaces", RFC3891 */ + -1, /* 57"Reply-To", RFC3261 */ + -1, /* 58"Request-Disposition", RFC3841 */ + -1, /* 59"Require", RFC3261 */ + -1, /* 60"Retry-After", RFC3261 */ + -1, /* 61"Route", RFC3261 */ + -1, /* 62"RSeq", RFC3841 */ + -1, /* 63"Security-Client", RFC3329 */ + -1, /* 64"Security-Server", RFC3329 */ + -1, /* 65"Security-Verify", RFC3329 */ + -1, /* 66"Server", RFC3261 */ + -1, /* 67"Service-Route", RFC3608 */ + -1, /* 68"Session-Expires", RFC-ietf-sip-session-timer-15.txt */ + -1, /* 69"SIP-ETag", draft-ietf-sip-publish-04 */ + -1, /* 70"SIP-If-Match", draft-ietf-sip-publish-04 */ + -1, /* 71"Subject", RFC3261 */ + -1, /* 72"Subscription-State", RFC3265 */ + -1, /* 73"Supported", RFC3261 */ + -1, /* 74"Timestamp", RFC3261 */ + -1, /* 75"To", RFC3261 */ + -1, /* 76"Unsupported", RFC3261 */ + -1, /* 77"User-Agent", RFC3261 */ + -1, /* 78"Via", RFC3261 */ + -1, /* 79"Warning", RFC3261 */ + -1, /* 80"WWW-Authenticate", RFC3261 */ + -1, /* 81"Refer-To", RFC3515 */ }; @@ -1569,22 +1601,22 @@ void proto_register_sip(void) /* Setup list of header fields */ static hf_register_info hf[] = { - { &hf_msg_hdr, - { "Message Header", "sip.msg_hdr", + { &hf_msg_hdr, + { "Message Header", "sip.msg_hdr", FT_NONE, 0, NULL, 0, "Message Header in SIP message", HFILL } }, - { &hf_Method, + { &hf_Method, { "Method", "sip.Method", FT_STRING, BASE_NONE,NULL,0x0, "SIP Method", HFILL } }, - { &hf_Request_Line, - { "Request-Line", "sip.Request-Line", - FT_STRING, BASE_NONE,NULL,0x0, + { &hf_Request_Line, + { "Request-Line", "sip.Request-Line", + FT_STRING, BASE_NONE,NULL,0x0, "SIP Request-Line", HFILL } }, - { &hf_Status_Code, + { &hf_Status_Code, { "Status-Code", "sip.Status-Code", FT_UINT32, BASE_DEC,NULL,0x0, "SIP Status Code", HFILL } @@ -1594,22 +1626,22 @@ void proto_register_sip(void) FT_STRING, BASE_NONE,NULL,0x0, "SIP Status-Line", HFILL } }, - { &hf_sip_display, - { "SIP Display info", "sip.display.info", + { &hf_sip_display, + { "SIP Display info", "sip.display.info", FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: Display info", HFILL } }, - { &hf_sip_to_addr, - { "SIP to address", "sip.to.addr", + { &hf_sip_to_addr, + { "SIP to address", "sip.to.addr", FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: to addr", HFILL } }, - { &hf_sip_from_addr, + { &hf_sip_from_addr, { "SIP from address", "sip.from.addr", FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: from addr", HFILL } }, - { &hf_sip_tag, + { &hf_sip_tag, { "SIP tag", "sip.tag", FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: tag", HFILL } @@ -1619,10 +1651,15 @@ void proto_register_sip(void) FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: Accept Header", HFILL } }, + { &hf_header_array[POS_ACCEPT_CONTACT], + { "Accept-Contact", "sip.Accept-Contact", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3841: Accept-Contact Header", HFILL } + }, { &hf_header_array[POS_ACCEPT_ENCODING], { "Accept-Encoding", "sip.Accept-Encoding", FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Accept-Encoding Header", HFILL } + "RFC 3841: Accept-Encoding Header", HFILL } }, { &hf_header_array[POS_ACCEPT_LANGUAGE], { "Accept-Language", "sip.Accept-Language", @@ -1729,6 +1766,11 @@ void proto_register_sip(void) FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: In-Reply-To Header", HFILL } }, + { &hf_header_array[POS_JOIN], + { "Join", "sip.Join", + FT_STRING, BASE_NONE,NULL,0x0, + "Draft: Join Header", HFILL } + }, { &hf_header_array[POS_MAX_FORWARDS], { "Max-Forwards", "sip.Max-Forwards", FT_STRING, BASE_NONE,NULL,0x0, @@ -1744,121 +1786,16 @@ void proto_register_sip(void) FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: Min-Expires Header", HFILL } }, + { &hf_header_array[POS_MIN_SE], + { "Min-SE", "sip.Min-SE", + FT_STRING, BASE_NONE,NULL,0x0, + "Draft: Min-SE Header", HFILL } + }, { &hf_header_array[POS_ORGANIZATION], { "Organization", "sip.Organization", FT_STRING, BASE_NONE,NULL,0x0, "RFC 3261: Organization Header", HFILL } }, - { &hf_header_array[POS_PRIORITY], - { "Priority", "sip.Priority", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Priority Header", HFILL } - }, - { &hf_header_array[POS_PROXY_AUTHENTICATE], - { "Proxy-Authenticate", "sip.Proxy-Authenticate", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Proxy-Authenticate Header", HFILL } - }, - { &hf_header_array[POS_PROXY_AUTHORIZATION], - { "Proxy-Authorization", "sip.Proxy-Authorization", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Proxy-Authorization Header", HFILL } - }, - { &hf_header_array[POS_RACK], - { "RAck", "sip.RAck", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3262: RAck Header", HFILL } - }, - { &hf_header_array[POS_RSEQ], - { "RSeq", "sip.RSeq", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3262: RSeq Header", HFILL } - }, - { &hf_header_array[POS_PROXY_REQUIRE], - { "Proxy-Require", "sip.Proxy-Require", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Proxy-Require Header", HFILL } - }, - { &hf_header_array[POS_RECORD_ROUTE], - { "Record-Route", "sip.Record-Route", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Record-Route Header", HFILL } - }, - { &hf_header_array[POS_REPLY_TO], - { "Reply-To", "sip.Reply-To", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Reply-To Header", HFILL } - }, - { &hf_header_array[POS_REQUIRE], - { "Require", "sip.Require", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Require Header", HFILL } - }, - { &hf_header_array[POS_RETRY_AFTER], - { "Retry-After", "sip.Retry-After", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Retry-After Header", HFILL } - }, - { &hf_header_array[POS_ROUTE], - { "Route", "sip.Route", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Route Header", HFILL } - }, - { &hf_header_array[POS_SERVER], - { "Server", "sip.Server", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Server Header", HFILL } - }, - { &hf_header_array[POS_SUBJECT], - { "Subject", "sip.Subject", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Subject Header", HFILL } - }, - { &hf_header_array[POS_SUBSCRIPTION_STATE], - { "Subscription-State", "sip.Subscription-State", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3265: Subscription-State Header", HFILL } - }, - { &hf_header_array[POS_SUPPORTED], - { "Supported", "sip.Supported", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Supported Header", HFILL } - }, - { &hf_header_array[POS_TIMESTAMP], - { "Timestamp", "sip.Timestamp", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Timestamp Header", HFILL } - }, - { &hf_header_array[POS_TO], - { "To", "sip.To", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: To Header", HFILL } - }, - { &hf_header_array[POS_UNSUPPORTED], - { "Unsupported", "sip.Unsupported", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Unsupported Header", HFILL } - }, - { &hf_header_array[POS_USER_AGENT], - { "User-Agent", "sip.User-Agent", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: User-Agent Header", HFILL } - }, - { &hf_header_array[POS_VIA], - { "Via", "sip.Via", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Via Header", HFILL } - }, - { &hf_header_array[POS_WARNING], - { "Warning", "sip.Warning", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: Warning Header", HFILL } - }, - { &hf_header_array[POS_WWW_AUTHENTICATE], - { "WWW-Authenticate", "sip.WWW-Authenticate", - FT_STRING, BASE_NONE,NULL,0x0, - "RFC 3261: WWW-Authenticate Header", HFILL } - }, { &hf_header_array[POS_P_ACCESS_NETWORK_INFO], { "P-Access-Network-Info", "sip.P-Access-Network-Info", FT_STRING, BASE_NONE,NULL,0x0, @@ -1949,30 +1886,123 @@ void proto_register_sip(void) "Path Header", HFILL } }, + { &hf_header_array[POS_PRIORITY], + { "Priority", "sip.Priority", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Priority Header", HFILL } + }, { &hf_header_array[POS_PRIVACY], { "Privacy", "sip.Privacy", FT_STRING, BASE_NONE,NULL,0x0, "Privacy Header", HFILL } }, + { &hf_header_array[POS_PROXY_AUTHENTICATE], + { "Proxy-Authenticate", "sip.Proxy-Authenticate", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Proxy-Authenticate Header", HFILL } + }, + { &hf_header_array[POS_PROXY_AUTHORIZATION], + { "Proxy-Authorization", "sip.Proxy-Authorization", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Proxy-Authorization Header", HFILL } + }, + + { &hf_header_array[POS_PROXY_REQUIRE], + { "Proxy-Require", "sip.Proxy-Require", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Proxy-Require Header", HFILL } + }, + { &hf_header_array[POS_RACK], + { "RAck", "sip.RAck", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3262: RAck Header", HFILL } + }, { &hf_header_array[POS_REASON], { "Reason", "sip.Reason", FT_STRING, BASE_NONE,NULL,0x0, - "Reason Header", HFILL } + "RFC 3326 Reason Header", HFILL } }, - - { &hf_header_array[POS_REFER_TO], - { "Refer-To", "sip.Refer-To", + { &hf_header_array[POS_RECORD_ROUTE], + { "Record-Route", "sip.Record-Route", FT_STRING, BASE_NONE,NULL,0x0, - "Refer-To Header", HFILL } + "RFC 3261: Record-Route Header", HFILL } + }, + { &hf_header_array[POS_REFERED_BY], + { "Refered By", "sip.Refered-by", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3892: Refered-by Header", HFILL } + }, + { &hf_header_array[POS_REJECT_CONTACT], + { "Reject-Contact", "sip.Reject-Contact", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3841: Reject-Contact Header", HFILL } + }, + { &hf_header_array[POS_REPLACES], + { "Replaces", "sip.Replaces", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3891: Replaces Header", HFILL } + }, + { &hf_header_array[POS_REPLY_TO], + { "Reply-To", "sip.Reply-To", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Reply-To Header", HFILL } + }, + { &hf_header_array[POS_REQUEST_DISPOSITION], + { "Request-Disposition", "sip.Request-Disposition", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3841: Request-Disposition Header", HFILL } + }, + { &hf_header_array[POS_REQUIRE], + { "Require", "sip.Require", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Require Header", HFILL } + }, + { &hf_header_array[POS_RETRY_AFTER], + { "Retry-After", "sip.Retry-After", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Retry-After Header", HFILL } + }, + { &hf_header_array[POS_ROUTE], + { "Route", "sip.Route", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Route Header", HFILL } + }, + { &hf_header_array[POS_RSEQ], + { "RSeq", "sip.RSeq", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3262: RSeq Header", HFILL } + }, + { &hf_header_array[ POS_SECURITY_CLIENT], + { "Security-Client", "sip.Security-Client", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3329 Security-Client Header", HFILL } + }, + { &hf_header_array[ POS_SECURITY_SERVER], + { "Security-Server", "sip.Security-Server", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3329 Security-Server Header", HFILL } + }, + { &hf_header_array[ POS_SECURITY_VERIFY], + { "Security-Verify", "sip.Security-Verify", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3329 Security-Verify Header", HFILL } + }, + { &hf_header_array[POS_SERVER], + { "Server", "sip.Server", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Server Header", HFILL } }, - { &hf_header_array[POS_SERVICE_ROUTE], { "Service-Route", "sip.Service-Route", FT_STRING, BASE_NONE,NULL,0x0, "Service-Route Header", HFILL } }, - + { &hf_header_array[POS_SESSION_EXPIRES], + { "Session-Expires", "sip.Session-Expires", + FT_STRING, BASE_NONE,NULL,0x0, + "Session-Expires Header", HFILL } + }, { &hf_header_array[POS_SIP_ETAG], { "ETag", "sip.ETag", FT_STRING, BASE_NONE,NULL,0x0, @@ -1983,6 +2013,63 @@ void proto_register_sip(void) FT_STRING, BASE_NONE,NULL,0x0, "SIP-If-Match Header", HFILL } }, + { &hf_header_array[POS_SUBJECT], + { "Subject", "sip.Subject", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Subject Header", HFILL } + }, + { &hf_header_array[POS_SUBSCRIPTION_STATE], + { "Subscription-State", "sip.Subscription-State", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3265: Subscription-State Header", HFILL } + }, + { &hf_header_array[POS_SUPPORTED], + { "Supported", "sip.Supported", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Supported Header", HFILL } + }, + { &hf_header_array[POS_TIMESTAMP], + { "Timestamp", "sip.Timestamp", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Timestamp Header", HFILL } + }, + { &hf_header_array[POS_TO], + { "To", "sip.To", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: To Header", HFILL } + }, + + { &hf_header_array[POS_UNSUPPORTED], + { "Unsupported", "sip.Unsupported", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Unsupported Header", HFILL } + }, + { &hf_header_array[POS_USER_AGENT], + { "User-Agent", "sip.User-Agent", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: User-Agent Header", HFILL } + }, + { &hf_header_array[POS_VIA], + { "Via", "sip.Via", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Via Header", HFILL } + }, + { &hf_header_array[POS_WARNING], + { "Warning", "sip.Warning", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: Warning Header", HFILL } + }, + + { &hf_header_array[POS_WWW_AUTHENTICATE], + { "WWW-Authenticate", "sip.WWW-Authenticate", + FT_STRING, BASE_NONE,NULL,0x0, + "RFC 3261: WWW-Authenticate Header", HFILL } + }, + { &hf_header_array[POS_REFER_TO], + { "Refer-To", "sip.Refer-To", + FT_STRING, BASE_NONE,NULL,0x0, + "Refer-To Header", HFILL } + }, { &hf_sip_resend, { "Resent Packet", "sip.resend", FT_BOOLEAN, BASE_NONE, NULL, 0x0, |