aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-sip.c
diff options
context:
space:
mode:
authorkukosa <kukosa@f5534014-38df-0310-8fa8-9805f1628bb7>2006-08-28 07:05:02 +0000
committerkukosa <kukosa@f5534014-38df-0310-8fa8-9805f1628bb7>2006-08-28 07:05:02 +0000
commit45a47559eae4df5523e2558d0e37414a347f9f63 (patch)
tree7df5e9621fb289d5966cd5ea0550a06eb484362e /epan/dissectors/packet-sip.c
parent866eb5fba75f21bbed7c5c59b1106280defa8632 (diff)
- new function ssl_dissector_delete()
- register H.225.0 over TLS (configurable port 1300) - register SIP over TLS (fixed port 5061) - new function proto_tree_get_root() git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@19059 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-sip.c')
-rw-r--r--epan/dissectors/packet-sip.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/epan/dissectors/packet-sip.c b/epan/dissectors/packet-sip.c
index ae287db43f..4e97c4a1d2 100644
--- a/epan/dissectors/packet-sip.c
+++ b/epan/dissectors/packet-sip.c
@@ -64,13 +64,19 @@
#include <epan/expert.h>
#include "packet-tcp.h"
+#include "packet-ssl.h"
#define TCP_PORT_SIP 5060
#define UDP_PORT_SIP 5060
+#define TLS_PORT_SIP 5061
static gint sip_tap = -1;
static dissector_handle_t sigcomp_handle;
+/* Dissectors */
+static dissector_handle_t sip_handle = NULL;
+static dissector_handle_t sip_tcp_handle = NULL;
+
/* Initialize the protocol and registered fields */
static gint proto_sip = -1;
static gint proto_raw_sip = -1;
@@ -3019,6 +3025,9 @@ void proto_register_sip(void)
proto_raw_sip = proto_register_protocol("Session Initiation Protocol (SIP as raw text)",
"Raw_SIP", "raw_sip");
new_register_dissector("sip", dissect_sip, proto_sip);
+ sip_handle = find_dissector("sip");
+ register_dissector("sip.tcp", dissect_sip_tcp, proto_sip);
+ sip_tcp_handle = find_dissector("sip.tcp");
/* Required function calls to register the header fields and subtrees used */
proto_register_field_array(proto_sip, hf, array_length(hf));
@@ -3068,15 +3077,13 @@ void proto_register_sip(void)
void
proto_reg_handoff_sip(void)
{
- dissector_handle_t sip_handle, sip_tcp_handle;
- sip_handle = new_create_dissector_handle(dissect_sip, proto_sip);
dissector_add("udp.port", UDP_PORT_SIP, sip_handle);
dissector_add_string("media_type", "message/sip", sip_handle);
sigcomp_handle = find_dissector("sigcomp");
- sip_tcp_handle = create_dissector_handle(dissect_sip_tcp, proto_sip);
dissector_add("tcp.port", TCP_PORT_SIP, sip_tcp_handle);
+ ssl_dissector_add(TLS_PORT_SIP, "sip.tcp", TRUE);
heur_dissector_add("udp", dissect_sip_heur, proto_sip);
heur_dissector_add("tcp", dissect_sip_tcp_heur, proto_sip);