head	1.1;
branch	1.1.1;
access;
symbols
	netbsd-11-0-RC6:1.1.1.1
	netbsd-11-0-RC5:1.1.1.1
	netbsd-11-0-RC4:1.1.1.1
	PFIX-3-11-2:1.1.1.1
	netbsd-11-0-RC3:1.1.1.1
	netbsd-11-0-RC2:1.1.1.1
	netbsd-11-0-RC1:1.1.1.1
	perseant-exfatfs:1.1.1.1.0.4
	perseant-exfatfs-base-20250801:1.1.1.1
	netbsd-11:1.1.1.1.0.2
	netbsd-11-base:1.1.1.1
	PFIX-3-10-1:1.1.1.1
	VENEMA:1.1.1;
locks; strict;
comment	@# @;


1.1
date	2025.02.25.19.11.39;	author christos;	state Exp;
branches
	1.1.1.1;
next	;
commitid	cLFKwpXD6DqXOSKF;

1.1.1.1
date	2025.02.25.19.11.39;	author christos;	state Exp;
branches
	1.1.1.1.4.1;
next	;
commitid	cLFKwpXD6DqXOSKF;

1.1.1.1.4.1
date	2025.02.25.19.11.39;	author perseant;	state dead;
branches;
next	1.1.1.1.4.2;
commitid	23j6GFaDws3O875G;

1.1.1.1.4.2
date	2025.08.02.05.49.57;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;


desc
@@


1.1
log
@Initial revision
@
text
@#!/bin/sh

# Reports parameters that exist in postconf(1) output, but that are not
# documented in the postconf(5) manpage.

LANG=C; export LANG
LC_ALL=C; export LC_ALL

bin/postconf mail_version >/dev/null || exit 1

trap 'rm -f want.tmp have.tmp stoplist.tmp 2>/dev/null' 0 1 2 3 15

# Extract parameters from the postconf(5) manpage.

awk '/^%PARAM/ { print $2 }' proto/postconf.proto | sort > have.tmp || exit 1

# Build a stoplist for postconf(1) output.

# Eliminate unwanted dynamic parameter names for delivery agents. These
# names are prefixed by their master.cf service name (they must instead
# be documented with fake names that have the "transport_" prefix; that
# is implemented later in this script).

for xport in error lmtp local relay retry smtp virtual
do
   cat <<EOF
${xport}_delivery_slot_cost
${xport}_delivery_slot_discount
${xport}_delivery_slot_loan
${xport}_destination_concurrency_failed_cohort_limit
${xport}_destination_concurrency_limit
${xport}_destination_concurrency_negative_feedback
${xport}_destination_concurrency_positive_feedback
${xport}_destination_rate_delay
${xport}_destination_recipient_limit
${xport}_extra_recipient_limit
${xport}_initial_destination_concurrency
${xport}_minimum_delivery_slots
${xport}_recipient_limit
${xport}_recipient_refill_delay
${xport}_recipient_refill_limit
${xport}_transport_rate_delay
EOF
done >stoplist.tmp

# Eliminate other unwanted per-service parameters.

#cat >>stoplist.tmp <<EOF
#EOF

# Eliminate unwanted auto-generated parameters that make no sense.

cat >>stoplist.tmp <<'EOF'
lmtp_tlsrpt_enable
lmtp_tlsrpt_skip_reused_handshakes
lmtp_tlsrpt_socket_name
EOF

# Build the list of parameter names that must have an entry in the
# postconf(5) manpage.

(
# First, extract parameters from postconf(1) output, using the stock
# configurations.

bin/postconf -dHc conf | grep -F -vx -f stoplist.tmp

# Next, require that all dynamically-generated parameter names for delivery
# agents are documented as transport_mumble.

cat <<EOF
transport_delivery_slot_cost
transport_delivery_slot_discount
transport_delivery_slot_loan
transport_destination_concurrency_failed_cohort_limit
transport_destination_concurrency_limit
transport_destination_concurrency_negative_feedback
transport_destination_concurrency_positive_feedback
transport_destination_rate_delay
transport_destination_recipient_limit
transport_extra_recipient_limit
transport_initial_destination_concurrency
transport_minimum_delivery_slots
transport_recipient_limit
transport_recipient_refill_delay
transport_recipient_refill_limit
transport_transport_rate_delay
EOF

# Require that other per-service parameters are documented.

cat <<EOF
transport_time_limit
EOF
) | sort >want.tmp || exit 1

# Report parameter names that have an implementation but no documentation.

