Commit 5daea266 authored by Jim Jagielski's avatar Jim Jagielski
Browse files

Allow for negation of env check as well...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@667513 13f79535-47bb-0310-9956-ffa450edef68
parent 883c6348
Loading
Loading
Loading
Loading
+13 −1
Changes for modules/aaa/mod_access_compat.c: 13 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@

enum allowdeny_type {
    T_ENV,
    T_NENV,
    T_ALL,
    T_IP,
    T_HOST,
@@ -156,7 +157,12 @@ static const char *allow_cmd(cmd_parms *cmd, void *dv, const char *from,
    a->x.from = where;
    a->limited = cmd->limited;

    if (!strncasecmp(where, "env=", 4)) {
    if (!strncasecmp(where, "env=!", 5)) {
        a->type = T_NENV;
        a->x.from += 5;

    }
    else if (!strncasecmp(where, "env=", 4)) {
        a->type = T_ENV;
        a->x.from += 4;

@@ -255,6 +261,12 @@ static int find_allowdeny(request_rec *r, apr_array_header_t *a, int method)
            }
            break;

        case T_NENV:
            if (!apr_table_get(r->subprocess_env, ap[i].x.from)) {
                return 1;
            }
            break;

        case T_ALL:
            return 1;