>Number: 794
>Category: mod_dir
>Synopsis: Authentication performed multiple times when searching for
>directory index
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: apache (Apache HTTP Project)
>State: open
>Class: sw-bug
>Submitter-Id: apache
>Arrival-Date: Thu Jun 26 14:40:00 1997
>Originator: [EMAIL PROTECTED]
>Organization:
apache
>Release: 1.2
>Environment:
HP-UX 10.2, gcc
>Description:
Assuming a directory without an index file and DirectoryIndex with about
5 different filenames on it - the page is also protected w/ a password.
When attempting to retrieve: "...../thedir/", the server authenticates the
userid
and password once for every file that is listed in DirectoryIndex even if the
file
doesn't exist.
It seems like the authentication should be performed only if the server is
deciding
whether or not to send the file, not when it is trying to pick which one to
display.
This isn't a big deal using htpasswd authentication, but if the authentication
is
expensive (authenticating to Kerberos/AFS over the network), it gets to be a
little
too intensive.
>How-To-Repeat:
>Fix:
I haven't looked at that portion of the code, but a simple fix would be,
instead of
for each file
check pass, if OK
if file exists
send first match
to
for each file
if file exists
check if pass ok, if ok
send first match
That would eliminate some of the unnecessary checks. It wouldn't entirely solve
it,
but it would help some
>Audit-Trail:
>Unformatted: