https://bz.apache.org/bugzilla/show_bug.cgi?id=69835

            Bug ID: 69835
           Summary: Nonfatal clause in AllowOverride ignored when combined
                    with Options=
           Product: Apache httpd-2
           Version: 2.4.65
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Core
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

I think I may have found a bug in a corner case for the directive AllowOverride


Way to reproduce:

* Latest httpd

* Set configuration for a directory to something similar to:


    <Directory /some/path/here>
         Options +ExecCGI +Includes +SymLinksIfOwnerMatch -FollowSymLinks
         AllowOverride Nonfatal=Override Options=Includes
     </Directory>

* Put in said directory an .htaccess file with a not allowed directive.

Expected behaviour is that the directive not allowed in the .htaccess file gets
ignored and there is no 500 error response.

Now, I may put in AllowOverride any directive type along with Nonfatal=Override
and it will work as expected.

But the moment I put Options=<Any_Option> , the Nonfatal=Override gets silently
ignored. Mind that if I just put Options (no equal sign and no option list), it
still works as expected. It is the moment I add the equal sign and an option
that the Nonfatal=Override gets ignored thus leading to a 500 error response.

I say Nonfatal=Override because that is actually what I need in my
configuration, but Nonfatal=Unknown or Nonfatal=All get ignored too.

I have been reading through the function set_override() and set_allow_opts() in
server/core.c to try to make sense of what may be happening, but I cannot
figure it out. It has been too long since I last did anything in c.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to