Describe the bug
Reading your recent blog post regarding dependencies, I learned that sudo-rs depends on glob. I figured that you might have a similar problem as uutils with this crate. In particular, we once opened this issue: rust-lang/glob#116.
To recap that issue: glob only allows [!...] for negation of character classes, but not [^...]. The standard fnmatch and glob functions usually do allow ^ to be used, including the implementation by sudo, even though it does not seem to be documented.
I checked src/sudoers/tokens.rs and could not find a mitigation for this there. There also aren't any occurrences of '^' in the code base according to GitHub search, which I would expect to see if you implemented a workaround for this issue.
I'm not sure how big of an issue this is, but it's probably at least an incompatibility that should be documented. I'm also not really sure how to create a test case for this, but if you can point me to documentation for that, I'd be happy to try to create one.
Describe the bug
Reading your recent blog post regarding dependencies, I learned that
sudo-rsdepends onglob. I figured that you might have a similar problem as uutils with this crate. In particular, we once opened this issue: rust-lang/glob#116.To recap that issue:
globonly allows[!...]for negation of character classes, but not[^...]. The standardfnmatchandglobfunctions usually do allow^to be used, including the implementation bysudo, even though it does not seem to be documented.I checked
src/sudoers/tokens.rsand could not find a mitigation for this there. There also aren't any occurrences of'^'in the code base according to GitHub search, which I would expect to see if you implemented a workaround for this issue.I'm not sure how big of an issue this is, but it's probably at least an incompatibility that should be documented. I'm also not really sure how to create a test case for this, but if you can point me to documentation for that, I'd be happy to try to create one.