Module Name: src Committed By: kre Date: Fri Jun 22 18:19:41 UTC 2018
Modified Files: src/bin/sh: expand.c Log Message: When processing character classes ([:xxx:] inside []), treat a class name that is longer than we can handle the same way we treat an unknown class name (as a valid char class which contains nothing, so never matches). Previously a "too long" class name invalidated the class, so [:very-long-name:] would match any of '[' ':' 'v' ... (note: "very-long-name" is not long enough to trigger this, but you get the idea!) However, the name itself has a restricted syntax ([[:***:]] is not a character class, it is a match for one of a '[' ':' or '*', followed by a ']') which we did not implement - check the syntax of the name before treating it as a character class (but we do add '_' to alphanumerics as legal class name characters). To generate a diff of this commit: cvs rdiff -u -r1.122 -r1.123 src/bin/sh/expand.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.