]> granicus.if.org Git - apache/blobdiff - docs/manual/mod/mod_setenvif.xml
Update the copyright year in all .c, .h and .xml files
[apache] / docs / manual / mod / mod_setenvif.xml
index 35f75173704a6e982ab2a50c72fad6c6a31c6ef3..5363553a65611f83c598fe8fa961330cfa92b7b4 100644 (file)
@@ -1,10 +1,11 @@
 <?xml version="1.0"?>
 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
-<!-- $Revision: 1.13 $ -->
+<!-- $LastChangedRevision$ -->
 
 <!--
- Copyright 2002-2004 The Apache Software Foundation
+ Copyright 2002-2006 The Apache Software Foundation or its licensors, as
+ applicable.
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
@@ -134,7 +135,7 @@ respect to case</description>
 <usage>
     <p>The <directive>SetEnvIf</directive> directive defines
     environment variables based on attributes of the request. The
-    <em>attribute</em> specified in the first argument can be one of three
+    <em>attribute</em> specified in the first argument can be one of four
     things:</p>
 
 <ol>
@@ -181,13 +182,21 @@ this manner. 'Earlier' means that they were defined at a broader scope
 Environment variables will be considered only if there was no match
 among request characteristics and a regular expression was not
 used for the <em>attribute</em>.</li>
+
+<li>
+ A reference to an extension of an SSL client certificate, located by
+ its object id <em>oid</em>.
+ If a non-SSL request, or in absense of the configured <em>oid</em>,
+ no variable will be set. If the <em>oid</em> is found multiple times,
+ the individual strings will be concatenated, separated by a comma <code>','</code>.
+ The <em>oid</em> should reference a string-valued extension.
+</li>
 </ol>
 
-<p>The second argument (<em>regex</em>) is a <a
-href="http://www.pcre.org/">Perl compatible regular expression</a>.
-This is similar to a POSIX.2 egrep-style regular expression.
-If the <em>regex</em> matches against the <em>attribute</em>,
-then the remainder of the arguments are evaluated.</p>
+<p>The second argument (<em>regex</em>) is a <glossary
+ref="regex">regular expression</glossary>.  If the <em>regex</em>
+matches against the <em>attribute</em>, then the remainder of the
+arguments are evaluated.</p>
 
 <p>The rest of the arguments give the names of variables to set, and
 optionally values to which they should be set. These take the form
@@ -204,7 +213,7 @@ of</p>
     <p>In the first form, the value will be set to "1". The second
     will remove the given variable if already defined, and the
     third will set the variable to the literal value given by
-    <code><em>value</em></code>. Since version 2.1 Apache will
+    <code><em>value</em></code>. Since version 2.0.51 Apache will
     recognize occurrences of <code>$1</code>..<code>$9</code> within
     <var>value</var> and replace them by parenthesized subexpressions
     of <var>regex</var>.</p>
@@ -219,6 +228,8 @@ of</p>
         :<br />
    SetEnvIf object_is_image xbm XBIT_PROCESSING=1<br />
         :<br />
+   SetEnvIf OID("2.16.840.1.113730.1.13") "(.*)" NetscapeComment=$1<br />
+        :<br />
    SetEnvIf ^TS*  ^[a-z].*  HAVE_TS<br />
 </example>
 
@@ -228,6 +239,10 @@ of</p>
     the referring page was somewhere on the
     <code>www.mydomain.com</code> Web site.</p>
 
+    <p>The sixth example will set the <code>NetscapeComment</code>
+    environment variable to the string found in the corresponding
+    SSL client certificate field (if found).</p>
+
     <p>The last example will set environment variable
     <code>HAVE_TS</code> if the request contains any headers that
     begin with "TS" whose values begins with any character in the