subversion-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Branko Čibej (JIRA) <>
Subject [jira] [Commented] (SVN-4795) Support character classes in glob authz rules
Date Mon, 03 Dec 2018 05:54:00 GMT


Branko Čibej commented on SVN-4795:

The attached patch modifies the config parser as described, but only for authz and global
group files. The semantics of other configuration files remain unchanged.

> Support character classes in glob authz rules
> ---------------------------------------------
>                 Key: SVN-4795
>                 URL:
>             Project: Subversion
>          Issue Type: Improvement
>          Components: libsvn_repos, svnauthz
>    Affects Versions: all
>            Reporter: Branko Čibej
>            Priority: Major
>         Attachments: authz-glob-character-class.patch
> *Proposal*
>  Change the way section names are parsed in authz files, so that anything between the
initial {{\[}} and the last {{\]}} are treated as the section name/rule pattern. This will
restrict the use of inline comments on rules, but will allow fuller use of glob patterns.
> *Discussion*
>  Wildcard rules in Subversion's authz file use {{apr_fnmatch()}} to match patterns to
path segments. APR's matcher supports character classes ({{[A-Z]}} etc.), however, there is
no way to use them in the authz file. For example, given this rule:
> {noformat}
> [:glob:/**/*.[Dd]oc]
> * = rw
> {noformat}
> the pattern will be parsed as "{{/\*\*/\*.[Dd}}", which is probably not what the user
intended and matches, for example, "{{/path/x.\[Dd}}" instead of the expected "{{/path/x.doc}}".
> This limitation was present in the authz rules since their inception and is a side effect
of how Subversion's config parser parses section names. See: {{parse_section_name()}} in {{libsvn_subr/config_file.c}}.

This message was sent by Atlassian JIRA

View raw message