comm -23 want.tmp have.tmp
@


1.1.1.1
log
@Import postfix-3.10.1 (previous was 3.8.4)

Summary:

Postfix 3.9 (July 2022): This release focused on enhancing the TLS
(Transport Layer Security) capabilities of Postfix. It introduced
support for TLSv1.3, allowing for more secure and efficient encrypted
communications. Additionally, improvements were made to the handling
of TLSA records, which are used in DNS-based Authentication of
Named Entities (DANE) to associate TLS certificates with domain
names.

Postfix 3.10 (July 2023): This version brought significant updates
to Postfix's SMTP (Simple Mail Transfer Protocol) functionalities.
It added support for the SMTPUTF8 extension, enabling the use of
UTF-8 encoding in email addresses and headers, which is essential
for internationalization. The release also included performance
optimizations, particularly in the handling of large mail queues,
and introduced new configuration parameters to provide administrators
with finer control over mail processing.

The changes are described more in detail in:
3.10 changes: RELEASE_NOTES
3.9  changes: RELEASE_NOTES_3.9
3.8  changes: RELEASE_NOTES_3.8
@
text
@@


1.1.1.1.4.1
log
@file check-postconf-undocumented was added on branch perseant-exfatfs on 2025-08-02 05:49:57 +0000
@
text
@d1 99
@


1.1.1.1.4.2
log
@Sync with HEAD
@
text
@a0 99
#!/bin/sh

# Reports parameters that exist in postconf(1) output, but that are not
# documented in the postconf(5) manpage.

LANG=C; export LANG
LC_ALL=C; export LC_ALL

bin/postconf mail_version >/dev/null || exit 1

trap 'rm -f want.tmp have.tmp stoplist.tmp 2>/dev/null' 0 1 2 3 15

# Extract parameters from the postconf(5) manpage.

awk '/^%PARAM/ { print $2 }' proto/postconf.proto | sort > have.tmp || exit 1

# Build a stoplist for postconf(1) output.

# Eliminate unwanted dynamic parameter names for delivery agents. These
# names are prefixed by their master.cf service name (they must instead
# be documented with fake names that have the "transport_" prefix; that
# is implemented later in this script).

for xport in error lmtp local relay retry smtp virtual
do
   cat <<EOF
${xport}_delivery_slot_cost
${xport}_delivery_slot_discount
${xport}_delivery_slot_loan
${xport}_destination_concurrency_failed_cohort_limit
${xport}_destination_concurrency_limit
${xport}_destination_concurrency_negative_feedback
${xport}_destination_concurrency_positive_feedback
${xport}_destination_rate_delay
${xport}_destination_recipient_limit
${xport}_extra_recipient_limit
${xport}_initial_destination_concurrency
${xport}_minimum_delivery_slots
${xport}_recipient_limit
${xport}_recipient_refill_delay
${xport}_recipient_refill_limit
${xport}_transport_rate_delay
EOF
done >stoplist.tmp

# Eliminate other unwanted per-service parameters.

#cat >>stoplist.tmp <<EOF
#EOF

# Eliminate unwanted auto-generated parameters that make no sense.

cat >>stoplist.tmp <<'EOF'
lmtp_tlsrpt_enable
lmtp_tlsrpt_skip_reused_handshakes
lmtp_tlsrpt_socket_name
EOF

# Build the list of parameter names that must have an entry in the
# postconf(5) manpage.

(
# First, extract parameters from postconf(1) output, using the stock
# configurations.

bin/postconf -dHc conf | grep -F -vx -f stoplist.tmp

# Next, require that all dynamically-generated parameter names for delivery
# agents are documented as transport_mumble.

cat <<EOF
transport_delivery_slot_cost
transport_delivery_slot_discount
transport_delivery_slot_loan
transport_destination_concurrency_failed_cohort_limit
transport_destination_concurrency_limit
transport_destination_concurrency_negative_feedback
transport_destination_concurrency_positive_feedback
transport_destination_rate_delay
transport_destination_recipient_limit
transport_extra_recipient_limit
transport_initial_destination_concurrency
transport_minimum_delivery_slots
transport_recipient_limit
transport_recipient_refill_delay
transport_recipient_refill_limit
transport_transport_rate_delay
EOF

# Require that other per-service parameters are documented.

cat <<EOF
transport_time_limit
EOF
) | sort >want.tmp || exit 1

# Report parameter names that have an implementation but no documentation.

comm -23 want.tmp have.tmp
@


