aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-smc.c
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2023-11-20 08:16:40 +0100
committerStig Bjørlykke <stig@bjorlykke.org>2023-11-20 08:20:54 +0100
commit2a9bc63325c99653c5da873c273430add3b5e9dd (patch)
tree120dee357b44bb38baf6ca9cf592e0cef6e4bea3 /epan/dissectors/packet-smc.c
parente8e16400d8e3f933bd0eb1f06c661557a28e4ed4 (diff)
Remove init of proto variables
Remove init of proto, header field, expert info and subtree variables. This will reduces the binary size by approximate 1266320 bytes due to using .bss to zero-initialize the fields. The conversion is done using the tools/convert-proto-init.py script.
Diffstat (limited to 'epan/dissectors/packet-smc.c')
-rw-r--r--epan/dissectors/packet-smc.c424
1 files changed, 212 insertions, 212 deletions
diff --git a/epan/dissectors/packet-smc.c b/epan/dissectors/packet-smc.c
index 17b31f232a..1ef44b5d36 100644
--- a/epan/dissectors/packet-smc.c
+++ b/epan/dissectors/packet-smc.c
@@ -193,248 +193,248 @@ static const value_string smcr_llc_message_txt[] = {
{ 0, NULL }
};
-static int proto_smc = -1;
-static int ett_smcr = -1;
-static int hf_smcr_clc_msg = -1;
-static int hf_smcr_llc_msg = -1;
+static int proto_smc;
+static int ett_smcr;
+static int hf_smcr_clc_msg;
+static int hf_smcr_llc_msg;
/* SMC Proposal for both SMC-D and SMC-R */
-static int ett_proposal_flag = -1;
-static int ett_proposal_ext_flag2 = -1;
-static int hf_proposal_smc_version_release_number = -1;
-static int hf_proposal_smc_version_seid = -1;
-static int hf_proposal_smc_version = -1;
-static int hf_proposal_smc_type = -1;
-static int hf_proposal_smc_v2_type = -1;
-static int hf_smc_length = -1;
-static int hf_smc_proposal_smc_chid = -1;
-static int hf_smc_proposal_flags = -1;
-static int hf_smc_proposal_eid = -1;
-static int hf_smc_proposal_eid_count = -1;
-static int hf_smc_proposal_system_eid = -1;
-static int hf_smc_proposal_ext_flags = -1;
-static int hf_smc_proposal_client_peer_id = -1;
-static int hf_smc_proposal_ism_gid_count = -1;
-static int hf_smc_proposal_ism_gid = -1;
-static int hf_smc_proposal_client_preferred_gid = -1;
-static int hf_smc_proposal_client_preferred_mac = -1;
-static int hf_smc_proposal_smcv1_subnet_ext_offset = -1;
-static int hf_smc_proposal_smcv2_ext_offset = -1;
-static int hf_smc_proposal_outgoing_interface_subnet_mask = -1;
-static int hf_smc_proposal_smcdv2_ext_offset = -1;
-static int hf_smc_proposal_rocev2_gid_ipv4_addr = -1;
-static int hf_smc_proposal_rocev2_gid_ipv6_addr = -1;
-static int hf_smc_proposal_outgoing_subnet_mask_signifcant_bits = -1;
-static int hf_smc_proposal_ipv6_prefix_count = -1;
-static int hf_smc_proposal_ipv6_prefix = -1;
-static int hf_smc_proposal_ipv6_prefix_length = -1;
-
-static int hf_smc_reserved = -1;
+static int ett_proposal_flag;
+static int ett_proposal_ext_flag2;
+static int hf_proposal_smc_version_release_number;
+static int hf_proposal_smc_version_seid;
+static int hf_proposal_smc_version;
+static int hf_proposal_smc_type;
+static int hf_proposal_smc_v2_type;
+static int hf_smc_length;
+static int hf_smc_proposal_smc_chid;
+static int hf_smc_proposal_flags;
+static int hf_smc_proposal_eid;
+static int hf_smc_proposal_eid_count;
+static int hf_smc_proposal_system_eid;
+static int hf_smc_proposal_ext_flags;
+static int hf_smc_proposal_client_peer_id;
+static int hf_smc_proposal_ism_gid_count;
+static int hf_smc_proposal_ism_gid;
+static int hf_smc_proposal_client_preferred_gid;
+static int hf_smc_proposal_client_preferred_mac;
+static int hf_smc_proposal_smcv1_subnet_ext_offset;
+static int hf_smc_proposal_smcv2_ext_offset;
+static int hf_smc_proposal_outgoing_interface_subnet_mask;
+static int hf_smc_proposal_smcdv2_ext_offset;
+static int hf_smc_proposal_rocev2_gid_ipv4_addr;
+static int hf_smc_proposal_rocev2_gid_ipv6_addr;
+static int hf_smc_proposal_outgoing_subnet_mask_signifcant_bits;
+static int hf_smc_proposal_ipv6_prefix_count;
+static int hf_smc_proposal_ipv6_prefix;
+static int hf_smc_proposal_ipv6_prefix_length;
+
+static int hf_smc_reserved;
/* SMC-R Accept */
-static int ett_accept_flag = -1;
-static int ett_accept_flag2 = -1;
-static int ett_smcr_accept_fce_flag1 = -1;
-static int hf_accept_v2_lg_type = -1;
-static int hf_accept_smc_version = -1;
-static int hf_accept_first_contact = -1;
-static int hf_accept_rmb_buffer_size = -1;
-static int hf_accept_qp_mtu_value = -1;
-static int hf_smcr_accept_flags = -1;
-static int hf_smcr_accept_flags2 = -1;
-static int hf_smcr_accept_fce_flags = -1;
-static int hf_smcr_accept_server_peer_id = -1;
-static int hf_smcr_accept_server_preferred_gid = -1;
-static int hf_smcr_accept_server_preferred_mac = -1;
-static int hf_smcr_accept_server_qp_number = -1;
-static int hf_smcr_accept_server_rmb_rkey = -1;
-static int hf_smcr_accept_server_tcp_conn_index = -1;
-static int hf_smcr_accept_server_rmb_element_alert_token = -1;
-static int hf_smcr_accept_server_rmb_virtual_address = -1;
-static int hf_smcr_accept_initial_psn = -1;
+static int ett_accept_flag;
+static int ett_accept_flag2;
+static int ett_smcr_accept_fce_flag1;
+static int hf_accept_v2_lg_type;
+static int hf_accept_smc_version;
+static int hf_accept_first_contact;
+static int hf_accept_rmb_buffer_size;
+static int hf_accept_qp_mtu_value;
+static int hf_smcr_accept_flags;
+static int hf_smcr_accept_flags2;
+static int hf_smcr_accept_fce_flags;
+static int hf_smcr_accept_server_peer_id;
+static int hf_smcr_accept_server_preferred_gid;
+static int hf_smcr_accept_server_preferred_mac;
+static int hf_smcr_accept_server_qp_number;
+static int hf_smcr_accept_server_rmb_rkey;
+static int hf_smcr_accept_server_tcp_conn_index;
+static int hf_smcr_accept_server_rmb_element_alert_token;
+static int hf_smcr_accept_server_rmb_virtual_address;
+static int hf_smcr_accept_initial_psn;
/* SMC-R Confirm */
-static int ett_confirm_flag = -1;
-static int ett_confirm_flag2 = -1;
-static int hf_smcr_confirm_flags = -1;
-static int hf_smcr_confirm_client_peer_id = -1;
-static int hf_smcr_confirm_client_gid = -1;
-static int hf_smcr_confirm_client_mac = -1;
-static int hf_smcr_confirm_client_qp_number = -1;
-static int hf_smcr_confirm_client_rmb_rkey = -1;
-static int hf_smcr_confirm_client_tcp_conn_index = -1;
-static int hf_smcr_confirm_client_rmb_element_alert_token = -1;
-static int hf_smcr_confirm_flags2 = -1;
-static int hf_smcr_confirm_client_rmb_virtual_address = -1;
-static int hf_smcr_confirm_initial_psn = -1;
-static int hf_confirm_smc_version = -1;
-static int hf_confirm_rmb_buffer_size = -1;
-static int hf_confirm_qp_mtu_value = -1;
+static int ett_confirm_flag;
+static int ett_confirm_flag2;
+static int hf_smcr_confirm_flags;
+static int hf_smcr_confirm_client_peer_id;
+static int hf_smcr_confirm_client_gid;
+static int hf_smcr_confirm_client_mac;
+static int hf_smcr_confirm_client_qp_number;
+static int hf_smcr_confirm_client_rmb_rkey;
+static int hf_smcr_confirm_client_tcp_conn_index;
+static int hf_smcr_confirm_client_rmb_element_alert_token;
+static int hf_smcr_confirm_flags2;
+static int hf_smcr_confirm_client_rmb_virtual_address;
+static int hf_smcr_confirm_initial_psn;
+static int hf_confirm_smc_version;
+static int hf_confirm_rmb_buffer_size;
+static int hf_confirm_qp_mtu_value;
/* SMC-D Accept */
-static int hf_accept_smc_type = -1;
-static int ett_smcd_accept_flag = -1;
-static int ett_smc_accept_fce_flag = -1;
-static int ett_smcd_accept_flag2 = -1;
-static int hf_smcd_accept_smc_version = -1;
-static int hf_accept_os_type = -1;
-static int hf_accept_smc_version_release_number = -1;
-static int hf_smcd_accept_first_contact = -1;
-static int hf_accept_dmb_buffer_size = -1;
-static int hf_smcd_accept_flags = -1;
-static int hf_smc_accept_fce_flags = -1;
-static int hf_smcd_accept_flags2 = -1;
-static int hf_smcd_accept_server_peer_id = -1;
-static int hf_smcd_accept_dmbe_conn_index = -1;
-static int hf_smcd_accept_dmb_token = -1;
-static int hf_smcd_accept_server_link_id = -1;
-static int hf_smcd_accept_smc_chid = -1;
-static int hf_smc_accept_eid = -1;
-static int hf_smc_accept_peer_name = -1;
+static int hf_accept_smc_type;
+static int ett_smcd_accept_flag;
+static int ett_smc_accept_fce_flag;
+static int ett_smcd_accept_flag2;
+static int hf_smcd_accept_smc_version;
+static int hf_accept_os_type;
+static int hf_accept_smc_version_release_number;
+static int hf_smcd_accept_first_contact;
+static int hf_accept_dmb_buffer_size;
+static int hf_smcd_accept_flags;
+static int hf_smc_accept_fce_flags;
+static int hf_smcd_accept_flags2;
+static int hf_smcd_accept_server_peer_id;
+static int hf_smcd_accept_dmbe_conn_index;
+static int hf_smcd_accept_dmb_token;
+static int hf_smcd_accept_server_link_id;
+static int hf_smcd_accept_smc_chid;
+static int hf_smc_accept_eid;
+static int hf_smc_accept_peer_name;
/* SMC-D Confirm */
-static int hf_confirm_smc_type = -1;
-static int ett_smcd_confirm_flag = -1;
-static int ett_smc_confirm_fce_flag = -1;
-static int ett_smcd_confirm_flag2 = -1;
-static int hf_smcd_confirm_smc_version = -1;
-static int hf_confirm_os_type = -1;
-static int hf_smcd_confirm_flags = -1;
-static int hf_smcd_confirm_flags2 = -1;
-static int hf_smc_confirm_first_contact = -1;
-static int hf_smcd_confirm_client_peer_id = -1;
-static int hf_smcd_confirm_dmb_token = -1;
-static int hf_smcd_confirm_dmbe_conn_index = -1;
-static int hf_smcd_confirm_client_link_id = -1;
-static int hf_confirm_smc_version_release_number = -1;
-static int hf_smcd_confirm_dmb_buffer_size = -1;
-static int hf_smcd_confirm_smc_chid = -1;
-static int hf_smc_confirm_eid = -1;
-static int hf_smc_confirm_peer_name = -1;
-static int hf_smc_confirm_gid_lst_len = -1;
-static int hf_smc_confirm_gid_list_entry = -1;
+static int hf_confirm_smc_type;
+static int ett_smcd_confirm_flag;
+static int ett_smc_confirm_fce_flag;
+static int ett_smcd_confirm_flag2;
+static int hf_smcd_confirm_smc_version;
+static int hf_confirm_os_type;
+static int hf_smcd_confirm_flags;
+static int hf_smcd_confirm_flags2;
+static int hf_smc_confirm_first_contact;
+static int hf_smcd_confirm_client_peer_id;
+static int hf_smcd_confirm_dmb_token;
+static int hf_smcd_confirm_dmbe_conn_index;
+static int hf_smcd_confirm_client_link_id;
+static int hf_confirm_smc_version_release_number;
+static int hf_smcd_confirm_dmb_buffer_size;
+static int hf_smcd_confirm_smc_chid;
+static int hf_smc_confirm_eid;
+static int hf_smc_confirm_peer_name;
+static int hf_smc_confirm_gid_lst_len;
+static int hf_smc_confirm_gid_list_entry;
/* SMC-R Decline */
-static int ett_decline_flag = -1;
-static int ett_decline_flag2 = -1;
-static int hf_smc_decline_flags = -1;
-static int hf_smc_decline_flags2 = -1;
-static int hf_smc_decline_peer_id = -1;
-static int hf_smc_decline_diag_info = -1;
-static int hf_decline_os_type = -1;
-static int hf_decline_smc_version = -1;
-static int hf_decline_out_of_sync = -1;
+static int ett_decline_flag;
+static int ett_decline_flag2;
+static int hf_smc_decline_flags;
+static int hf_smc_decline_flags2;
+static int hf_smc_decline_peer_id;
+static int hf_smc_decline_diag_info;
+static int hf_decline_os_type;
+static int hf_decline_smc_version;
+static int hf_decline_out_of_sync;
/* SMC-R Confirm Link*/
-static int ett_confirm_link_flag = -1;
-static int hf_smcr_confirm_link_flags = -1;
-static int hf_smcr_confirm_link_mac = -1;
-static int hf_smcr_confirm_link_gid = -1;
-static int hf_smcr_confirm_link_qp_number = -1;
-static int hf_smcr_confirm_link_number = -1;
-static int hf_smcr_confirm_link_userid = -1;
-static int hf_smcr_confirm_link_max_links = -1;
-static int hf_smcr_confirm_link_response = -1;
+static int ett_confirm_link_flag;
+static int hf_smcr_confirm_link_flags;
+static int hf_smcr_confirm_link_mac;
+static int hf_smcr_confirm_link_gid;
+static int hf_smcr_confirm_link_qp_number;
+static int hf_smcr_confirm_link_number;
+static int hf_smcr_confirm_link_userid;
+static int hf_smcr_confirm_link_max_links;
+static int hf_smcr_confirm_link_response;
/* SMC-R Add Link */
-static int ett_add_link_flag = -1;
-static int ett_add_link_flag2 = -1;
-static int ett_add_link_flag3 = -1;
-static int hf_smcr_add_link_flags = -1;
-static int hf_smcr_add_link_response = -1;
-static int hf_smcr_add_link_response_rejected = -1;
-static int hf_smcr_add_link_reject_reason = -1;
-static int hf_smcr_add_link_mac = -1;
-static int hf_smcr_add_link_gid = -1;
-static int hf_smcr_add_link_qp_number = -1;
-static int hf_smcr_add_link_number = -1;
-static int hf_smcr_add_link_initial_psn = -1;
-static int hf_smcr_add_link_flags2 = -1;
-static int hf_smcr_add_link_qp_mtu_value = -1;
-static int hf_smcr_add_link_client_target_gid = -1;
-static int hf_smcr_add_link_rkey_count = -1;
-static int hf_smcr_add_link_rkey = -1;
-static int hf_smcr_add_link_rkey2 = -1;
-static int hf_smcr_add_link_virt_addr = -1;
-static int hf_smcr_add_link_flags3 = -1;
-static int hf_smcr_add_link_flag3_direct_link = -1;
+static int ett_add_link_flag;
+static int ett_add_link_flag2;
+static int ett_add_link_flag3;
+static int hf_smcr_add_link_flags;
+static int hf_smcr_add_link_response;
+static int hf_smcr_add_link_response_rejected;
+static int hf_smcr_add_link_reject_reason;
+static int hf_smcr_add_link_mac;
+static int hf_smcr_add_link_gid;
+static int hf_smcr_add_link_qp_number;
+static int hf_smcr_add_link_number;
+static int hf_smcr_add_link_initial_psn;
+static int hf_smcr_add_link_flags2;
+static int hf_smcr_add_link_qp_mtu_value;
+static int hf_smcr_add_link_client_target_gid;
+static int hf_smcr_add_link_rkey_count;
+static int hf_smcr_add_link_rkey;
+static int hf_smcr_add_link_rkey2;
+static int hf_smcr_add_link_virt_addr;
+static int hf_smcr_add_link_flags3;
+static int hf_smcr_add_link_flag3_direct_link;
/* SMC-R Add Link Continue*/
-static int ett_add_link_cont_flag = -1;
-static int hf_smcr_add_link_cont_flags = -1;
-static int hf_smcr_add_link_cont_response = -1;
-static int hf_smcr_add_link_cont_link_number = -1;
-static int hf_smcr_add_link_cont_number_of_rkeys = -1;
-static int hf_smcr_add_link_cont_p1_rkey = -1;
-static int hf_smcr_add_link_cont_p1_rkey2 = -1;
-static int hf_smcr_add_link_cont_p1_virt_addr = -1;
-static int hf_smcr_add_link_cont_p2_rkey = -1;
-static int hf_smcr_add_link_cont_p2_rkey2 = -1;
-static int hf_smcr_add_link_cont_p2_virt_addr = -1;
+static int ett_add_link_cont_flag;
+static int hf_smcr_add_link_cont_flags;
+static int hf_smcr_add_link_cont_response;
+static int hf_smcr_add_link_cont_link_number;
+static int hf_smcr_add_link_cont_number_of_rkeys;
+static int hf_smcr_add_link_cont_p1_rkey;
+static int hf_smcr_add_link_cont_p1_rkey2;
+static int hf_smcr_add_link_cont_p1_virt_addr;
+static int hf_smcr_add_link_cont_p2_rkey;
+static int hf_smcr_add_link_cont_p2_rkey2;
+static int hf_smcr_add_link_cont_p2_virt_addr;
/* SMC-Rv2 Request Add Link */
-static int ett_request_add_link_flag = -1;
-static int hf_smcr_request_add_link_flags = -1;
-static int hf_smcr_request_add_link_response = -1;
-static int hf_smcr_request_add_link_response_rejected = -1;
-static int hf_smcr_request_add_link_reject_reason = -1;
-static int hf_smc_request_add_link_gid_lst_len = -1;
-static int hf_smc_request_add_link_gid_list_entry = -1;
+static int ett_request_add_link_flag;
+static int hf_smcr_request_add_link_flags;
+static int hf_smcr_request_add_link_response;
+static int hf_smcr_request_add_link_response_rejected;
+static int hf_smcr_request_add_link_reject_reason;
+static int hf_smc_request_add_link_gid_lst_len;
+static int hf_smc_request_add_link_gid_list_entry;
/* SMC-R Delete Link */
-static int ett_delete_link_flag = -1;
-static int hf_smcr_delete_link_flags = -1;
-static int hf_smcr_delete_link_response = -1;
-static int hf_smcr_delete_link_all = -1;
-static int hf_smcr_delete_link_orderly = -1;
-static int hf_smcr_delete_link_number = -1;
-static int hf_smcr_delete_link_reason_code = -1;
+static int ett_delete_link_flag;
+static int hf_smcr_delete_link_flags;
+static int hf_smcr_delete_link_response;
+static int hf_smcr_delete_link_all;
+static int hf_smcr_delete_link_orderly;
+static int hf_smcr_delete_link_number;
+static int hf_smcr_delete_link_reason_code;
/* SMC-R Confirm Rkey */
-static int ett_confirm_rkey_flag = -1;
-static int hf_smcr_confirm_rkey_response = -1;
-static int hf_smcr_confirm_rkey_flags = -1;
-static int hf_smcr_confirm_rkey_negative_response = -1;
-static int hf_smcr_confirm_rkey_retry_rkey_set = -1;
-static int hf_smcr_confirm_rkey_number = -1;
-static int hf_smcr_confirm_rkey_new_rkey = -1;
-static int hf_smcr_confirm_rkey_virtual_address = -1;
-static int hf_smcr_confirm_rkey_link_number = -1;
+static int ett_confirm_rkey_flag;
+static int hf_smcr_confirm_rkey_response;
+static int hf_smcr_confirm_rkey_flags;
+static int hf_smcr_confirm_rkey_negative_response;
+static int hf_smcr_confirm_rkey_retry_rkey_set;
+static int hf_smcr_confirm_rkey_number;
+static int hf_smcr_confirm_rkey_new_rkey;
+static int hf_smcr_confirm_rkey_virtual_address;
+static int hf_smcr_confirm_rkey_link_number;
/* SMC-R Delete Rkey */
-static int ett_delete_rkey_flag = -1;
-static int hf_smcr_delete_rkey_flags = -1;
-static int hf_smcr_delete_rkey_response = -1;
-static int hf_smcr_delete_rkey_negative_response = -1;
-static int hf_smcr_delete_rkey_mask = -1;
-static int hf_smcr_delete_rkey_deleted = -1;
-static int hf_smcr_delete_rkey_count = -1;
-static int hf_smcr_delete_rkey_invalid_count = -1;
+static int ett_delete_rkey_flag;
+static int hf_smcr_delete_rkey_flags;
+static int hf_smcr_delete_rkey_response;
+static int hf_smcr_delete_rkey_negative_response;
+static int hf_smcr_delete_rkey_mask;
+static int hf_smcr_delete_rkey_deleted;
+static int hf_smcr_delete_rkey_count;
+static int hf_smcr_delete_rkey_invalid_count;
/* SMC-R Test Link */
-static int ett_test_link_flag = -1;
-static int hf_smcr_test_link_flags = -1;
-static int hf_smcr_test_link_response = -1;
+static int ett_test_link_flag;
+static int hf_smcr_test_link_flags;
+static int hf_smcr_test_link_response;
/* SMC-R RMBE Control */
-static int ett_rmbe_ctrl_rw_status_flag = -1;
-static int ett_rmbe_ctrl_peer_conn_state_flag = -1;
-static int hf_smcr_rmbe_ctrl_seqno = -1;
-static int hf_smcr_rmbe_ctrl_alert_token = -1;
-static int hf_smcr_rmbe_ctrl_prod_wrap_seqno = -1;
-static int hf_smcr_rmbe_ctrl_peer_prod_curs = -1;
-static int hf_smcr_rmbe_ctrl_cons_wrap_seqno = -1;
-static int hf_smcr_rmbe_ctrl_peer_cons_curs = -1;
-static int hf_smcr_rmbe_ctrl_conn_rw_status_flags = -1;
-static int hf_smcr_rmbe_ctrl_write_blocked = -1;
-static int hf_smcr_rmbe_ctrl_urgent_pending = -1;
-static int hf_smcr_rmbe_ctrl_urgent_present = -1;
-static int hf_smcr_rmbe_ctrl_cons_update_requested = -1;
-static int hf_smcr_rmbe_ctrl_failover_validation = -1;
-static int hf_smcr_rmbe_ctrl_peer_conn_state_flags = -1;
-static int hf_smcr_rmbe_ctrl_peer_sending_done = -1;
-static int hf_smcr_rmbe_ctrl_peer_closed_conn = -1;
-static int hf_smcr_rmbe_ctrl_peer_abnormal_close = -1;
+static int ett_rmbe_ctrl_rw_status_flag;
+static int ett_rmbe_ctrl_peer_conn_state_flag;
+static int hf_smcr_rmbe_ctrl_seqno;
+static int hf_smcr_rmbe_ctrl_alert_token;
+static int hf_smcr_rmbe_ctrl_prod_wrap_seqno;
+static int hf_smcr_rmbe_ctrl_peer_prod_curs;
+static int hf_smcr_rmbe_ctrl_cons_wrap_seqno;
+static int hf_smcr_rmbe_ctrl_peer_cons_curs;
+static int hf_smcr_rmbe_ctrl_conn_rw_status_flags;
+static int hf_smcr_rmbe_ctrl_write_blocked;
+static int hf_smcr_rmbe_ctrl_urgent_pending;
+static int hf_smcr_rmbe_ctrl_urgent_present;
+static int hf_smcr_rmbe_ctrl_cons_update_requested;
+static int hf_smcr_rmbe_ctrl_failover_validation;
+static int hf_smcr_rmbe_ctrl_peer_conn_state_flags;
+static int hf_smcr_rmbe_ctrl_peer_sending_done;
+static int hf_smcr_rmbe_ctrl_peer_closed_conn;
+static int hf_smcr_rmbe_ctrl_peer_abnormal_close;
void proto_register_smcr(void);
void proto_reg_handoff_smcr(void);