mod_setenvif.c revision e68becff3c3ddc18723c9799b8cc2e6e9c3dbd66
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek/* ====================================================================
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * The Apache Software License, Version 1.1
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * Copyright (c) 2000 The Apache Software Foundation. All rights
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * Redistribution and use in source and binary forms, with or without
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * modification, are permitted provided that the following conditions
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * 1. Redistributions of source code must retain the above copyright
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * notice, this list of conditions and the following disclaimer.
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * 2. Redistributions in binary form must reproduce the above copyright
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * notice, this list of conditions and the following disclaimer in
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * the documentation and/or other materials provided with the
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * 3. The end-user documentation included with the redistribution,
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * if any, must include the following acknowledgment:
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * "This product includes software developed by the
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * Apache Software Foundation (http://www.apache.org/)."
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * Alternately, this acknowledgment may appear in the software itself,
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * if and wherever such third-party acknowledgments normally appear.
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * 4. The names "Apache" and "Apache Software Foundation" must
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * not be used to endorse or promote products derived from this
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * software without prior written permission. For written
9ff48d0982fcb97923955685fe9fa4e0e67cb238Zbigniew Jędrzejewski-Szmek * permission, please contact apache@apache.org.
#include "ap_config.h"
#include "httpd.h"
#include "http_config.h"
#include "http_core.h"
#include "http_log.h"
#include "http_protocol.h"
enum special {
enum special,
} sei_entry;
} sei_cfg_rec;
return (void *) new;
char *regex;
const char *feature;
char *var;
int beenhere = 0;
unsigned icase;
if (!*regex) {
if (!*feature) {
beenhere++;
if (*feature) {
if (!beenhere) {
return NULL;
const char *args)
char *fname;
if (!*fname) {
{ NULL },
const char *val;
char *last_name;
switch (b->special_type) {
case SPECIAL_REMOTE_ADDR:
case SPECIAL_REMOTE_HOST:
case SPECIAL_REMOTE_USER:
case SPECIAL_REQUEST_URI:
case SPECIAL_REQUEST_METHOD:
case SPECIAL_REQUEST_PROTOCOL:
case SPECIAL_NOT:
return DECLINED;
static void register_hooks(void)