#!/bin/sh

# useparam - report what configuration parameters a subsystem is using

# Usage: useparam src/mumble/*.c

cat "$@" | tr -cs 'a-z0-9_' '\12' | awk '

BEGIN {

    # Table generated with: var2user mail_params.h

    table["var_mail_name"] = "mail_name"
    table["var_helpful_warnings"] = "helpful_warnings"
    table["var_show_unk_rcpt_table"] = "show_user_unknown_table_name"
    table["var_notify_classes"] = "notify_classes"
    table["var_empty_addr"] = "empty_address_recipient"
    table["var_mail_owner"] = "mail_owner"
    table["var_owner_uid"] = "mail_owner"
    table["var_owner_gid"] = "mail_owner"
    table["var_sgid_group"] = "setgid_group"
    table["var_sgid_gid"] = "setgid_group"
    table["var_default_privs"] = "default_privs"
    table["var_default_uid"] = "default_privs"
    table["var_default_gid"] = "default_privs"
    table["var_myorigin"] = "myorigin"
    table["var_mydest"] = "mydestination"
    table["var_myhostname"] = "myhostname"
    table["var_mydomain"] = "mydomain"
    table["var_local_transport"] = "local_transport"
    table["var_bounce_rcpt"] = "bounce_notice_recipient"
    table["var_2bounce_rcpt"] = "2bounce_notice_recipient"
    table["var_delay_rcpt"] = "delay_notice_recipient"
    table["var_error_rcpt"] = "error_notice_recipient"
    table["var_inet_interfaces"] = "inet_interfaces"
    table["var_proxy_interfaces"] = "proxy_interfaces"
    table["var_masq_domains"] = "masquerade_domains"
    table["var_masq_exceptions"] = "masquerade_exceptions"
    table["var_masq_classes"] = "masquerade_classes"
    table["var_relayhost"] = "relayhost"
    table["var_fallback_relay"] = "fallback_relay"
    table["var_disable_dns"] = "disable_dns_lookups"
    table["var_smtp_dns_lookup"] = "smtp_host_lookup"
    table["var_smtp_mxaddr_limit"] = "smtp_mx_address_limit"
    table["var_smtp_mxsess_limit"] = "smtp_mx_session_limit"
    table["var_queue_dir"] = "queue_directory"
    table["var_daemon_dir"] = "daemon_directory"
    table["var_command_dir"] = "command_directory"
    table["var_pid_dir"] = "process_id_directory"
    table["var_starttime"] = "process_id_directory"
    table["var_config_dir"] = "config_directory"
    table["var_config_dirs"] = "alternate_config_directories"
    table["var_db_type"] = "default_database_type"
    table["var_syslog_facility"] = "syslog_facility"
    table["var_always_bcc"] = "always_bcc"
    table["var_rcpt_witheld"] = "undisclosed_recipients_header"
    table["var_strict_rfc821_env"] = "strict_rfc821_envelopes"
    table["var_broken_auth_clients"] = "broken_sasl_auth_clients"
    table["var_disable_vrfy_cmd"] = "disable_vrfy_command"
    table["var_virt_alias_maps"] = "virtual_alias_maps"
    table["var_virt_alias_doms"] = "virtual_alias_domains"
    table["var_virt_alias_code"] = "unknown_virtual_alias_reject_code"
    table["var_canonical_maps"] = "canonical_maps"
    table["var_send_canon_maps"] = "sender_canonical_maps"
    table["var_rcpt_canon_maps"] = "recipient_canonical_maps"
    table["var_send_bcc_maps"] = "sender_bcc_maps"
    table["var_rcpt_bcc_maps"] = "recipient_bcc_maps"
    table["var_transport_maps"] = "transport_maps"
    table["var_def_transport"] = "default_transport"
    table["var_swap_bangpath"] = "swap_bangpath"
    table["var_append_at_myorigin"] = "append_at_myorigin"
    table["var_append_dot_mydomain"] = "append_dot_mydomain"
    table["var_percent_hack"] = "allow_percent_hack"
    table["var_alias_maps"] = "alias_maps"
    table["var_biff"] = "biff"
    table["var_allow_commands"] = "allow_mail_to_commands"
    table["var_command_maxtime"] = "command_time_limit"
    table["var_allow_files"] = "allow_mail_to_files"
    table["var_local_cmd_shell"] = "local_command_shell"
    table["var_alias_db_map"] = "alias_database"
    table["var_luser_relay"] = "luser_relay"
    table["var_mail_spool_dir"] = "mail_spool_directory"
    table["var_home_mailbox"] = "home_mailbox"
    table["var_mailbox_command"] = "mailbox_command"
    table["var_mailbox_cmd_maps"] = "mailbox_command_maps"
    table["var_mailbox_transport"] = "mailbox_transport"
    table["var_fallback_transport"] = "fallback_transport"
    table["var_forward_path"] = "forward_path"
    table["var_mailbox_lock"] = "mailbox_delivery_lock"
    table["var_mailbox_limit"] = "mailbox_size_limit"
    table["var_prop_extension"] = "propagate_unmatched_extensions"
    table["var_rcpt_delim"] = "recipient_delimiter"
    table["var_cmd_exp_filter"] = "command_expansion_filter"
    table["var_fwd_exp_filter"] = "forward_expansion_filter"
    table["var_deliver_hdr"] = "prepend_delivered_header"
    table["var_enable_orcpt"] = "enable_original_recipient"
    table["var_enable_errors_to"] = "enable_errors_to"
    table["var_exp_own_alias"] = "expand_owner_alias"
    table["var_stat_home_dir"] = "require_home_directory"
    table["var_dup_filter_limit"] = "duplicate_filter_limit"
    table["var_relocated_maps"] = "relocated_maps"
    table["var_min_backoff_time"] = "minimal_backoff_time"
    table["var_max_backoff_time"] = "maximal_backoff_time"
    table["var_max_queue_time"] = "maximal_queue_lifetime"
    table["var_dsn_queue_time"] = "bounce_queue_lifetime"
    table["var_delay_warn_time"] = "delay_warning_time"
    table["var_qmgr_active_limit"] = "qmgr_message_active_limit"
    table["var_qmgr_rcpt_limit"] = "qmgr_message_recipient_limit"
    table["var_qmgr_msg_rcpt_limit"] = "qmgr_message_recipient_minimum"
    table["var_xport_rcpt_limit"] = "default_recipient_limit"
    table["var_stack_rcpt_limit"] = "default_extra_recipient_limit"
    table["var_delivery_slot_cost"] = "default_delivery_slot_cost"
    table["var_delivery_slot_loan"] = "default_delivery_slot_loan"
    table["var_delivery_slot_discount"] = "default_delivery_slot_discount"
    table["var_min_delivery_slots"] = "default_minimum_delivery_slots"
    table["var_qmgr_fudge"] = "qmgr_fudge_factor"
    table["var_init_dest_concurrency"] = "initial_destination_concurrency"
    table["var_dest_con_limit"] = "default_destination_concurrency_limit"
    table["var_local_con_lim"] = "local"
    table["var_dest_rcpt_limit"] = "default_destination_recipient_limit"
    table["var_local_rcpt_lim"] = "local"
    table["var_transport_retry_time"] = "transport_retry_time"
    table["var_defer_xports"] = "defer_transports"
    table["var_qmgr_clog_warn_time"] = "qmgr_clog_warn_time"
    table["var_proc_limit"] = "default_process_limit"
    table["var_throttle_time"] = "service_throttle_time"
    table["var_use_limit"] = "max_use"
    table["var_idle_limit"] = "max_idle"
    table["var_event_drain"] = "application_event_drain_time"
    table["var_ipc_idle_limit"] = "ipc_idle"
    table["var_ipc_ttl_limit"] = "ipc_ttl"
    table["var_line_limit"] = "line_length_limit"
    table["var_debug_peer_list"] = "debug_peer_list"
    table["var_debug_peer_level"] = "debug_peer_level"
    table["var_hash_queue_names"] = "hash_queue_names"
    table["var_hash_queue_depth"] = "hash_queue_depth"
    table["var_bestmx_transp"] = "best_mx_transport"
    table["var_smtp_conn_tmout"] = "smtp_connect_timeout"
    table["var_smtp_helo_tmout"] = "smtp_helo_timeout"
    table["var_smtp_xfwd_tmout"] = "smtp_xforward_timeout"
    table["var_smtp_mail_tmout"] = "smtp_mail_timeout"
    table["var_smtp_rcpt_tmout"] = "smtp_rcpt_timeout"
    table["var_smtp_data0_tmout"] = "smtp_data_init_timeout"
    table["var_smtp_data1_tmout"] = "smtp_data_xfer_timeout"
    table["var_smtp_data2_tmout"] = "smtp_data_done_timeout"
    table["var_smtp_rset_tmout"] = "smtp_rset_timeout"
    table["var_smtp_quit_tmout"] = "smtp_quit_timeout"
    table["var_smtp_quote_821_env"] = "smtp_quote_rfc821_envelope"
    table["var_smtp_skip_4xx_greeting"] = "smtp_skip_4xx_greeting"
    table["var_smtp_skip_5xx_greeting"] = "smtp_skip_5xx_greeting"
    table["var_ign_mx_lookup_err"] = "ignore_mx_lookup_error"
    table["var_skip_quit_resp"] = "smtp_skip_quit_response"
    table["var_smtp_always_ehlo"] = "smtp_always_send_ehlo"
    table["var_smtp_never_ehlo"] = "smtp_never_send_ehlo"
    table["var_smtp_bind_addr"] = "smtp_bind_address"
    table["var_smtp_helo_name"] = "smtp_helo_name"
    table["var_smtp_rand_addr"] = "smtp_randomize_addresses"
    table["var_smtp_line_limit"] = "smtp_line_length_limit"
    table["var_smtp_pix_thresh"] = "smtp_pix_workaround_threshold_time"
    table["var_smtp_pix_delay"] = "smtp_pix_workaround_delay_time"
    table["var_smtp_defer_mxaddr"] = "smtp_defer_if_no_mx_address_found"
    table["var_smtp_send_xforward"] = "smtp_send_xforward_command"
    table["var_smtpd_banner"] = "smtpd_banner"
    table["var_smtpd_tmout"] = "smtpd_timeout"
    table["var_smtpd_rcpt_limit"] = "smtpd_recipient_limit"
    table["var_smtpd_soft_erlim"] = "smtpd_soft_error_limit"
    table["var_smtpd_hard_erlim"] = "smtpd_hard_error_limit"
    table["var_smtpd_err_sleep"] = "smtpd_error_sleep_time"
    table["var_smtpd_junk_cmd_limit"] = "smtpd_junk_command_limit"
    table["var_smtpd_hist_thrsh"] = "smtpd_history_flush_threshold"
    table["var_smtpd_noop_cmds"] = "smtpd_noop_commands"
    table["var_smtpd_sasl_enable"] = "smtpd_sasl_auth_enable"
    table["var_smtpd_sasl_opts"] = "smtpd_sasl_security_options"
    table["var_smtpd_sasl_appname"] = "smtpd_sasl_application_name"
    table["var_smtpd_sasl_realm"] = "smtpd_sasl_local_domain"
    table["var_smtpd_snd_auth_maps"] = "smtpd_sender_login_maps"
    table["var_smtp_sasl_enable"] = "smtp_sasl_auth_enable"
    table["var_smtp_sasl_mechs"] = "smtp_sasl_mechanism_filter"
    table["var_smtp_sasl_passwd"] = "smtp_sasl_password_maps"
    table["var_smtp_sasl_opts"] = "smtp_sasl_security_options"
    table["var_lmtpd_banner"] = "lmtpd_banner"
    table["var_lmtpd_tmout"] = "lmtpd_timeout"
    table["var_lmtpd_rcpt_limit"] = "lmtpd_recipient_limit"
    table["var_lmtpd_soft_erlim"] = "lmtpd_soft_error_limit"
    table["var_lmtpd_hard_erlim"] = "lmtpd_hard_error_limit"
    table["var_lmtpd_err_sleep"] = "lmtpd_error_sleep_time"
    table["var_lmtpd_junk_cmd_limit"] = "lmtpd_junk_command_limit"
    table["var_smtpd_sasl_exceptions_networks"] = "smtpd_sasl_exceptions_networks"
    table["var_lmtpd_sasl_enable"] = "lmtpd_sasl_auth_enable"
    table["var_lmtpd_sasl_opts"] = "lmtpd_sasl_security_options"
    table["var_lmtpd_sasl_realm"] = "lmtpd_sasl_local_domain"
    table["var_lmtp_sasl_enable"] = "lmtp_sasl_auth_enable"
    table["var_lmtp_sasl_passwd"] = "lmtp_sasl_password_maps"
    table["var_lmtp_sasl_opts"] = "lmtp_sasl_security_options"
    table["var_lmtp_tcp_port"] = "lmtp_tcp_port"
    table["var_lmtp_cache_conn"] = "lmtp_cache_connection"
    table["var_lmtp_skip_quit_resp"] = "lmtp_skip_quit_response"
    table["var_lmtp_conn_tmout"] = "lmtp_connect_timeout"
    table["var_lmtp_rset_tmout"] = "lmtp_rset_timeout"
    table["var_lmtp_lhlo_tmout"] = "lmtp_lhlo_timeout"
    table["var_lmtp_xfwd_tmout"] = "lmtp_xforward_timeout"
    table["var_lmtp_mail_tmout"] = "lmtp_mail_timeout"
    table["var_lmtp_rcpt_tmout"] = "lmtp_rcpt_timeout"
    table["var_lmtp_data0_tmout"] = "lmtp_data_init_timeout"
    table["var_lmtp_data1_tmout"] = "lmtp_data_xfer_timeout"
    table["var_lmtp_data2_tmout"] = "lmtp_data_done_timeout"
    table["var_lmtp_quit_tmout"] = "lmtp_quit_timeout"
    table["var_lmtp_send_xforward"] = "lmtp_send_xforward_command"
    table["var_hopcount_limit"] = "hopcount_limit"
    table["var_header_limit"] = "header_size_limit"
    table["var_token_limit"] = "header_address_token_limit"
    table["var_virt_recur_limit"] = "virtual_alias_recursion_limit"
    table["var_virt_expan_limit"] = "virtual_alias_expansion_limit"
    table["var_message_limit"] = "message_size_limit"
    table["var_queue_minfree"] = "queue_minfree"
    table["var_header_checks"] = "header_checks"
    table["var_mimehdr_checks"] = "mime_header_checks"
    table["var_nesthdr_checks"] = "nested_header_checks"
    table["var_body_checks"] = "body_checks"
    table["var_body_check_len"] = "body_checks_size_limit"
    table["var_bounce_limit"] = "bounce_size_limit"
    table["var_double_bounce_sender"] = "double_bounce_sender"
    table["var_fork_tries"] = "fork_attempts"
    table["var_fork_delay"] = "fork_delay"
    table["var_flock_tries"] = "deliver_lock_attempts"
    table["var_flock_delay"] = "deliver_lock_delay"
    table["var_flock_stale"] = "stale_lock_time"
    table["var_mailtool_compat"] = "sun_mailtool_compatibility"
    table["var_daemon_timeout"] = "daemon_timeout"
    table["var_ipc_timeout"] = "ipc_timeout"
    table["var_trigger_timeout"] = "trigger_timeout"
    table["var_mynetworks"] = "mynetworks"
    table["var_mynetworks_style"] = "mynetworks_style"
    table["var_relay_domains"] = "relay_domains"
    table["var_relay_transport"] = "relay_transport"
    table["var_relay_rcpt_maps"] = "relay_recipient_maps"
    table["var_relay_rcpt_code"] = "unknown_relay_recipient_reject_code"
    table["var_client_checks"] = "smtpd_client_restrictions"
    table["var_helo_required"] = "smtpd_helo_required"
    table["var_helo_checks"] = "smtpd_helo_restrictions"
    table["var_mail_checks"] = "smtpd_sender_restrictions"
    table["var_rcpt_checks"] = "smtpd_recipient_restrictions"
    table["var_etrn_checks"] = "smtpd_etrn_restrictions"
    table["var_data_checks"] = "smtpd_data_restrictions"
    table["var_rest_classes"] = "smtpd_restriction_classes"
    table["var_allow_untrust_route"] = "allow_untrusted_routing"
    table["var_reject_code"] = "reject_code"
    table["var_defer_code"] = "defer_code"
    table["var_unk_client_code"] = "unknown_client_reject_code"
    table["var_bad_name_code"] = "invalid_hostname_reject_code"
    table["var_unk_name_code"] = "unknown_hostname_reject_code"
    table["var_non_fqdn_code"] = "non_fqdn_reject_code"
    table["var_unk_addr_code"] = "unknown_address_reject_code"
    table["var_smtpd_rej_unl_from"] = "smtpd_reject_unlisted_sender"
    table["var_smtpd_rej_unl_rcpt"] = "smtpd_reject_unlisted_recipient"
    table["var_unv_rcpt_code"] = "unverified_recipient_reject_code"
    table["var_unv_from_code"] = "unverified_sender_reject_code"
    table["var_mul_rcpt_code"] = "multi_recipient_bounce_reject_code"
    table["var_relay_code"] = "relay_domains_reject_code"
    table["var_perm_mx_networks"] = "permit_mx_backup_networks"
    table["var_access_map_code"] = "access_map_reject_code"
    table["var_rbl_reply_maps"] = "rbl_reply_maps"
    table["var_def_rbl_reply"] = "default_rbl_reply"
    table["var_maps_rbl_code"] = "maps_rbl_reject_code"
    table["var_maps_rbl_domains"] = "maps_rbl_domains"
    table["var_smtpd_delay_reject"] = "smtpd_delay_reject"
    table["var_smtpd_null_key"] = "smtpd_null_access_lookup_key"
    table["var_smtpd_exp_filter"] = "smtpd_expansion_filter"
    table["var_local_rcpt_maps"] = "local_recipient_maps"
    table["var_local_rcpt_code"] = "unknown_local_recipient_reject_code"
    table["var_proxy_read_maps"] = "proxy_read_maps"
    table["var_procname"] = "process_name"
    table["var_pid"] = "process_id"
    table["var_dont_remove"] = "dont_remove"
    table["var_soft_bounce"] = "soft_bounce"
    table["var_ownreq_special"] = "owner_request_special"
    table["var_allow_min_user"] = "allow_min_user"
    table["var_filter_xport"] = "content_filter"
    table["var_fflush_domains"] = "fast_flush_domains"
    table["var_fflush_purge"] = "fast_flush_purge_time"
    table["var_fflush_refresh"] = "fast_flush_refresh_time"
    table["var_import_environ"] = "import_environment"
    table["var_export_environ"] = "export_environment"
    table["var_virt_transport"] = "virtual_transport"
    table["var_virt_mailbox_maps"] = "virtual_mailbox_maps"
    table["var_virt_mailbox_doms"] = "virtual_mailbox_domains"
    table["var_virt_mailbox_code"] = "unknown_virtual_mailbox_reject_code"
    table["var_virt_uid_maps"] = "virtual_uid_maps"
    table["var_virt_gid_maps"] = "virtual_gid_maps"
    table["var_virt_minimum_uid"] = "virtual_minimum_uid"
    table["var_virt_mailbox_base"] = "virtual_mailbox_base"
    table["var_virt_mailbox_limit"] = "virtual_mailbox_limit"
    table["var_virt_mailbox_lock"] = "virtual_mailbox_lock"
    table["var_syslog_name"] = "syslog_name"
    table["var_qmqpd_clients"] = "qmqpd_authorized_clients"
    table["var_qmqpd_timeout"] = "qmqpd_timeout"
    table["var_qmqpd_err_sleep"] = "qmqpd_error_delay"
    table["var_verp_delims"] = "default_verp_delimiters"
    table["var_verp_filter"] = "verp_delimiter_filter"
    table["var_verp_bounce_off"] = "disable_verp_bounces"
    table["var_verp_clients"] = "smtpd_authorized_verp_clients"
    table["var_xclient_hosts"] = "smtpd_authorized_xclient_hosts"
    table["var_xforward_hosts"] = "smtpd_authorized_xforward_hosts"
    table["var_in_flow_delay"] = "in_flow_delay"
    table["var_par_dom_match"] = "parent_domain_matches_subdomains"
    table["var_fault_inj_code"] = "fault_injection_code"
    table["var_resolve_dequoted"] = "resolve_dequoted_address"
    table["var_bounce_service"] = "bounce_service_name"
    table["var_cleanup_service"] = "cleanup_service_name"
    table["var_defer_service"] = "defer_service_name"
    table["var_pickup_service"] = "pickup_service_name"
    table["var_queue_service"] = "queue_service_name"
    table["var_rewrite_service"] = "rewrite_service_name"
    table["var_showq_service"] = "showq_service_name"
    table["var_error_service"] = "error_service_name"
    table["var_flush_service"] = "flush_service_name"
    table["var_verify_service"] = "address_verify_service_name"
    table["var_verify_map"] = "address_verify_map"
    table["var_verify_pos_exp"] = "address_verify_positive_expire_time"
    table["var_verify_pos_try"] = "address_verify_positive_refresh_time"
    table["var_verify_neg_exp"] = "address_verify_negative_expire_time"
    table["var_verify_neg_try"] = "address_verify_negative_refresh_time"
    table["var_verify_neg_cache"] = "address_verify_negative_cache"
    table["var_verify_sender"] = "address_verify_sender"
    table["var_verify_poll_count"] = "address_verify_poll_count"
    table["var_verify_poll_delay"] = "address_verify_poll_delay"
    table["var_vrfy_local_xport"] = "address_verify_local_transport"
    table["var_vrfy_virt_xport"] = "address_verify_virtual_transport"
    table["var_vrfy_relay_xport"] = "address_verify_relay_transport"
    table["var_vrfy_def_xport"] = "address_verify_default_transport"
    table["var_vrfy_relayhost"] = "address_verify_relayhost"
    table["var_vrfy_xport_maps"] = "address_verify_transport_maps"
    table["var_trace_service"] = "trace_service_name"
    table["var_mbx_defer_errs"] = "mailbox_defer_errors"
    table["var_mdr_defer_errs"] = "maildir_defer_errors"
    table["var_db_create_buf"] = "berkeley_db_create_buffer_size"
    table["var_db_read_buf"] = "berkeley_db_read_buffer_size"
    table["var_qattr_count_limit"] = "queue_file_attribute_count_limit"
    table["var_mime_maxdepth"] = "mime_nesting_limit"
    table["var_mime_bound_len"] = "mime_boundary_length_limit"
    table["var_disable_mime_input"] = "disable_mime_input_processing"
    table["var_disable_mime_oconv"] = "disable_mime_output_conversion"
    table["var_strict_8bitmime"] = "strict_8bitmime"
    table["var_strict_7bit_hdrs"] = "strict_7bit_headers"
    table["var_strict_8bit_body"] = "strict_8bitmime_body"
    table["var_strict_encoding"] = "strict_mime_encoding_domain"
    table["var_sender_routing"] = "sender_based_routing"
    table["var_xport_null_key"] = "transport_null_address_lookup_key"
    table["var_oldlog_compat"] = "backwards_bounce_logfile_compatibility"
    table["var_smtpd_proxy_filt"] = "smtpd_proxy_filter"
    table["var_smtpd_proxy_ehlo"] = "smtpd_proxy_ehlo"
    table["var_smtpd_proxy_tmout"] = "smtpd_proxy_timeout"
    table["var_smtpd_input_transp"] = "receive_override_options"
    table["var_smtpd_policy_tmout"] = "smtpd_policy_service_timeout"
    table["var_smtpd_policy_idle"] = "smtpd_policy_service_max_idle"
    table["var_smtpd_policy_ttl"] = "smtpd_policy_service_max_ttl"
    table["var_smtpd_crate_limit"] = "smtpd_client_connection_rate_limit"
    table["var_smtpd_cconn_limit"] = "smtpd_client_connection_count_limit"
    table["var_smtpd_hoggers"] = "smtpd_client_connection_limit_exceptions"
    table["var_anvil_time_unit"] = "client_rate_time_unit"
    table["var_anvil_stat_time"] = "client_event_status_update_time"
    table["var_anvil_service"] = "client_connection_rate_service"

}

{   if (name = table[$1]) print name }

' | sort -u
