#!/bin/sh

# docparam - report what configuration parameters a subsystem documents

# Usage: docparam src/mumble/*.c

for name
do
    sed -n '
	/^$/q
	/^[^ ]* *\.\IP *"*\\fB\([a-zA-Z0-9_]*\).*/{
	    s//\1/
	    p
	    d
	}
    ' $name
done | awk '

BEGIN {

    # Table generated with: user2var mail_params.h

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

}

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

' | sort -u
