1- # $OpenBSD: cfgparse.sh,v 1.7 2018/05/11 03:51:06 dtucker Exp $
1+ # $OpenBSD: cfgparse.sh,v 1.8 2025/09/01 23:55:29 djm Exp $
22# Placed in the Public Domain.
33
44tid=" sshd config parse"
@@ -51,7 +51,7 @@ listenaddress ::1
5151EOD
5252
5353($SUDO ${SSHD} -T -f $OBJ /sshd_config.1 | \
54- grep ' listenaddress ' > $OBJ /sshd_config.2 &&
54+ grep ' ^ listenaddress ' > $OBJ /sshd_config.2 &&
5555 diff $OBJ /sshd_config.0 $OBJ /sshd_config.2) || \
5656 fail " listenaddress order 1"
5757# test 2: listenaddress first
@@ -67,9 +67,22 @@ listenaddress ::1
6767EOD
6868
6969($SUDO ${SSHD} -T -f $OBJ /sshd_config.1 | \
70- grep ' listenaddress ' > $OBJ /sshd_config.2 &&
70+ grep ' ^ listenaddress ' > $OBJ /sshd_config.2 &&
7171 diff $OBJ /sshd_config.0 $OBJ /sshd_config.2) || \
7272 fail " listenaddress order 2"
7373
74+ # Check idempotence of MaxStartups
75+ verbose " maxstartups idempotent"
76+ echo " maxstartups 1:2:3" > sshd_config.0
77+ cat > $OBJ /sshd_config.1 << EOD
78+ ${SSHD_KEYS}
79+ MaxStartups 1:2:3
80+ MaxStartups 8:16:32
81+ EOD
82+ ($SUDO ${SSHD} -T -f $OBJ /sshd_config.1 | \
83+ grep ' ^maxstartups ' > $OBJ /sshd_config.2 &&
84+ diff $OBJ /sshd_config.0 $OBJ /sshd_config.2) || \
85+ fail " maxstartups idempotence"
86+
7487# cleanup
7588rm -f $OBJ /sshd_config.[012]
0 commit comments