1 #!/bin/sh 2 3 # Reports parameter names that have no postlink rules. 4 5 LANG=C; export LANG 6 LC_ALL=C; export LC_ALL 7 8 trap 'rm -f postlink.tmp postconf.tmp stoplist.tmp 2>/dev/null' 0 1 2 3 15 9 10 # Extract parameters from postlink script. This also produces names 11 # of obsolete parameters, and non-parameter names such as SMTPD 12 # access restrictions and mask names. 13 14 sed -n '/[ ].*href="postconf\.5\.html#/{ 15 s/^[^#]*#// 16 s/".*// 17 p 18 }' mantools/postlink | sort > postlink.tmp 19 20 # Extract parameters from postconf output, using the stock configurations. 21 22 bin/postconf -dHc conf | sort >postconf.tmp 23 24 # Filter the postconf output through a stoplist. First, parameter 25 # names prefixed by their service name. 26 27 for xport in error lmtp local relay retry smtp virtual 28 do 29 cat <<EOF 30 ${xport}_delivery_slot_cost 31 ${xport}_delivery_slot_discount 32 ${xport}_delivery_slot_loan 33 ${xport}_destination_concurrency_failed_cohort_limit 34 ${xport}_destination_concurrency_limit 35 ${xport}_destination_concurrency_negative_feedback 36 ${xport}_destination_concurrency_positive_feedback 37 ${xport}_destination_rate_delay 38 ${xport}_destination_recipient_limit 39 ${xport}_extra_recipient_limit 40 ${xport}_initial_destination_concurrency 41 ${xport}_minimum_delivery_slots 42 ${xport}_recipient_limit 43 ${xport}_recipient_refill_delay 44 ${xport}_recipient_refill_limit 45 ${xport}_transport_rate_delay 46 EOF 47 done >stoplist.tmp 48 49 # Second, pseudo parameters, read-only parameters, etc. 50 51 cat >>stoplist.tmp <<'EOF' 52 stress 53 EOF 54 55 # Report names from postconf that have no rule in mantools/postlink. 56 57 comm -23 postconf.tmp postlink.tmp | grep -F -vx -f stoplist.tmp 58