Some match exec rules may require more than one pair of double quotes, but the current ssh_config will simply truncate the first pair and ignore the backslash-escaped double quotes and other special character conventions
readconf.c:match_cfg_line() probably needs to be converted from strdelim() to argv_split() for this to happen.
(In reply to Damien Miller from comment #1) > readconf.c:match_cfg_line() probably needs to be converted from > strdelim() to argv_split() for this to happen. s/strdelim()/argv_split()/ Like this?
No unfortunately - it's a bit more of a substantial rewrite than that. strdelim() is an incremental tokeniser whereas argv_split() turns a string into a vector of arguments in one go. https://github.com/openssh/openssh-portable/commit/ea9e45c89a is the commit where we started using it for config parsing if you want to have a go at this yourself.
Sorry, I can't do it.