On 01/19/2011 10:52 AM, Arwin Arni wrote:
> Hi All,
> 
> Authz section names(and paths too) are parsed/loaded in a case insensitive 
> way.
> 
> So they need to be compared in a case-insensitive way.
> 
> Following functions do authz,
> 
> 1. libsvn_repos/authz.c:authz_get_path_access()
> 2. libsvn_repos/authz.c:authz_get_any_access() is called when the "path" is
> NULL (for MKACTIVITY, DELETE).
> 
> '1' is leaving it to svn_config_enumerate2() to handle case (in)sensitiveness.
> '2' is explicitly comparing each config item in a case sensitive way.
> 
> My patch is just fixing the '2' to check it in a case insensitive way.

So, just to be clear, now read and write access checks will both compare the
repository name in a case-insensitive way?

> Index: subversion/libsvn_repos/authz.c
> ===================================================================
> --- subversion/libsvn_repos/authz.c   (revision 1060836)
> +++ subversion/libsvn_repos/authz.c   (working copy)
> @@ -398,7 +398,7 @@
>  
>    /* Does the section apply to the query? */
>    if (section_name[0] == '/'
> -      || strncmp(section_name, b->repos_path,
> +      || strncasecmp(section_name, b->repos_path,
>                   strlen(b->repos_path)) == 0)

You've goofed up the indentation here.

-- 
C. Michael Pilato <cmpil...@collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to