Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: [Wireshark-dev] Dissector functions and variables that could be static

From: Martin Mathieson <martin.r.mathieson@xxxxxxxxxxxxxx>
Date: Sat, 23 Jan 2021 16:44:51 +0000
Hi,

I wrote a script to check whether variables and functions in dissector modules that were not static were:
- not called by any other dissector modules (including dissectors.c)
- mentioned in the header file corresponding to that dissector

Reasons to clean up these cases could include:
- it pollutes a large namespace (most, but not all, of the symbols include the protocol name so likely won't clash)
- it will make it easier for people to spot and delete functions that are not actually being called
- it sets a better example for people to copy when adding new code
- there may even be some cases where the compiler is able to optimise better, don't know if it might speed up linking a little?

What do others think - does it sound like it could be worth it?

Where there is no extern or declaration in the header file, I think we can safely try to use static.  If it is not used even by the dissector itself (which the script doesn't currently check, but could...) it can presumably be deleted (unless we know that someone is getting ready to use it soon).

Where the variable or function is mentioned in the dissector's header file, in a lot of cases it could be removed from the header file and made static.  I do have some cases where I call functions only from private dissectors to set decryption keys, i.e.

epan/dissectors/packet-pdcp-lte.c (0000000000003670 T set_pdcp_lte_rrc_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-lte.c (0000000000003730 T set_pdcp_lte_rrc_integrity_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-lte.c (00000000000037f0 T set_pdcp_lte_up_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (00000000000033b0 T set_pdcp_nr_rrc_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (0000000000003470 T set_pdcp_nr_rrc_integrity_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (0000000000003530 T set_pdcp_nr_up_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (00000000000035f0 T set_pdcp_nr_up_integrity_key) is not referred to so could be static? (in header)

but I imagine there are not many more like this.  One clue that people might be making references from a Windows plugin could be the presence of WS_DLL_PUBLIC (script doesn't currently try to check).

I currently don't check dissectors that are generated (otherwise there'd be around 1000 other 'issues').  The dcerpc ones seem to declare lots of functions in header files.

Here is the output of my script against master:

epan/dissectors/packet-ncp-sss.c (0000000000001130 T dissect_sss_reply) is not referred to so could be static? (in header)
epan/dissectors/packet-ncp-sss.c (0000000000000d20 T dissect_sss_request) is not referred to so could be static? (in header)
epan/dissectors/packet-ncp.c (0000000000000040 D ett_ncp) is not referred to so could be static?
epan/dissectors/packet-ncp.c (0000000000000034 D ett_nds_segment) is not referred to so could be static?
epan/dissectors/packet-ncp.c (0000000000000038 D ett_nds_segments) is not referred to so could be static?
epan/dissectors/packet-ncp.c (0000000000000000 D ncp_nds_verb_vals) is not referred to so could be static?
epan/dissectors/packet-ncp.c (00000000000000e4 D proto_ncp) is not referred to so could be static?
epan/dissectors/packet-netmon.c (0000000000003790 T netmon_sid_field) is not referred to so could be static? (in header)
epan/dissectors/packet-netrom.c (0000000000000080 D op_code_vals_abbrev) is not referred to so could be static?
epan/dissectors/packet-netrom.c (0000000000000000 D op_code_vals_text) is not referred to so could be static?
epan/dissectors/packet-nstrace.c (0000000000000000 T add35records) is not referred to so could be static?
epan/dissectors/packet-nwp.c (0000000000000000 D nwp_type_vals) is not referred to so could be static?
epan/dissectors/packet-ocfs2.c (0000000000000000 D ext_dlm_magic) is not referred to so could be static?
epan/dissectors/packet-oer.c (00000000000001c0 T dissect_oer_boolean) is not referred to so could be static? (in header)
epan/dissectors/packet-oer.c (00000000000010b0 T dissect_oer_IA5String) is not referred to so could be static? (in header)
epan/dissectors/packet-opa-mad.c (0000000000000000 D pref_attempt_rmpp_defragment) is not referred to so could be static?
epan/dissectors/packet-oran.c (00000000000018c0 D compression_options) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000200 D addrtlv_type_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000180 D linkstatus_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (00000000000001c0 D localif_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000100 D mpr_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000380 D msgheader_type_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (00000000000002c0 D msgtlv_type_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (00000000000000c0 D nbraddrtype_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000140 D otherneigh_vals) is not referred to so could be static?
epan/dissectors/packet-packetbb.c (0000000000000340 D pkttlv_type_vals) is not referred to so could be static?
epan/dissectors/packet-pathport.c (0000000000000000 D pp_pid_vals_ext) is not referred to so could be static?
epan/dissectors/packet-pdcp-lte.c (0000000000003670 T set_pdcp_lte_rrc_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-lte.c (0000000000003730 T set_pdcp_lte_rrc_integrity_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-lte.c (00000000000037f0 T set_pdcp_lte_up_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (00000000000033b0 T set_pdcp_nr_rrc_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (0000000000003470 T set_pdcp_nr_rrc_integrity_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (0000000000003530 T set_pdcp_nr_up_ciphering_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdcp-nr.c (00000000000035f0 T set_pdcp_nr_up_integrity_key) is not referred to so could be static? (in header)
epan/dissectors/packet-pdu-transport.c (0000000000000790 T register_pdu_transport_port_tcp) is not referred to so could be static?
epan/dissectors/packet-pdu-transport.c (0000000000000770 T register_pdu_transport_port_udp) is not referred to so could be static?
epan/dissectors/packet-per.c (00000000000056b0 T dissect_per_object_descriptor) is not referred to so could be static? (in header)
epan/dissectors/packet-per.c (0000000000003a30 T dissect_per_real) is not referred to so could be static? (in header)
epan/dissectors/packet-per.c (0000000000001590 T dissect_per_relative_oid) is not referred to so could be static? (in header)
epan/dissectors/packet-per.c (00000000000016b0 T dissect_per_relative_oid_str) is not referred to so could be static? (in header)
epan/dissectors/packet-per.c (0000000000005b30 T register_per_oid_dissector) is not referred to so could be static? (in header)
epan/dissectors/packet-ppp.c (0000000000003b00 D charset_vals_ext) is not referred to so could be static?
epan/dissectors/packet-protobuf.c (0000000000000080 D protobuf_wire_type) is not referred to so could be static? (in header)
epan/dissectors/packet-ptp.c (0000000000007e60 D ptp_v2_networkProtocol_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-ptpip.c (0000000000000630 T dissect_ptpIP_data) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000680 T dissect_ptpIP_end_data) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000520 T dissect_ptpIP_event) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (00000000000007c0 T dissect_ptpIP_guid) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (00000000000008b0 T dissect_ptpIP_init_command_ack) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000840 T dissect_ptpIP_init_command_request) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000080 T dissect_ptpIP_init_event_ack) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000000 T dissect_ptpIP_init_event_request) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000160 T dissect_ptpIP_operation_request) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (00000000000003f0 T dissect_ptpIP_operation_response) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000750 T dissect_ptpIP_protocol_version) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (0000000000000590 T dissect_ptpIP_start_data) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (00000000000006d0 T dissect_ptpIP_unicode_name) is not referred to so could be static?
epan/dissectors/packet-ptpip.c (00000000000000a0 T dissect_ptp_opCode_openSession) is not referred to so could be static? (in header)
epan/dissectors/packet-ptpip.c (00000000000000f0 T dissect_ptp_transactionID) is not referred to so could be static? (in header)
epan/dissectors/packet-q931.c (00000000000030c0 D q931_cause_code_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-q931.c (0000000000002340 D q931_message_type_vals) is not referred to so could be static? (in header)
epan/dissectors/packet-q933.c (00000000000009c0 D q933_cause_code_vals) is not referred to so could be static?
epan/dissectors/packet-q933.c (0000000000000fa0 D q933_cause_location_vals) is not referred to so could be static?
epan/dissectors/packet-quic.c (0000000000006240 T get_quic_connections_count) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000007e0 T free_radius_attr_info) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001f50 T radius_abinary) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000015f0 T radius_combo_ip) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001690 T radius_date) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000026b0 T radius_ether) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000000380 T radius_ifid) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000000040 T radius_integer) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001540 T radius_ipaddr) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001570 T radius_ipv6addr) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000003f0 T radius_ipv6prefix) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000013b0 T radius_ipxnet) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001450 T radius_octets) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (00000000000001e0 T radius_signed) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000001bf0 T radius_string) is not referred to so could be static? (in header)
epan/dissectors/packet-radius.c (0000000000002730 T radius_tlv) is not referred to so could be static? (in header)
epan/dissectors/packet-raknet.c (0000000000000160 D RAKNET_OFFLINE_MESSAGE_DATA_ID) is not referred to so could be static?
epan/dissectors/packet-rdm.c (0000000000007680 D etc_param_id_vals_ext) is not referred to so could be static?
epan/dissectors/packet-rdm.c (0000000000001720 D rdm_param_id_vals) is not referred to so could be static? (in header)
epan/dissectors/packet-reload.c (0000000000004010 T dissect_reload_messagecontents) is not referred to so could be static? (in header)
epan/dissectors/packet-rlc-nr.c (0000000000001860 D pdu_reassembly_table_functions) is not referred to so could be static?
epan/dissectors/packet-rmp.c (0000000000000000 D rmp_error_vals) is not referred to so could be static?
epan/dissectors/packet-rmp.c (00000000000000c0 D rmp_type_vals) is not referred to so could be static?
epan/dissectors/packet-rohc.c (0000000000000140 D rohc_cmp_lst_mask_size_vals) is not referred to so could be static?
epan/dissectors/packet-rpc.c (0000000000004ae0 T dissect_rpc_opaque_auth) is not referred to so could be static? (in header)
epan/dissectors/packet-rpc.c (0000000000001010 T rpc_prog_hf) is not referred to so could be static? (in header)
epan/dissectors/packet-rtp-events.c (00000000000001a0 D rtp_event_type_values_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-rtp.c (00000000000006d0 T rtp_dyn_payload_remove) is not referred to so could be static? (in header)
epan/dissectors/packet-rtp.c (0000000000000660 T rtp_dyn_payload_replace) is not referred to so could be static? (in header)
epan/dissectors/packet-rtps.c (0000000000000e20 D class_id_enum_names) is not referred to so could be static?
epan/dissectors/packet-rtsp.c (0000000000000060 D rtsp_status_code_vals) is not referred to so could be static? (in header)
epan/dissectors/packet-s101.c (0000000000000210 T decode_s101_escaped_buffer) is not referred to so could be static?
epan/dissectors/packet-s101.c (0000000000000190 T display_expert_info) is not referred to so could be static?
epan/dissectors/packet-s101.c (0000000000000130 T get_fragment_pdu_id) is not referred to so could be static?
epan/dissectors/packet-s101.c (0000000000000160 T new_fragment_info) is not referred to so could be static?
epan/dissectors/packet-sccp.c (0000000000001040 D sccp_message_type_acro_values) is not referred to so could be static? (in header)
epan/dissectors/packet-scsi.c (0000000000000440 D mpi_action_vals) is not referred to so could be static?
epan/dissectors/packet-scsi.c (0000000000000400 D report_opcodes_options_vals) is not referred to so could be static?
epan/dissectors/packet-scsi.c (00000000000008e0 D scsi_senddiag_pf_val) is not referred to so could be static?
epan/dissectors/packet-scsi.c (0000000000000900 D scsi_senddiag_st_code_val) is not referred to so could be static?
epan/dissectors/packet-scsi.c (0000000000000010 T scsistat_param) is not referred to so could be static? (in header)
epan/dissectors/packet-scsi.c (00000000000009a0 D scsi_wb_mode_val) is not referred to so could be static?
epan/dissectors/packet-sctp.c (0000000000000a80 D chunk_type_values) is not referred to so could be static? (in header)
epan/dissectors/packet-sdh.c (0000000000000000 D sdh_s1_vals) is not referred to so could be static?
epan/dissectors/packet-sip.c (0000000000000000 D sip_response_code_vals) is not referred to so could be static? (in header)
Warning - /home/martin/wireshark_gl-build/epan/dissectors/CMakeFiles/dissectors.dir/packet-skinny.c.in.o does not exist
epan/dissectors/packet-smb.c (000000000000a250 T dissect_file_ext_attr) is not referred to so could be static?
epan/dissectors/packet-smb.c (0000000000020820 T dissect_qfsi_FS_OBJECTID_INFO) is not referred to so could be static? (in header)
epan/dissectors/packet-smb.c (000000000000d260 D nt_cmd_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-smb.c (000000000000d1a0 D smb_cmd_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-smb.c (0000000000000640 D smb_dir_access_mask_info) is not referred to so could be static?
epan/dissectors/packet-smb.c (0000000000000660 D smb_file_access_mask_info) is not referred to so could be static?
epan/dissectors/packet-smb.c (000000000000d220 D trans2_cmd_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-smb2.c (00000000000008e0 D create_context_dissectors_array) is not referred to so could be static?
epan/dissectors/packet-smb2.c (000000000000a3c0 D smb2_cmd_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-smb2.c (0000000000000b00 D smb2_find_dissectors) is not referred to so could be static?
epan/dissectors/packet-smpp.c (0000000000001770 T smpp_handle_dcs) is not referred to so could be static? (in header)
epan/dissectors/packet-sscop.c (0000000000000230 T dissect_sscop_and_payload) is not referred to so could be static? (in header)
epan/dissectors/packet-sscop.c (00000000000006c0 T sscop_allowed_subdissector) is not referred to so could be static? (in header)
epan/dissectors/packet-sua.c (0000000000000e00 D sua_co_class_type_acro_values) is not referred to so could be static?
epan/dissectors/packet-t30.c (0000000000002180 D t30_facsimile_control_field_vals_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-t30.c (0000000000002160 D t30_facsimile_control_field_vals_short_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-tcp.c (0000000000000140 T conversation_completeness_fill) is not referred to so could be static?
epan/dissectors/packet-tcp.c (0000000000005990 T get_mptcp_stream_count) is not referred to so could be static? (in header)
epan/dissectors/packet-tcp.c (0000000000005980 T get_tcp_stream_count) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000d50 T dissect_thrift_t_byte) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000dc0 T dissect_thrift_t_i32) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000e30 T dissect_thrift_t_i64) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000cd0 T dissect_thrift_t_stop) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000f90 T dissect_thrift_t_struct) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000ea0 T dissect_thrift_t_u64) is not referred to so could be static? (in header)
epan/dissectors/packet-thrift.c (0000000000000f10 T dissect_thrift_t_utf7) is not referred to so could be static? (in header)
epan/dissectors/packet-tipc.c (0000000000000420 D tipc_sm_msg_type_values) is not referred to so could be static?
epan/dissectors/packet-tipc.c (0000000000000a00 D tipc_user_values) is not referred to so could be static?
epan/dissectors/packet-tipc.c (0000000000000840 D tipcv2_user_short_str_vals) is not referred to so could be static?
epan/dissectors/packet-tipc.c (0000000000000920 D tipcv2_user_values) is not referred to so could be static?
epan/dissectors/packet-tls-utils.c (0000000000000100 D quic_transport_parameter_id) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (00000000000012c0 T ssl_add_session_by_cid) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000007f00 T ssl_association_info) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000007e60 T ssldecrypt_uat_fld_fileopen_chk_cb) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000007dd0 T ssldecrypt_uat_fld_ip_chk_cb) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000007ee0 T ssldecrypt_uat_fld_password_chk_cb) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000007de0 T ssldecrypt_uat_fld_port_chk_cb) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000008cd0 T ssl_end_vector) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (00000000000016c0 T ssl_find_appdata_dissector) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000000820 T ssl_get_keyex_alg) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000003050 T ssl_set_debug) is not referred to so could be static? (in header)
epan/dissectors/packet-tls-utils.c (0000000000001e60 T tls13_cipher_create) is not referred to so could be static? (in header)
epan/dissectors/packet-tls.c (0000000000005040 T ssl_set_master_secret) is not referred to so could be static? (in header)
epan/dissectors/packet-tls.c (0000000000005860 T tls13_exporter) is not referred to so could be static? (in header)
epan/dissectors/packet-tpm20.c (00000000000001e0 D tpm_handles_map) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (00000000000011b0 D tfs_audio_config_handsfree_handsfree) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (00000000000011c0 D tfs_audio_config_handsfree_return) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (0000000000000120 D tfs_hookswitch_status) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (0000000000000110 D tfs_released_pressed) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (0000000000002780 D tfs_segment_msg_segment) is not referred to so could be static?
epan/dissectors/packet-ua3g.c (0000000000000130 D tfs_special_key_parameters) is not referred to so could be static?
epan/dissectors/packet-udp.c (0000000000000880 T get_udp_conversation_data) is not referred to so could be static? (in header)
epan/dissectors/packet-udp.c (0000000000000b60 T get_udp_stream_count) is not referred to so could be static? (in header)
epan/dissectors/packet-udpcp.c (0000000000000000 D udpcp_reassembly_table_functions) is not referred to so could be static?
epan/dissectors/packet-umts_rlc.c (0000000000005730 T rlc_reset_channel) is not referred to so could be static? (in header)
epan/dissectors/packet-usb-hid.c (00000000000024a0 D keycode_vals_ext) is not referred to so could be static?
epan/dissectors/packet-usb.c (00000000000040b0 T usb_set_addr) is not referred to so could be static? (in header)
epan/dissectors/packet-usb.c (0000000000004760 D win32_urb_function_vals_ext) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000001fa0 D EVsipCommand_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002520 D EVsipCommand_vals_ext) is not referred to so could be static?
epan/dissectors/packet-vsip.c (00000000000002a0 D EVsipConfigItem_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002500 D EVsipConfigItem_vals_ext) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002140 D EVsipConnectionType_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (00000000000022e0 D EVsipContentType_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002360 D EVsipEntityType_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000000060 D EVsipErrorCode_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (00000000000024e0 D EVsipErrorCode_vals_ext) is not referred to so could be static?
epan/dissectors/packet-vsip.c (00000000000001e0 D EVsipEventType_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002540 D EVsipMessageType_vals_ext) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002240 D EVsipValueType_vals) is not referred to so could be static?
epan/dissectors/packet-vsip.c (0000000000002460 D EVsipVendorID_vals) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000009d0 T dissect_wassp_sub_tlv) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000012a0 T dissect_wassp_tlv) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000002960 D tlv11U_ANQP_blockTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000001de0 D tlvAppPolicyEntryTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000001f20 D tlvAppPolicyFixedTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000009220 D tlvBeastConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000052a0 D tlvBssid2ipConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000030e0 D tlvCosConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000027e0 D tlvExtapp_conf_blockTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000005660 D tlvFilterConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000054e0 D tlvFilterRuleExtConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (000000000000bee0 D tlvGlobalConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000002060 D tlvHS2_blockTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000001fa0 D tlvLocationBaseLookUpTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (000000000000e9e0 D tlvMainTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000003220 D tlvPolicyConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000007d20 D tlvRadioConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000005b20 D tlvRadiusConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000058a0 D tlvRadiusServerConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (00000000000035e0 D tlvSiteConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000005360 D tlvSiteFilterRuleExtConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (000000000000be20 D tlvSTopoMcastFilterBlock) is not referred to so could be static?
epan/dissectors/packet-wassp.c (000000000000bda0 D tlvSTopoMcastFilterRuleBlock) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000005ee0 D tlvVnsConfigTable) is not referred to so could be static?
epan/dissectors/packet-wassp.c (0000000000005d60 D tlvVnsStatusTable) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000260 D security_option_vals) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000220 D service_type_vals) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000530 D tfs_historical_current) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000540 D tfs_redirect_protocol0) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000550 D tfs_src_dest_port) is not referred to so could be static?
epan/dissectors/packet-wccp.c (0000000000000520 D tfs_version_min_max) is not referred to so could be static?
epan/dissectors/packet-windows-common.c (0000000000000050 T dissect_nt_64bit_time_ex) is not referred to so could be static? (in header)
epan/dissectors/packet-windows-common.c (0000000000001220 T dissect_nt_ace_system_resource_attribute) is not referred to so could be static?
epan/dissectors/packet-windows-common.c (0000000000000ff0 T dissect_nt_ace_system_resource_attribute_value) is not referred to so could be static?
epan/dissectors/packet-windows-common.c (0000000000001920 T dissect_nt_conditional_ace) is not referred to so could be static?
epan/dissectors/packet-windows-common.c (00000000000014f0 T dissect_nt_conditional_ace_token) is not referred to so could be static?
epan/dissectors/packet-wsp.c (0000000000003ac0 D parameter_type_vals_ext) is not referred to so could be static?
epan/dissectors/packet-wsp.c (0000000000003ca0 D wsp_vals_pdu_type_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-wsp.c (0000000000003c80 D wsp_vals_status_ext) is not referred to so could be static? (in header)
epan/dissectors/packet-x11.c (00000000000a2c20 D damage_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000002780 D dri2_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2ba0 D glx_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000002040 D glx_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2b60 D randr_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000001ca0 D randr_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2b50 D record_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2b20 D render_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2b00 D shm_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2ae0 D sync_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000001640 D sync_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2aa0 D xf86vidmode_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2a90 D xfixes_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000001120 D xfixes_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2a60 D xinput_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000000c20 D xinput_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2a40 D xkb_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000008e0 D xkb_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2a20 D xprint_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (0000000000000720 D xprint_events) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000a2a00 D xv_errors) is not referred to so could be static?
epan/dissectors/packet-x11.c (00000000000003c0 D xv_events) is not referred to so could be static?
epan/dissectors/packet-x25.c (0000000000002080 D x25_clear_diag_vals_ext) is not referred to so could be static?
epan/dissectors/packet-xml.c (0000000000001880 T xml_get_attrib) is not referred to so could be static? (in header)
epan/dissectors/packet-xml.c (00000000000018d0 T xml_get_cdata) is not referred to so could be static? (in header)
epan/dissectors/packet-xml.c (0000000000001830 T xml_get_tag) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-gtalk.c (0000000000001550 T xmpp_gtalk_nosave_query) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-other.c (0000000000001ee0 T xmpp_feature_neg) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-other.c (0000000000001a10 T xmpp_x_data) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (0000000000001330 T xmpp_attr_to_string) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (0000000000001d50 T xmpp_copy_hash_table) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (0000000000000040 T xmpp_element_t_cmp) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (0000000000000510 T xmpp_ep_string_upcase) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (00000000000008c0 T xmpp_find_element_by_name) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp-utils.c (00000000000001b0 T xmpp_unknown_attrs) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000040 D ei_xmpp_challenge) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000038 D ei_xmpp_success) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (00000000000001fc D ett_xmpp) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000114 D ett_xmpp_challenge) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (00000000000001d8 D ett_xmpp_iq_error) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (00000000000001e8 D ett_xmpp_query_feature) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000110 D ett_xmpp_response) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (000000000000010c D ett_xmpp_success) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000220 D hf_xmpp_in) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (0000000000000224 D hf_xmpp_out) is not referred to so could be static? (in header)
epan/dissectors/packet-xmpp.c (00000000000003f8 D hf_xmpp_query_identity_lang) is not referred to so could be static? (in header)
epan/dissectors/packet-zbee-aps.c (0000000000000800 D zbee_aps_apid_abbrs) is not referred to so could be static?
epan/dissectors/packet-zbee-aps.c (0000000000000100 D zbee_aps_t2_btres_status_names) is not referred to so could be static?
epan/dissectors/packet-zbee-aps.c (0000000000000140 D zbee_aps_t2_cid_names) is not referred to so could be static?
epan/dissectors/packet-zbee-zcl.c (00000000000029a0 T zbee_zcl_get_cluster_desc) is not referred to so could be static? (in header)
epan/dissectors/packet-zbee-zdp.c (0000000000000000 D ett_zbee_zdp_descriptor_capability_field) is not referred to so could be static?
epan/dissectors/packet-zbee-zdp.c (000000000000013c D hf_zbee_zdp_bind_src) is not referred to so could be static? (in header)
epan/dissectors/packet-zbee-zdp.c (00000000000000d8 D hf_zbee_zdp_nwk_desc_profile) is not referred to so could be static? (in header)
epan/dissectors/packet-zbee-zdp.c (0000000000000380 D zbee_zdp_ieee_join_policy_vals) is not referred to so could be static?
epan/dissectors/packet-zbee-zdp.c (00000000000002a0 D zbee_zdp_relationship_vals) is not referred to so could be static?
epan/dissectors/packet-zbee-zdp.c (0000000000000300 D zbee_zdp_table_entry_type_vals) is not referred to so could be static?
epan/dissectors/packet-zbee-zdp.c (0000000000000340 D zbee_zdp_true_false_plus_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (00000000000003a0 D valid_zrtp_versions) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (0000000000000240 D zrtp_auth_tag_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (00000000000002a0 D zrtp_cipher_type_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (0000000000000000 D zrtp_error_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (0000000000000340 D zrtp_hash_type_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (0000000000000160 D zrtp_key_agreement_vals) is not referred to so could be static?
epan/dissectors/packet-zrtp.c (0000000000000200 D zrtp_sas_type_vals) is not referred to so could be static?
638 issues found

Best regards,
Martin