On 06/13/2007 02:09 PM, Allen Pulsifer wrote:
Thanks for the patch. Could you please provide it as a unified diff against
trunk?
Believe it or not but I guess that is easier to read for many (most?) people
here
than (this is old code / this is new code) :-).
> server/request.c lines 930 to 940 currently read:
>
> if (r->finfo.filetype
> #ifdef CASE_BLIND_FILESYSTEM
> && (filename_len <= canonical_len)
> #endif
> && ((opts.opts & (OPT_SYM_OWNER | OPT_SYM_LINKS)) ==
> OPT_SYM_LINKS))
> {
>
> thisinfo.filetype = APR_DIR;
> ++seg;
> continue;
> }
>
>
> Here is the corrected code that fixes the spurious open attempt on the file
> ".../file.html/.htaccess":
>
> if (r->finfo.filetype
> #ifdef CASE_BLIND_FILESYSTEM
> && (filename_len <= canonical_len)
> #endif
> && (opts.opts & OPT_SYM_LINKS) )
> {
> ++seg;
>
> if (r->finfo.filetype == APR_REG
> && (!r->path_info || !*r->path_info) )
Possible stupid question, but why do we need this path_info check?
> {
> thisinfo.filetype = APR_REG;
> break;
> }
>
> thisinfo.filetype = APR_DIR;
> continue;
> }
>
Regards
RĂ¼diger