Wireshark mailing list archives
Re: basic question
From: Ed Beroset <beroset () mindspring com>
Date: Mon, 29 Mar 2010 11:10:59 -0400 (EDT)
But what if I just wanted to make this dissector available as "decode as" and not by the port it broadcasts on..??
[...]
Just wanted to see what the best thing to do is here. I was just simply going to pick a port that it would never be on...such as 11111.
You don't want to do that unless port 11111 was actually assigned by IANA. Instead, what you can do is assign it to port 0 and then do this: void proto_reg_handoff_myproto(void) { static gboolean initialized = FALSE; static dissector_handle_t myproto_handle; static guint myproto_port; if (!initialized) { myproto_handle = new_create_dissector_handle(dissect_myproto, proto_myproto); dissector_add_handle("tcp.port", myproto_handle); initialized = TRUE; } else { if (myproto_port != 0) { dissector_delete("tcp.port", myproto_port, myproto_handle); } } if (global_myproto_port != 0) { dissector_add("tcp.port", global_myproto_port, myproto_handle); } myproto_port = global_myproto_port; } Then within your proto_register_myproto(void) function, do this: myproto_module = prefs_register_protocol(proto_myproto, NULL); prefs_register_uint_preference(myproto_module, "tcp.port", "My Protocol port", "My Protocol port", 10, &global_myproto_port); That way, the "myproto" dissector will be available as a "decode as" choice but not falsely claim a port it doesn't really own. Ed ___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev () wireshark org> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-request () wireshark org?subject=unsubscribe
Current thread:
- basic question Brian Oleksa (Mar 29)
- Re: basic question Guy Harris (Mar 29)
- <Possible follow-ups>
- Re: basic question Ed Beroset (Mar 29)