The pure yes/no options in sshd that are handled by parse_flag are case-sensitive. For example, "PasswordAuthentication yes" is accepted while "PasswordAuthentication Yes" is not. This seems unnecessarily picky, since the meaning is unambiguous and it's an easy mistake for users to make. It's also at variance with (1) all the options handled by parse_multistate in servconf.c and (2) the corresponding code in readconf.c to handle client options, both of which use strcasecmp. I'd suggest that it would make sense to make the handling in servconf.c work the same way as that in readconf.c, where parse_flag just sets multistate_ptr = multistate_flag and falls through to parse_multistate; the code would even be shorter as a result.
Created attachment 3084 [details] reuse parse_multistate for servconf.c parse_flag Fine idea. I love deleting code.
Committed - this will be in OpenSSH 7.7
closing resolved bugs as of 8.6p1 release