You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by hu...@apache.org on 2012/05/06 15:14:50 UTC

svn commit: r1334622 [28/29] - in /httpd/site/trunk: cgi-bin/ content/ content/apreq/ content/apreq/docs/ content/apreq/docs/libapreq2/ content/contributors/ content/css/ content/dev/ content/dev/images/ content/dev/whiteboard/ content/docs-project/ co...

Propchange: httpd/site/trunk/content/stylesheets/apache-site.dtd
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/convert.xsl
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/convert.xsl?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/convert.xsl (added)
+++ httpd/site/trunk/content/stylesheets/convert.xsl Sun May  6 13:14:42 2012
@@ -0,0 +1,283 @@
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+  <xsl:output method="xml" omit-xml-declaration="yes"/>
+  <xsl:strip-space elements="*"/>
+
+  <xsl:template match="properties">
+    <xsl:apply-templates select="node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="document|body">
+    <xsl:apply-templates select="node()"/>
+  </xsl:template>
+
+  <xsl:template match="ul|ol|dl">
+    <xsl:text>&#10;</xsl:text>
+    <xsl:apply-templates select="node()"/>
+  </xsl:template>
+
+  <xsl:template match="document/properties/author">
+  </xsl:template>
+
+  <xsl:template match="document/properties/title">
+    <xsl:text>Title: </xsl:text>
+    <xsl:value-of select="normalize-space(text())"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="atom[@url]">
+    <xsl:text>Atom: </xsl:text>
+    <xsl:value-of select="@url"/>
+    <xsl:text>&#10;      "</xsl:text>
+    <xsl:value-of select="."/>
+    <xsl:text>"</xsl:text>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="document/body/section">
+    <xsl:apply-templates select="@*|node()"/>
+  </xsl:template>
+
+  <xsl:template match="section/title">
+  </xsl:template>
+
+  <xsl:template match="toc">
+    <xsl:text>&#10;[TOC]&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template name="section">
+    <xsl:param name="hashes"/>
+    <xsl:param name="title"/>
+
+    <xsl:text>&#10;</xsl:text>
+    <xsl:value-of select="$hashes"/>
+    <xsl:text> </xsl:text>
+    <xsl:value-of select="normalize-space($title)"/>
+    <xsl:text> </xsl:text>
+    <xsl:value-of select="$hashes"/>
+    <xsl:if test="@id">
+      <xsl:text> {#</xsl:text>
+      <xsl:value-of select="@id"/>
+      <xsl:text>}</xsl:text>
+    </xsl:if>
+    <xsl:text>&#10;</xsl:text>
+    <xsl:apply-templates select="*"/>
+  </xsl:template>
+
+  <xsl:template match="document/body/section/section">
+    <xsl:call-template name="section">
+      <xsl:with-param name="hashes">#</xsl:with-param>
+      <xsl:with-param name="title">
+        <xsl:value-of select="title"/>
+      </xsl:with-param>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template match="document/body/section/section/section">
+    <xsl:call-template name="section">
+      <xsl:with-param name="hashes">##</xsl:with-param>
+      <xsl:with-param name="title">
+        <xsl:value-of select="title"/>
+      </xsl:with-param>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template match="document/body/section/section/section/section">
+    <xsl:call-template name="section">
+      <xsl:with-param name="hashes">###</xsl:with-param>
+      <xsl:with-param name="title">
+        <xsl:value-of select="title"/>
+      </xsl:with-param>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template match="h3[not(*)]">
+    <xsl:call-template name="section">
+      <xsl:with-param name="hashes">###</xsl:with-param>
+      <xsl:with-param name="title">
+        <xsl:value-of select="."/>
+      </xsl:with-param>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template match="h4[not(*)]">
+    <xsl:call-template name="section">
+      <xsl:with-param name="hashes">####</xsl:with-param>
+      <xsl:with-param name="title">
+        <xsl:value-of select="."/>
+      </xsl:with-param>
+    </xsl:call-template>
+  </xsl:template>
+
+  <xsl:template match="p">
+    <xsl:text>&#10;</xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="hr">
+    <xsl:text>&#10;----------&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="blockquote">
+    <xsl:text disable-output-escaping="yes">&#10;&gt;</xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="ul/li">
+    <xsl:text>&#10;- </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="ul/li/ul/li">
+    <xsl:text>&#10;    - </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="ol/li">
+    <xsl:text>&#10;1. </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="ol/li/ol/li">
+    <xsl:text>&#10;    1. </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>&#10;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="table">
+    <xsl:text>&#10;</xsl:text>
+    <xsl:apply-templates select="node()"/>
+  </xsl:template>
+
+  <xsl:template match="tr">
+    <xsl:apply-templates select="node()"/>
+    <xsl:text>|&#10;</xsl:text>
+
+    <xsl:if test="th">
+      <xsl:text>|</xsl:text>
+      <xsl:for-each select="th" xmlns:str="http://exslt.org/strings">
+        <xsl:value-of select="str:padding(string-length(.)+2,'-')"/>
+        <xsl:text>|</xsl:text>
+      </xsl:for-each>
+      <xsl:text>&#10;</xsl:text>
+    </xsl:if>
+  </xsl:template>
+
+  <xsl:template match="tr/td|th">
+    <xsl:text>| </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text> </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="tr/td//tr/td">
+    <xsl:text> | </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+  </xsl:template>
+
+  <xsl:template match="a[@href]">
+    <xsl:text> [</xsl:text>
+    <xsl:value-of select="normalize-space(text())"/>
+    <xsl:text>](</xsl:text>
+    <xsl:value-of select="@href"/>
+    <xsl:text>) </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="img[@src]">
+    <xsl:text> ![</xsl:text>
+    <xsl:value-of select="@alt"/>
+    <xsl:text>](</xsl:text>
+    <xsl:value-of select="@src"/>
+    <xsl:text> "</xsl:text>
+    <xsl:value-of select="@title"/>
+    <xsl:text>") </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="dl/dt">
+    <xsl:text>&#10;&#10;</xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:if test="@id">
+      <xsl:text> {#</xsl:text>
+      <xsl:value-of select="@id" />
+      <xsl:text>}</xsl:text>
+    </xsl:if>
+  </xsl:template>
+
+  <xsl:template match="dl/dd">
+    <xsl:text>&#10;:    </xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+  </xsl:template>
+
+  <xsl:template match="strong|b">
+    <xsl:text> **</xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>** </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="em|i">
+    <xsl:text> *</xsl:text>
+    <xsl:apply-templates select="@*|node()"/>
+    <xsl:text>* </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="code[not(*)]">
+    <xsl:text> `</xsl:text>
+    <xsl:value-of select="."/>
+    <xsl:text>` </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="tt[not(*)]">
+    <xsl:text> `</xsl:text>
+    <xsl:value-of select="."/>
+    <xsl:text>` </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="pre[not(*)]">
+    <xsl:text> `</xsl:text>
+    <xsl:value-of select="."/>
+    <xsl:text>` </xsl:text>
+  </xsl:template>
+
+  <xsl:template match="code/pre">
+    <xsl:copy xmlns:str="http://exslt.org/strings">
+      <xsl:value-of select="str:replace(.,'*','\*')"/>
+    </xsl:copy>  
+  </xsl:template>
+
+  <xsl:template match="source|pre">
+    <pre><xsl:value-of select="."/></pre>
+  </xsl:template>
+
+  <xsl:template match="note">
+    <xsl:apply-templates select="node()"/>
+  </xsl:template>
+
+  <xsl:template match="text()">
+    <xsl:value-of select="normalize-space(.)"/>
+  </xsl:template>
+
+  <xsl:template match="*">
+    <xsl:text disable-output-escaping="yes">&lt;</xsl:text>
+    <xsl:value-of select="name()"/>
+    <xsl:for-each select="@*">
+      <xsl:text> </xsl:text>
+      <xsl:value-of select="name()"/>
+      <xsl:text>="</xsl:text>
+      <xsl:value-of select="."/>
+      <xsl:text>"</xsl:text>
+    </xsl:for-each>
+    <xsl:text disable-output-escaping="yes">&gt;</xsl:text>
+    <xsl:apply-templates select="node()"/>
+    <xsl:text disable-output-escaping="yes">&lt;/</xsl:text>
+    <xsl:value-of select="name()"/>
+    <xsl:text disable-output-escaping="yes">&gt;</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="@*">
+  </xsl:template>
+</xsl:stylesheet>

Propchange: httpd/site/trunk/content/stylesheets/convert.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/flood.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/flood.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/flood.xml (added)
+++ httpd/site/trunk/content/stylesheets/flood.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project href="http://httpd.apache.org/">
+
+<title>Flood</title>
+<body>
+<menu><title>Essentials</title>
+  <li><a href="/test/flood/building.html">Building</a></li>
+  <li><a href="/test/flood/faq.html">FAQ</a></li>
+</menu>
+
+<menu><title>Download!</title>
+  <li><a href="http://www.apache.org/dyn/closer.cgi/httpd/flood/">from a mirror</a></li>
+  <li><a href="http://www.apache.org/dist/httpd/">from here</a></li>
+</menu>
+
+<menu><title>Documentation</title>
+  <li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/DESIGN">Design</a></li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/CONFIG">Configuration</a></li>
+</menu>
+
+<!--menu><title>Get Involved</title>
+  <li><a href="/lists.html">Mailing Lists</a></li>
+  <li><a href="bug_report.html">Bug Reports</a></li>
+  <li><a href="/dev/">Developer Info</a></li>
+</menu-->
+
+</body>
+</project>

Propchange: httpd/site/trunk/content/stylesheets/flood.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/httpd-oval.xsl
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/httpd-oval.xsl?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/httpd-oval.xsl (added)
+++ httpd/site/trunk/content/stylesheets/httpd-oval.xsl Sun May  6 13:14:42 2012
@@ -0,0 +1,372 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Transform vulnerabilities-httpd.xml into OVAL -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5" version="2.0">
+    <!-- <xsl:output method="text"/> -->
+    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
+    <!-- 
+        The following keys are used when generating a unique list of values to loop over. 
+    -->
+    <xsl:key name="cveids" match="/security/issue/cve" use="@name"/>
+    <xsl:key name="httpd_versions" match="/security/issue/affects[@prod = 'httpd'] | /security/issue/maybeaffects[@prod = 'httpd']" use="@version"/>
+    <!-- 
+        The directory where the output files should be written.  Make sure a trailing
+        slash is present.
+    -->
+    <xsl:variable name="output_directory">./oval/</xsl:variable>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template match="/">
+        <xsl:call-template name="print_combined_file"/>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="print_combined_file">
+        <!-- 
+            TEMPLATE - print_combined_file
+            
+            This template is used to create a combined xml file that has all the OVAL
+            definitions in a single document.  Tests, objects, and states are reused
+            whenever possible.
+        -->
+        <xsl:variable name="filename" select="'httpd-oval-combined.xml'"/>
+        <!--        <xsl:result-document href="{$output_directory}{$filename}" format="xml">-->
+            <oval_definitions xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5" xmlns:oval="http://oval.mitre.org/XMLSchema/oval-common-5" xmlns:oval-def="http://oval.mitre.org/XMLSchema/oval-definitions-5" xmlns:apache-def="http://oval.mitre.org/XMLSchema/oval-definitions-5#windows" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://oval.mitre.org/XMLSchema/oval-common-5 oval-common-schema.xsd http://oval.mitre.org/XMLSchema/oval-definitions-5 oval-definitions-schema.xsd http://oval.mitre.org/XMLSchema/oval-definitions-5#apache apache-definitions-schema.xsd">
+                <generator>
+                    <oval:schema_version>5.1</oval:schema_version>
+                    <oval:timestamp>2005-10-12T18:13:45</oval:timestamp>
+                </generator>
+                <definitions>
+                    <!-- 
+                        For each unique CVE id, create a new OVAL definition.  This
+                        definition might span a couple of different issues, and this
+                        will be reflected in the criteria.
+                    -->
+                    <xsl:for-each select="//cve[generate-id() = generate-id(key('cveids',@name)[1])]">
+                        <xsl:call-template name="httpd_definition">
+                            <xsl:with-param name="cveid" select="@name"/>
+                        </xsl:call-template>
+                    </xsl:for-each>
+                </definitions>
+                <tests>
+                    <!-- 
+                        For each <affects> or <maybeaffects> element found across every
+                        <issue> in the source document, generate an OVAL test to represent
+                        it.  These tests are used by the definitions created above.
+                    -->
+                    <xsl:for-each select="//affects[generate-id() = generate-id(key('httpd_versions',@version)[1])] | //maybeaffects[generate-id() = generate-id(key('httpd_versions',@version)[1])] ">
+                        <xsl:call-template name="httpd_test"/>
+                    </xsl:for-each>
+                </tests>
+                <objects>
+                    <!-- 
+                        The httpd test in OVAL always references the same object that
+                        represents the collection of all httpd binaries on the system.
+                        This object is used by each of the tests created above.
+                    -->
+                    <xsl:call-template name="httpd_object"/>
+                </objects>
+                <states>
+                    <!-- 
+                        For each <affects> or <maybeaffects> element found across every
+                        <issue> in the source document, generate an OVAL state to
+                        represent the version comparision.  These states are used by the
+                        tests created above.
+                    -->
+                    <xsl:for-each select="//affects[generate-id() = generate-id(key('httpd_versions',@version)[1])] | //maybeaffects[generate-id() = generate-id(key('httpd_versions',@version)[1])] ">
+                        <xsl:call-template name="httpd_state"/>
+                    </xsl:for-each>
+                </states>
+            </oval_definitions>
+            <!--        </xsl:result-document>-->
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="print_individual_files">
+        <!-- 
+            TEMPLATE - print_individual_files
+            
+            This template is used to create an individual xml file for each OVAL
+            definitions.  A separate definition is created for each unique instance of
+            a CVE id.  The opening <for-each> loop is used to cycle over all the unique
+            CVE ids found in the sorce document.
+        -->
+        <xsl:for-each select="//cve[generate-id() = generate-id(key('cveids',@name)[1])]">
+            <xsl:variable name="cveid" select="@name"/>
+            <!--
+                For each CVE id, create a new OVAL Definition file.  The filename in this
+                case is generated from numbers of the CVE id.  Since there is only one
+                definition per CVE, we can be confident that this is unique.
+            -->
+            <xsl:variable name="filename" select="concat(substring($cveid,5,4),substring($cveid,10),'.xml')"/>
+            <xsl:result-document href="{$output_directory}{$filename}" format="xml">
+                <oval_definitions xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5" xmlns:oval="http://oval.mitre.org/XMLSchema/oval-common-5" xmlns:oval-def="http://oval.mitre.org/XMLSchema/oval-definitions-5" xmlns:apache-def="http://oval.mitre.org/XMLSchema/oval-definitions-5#windows" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://oval.mitre.org/XMLSchema/oval-common-5 oval-common-schema.xsd http://oval.mitre.org/XMLSchema/oval-definitions-5 oval-definitions-schema.xsd http://oval.mitre.org/XMLSchema/oval-definitions-5#apache apache-definitions-schema.xsd">
+                    <generator>
+                        <oval:schema_version>5.1</oval:schema_version>
+                        <oval:timestamp>2005-10-12T18:13:45</oval:timestamp>
+                    </generator>
+                    <definitions>
+                        <!-- 
+                            Call the definition template for the current CVE id.
+                        -->
+                        <xsl:call-template name="httpd_definition">
+                            <xsl:with-param name="cveid" select="$cveid"/>
+                        </xsl:call-template>
+                    </definitions>
+                    <tests>
+                        <!-- 
+                            A test needs to be produced for each unique <affects> and
+                            <maybeaffects> element found in the issues related to this
+                            specific CVE id.
+                        -->
+                        <xsl:for-each select="/security/issue[./cve/@name = $cveid]">
+                            <xsl:for-each select="./affects | ./maybeaffects">
+                                <!--
+                                    TODO: If there is an <affects> or <maybeaffects> with
+                                    an OS attribute, then we need to print the test for that
+                                    OS.  We will also have to print the associated object
+                                    and state.
+                                -->
+                                <xsl:call-template name="httpd_test"/>
+                            </xsl:for-each>
+                        </xsl:for-each>
+                    </tests>
+                    <objects>
+                        <!-- 
+                            The httpd test in OVAL always references the same object that
+                            represents the collection of all httpd binaries on the system.
+                            This object is used by each of the tests created above.
+                        -->
+                        <xsl:call-template name="httpd_object"/>
+                    </objects>
+                    <states>
+                        <!-- 
+                            For each <affects> or <maybeaffects> element found across every
+                            <issue> related to the specified CVE, generate an OVAL state to
+                            represent the version comparision.  These states are used by the
+                            tests created above.
+                        -->
+                        <xsl:for-each select="/security/issue[./cve/@name = $cveid]">
+                            <xsl:for-each select="./affects | ./maybeaffects">
+                                <xsl:call-template name="httpd_state"/>
+                            </xsl:for-each>
+                        </xsl:for-each>
+                    </states>
+                </oval_definitions>
+            </xsl:result-document>
+        </xsl:for-each>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="httpd_definition">
+        <xsl:param name="cveid"/>
+        <!--
+            TEMPLATE - httpd_definition
+            
+            This template is used to create an actual OVAL Definition.  The id for this
+            definition is built from the numbers found in the cve name.  Since we are
+            creating a single OVAL Definition per CVE, we can be confident that this
+            value is unique.  It is also repeatable since the CVE id won't change.
+        -->
+        <xsl:variable name="definition_id">oval:org.apache.httpd:def:<xsl:value-of select="substring($cveid,5,4)"/><xsl:value-of select="substring($cveid,10)"/></xsl:variable>
+        <!--
+            Print out the actual definition element.
+        -->
+        <xsl:element name="definition" namespace="http://oval.mitre.org/XMLSchema/oval-definitions-5">
+            <xsl:attribute name="id"><xsl:value-of select="$definition_id"/></xsl:attribute>
+            <xsl:attribute name="version">1</xsl:attribute>
+            <xsl:attribute name="class">vulnerability</xsl:attribute>
+            <!--
+                Add the required metadata to the OVAL Definition.  This information is
+                required by the OVAL XML schema.
+            -->
+            <metadata>
+                <title><xsl:value-of select="../title"/></title>
+                <xsl:element name="reference">
+                    <xsl:attribute name="source">CVE</xsl:attribute>
+                    <xsl:attribute name="ref_id"><xsl:value-of select="$cveid"/></xsl:attribute>
+                    <xsl:attribute name="ref_url">http://cve.mitre.org/cgi-bin/cvename.cgi?name=<xsl:value-of select="$cveid"/></xsl:attribute>
+                </xsl:element>
+                <description><xsl:value-of select="../description/p"/><xsl:value-of select="../acknowledgements"/></description>
+                <!--
+                    The <apache_httpd_repository> piece of metadata is not required by
+                    the OVAL schema but is valid due the <xsd:any> tag found in the
+                    schema.  This section is a place to put information specifice to
+                    apache httpd vulnerability report.
+                -->
+                <apache_httpd_repository>
+                    <public><xsl:value-of select="../@public"/></public>
+                    <reported><xsl:value-of select="../@reported"/></reported>
+                    <released><xsl:value-of select="../@released"/></released>
+                    <!--
+                        If a <severity> element exists for this issue in the source XML
+                        document, then create a similar <severity> element in the
+                        definition metadata.
+                    -->
+                    <xsl:if test="../severity">
+                        <xsl:element name="severity">
+                            <xsl:attribute name="level"><xsl:value-of select="../severity/@level"/></xsl:attribute>
+                            <xsl:value-of select="../severity"/>
+                        </xsl:element>
+                    </xsl:if>
+                    <!--
+                        If a <flaw> element exists for this issue in the source XML
+                        document, then create a similar <flaw> element in the
+                        definition metadata.
+                    -->
+                    <xsl:if test="../flaw">
+                        <xsl:element name="flaw">
+                            <xsl:attribute name="type"><xsl:value-of select="../flaw/@type"/></xsl:attribute>
+                        </xsl:element>
+                    </xsl:if>
+                </apache_httpd_repository>
+            </metadata>
+            <!--
+                Add the criteria to the OVAL Definition.  This consists of all the
+                individual tests required by the different <issue> elements found in
+                the source xml document related to the specified CVE.  The first step
+                is to loop over each <issue> and print out a child <criteria> element
+                that will group together the tests related to the <issue>.  The second
+                step is to loop over each <affects> or <maybeaffects> element and print
+                out a corresponding <criterion> by calling the httpd_criteriontemplate.
+            -->
+            <criteria operator="OR">
+                <xsl:for-each select="/security/issue[./cve/@name = $cveid]">
+                    <criteria operator="OR">
+                        <xsl:for-each select="./affects | ./maybeaffects">
+                            <!--
+                                TODO: If there are <affects> or <maybeaffects> with an OS
+                                attribute, then we need to add a <criteria> element that
+                                ANDs an OS test  with the ORd list of affected versions.
+                            -->
+                            <xsl:call-template name="httpd_criterion"/>
+                        </xsl:for-each>
+                    </criteria>
+                </xsl:for-each>
+            </criteria>
+        </xsl:element>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="httpd_criterion">
+        <!--
+            TEMPLATE - httpd_criterion
+            
+            This template is used to create an individual <criterion> element.  This
+            element provides the link between a definition and a test.  Each <criterion>
+            references a test via the test id, which is determined by using the version
+            (without the periods) of httpd being tested.  This will work as long as we
+            only have version tests.
+        -->
+        <xsl:variable name="test_id">oval:org.apache.httpd:tst:<xsl:value-of select="substring-before(@version,'.')"/><xsl:value-of select="substring-before(substring-after(@version,'.'),'.')"/><xsl:value-of select="substring-after(substring-after(@version,'.'),'.')"/></xsl:variable>
+        <!--
+            Create a comment for the test.
+        -->
+        <xsl:variable name="test_comment">the version of <xsl:value-of select="@prod"/> is <xsl:value-of select="@version"/></xsl:variable>
+        <!--
+            Create the actual criterion element
+        -->
+        <xsl:element name="criterion" namespace="http://oval.mitre.org/XMLSchema/oval-definitions-5">
+            <xsl:attribute name="test_ref"><xsl:value-of select="$test_id"/></xsl:attribute>
+            <xsl:attribute name="comment"><xsl:value-of select="$test_comment"/></xsl:attribute>
+        </xsl:element>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="httpd_test">
+        <!--
+            TEMPLATE - httpd_test
+            
+            This template is used to create an individual <httpd_test>.  This element
+            binds an OVAL Object and an OVAL State with a check attribute.  The test id
+            is determined by using the version (without the periods) of httpd being
+            tested for.  This will work as long as we only have version tests.
+        -->
+        <xsl:variable name="test_id">oval:org.apache.httpd:tst:<xsl:value-of select="substring-before(@version,'.')"/><xsl:value-of select="substring-before(substring-after(@version,'.'),'.')"/><xsl:value-of select="substring-after(substring-after(@version,'.'),'.')"/></xsl:variable>
+        <!--
+            Create a comment for the test.
+        -->
+        <xsl:variable name="test_comment">the version of <xsl:value-of select="@prod"/> is <xsl:value-of select="@version"/></xsl:variable>
+        <!--
+            Create a unique state id.  Attempting to use the version (without the periods)
+            of httpd being tested for.  This will work as long as we only have version
+            tests.  Note that we don't need to create an object id since every test
+            references the same object, meaning the object and its id can be hard coded
+            into this script.
+        -->
+        <xsl:variable name="state_id">oval:org.apache.httpd:ste:<xsl:value-of select="substring-before(@version,'.')"/><xsl:value-of select="substring-before(substring-after(@version,'.'),'.')"/><xsl:value-of select="substring-after(substring-after(@version,'.'),'.')"/></xsl:variable>
+        <!--
+            Print out the actual test element.
+        -->
+        <xsl:element name="httpd_test" namespace="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache">
+            <xsl:attribute name="id"><xsl:value-of select="$test_id"/></xsl:attribute>
+            <xsl:attribute name="version">1</xsl:attribute>
+            <xsl:attribute name="comment"><xsl:value-of select="$test_comment"/></xsl:attribute>
+            <xsl:attribute name="check">at least one</xsl:attribute>
+            <!--
+                Add the <object> and <state> elements to this test.
+            -->
+            <object object_ref="oval:org.apache.httpd:obj:1" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache"/>
+            <xsl:element name="state" namespace="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache">
+                <xsl:attribute name="state_ref"><xsl:value-of select="$state_id"/></xsl:attribute>
+            </xsl:element>
+        </xsl:element>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="httpd_object">
+        <!--
+            TEMPLATE - httpd_object
+            
+            This template is used to create an <httpd_object>.  Note that every
+            <httpd_test> uses the same <httpd_object> so this template simply prints out
+            that object and does not have to loop over any elements of the source xml
+            file.
+        -->
+        <httpd_object id="oval:org.apache.httpd:obj:1" version="1" comment="the collection apache httpd binaries" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache">
+            <notes xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5">
+                <note>This is the single httpd object required by an apache httpd test and represents the collection of all httpd binaries on the system.</note>
+            </notes>
+        </httpd_object>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <xsl:template name="httpd_state">
+        <!--
+            TEMPLATE - httpd_state
+            
+            This template is used to create an individual <httpd_state> element.  This
+            element outlines a specific piece of information to evaluate an object
+            against.  For our use here, we will be evaulating the version of HTTPD.
+            The id associated with the state is determined by using the version (without
+            the periods) of httpd being tested for.  This will work as long as we only
+            have version tests.
+        -->
+        <xsl:variable name="state_id">oval:org.apache.httpd:ste:<xsl:value-of select="substring-before(@version,'.')"/><xsl:value-of select="substring-before(substring-after(@version,'.'),'.')"/><xsl:value-of select="substring-after(substring-after(@version,'.'),'.')"/></xsl:variable>
+        <!--
+            Create a comment for the state.
+        -->
+        <xsl:variable name="state_comment">the version of <xsl:value-of select="@prod"/> is <xsl:value-of select="@version"/></xsl:variable>
+        <!--
+            Print out the actual state element.
+        -->
+        <xsl:element name="httpd_state" namespace="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache">
+            <xsl:attribute name="id"><xsl:value-of select="$state_id"/></xsl:attribute>
+            <xsl:attribute name="version">1</xsl:attribute>
+            <xsl:attribute name="comment"><xsl:value-of select="$state_comment"/></xsl:attribute>
+            <version datatype="version" operation="equals" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#apache">
+                <xsl:value-of select="@version"/>
+            </version>
+        </xsl:element>
+    </xsl:template>
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
+</xsl:stylesheet>

Propchange: httpd/site/trunk/content/stylesheets/httpd-oval.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/project.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/project.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/project.xml (added)
+++ httpd/site/trunk/content/stylesheets/project.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project href="http://httpd.apache.org/">
+
+<title>The Apache HTTP Server Project</title>
+<body>
+<menu><title>Essentials</title>
+  <li><a href="/ABOUT_APACHE.html">About</a></li>
+  <li><a href="http://www.apache.org/licenses/">License</a></li>
+  <li><a href="http://wiki.apache.org/httpd/FAQ">FAQ</a></li>
+  <li><a href="/security_report.html">Security<br />Reports</a></li>
+</menu>
+
+<menu><title>Download!</title>
+  <li><a href="/download.cgi">from a mirror</a></li>
+</menu>
+
+<menu><title href="/docs/">Documentation</title>
+  <li><a href="/docs/2.4/">Version 2.4</a></li>
+  <li><a href="/docs/2.2/">Version 2.2</a></li>
+  <li><a href="/docs/2.0/">Version 2.0</a></li>
+  <li><a href="/docs/trunk/">Trunk</a> (dev)</li>
+  <li><a href="http://wiki.apache.org/httpd/">Wiki</a></li>
+</menu>
+
+<menu><title>Get Support</title>
+  <li><a href="/support.html">Support</a></li>
+</menu>
+
+<menu><title>Get Involved</title>
+  <li><a href="/lists.html">Mailing Lists</a></li>
+  <li><a href="/bug_report.html">Bug Reports</a></li>
+  <li><a href="/dev/">Developer Info</a></li>
+</menu>
+
+<menu><title>Subprojects</title>
+  <li><a href="/docs-project/">Docs</a></li>
+  <li><a href="/test/">Test</a></li>
+  <li><a href="/test/flood/">Flood</a></li>
+  <li><a href="/apreq/">libapreq</a></li>
+  <li><a href="/modules/">Modules</a></li>
+  <li><a href="/mod_fcgid/">mod_fcgid</a></li>
+  <li><a href="/mod_ftp/">mod_ftp</a></li>
+</menu>
+
+<menu><title href="/info/">Miscellaneous</title>
+  <li><a href="/contributors/">Contributors</a></li>
+  <li><a href="http://www.apache.org/foundation/thanks.html">Sponsors</a></li>
+  <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+</menu>
+</body>
+</project>

Propchange: httpd/site/trunk/content/stylesheets/project.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/securitydates.xsl
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/securitydates.xsl?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/securitydates.xsl (added)
+++ httpd/site/trunk/content/stylesheets/securitydates.xsl Sun May  6 13:14:42 2012
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<xsl:template name="dateformat">
+
+  <xsl:param name="date" select="."/>
+
+  <xsl:variable name="day" select="number(substring($date,7,2))"/>
+  <xsl:variable name="month" select="number(substring($date,5,2))"/>
+  <xsl:variable name="year" select="number(substring($date,1,4))"/>
+  
+  <xsl:if test="$day &gt; 0"> 
+  <xsl:value-of select="$day" />
+  
+    <xsl:choose>
+      <xsl:when test="$day=1 or $day=21 or $day=31">st</xsl:when>
+      <xsl:when test="$day=2 or $day=22">nd</xsl:when>
+      <xsl:when test="$day=3 or $day=23">rd</xsl:when>
+      <xsl:otherwise>th</xsl:otherwise>
+    </xsl:choose>
+    
+    <xsl:text>&#160;</xsl:text>
+  </xsl:if>
+
+  <xsl:call-template name="whatmonth">
+  <xsl:with-param name="month" select="$month"/>
+  </xsl:call-template>
+  
+  <xsl:if test="$year&gt;0">
+    <xsl:text>&#160;</xsl:text>
+    <xsl:value-of select="$year"/>
+    </xsl:if>
+    
+</xsl:template>
+
+<xsl:template name="whatmonth">
+<xsl:param name="month" select="."/>
+  <xsl:choose>
+    <xsl:when test="$month=01">January</xsl:when>
+    <xsl:when test="$month=02">February</xsl:when>
+    <xsl:when test="$month=03">March</xsl:when>
+    <xsl:when test="$month=04">April</xsl:when>
+    <xsl:when test="$month=05">May</xsl:when>
+    <xsl:when test="$month=06">June</xsl:when>
+    <xsl:when test="$month=07">July</xsl:when>
+    <xsl:when test="$month=08">August</xsl:when>
+    <xsl:when test="$month=09">September</xsl:when>
+    <xsl:when test="$month=10">October</xsl:when>
+    <xsl:when test="$month=11">November</xsl:when>
+    <xsl:when test="$month=12">December</xsl:when>
+  </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>

Propchange: httpd/site/trunk/content/stylesheets/securitydates.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/securitydb.xsl
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/securitydb.xsl?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/securitydb.xsl (added)
+++ httpd/site/trunk/content/stylesheets/securitydb.xsl Sun May  6 13:14:42 2012
@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<xsl:output indent="yes" encoding="ISO-8859-1" method="xml"/>
+
+<xsl:include href="./securitydates.xsl"/>
+<xsl:param name="majorversion" select="0"/>
+<xsl:param name="extratext"/>
+
+<xsl:key name="unique-version" match="@fixed" use="."/>
+
+<xsl:template match="security">
+    <document>
+      <properties>
+        <author email="security@httpd.apache.org">Apache HTTP Server Security Team</author>
+        <title>Apache httpd <xsl:value-of select="$majorversion"/> vulnerabilities</title>
+      </properties>
+<body>
+<section id="top">
+        <title>Apache httpd <xsl:value-of select="$majorversion"/> vulnerabilities</title>
+
+<p>This page lists all security vulnerabilities fixed in released
+versions of Apache httpd <xsl:value-of select="$majorversion"/>.  Each
+vulnerability is given a security <a
+href="/security/impact_levels.html">impact rating</a> by the Apache
+security team - please note that this rating may well vary from
+platform to platform.  We also list the versions of Apache httpd the
+flaw is known to affect, and where a flaw has not been verified list
+the version with a question mark.  </p>
+
+<p> Please note that if a vulnerability is shown below as being fixed
+in a "-dev" release then this means that a fix has been applied to
+the development source tree and will be part of an upcoming full release.</p>
+
+<p> This page is created from a database of vulnerabilities originally
+populated by Apache Week.  Please send comments or corrections for
+these vulnerabilities to the <a href="/security_report.html">Security
+Team</a>.  </p>
+
+<xsl:if test="$extratext !=''">
+<p><xsl:value-of disable-output-escaping="yes" select="$extratext"/></p>
+</xsl:if>
+
+</section>
+
+<xsl:for-each select="issue/@fixed[generate-id()=generate-id(key('unique-version',.))]">
+<xsl:variable name="ver" select="."/>
+<xsl:if test="substring($ver,1,3)=$majorversion">
+  <section id="{$ver}"><title>
+    <xsl:choose>
+    <xsl:when test="substring($ver,4)='-never'">
+Not fixed in Apache httpd <xsl:value-of select="$majorversion"/>
+    </xsl:when>
+    <xsl:otherwise>
+Fixed in Apache httpd <xsl:value-of select="$ver"/>
+    </xsl:otherwise>
+    </xsl:choose>
+    </title>
+             <dl>
+                <xsl:apply-templates select="../../issue[@fixed=$ver]">
+		  <xsl:sort select="./severity[@level]" order="ascending"/>
+	        </xsl:apply-templates>
+             </dl>
+             </section>
+          </xsl:if>
+        </xsl:for-each>
+      </body>
+    </document>
+</xsl:template>
+
+<xsl:template match="issue">
+  <dd>
+  <b><xsl:value-of select="severity"/>: </b>
+  <b><name name="{cve/@name}"><xsl:value-of select="title"/></name></b>
+  <xsl:apply-templates select="cve"/>
+  <xsl:copy-of select="description/*"/>
+  </dd>
+
+  <xsl:if test="acknowledgements != ''">
+    <dd>
+      <p>Acknowledgements: <xsl:value-of select="acknowledgements"/></p>
+    </dd>
+  </xsl:if>
+
+  <dd>
+  <xsl:if test="@reported != ''">
+  <xsl:if test="@public != @reported">
+  Reported to security team: <xsl:call-template name="dateformat">
+    <xsl:with-param name="date" select="@reported"/>
+  </xsl:call-template><br/>
+  </xsl:if>
+  </xsl:if>
+  <xsl:if test="@public != ''">
+  Issue public: <xsl:call-template name="dateformat">
+    <xsl:with-param name="date" select="@public"/>
+  </xsl:call-template><br/>
+  </xsl:if>
+
+  <xsl:if test="@released != ''">
+  Update released: <xsl:call-template name="dateformat">
+    <xsl:with-param name="date" select="@released"/>
+  </xsl:call-template><br/>
+  </xsl:if>
+  </dd>
+
+  <dd>
+  <xsl:for-each select="affects|maybeaffects">
+    <xsl:if test="position() = 1">
+      Affected: 
+    </xsl:if>
+    <xsl:value-of select="@version"/>
+    <xsl:if test="name() = 'maybeaffects'">
+      <xsl:text>?</xsl:text>
+    </xsl:if>
+    <xsl:if test="position() != last()">
+      <xsl:text>, </xsl:text>
+    </xsl:if>
+  </xsl:for-each>
+  <p/>
+</dd>
+</xsl:template>
+
+<xsl:template match="cve">
+<xsl:if test="@description = 'full'">
+The Common Vulnerabilities and Exposures project
+has assigned the name 
+</xsl:if>
+<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name={@name}"><xsl:value-of select="@name"/></a>
+<xsl:if test="@description = 'full'">
+ to this issue.
+</xsl:if>
+</xsl:template>
+
+</xsl:stylesheet>
+
+

Propchange: httpd/site/trunk/content/stylesheets/securitydb.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/stylesheets/site.vsl
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/stylesheets/site.vsl?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/stylesheets/site.vsl (added)
+++ httpd/site/trunk/content/stylesheets/site.vsl Sun May  6 13:14:42 2012
@@ -0,0 +1,277 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+               "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+##
+## Content Stylesheet for Site
+##
+## Defined variables
+##
+#set ($bodybg = "#ffffff")
+#set ($bodyfg = "#000000")
+#set ($bodylink = "#525D76")
+#set ($bannerbg = "#525D76")
+#set ($bannerfg = "#ffffff")
+#set ($subbannerbg = "#828DA6")
+#set ($subbannerfg = "#ffffff")
+#set ($tablethbg = "#039acc")
+#set ($tabletdbg = "#a0ddf0")
+#set ($tabletebg = "#ffffff")
+##    
+## This is where the macros live
+##
+#macro ( relativise $elem )
+#if ($elem.getAttribute("href"))
+#set ($href = $elem.getAttributeValue("href"))
+#if ($href.startsWith("/"))
+#set ($elem = $elem.setAttribute("href", "$relativePath$href"))
+#end
+#end
+#if ($elem.getAttribute("src"))
+#set ($href = $elem.getAttributeValue("src"))
+#if ($href.startsWith("/"))
+#set ($elem = $elem.setAttribute("src", "$relativePath$href"))
+#end
+#end
+#end
+##
+##
+#macro ( color_cell $elem $color )
+#if (! $elem.getAttributeValue("bgcolor"))
+#set ($elem = $elem.setAttribute("bgcolor", "$color"))
+#end
+#if (! ($elem.getText().length() != 0 || $elem.hasChildren()) )
+## we need content in order for the color to show up on Navigator
+## #set ($elem = $elem.addContent( new org.jdom.CDATA("&nbsp;") ))
+#if ($color == $tabletebg)
+#set ($elem = $elem.setText(" "))
+#else
+#set ($elem = $elem.setText("."))
+#end
+#end
+#end
+##
+##
+#macro ( color_table $table )
+<font color="#000000" size="-1" face="arial,helvetica,sanserif">
+#foreach ( $tw in $treeWalk.allElements($table) )
+#if ($tw.getName().equals("td"))
+#color_cell ($tw $tabletdbg)
+#elseif ($tw.getName().equals("th"))
+#color_cell ($tw $tablethbg)
+#elseif ($tw.getName().equals("trh"))
+#color_cell ($tw $tablethbg)
+#set ($tw = $tw.setAttribute("align", "left"))
+#set ($tw = $tw.setName("th"))
+#elseif ($tw.getName().equals("te"))
+#color_cell ($tw $tabletebg)
+#set ($tw = $tw.setName("td"))
+#end
+#end
+#if (! $table.getAttributeValue("width"))
+#set ($table = $table.setAttribute("width", "100%"))
+#end
+$table
+</font>
+#end
+##
+##
+#macro ( make_note $note)
+<table border="1" cellpadding="5"><tr><td>
+$note
+</td></tr></table>
+#end
+##
+##
+#macro ( metaauthor $author $email )
+<meta name="author" content="$author" /><meta name="email" content="$email" />
+#end
+##
+##
+#macro ( source $value )
+<div align="left">
+  <table cellspacing="4" cellpadding="0" border="0">
+    <tr>
+      <td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+      <td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+      <td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+    </tr>
+    <tr>
+      <td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+      <td bgcolor="#ffffff"><pre>$escape.getText($value.getText())</pre></td>
+      <td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+    </tr>
+    <tr>
+      <td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+      <td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+      <td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
+    </tr>
+  </table>
+</div>
+#end
+##
+##
+#macro ( section $section $level )
+#if ($section.getChild("title"))
+#set ($heading = $section.getChildText("title"))
+#elseif ($section.getAttributeValue("id"))
+#set ($heading = $section.getAttributeValue("id"))
+#else
+#set ($heading = "")
+#end
+<table border="0" cellspacing="0" cellpadding="2" width="100%">
+ <tr>
+#if ($level == 1)
+ <td bgcolor="$bannerbg">
+  <font color="$bannerfg" face="arial,helvetica,sanserif">
+#elseif ($level == 2)
+ <td bgcolor="$subbannerbg">
+  <font color="$subbannerfg" face="arial,helvetica,sanserif">
+#else
+ <td bgcolor="$bodybg">
+  <font color="$bodyfg" face="arial,helvetica,sanserif">
+#end
+#if ($section.getAttributeValue("id"))
+   <a name="$section.getAttributeValue("id")"><strong>$heading</strong></a>
+#else
+   <strong>$heading</strong>
+#end
+  </font>
+ </td>
+#if ($section.getAttributeValue("date"))
+#if ($level == 1)
+ <td bgcolor="$bannerbg" align="right">
+  <font color="$bannerfg" face="arial,helvetica,sanserif">
+#elseif ($level == 2)
+ <td bgcolor="$subbannerbg" align="right">
+  <font color="$subbannerfg" face="arial,helvetica,sanserif">
+#else
+ <td bgcolor="$bodybg" align="right">
+  <font color="$bodyfg" face="arial,helvetica,sanserif">
+#end
+   <strong>$section.getAttributeValue("date")</strong>
+  </font>
+ </td>
+ </tr>
+ <tr><td colspan="2">
+#else
+ </tr>
+ <tr><td>
+#end
+  <blockquote>
+## First, walk the tree and relativise any absolute path URI references
+##foreach ( $tw in $treeWalk.allElements($section) )
+##relativise ($tw)
+##end
+## Second, output the section-level children with transformers
+#foreach ( $items in $section.getChildren() )
+#if ($items.getName().equals("source"))
+#source ($items)
+#elseif ($items.getName().equals("table"))
+#color_table ($items)
+#elseif ($items.getName().equals("note"))
+#make_note ($items.getContent())
+#elseif ($items.getName().equals("section"))
+#set ($sublevel = $level + 1)
+#section ($items $sublevel)
+#elseif ($items.getName().equals("title"))
+## we already handled this one
+#else
+$items
+#end
+#end
+  </blockquote>
+ </td></tr>
+## <tr><td><br/></td></tr>
+</table>
+#end
+##
+##
+#macro ( makeProject )
+#set ($menus = $project.selectNodes("body/menu"))
+#foreach ( $menu in $menus )
+##foreach ( $tw in $menu.selectNodes("//*") )
+##relativise ($tw)
+##end
+#set ($title = $menu.getChild("title"))
+#if ($title.getAttributeValue("href"))
+      <p><b><a 
+href="$title.getAttributeValue("href")">$menu.getChildText("title")</a></b></p>
+#else
+      <p><b>$menu.getChildText("title")</b></p>
+#end
+#if ($menu.getChild("li"))
+    <menu compact="compact">
+    #foreach ( $item in $menu.getChildren("li") )
+      $item
+    #end
+    </menu>
+#end
+#end
+#end
+##
+##
+#macro ( getProjectImage )
+#if ($project.getChild("logo"))
+<table border="0" width="100%" cellspacing="4">
+<td align="left" valign="top">
+<a href="/"><img src="$relativePath/images/httpd_logo_wide.gif" alt="The Apache HTTP Server Project" border="0"/></a>
+</td>
+<td align="right">
+#set ( $logoString = $project.getChild("logo").getAttributeValue("href") )
+#if ( $logoString.startsWith("/") )
+<a href="$project.getAttributeValue("href")"><img src="$relativePath$logoString" alt="$project.getChild("logo").getText()" border="0"/></a>
+#else
+<a href="$project.getAttributeValue("href")"><img src="$relativePath/$logoString" alt="$project.getChild("logo").getText()" border="0"/></a>
+#end
+</td></table>
+#else
+<p><a href="/"><img src="$relativePath/images/httpd_logo_wide.gif" alt="The Apache HTTP Server Project" border="0"/></a></p>
+##<td width="150" valign="middle" align="center">
+##  <p><b><a href="http://www.apache.org/dyn/closer.cgi">Mirrored<br />
+##                                                       Worldwide</a></b></p>
+##</td>
+#end
+#end
+##
+##
+<html>
+ <head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+  #set ($authors = $root.getChild("properties").getChildren("author"))
+  #foreach ( $au in $authors )
+   #metaauthor ( $au.getText() $au.getAttributeValue("email") )
+  #end
+  <title>$root.getChild("properties").getChild("title").getText() - $project.getChild("title").getText()</title>
+ </head>
+ <body bgcolor="$bodybg" text="$bodyfg" link="$bodylink">
+#getProjectImage()
+ <table border="0" width="100%" cellspacing="4">
+   <tr>
+    <!-- LEFT SIDE NAVIGATION -->
+    <td valign="top" nowrap="nowrap">
+     #makeProject()
+    </td>
+    <!-- RIGHT SIDE INFORMATION -->
+    <td align="left" valign="top">
+     #set ($allSections = $root.getChild("body").getChildren("section"))
+     #foreach ( $section in $allSections )
+      #section ($section 1)
+     #end
+    </td>
+   </tr>
+   <!-- FOOTER -->
+   <tr><td colspan="2"><hr noshade="noshade" size="1"/></td></tr>
+   <tr><td colspan="2" align="center">
+       <font size="-1">
+         <em>Copyright &copy; 2012 The Apache Software Foundation</em>
+       </font>
+     </td>
+   </tr>
+   <tr><td colspan="2" align="center">
+       <font size="-1">
+         <em>Apache HTTP Server, Apache, and the Apache feather logo are trademarks of The Apache Software Foundation.</em>
+       </font>
+     </td>
+   </tr>
+  </table>
+ </body>
+</html>

Propchange: httpd/site/trunk/content/stylesheets/site.vsl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/support.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/support.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/support.xml (added)
+++ httpd/site/trunk/content/support.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <author email="docs@httpd.apache.org">Documentation Group</author>
+    <title>Apache HTTP Server Support</title>
+  </properties>
+<body>
+<section>
+<title>Apache HTTP Server Support</title>
+
+<p>There are several places to obtain support for Apache httpd. They are
+presented here in the order in which you should probably consult
+them.</p>
+
+<p><a href="http://httpd.apache.org/docs/current">The documentation</a>
+is the definitive source for information about the Apache httpd. The
+answers to your qestions are probably there.</p>
+
+<p>The <a
+href="/lists.html#http-users">Apache HTTP Server Users List</a>, or the
+Usenet groups listed on that same page, are great places to ask
+questions when you are willing to wait a few hours, or possibly a few
+days, for an answer. These lists are frequented by people intimately
+familiar with the Apache httpd, who are willing to address your
+questions. You are strongly encouraged to consult the <a
+href="http://httpd.markmail.org/">archives</a> prior to asking a
+question.</p>
+
+<p>The <code>#httpd</code> channel on the <a
+href="http://freenode.net/irc_servers.shtml">irc.freenode.net</a> IRC
+network is a good place for quick questions. If your questions require a
+more in-depth answer, you will likely be encouraged to move the question
+to the mailing list.</p>
+
+<p>If you think that you have found a bug in the software, or if you
+have a feature request, you can report these via the <a
+href="/bug_report.html">bug report page.</a></p>
+
+<p>Commercial support for Apache httpd is available from a number of
+third-party companies. We do not maintain a list of these companies,
+however, and we encourage you to use your favorite search engine to find
+one.</p>
+
+</section>
+</body>
+</document>

Propchange: httpd/site/trunk/content/support.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/test/flood/building.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/test/flood/building.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/test/flood/building.xml (added)
+++ httpd/site/trunk/content/test/flood/building.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,129 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <author email="docs@httpd.apache.org">Documentation Group</author>
+    <title>Compiling and running Flood</title>
+  </properties>
+<body>
+
+<section id="Overview">
+<title>Overview</title>
+<p>This document explains how to compile and run flood.</p>
+
+<p>Flood is built around 
+<a href="http://apr.apache.org/">Apache Portable Runtime</a> - specifically 
+apr and apr-util.</p>
+
+<p>Flood has been primarily developed on Linux and Solaris.  FreeBSD is also
+known to work.  Since flood is built around APR, any APR-supported platform
+should work without too much hassle.  We expect Win32 would work with some 
+additional magic provided someone has the time and inclination to do so.  
+APR has completed most of the dirty work, but none of the current flood 
+developers use Win32.</p>
+</section>
+
+<section id="Checkout">
+<title>Checking out flood</title>
+
+<p>The current copy of flood is available via Subversion.  Flood also depends
+on the apr and apr-util packages available from the same Subversion
+repository.</p>
+
+<p><b><font color="red">Note:</font></b> Flood will automatically detect
+and configure APR and APR-util if they are in the appropriate 
+subdirectories.  If you have an already installed copy of APR and 
+APR-util (such as the ones that come with httpd-2.0 or Subversion), you 
+may specify --with-apr and --with-apr-util at configure-time.</p>
+
+<pre>
+ % svn co http://svn.apache.org/repos/asf/httpd/flood/trunk flood
+ % cd flood
+ % svn co http://svn.apache.org/repos/asf/apr/apr/trunk apr
+ % svn co http://svn.apache.org/repos/asf/apr/apr-util/trunk apr-util
+</pre>
+</section>
+
+<section id="Configuring">
+<title>Configuring flood and its dependencies</title>
+
+<p>Now that you have all of the required modules checked out, you now
+need to generate the configure scripts and execute them for your
+platform.</p>
+
+<h3>Flood and SSL support</h3>
+<p><b><font color="red">Note:</font></b> SSL support is <b>not</b> 
+enabled by default in flood.  If you wish to enable SSL support, you 
+must specify <code>--enable-ssl</code> when configuring flood.</p>
+
+<p>If you attempt to run flood against a https URL without SSL
+support compiled-in, you will receive an error similar to the 
+following:</p>
+
+<pre>
+ % ./flood examples/round-robin-ssl.xml
+ open request failed (https://www.modssl.org/example/test.phtml).
+ Error running farmer 'Joe': This function has not been implemented on this
+ platform
+</pre>
+
+<p>The <code>--enable-ssl</code> option enables detection of the
+OpenSSL libraries.  If flood can not automatically detect OpenSSL, 
+you will need to specify <code>--with-openssl</code> to point at 
+the appropriate installed version of OpenSSL.  The 
+<code>--with-capath</code> option points at a directory that contains 
+the Certificate Authorities (<b>CA</b>s) for OpenSSL.  The default 
+capath is in <code>$openssl_prefix/certs</code>.</p>
+
+<h3>Running configure from the flood directory</h3>
+<pre>
+ % ./buildconf
+ % ./configure --disable-shared
+</pre>
+</section>
+
+<section id="Compiling">
+<title>Compiling flood and its dependencies</title>
+
+<p>In this example, APR and apr-util will automatically be built with
+flood.  So, you only need to issue a make in the flood directory.</p>
+
+<pre>
+ % make all
+</pre>
+</section>
+
+<section id="Running">
+<title>Running flood</title>
+
+<p>By default, flood is a static executable, so the executable is 
+relocatable.  There are some example flood profiles in the examples/
+directory from CVS.</p>
+
+<pre>
+ % ./flood examples/round-robin.xml &gt; foo.out
+</pre>
+</section>
+
+<section id="Analysis">
+<title>Analyzing flood output</title>
+
+<p>The foo.out file generated above is in a simple easy-to-parse format.
+There are some included shell and awk scripts in the examples directory
+that provide some easy mechanisms to extract info from the flood output
+files.</p>
+
+<pre>
+ % ./examples/analyze-relative foo.out
+</pre>
+</section>
+
+<section id="Questions">
+<title>Questions</title>
+
+<p>This should provide a quick and easy way to jumpstart your flood
+installation.  If you have any questions, please email the 
+dev@httpd.apache.org mailing list.</p>
+</section>
+
+</body>
+</document>

Propchange: httpd/site/trunk/content/test/flood/building.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/test/flood/faq.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/test/flood/faq.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/test/flood/faq.xml (added)
+++ httpd/site/trunk/content/test/flood/faq.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,88 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <author email="docs@httpd.apache.org">Documentation Group</author>
+    <title>FAQ</title>
+  </properties>
+<body>
+
+<section id="Questions">
+<title>Frequently Asked Questions</title>
+
+<ul>
+<li><a href="#WhatIsFlood">What is Flood?</a></li>
+<li><a href="#FloodFeatures">What are some of the features of Flood?</a></li>
+<li><a href="#FloodRegex">How does Flood retrieve variables from pages?</a></li>
+<li><a href="#FloodSSL">Can I use Flood with SSL sites?</a></li>
+<li><a href="#TCPFIN">Flood seems like it is stalling.</a></li>
+</ul>
+</section>
+
+<section id="WhatIsFlood">
+<title>What is Flood?</title>
+<p>Flood is a profile-driven HTTP load tester.  In layman's terms,
+it means that flood is capable of generating large amounts of web
+traffic.  Flood's flexibility and power arises in its configuration
+syntax.  It is able to work well with dynamic content.</p>
+</section>
+
+<section id="FloodFeatures">
+<title>What are some of the features of Flood?</title>
+<ul>
+<li>XML-based configuration</li>
+<li>Able to set and retrieve variables from pages</li>
+<li>Uses threads and processes intelligently to scale</li>
+<li>Works with SSL</li>
+</ul>
+</section>
+
+<section id="FloodRegex">
+<title>How does Flood retrieve variables from pages?</title>
+
+<p>Flood's configuration syntax allows for regular expression
+matching to isolate values in a page.</p>
+
+<p>Consider placing an order on a website.  You add the order and
+you know that the order confirmation page has the following format:</p>
+
+<pre>"Order XYZZY placed successfully."</pre>
+
+<p>By using the following semantics, flood can store XYZZY into the
+OrderID variable:</p>
+
+<pre>responsetemplate=&quot;Order ([^ ]*) placed successfully&quot; responsename="OrderID"</pre>
+
+<p>In a subsequent request, you can use this OrderID variable in any
+template variable:</p>
+
+<pre>requesttemplate=&quot;https://localhost/getOrderStatus?orderId=${orderID}&quot;</pre>
+
+<p>This will send the following request:</p>
+
+<pre>https://localhost/getOrderStatus?orderId=XYZZY</pre>
+
+</section>
+
+<section id="FloodSSL">
+<title>Can I use Flood with SSL sites?</title>
+
+<p>Yes.  However, due to export regulations and laws, Flood does not have 
+SSL support enabled by default.  When configuring flood, you must pass
+the <code>--enable-ssl</code> flag.  Flood currently works with 
+OpenSSL.</p>
+
+</section>
+
+<section id="TCPFIN">
+<title>Flood seems like it is stalling.</title>
+
+<!-- Need better information here -->
+
+<p>Your TCP implementation may have run out of ephemeral ports.
+Please consult your operating systems' manuals on how to decrease
+the FIN timeout.</p>
+
+</section>
+
+</body>
+</document>

Propchange: httpd/site/trunk/content/test/flood/faq.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/test/flood/index.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/test/flood/index.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/test/flood/index.xml (added)
+++ httpd/site/trunk/content/test/flood/index.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,111 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <author email="docs@httpd.apache.org">Documentation Group</author>
+    <title>Flood</title>
+  </properties>
+<body>
+<section id="Welcome">
+<title>Flood - a profile-driven HTTP load tester</title>
+
+<p>Flood is a profile-driven HTTP load tester.  It can be used to
+gather important performance metrics for your website.</p>
+
+<p>Please see the <a href="faq.html">FAQ</a> for common questions about 
+flood.</p>
+
+</section>
+
+<section id="Getting">
+<title>Getting and using flood</title>
+
+<p>Please read the <a href="building.html">Building flood</a> document
+for a quick installation guide for flood.</p>
+</section>
+
+<section id="Examples">
+<title>Example profiles</title>
+
+<p>Flood's configuration is XML-based.  Some of the links below showcase some
+of the features available in flood.  All of these files are available in the
+examples directory in flood's Subversion repository.</p>
+
+<ul>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/round-robin.xml">Round-robin annotated flood config example</a> (<b>Recommended for flood newbies</b>)</li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/round-robin-dynamic.xml">An example using dynamic content-specific variables</a></li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/round-robin-keepalive.xml">An example using keepalives</a></li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/round-robin-ssl.xml">An example using SSL</a></li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/round-robin-timed.xml">An example using timers</a></li>
+<li><a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/examples/analyze-relative">A sh/gawk script that shows how to interpret the relative_times output of flood</a></li>
+</ul>
+</section>
+
+<section id="SVN">
+<title>Subversion Access</title>
+
+<p>You may browse the flood's Subversion repository <a href="http://svn.apache.org/repos/asf/httpd/flood/trunk/">online</a> or via <a href="http://svn.apache.org/viewcvs.cgi/httpd/flood/trunk">flood ViewCVS</a></p>
+
+<p>Anonymous Subversion access (via WebDAV) is available.</p>
+
+<pre>
+ % svn co http://svn.apache.org/repos/asf/httpd/flood/trunk flood
+</pre>
+</section>
+
+<section id="Mail">
+<title>Mailing Lists</title>
+
+<p>Our mailing lists are open to the public.</p>
+
+<p>Subscription</p>
+<ul>
+<li><a href="mailto:dev-subscribe@httpd.apache.org">dev@httpd.apache.org</a> - discussion of what to do</li>
+<li><a href="mailto:cvs-subscribe@httpd.apache.org">cvs@httpd.apache.org</a> - commit notifications</li>
+</ul>
+
+<p>Archives</p>
+<ul>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-dev/">dev Archives</a></li>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-cvs/">cvs Archives</a></li>
+<li><a href="http://httpd.apache.org/mail/dev/">dev Archives (Raw)</a></li>
+<li><a href="http://httpd.apache.org/mail/cvs/">cvs Archives (Raw)</a></li>
+</ul>
+
+<p>On December 22, 2005, test-dev@httpd.apache.org was merged with
+dev@httpd.apache.org.  Our old archives are still available.</p>
+
+<ul>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-test-dev/">test-dev Archives</a></li>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-test-cvs">test-cvs Archives</a></li>
+<li><a href="http://httpd.apache.org/mail/test-dev/">test-dev Archives (Raw)</a></li>
+<li><a href="http://httpd.apache.org/mail/test-cvs/">test-cvs Archives (Raw)</a></li>
+</ul>
+
+</section>
+
+<section id="License">
+<title>License</title>
+
+<p>Like all Apache Software Foundation projects, flood is licensed under
+<a href="http://www.apache.org/licenses/">The Apache License</a>.</p>
+</section>
+
+<section id="Search">
+<title>Search Site</title>
+<center>
+<form action="http://search.apache.org/" method="post">
+<input type="text" name="keyword" size="40" />
+<input type="hidden" name="results" value="20" />
+<input type="hidden" name="what" value="httpd.apache.org" />
+<input type="hidden" name="version" value="2" />
+<input type="submit" value="Search Site" />
+</form>
+</center>
+
+<p align="center"><a href="/images/apache_pb.gif"><img border="0"
+src="/images/apache_pb.gif" alt="Powered by Apache" width="259"
+height="32" /></a></p>
+</section>
+
+</body>
+</document>

Propchange: httpd/site/trunk/content/test/flood/index.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/test/index.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/test/index.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/test/index.xml (added)
+++ httpd/site/trunk/content/test/index.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,87 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <author email="docs@httpd.apache.org">Documentation Group</author>
+    <title>Apache HTTP Test Project</title>
+  </properties>
+<body>
+<section id="Welcome">
+<title>Welcome to the Apache HTTP Test Project</title>
+
+<p>This project is focused on designing test tools for the Apache HTTP Server
+Project.  This is a subproject of the <a href="/">Apache HTTP Server Project</a>.</p>
+
+<p>Currently, the following components are available:</p>
+
+<ul>
+<li><a href="flood/">Flood</a> - a profile-driven HTTP load tester</li>
+<li><a href="http://svn.apache.org/viewcvs.cgi/httpd/test/framework/trunk/">Perl Framework</a> - a perl-centric HTTP test kit</li>
+<li><a href="http://perl.apache.org/Apache-Test/">Apache-Test</a> - the testing engine behind the Perl Framework and other HTTP-based projects like mod_perl</li>
+<li><a href="http://svn.apache.org/viewcvs.cgi/httpd/test/specweb99/trunk/">specweb99</a>
+- Modules for <a href="http://www.spec.org/">SPECWeb99</a> tests</li>
+</ul>
+
+</section>
+
+<section id="Mail">
+<title>Mailing Lists</title>
+
+<p>Our mailing lists are open to the public.</p>
+
+<p>Subscription</p>
+<ul>
+<li><a href="mailto:dev-subscribe@httpd.apache.org">dev@httpd.apache.org</a> - discussion of what to do</li>
+<li><a href="mailto:cvs-subscribe@httpd.apache.org">cvs@httpd.apache.org</a> - cvs commit notifications</li>
+</ul>
+
+<p>Archives</p>
+<ul>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-dev/">dev@httpd Archives</a></li>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-cvs/">cvs@httpd Archives</a></li>
+<li><a href="http://httpd.apache.org/mail/dev/">dev@httpd Archives (Raw)</a></li>
+</ul>
+
+<p>On December 22, 2005, test-dev@httpd.apache.org was merged with
+dev@httpd.apache.org.  Our old archives are still available.</p>
+<ul>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-test-dev/">Test-dev Archives</a></li>
+<li><a href="http://mail-archives.apache.org/mod_mbox/httpd-test-cvs/">Test-cvs Archives</a></li>
+<li><a href="http://marc.theaimsgroup.com/?l=apache-test-dev">Test-dev Archives</a></li>
+<li><a href="http://httpd.apache.org/mail/test-dev/">Test-dev Archives (Raw)</a></li>
+<li><a href="http://httpd.apache.org/mail/test-cvs/">Test-cvs Archives (Raw)</a></li>
+</ul>
+</section>
+
+<section id="SVN">
+<title>SVN access</title>
+
+<p>You may browse the httpd-test repositories <a href="http://svn.apache.org/viewcvs.cgi/httpd/test/">online</a>.</p>
+
+<p>Anonymous <a href="http://subversion.apache.org/">Subversion</a> 
+is available.</p>
+<pre>
+ % svn checkout http://svn.apache.org/repos/asf/httpd/test/framework/trunk/ httpd-framework
+ % svn checkout http://svn.apache.org/repos/asf/httpd/test/flood/trunk/ flood
+ % svn checkout http://svn.apache.org/repos/asf/httpd/test/specweb99/trunk/ httpd-specweb
+</pre>
+
+<section id="Search">
+<title>Search Site</title>
+<center> 
+<form action="http://search.apache.org/" method="post">
+<input type="text" name="keyword" size="40" />
+<input type="hidden" name="results" value="20" />
+<input type="hidden" name="what" value="httpd.apache.org" />
+<input type="hidden" name="version" value="2" />
+<input type="submit" value="Search Site" />
+</form>
+</center>
+
+<p align="center"><a href="/images/apache_pb.gif"><img border="0"
+src="/images/apache_pb.gif" alt="Powered by Apache" width="259"
+height="32" /></a></p>
+</section>
+
+</section>
+</body>
+</document>

Propchange: httpd/site/trunk/content/test/index.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/usersdelist.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/usersdelist.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/usersdelist.xml (added)
+++ httpd/site/trunk/content/usersdelist.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Users-DE Mailing List</title>
+  </properties>
+<body>
+<section id="Welcome">
+<title>German-language Users Mailing List</title>
+
+<p>This mailing list is a place for users of the Apache HTTP Server to
+discuss Apache and help each other to install and configure the
+software.  Although some developers may participate in the list,
+the primary interaction is user-to-user.</p>
+
+<p>Please read the following guidelines before posting to the list.</p>
+
+<dl>
+<dt><strong>There is no official support for the Apache HTTP
+Server:</strong></dt><dd>This mailing list is for users to help other users.
+If you want professional support, we suggest you contact a <a
+href="http://www.apache.org/info/support.cgi">professional</a>.
+</dd>
+
+<dt><strong>Ask smart questions:</strong></dt><dd>Eric Raymond and
+Rick Moen have written a very useful guide to <a
+href="http://www.catb.org/~esr/faqs/smart-questions.html">Asking
+Questions the Smart Way</a>.  <strong>Do not</strong> send Apache
+questions to Eric or Rick!</dd>
+
+<dt><strong>Send in plain text:</strong></dt><dd>Many email programs including
+Microsoft Outlook default to sending HTML or other <em>styled</em> email.
+Please configure your email client to send plain text so that everyone
+will be able to read your message.</dd>
+
+<dt><strong>Send German mails:</strong></dt><dd>The users-de list
+is a German-language mailing list. English mails should be directed
+to our <a href="userslist.html">English-language mailing list</a>.</dd>
+
+<dt><strong>Don't ask FAQs:</strong></dt><dd>Be sure to read the <a
+href="http://wiki.apache.org/httpd/FAQ">FAQ</a> and search the <a
+href="#archives">archives</a> before you post.</dd>
+
+<dt><strong>Find the best group:</strong></dt> <dd>Although we welcome
+discussion of anything related to the Apache HTTP Server, you will
+have the most luck in getting problems solved if you ask your
+questions in the group most targeted to your problem.  For example, if
+you have a problem with a module that is not distributed as part of
+the standard Apache HTTP Server, you will probably find a more knowledgable
+group by sending to a mailing list devoted to that module. In general, mails to
+these groups should be sent in English.
+Some examples:
+<ul>
+<li><a href="http://www.php.net/support.php">PHP</a></li>
+<li><a href="http://perl.apache.org/#maillists">mod_perl</a></li>
+<li><a href="http://jakarta.apache.org/site/mail.html">Jakarta/mod_jk/mod_webapp</a></li>
+<li><a href="http://www.modssl.org/support/">mod_ssl</a></li>
+</ul></dd>
+
+</dl>
+
+</section>
+<section id="subscribe">
+<title>Subscribe</title>
+
+<p>To subscribe, send an empty message to
+<code><strong>users-de-subscribe@httpd.apache.org</strong></code>.  You
+will receive a confirmation message with instructions on how to
+validate your subscription.  After you have subscribed, you can post
+to the list by sending messages to
+<code><strong>users-de@httpd.apache.org</strong></code>.  You cannot post
+to the list without subscribing.</p>
+
+</section>
+<section id="unsubscribe">
+<title>Un-Subscribe</title>
+
+<p>To unsubscribe, send a messages to
+<code><strong>users-de-unsubscribe@httpd.apache.org</strong></code>.
+You must send the unsubscribe message from the same email address that
+you used to subscribe to the list.</p>
+</section>
+
+<section id="archives">
+<title>Archives</title>
+
+<p>Archives are available at <a
+href="http://marc.theaimsgroup.com/?l=apache-httpd-users-de">MARC</a>,
+<a href="http://mail-archives.apache.org/eyebrowse/SummarizeList?listId=167"
+>ASF Eyebrowse</a>,
+or in <a href="http://httpd.apache.org/mail/users-de/">raw mbox format</a>.
+If you can contribute a mirror archive, please let us know.</p>
+
+<p>In addition, you can search the
+<a href="http://groups.google.de/groups?q=comp.infosystems.www.servers">English</a>
+or
+<a href="http://groups.google.de/groups?q=de.comm.infosystems.www.servers">German</a>
+usenet newsgroups for a much larger archive of Apache-related
+postings.
+
+</p>
+
+</section>
+</body>
+</document>

Propchange: httpd/site/trunk/content/usersdelist.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/content/userslist.xml
URL: http://svn.apache.org/viewvc/httpd/site/trunk/content/userslist.xml?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/content/userslist.xml (added)
+++ httpd/site/trunk/content/userslist.xml Sun May  6 13:14:42 2012
@@ -0,0 +1,130 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Users Mailing List</title>
+  </properties>
+<body>
+<section id="Welcome">
+<title>Users Mailing List</title>
+
+<p>This mailing list is a place for users of the Apache HTTP Server to
+discuss Apache and help each other to install and configure the
+software.  Although some developers may participate in the list,
+the primary interaction is user-to-user.</p>
+
+<p>Please read the following guidelines before posting to the list.</p>
+
+<dl>
+<dt><strong>There is no official support for the Apache HTTP
+Server:</strong></dt><dd>This mailing list is for users to help other users.
+If you want professional support, there are a number of companies that
+provide such services. We do not, however, maintain a list of them, and
+recommend that you use your favorite search engine.
+</dd>
+
+<dt><strong>Ask smart questions:</strong></dt><dd>Eric Raymond and
+Rick Moen have written a very useful guide to <a
+href="http://www.catb.org/~esr/faqs/smart-questions.html">Asking
+Questions the Smart Way</a>. <strong>Do not</strong> send Apache
+questions to Eric or Rick!</dd>
+
+<dt><strong>Send in plain text:</strong></dt><dd>Many email programs including
+Microsoft Outlook default to sending HTML or other <em>styled</em> email.
+Please configure your email client to send plain text so that everyone
+will be able to read your message.</dd>
+
+<dt><strong>Send English mails:</strong></dt><dd>This list
+is an English-language mailing list. German-speaking users may subscribe
+to our <a href="usersdelist.html">German-language mailing list</a>.</dd>
+
+<dt><strong>Don't ask FAQs:</strong></dt><dd>Be sure to read the <a
+href="http://wiki.apache.org/httpd/FAQ">FAQ</a> and search the <a
+href="#archives">archives</a> before you post.</dd>
+
+<dt><strong>Find the best group:</strong></dt> <dd>Although we welcome
+discussion of anything related to the Apache HTTP Server, you will
+have the most luck in getting problems solved if you ask your
+questions in the group most targeted to your problem.  For example, if
+you have a problem with a module that is not distributed as part of
+the standard Apache HTTP Server, you will probably find a more knowledgable
+group by sending to a mailing list devoted to that module.
+Some examples:
+<ul>
+<li><a href="http://www.php.net/support.php">PHP</a></li>
+<li><a href="http://perl.apache.org/maillist/modperl.html">mod_perl</a></li>
+<li><a href="http://tomcat.apache.org/lists.html">Tomcat</a></li>
+</ul></dd>
+
+</dl>
+
+</section>
+<section id="policies">
+  <title>List Policies</title>
+
+  <p>From the welcome message each subscriber receives:</p>
+  <blockquote>
+    Posting is only permitted by subscribed addresses as an anti-spam
+    measure.  The list is moderated by volunteers from the Apache Software
+    Foundation; moderation will mostly be notable by its absence.
+    However, blatant abuse of the forum's purpose or the sensibilities
+    of the subscribers will not be tolerated.  Any action taken
+    by the moderators is final, solely at their discretion, and not
+    subject to formal appeal.
+  </blockquote>
+</section>
+
+<section id="subscribe">
+<title>Subscribe</title>
+
+<p>To subscribe, send an empty message to
+<code><strong>users-subscribe@httpd.apache.org</strong></code>.  You
+will receive a confirmation message with instructions on how to
+validate your subscription.  After you have subscribed, you can post
+to the list by sending messages to
+<code><strong>users@httpd.apache.org</strong></code>.  You cannot post
+to the list without subscribing.</p>
+
+<p>If you prefer to receive a digest version of the list that sends
+groups of messages in a single email, you can subscribe by sending an
+empty message to
+<code><strong>users-digest-subscribe@httpd.apache.org</strong></code>.</p>
+
+</section>
+<section id="unsubscribe">
+<title>Un-Subscribe</title>
+
+<p>To unsubscribe, send a messages to
+<code><strong>users-unsubscribe@httpd.apache.org</strong></code> (or,
+if you are subscribed to the digest version of the list, send to
+<code><strong>users-digest-unsubscribe@httpd.apache.org</strong></code>).
+You must send the unsubscribe message from the same email address that
+you used to subscribe to the list.</p> 
+
+<p>To complete the unsubscription process you must reply to a
+confirmation email.  If you do not receive this confirmation email,
+please check your spam filters to see if they are capturing the
+message.  If all else fails, you can contact the list administrator at
+<code>users-owner&lt;at&gt;httpd.apache.org</code> to get help.</p>
+
+</section>
+
+<section id="archives">
+<title>Archives</title>
+
+<p>Archives are available at the <a
+href="http://mail-archives.apache.org/mod_mbox/httpd-users/">Apache
+Mail Archives</a>, <a href="http://httpd.markmail.org/">MarkMail</a> (great for searching), <a
+href="http://marc.theaimsgroup.com/?l=apache-httpd-users">MARC</a>, <a href="http://mla.canseek.ca/">CanSeek.ca</a>, or
+in <a href="http://httpd.apache.org/mail/users/">raw mbox format</a>.</p>
+
+<p>In addition, you can access this mailing list with the mail-to-news
+<a href="nntp://news.gmane.org/">gateway</a> offered by <a
+href="http://news.gmane.org/index.php?match=gmane.comp.apache">GMANE</a>
+[<a href="nntp://news.gmane.org/gmane.comp.apache.user"
+>gmane.comp.apache.user</a>] or search the <a
+href="http://groups.google.com/groups?group=comp.infosystems.www.servers">usenet
+newsgroups</a> for a much larger archive of Apache-related postings.</p>
+
+</section>
+</body>
+</document>

Propchange: httpd/site/trunk/content/userslist.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: httpd/site/trunk/lib/path.pm
URL: http://svn.apache.org/viewvc/httpd/site/trunk/lib/path.pm?rev=1334622&view=auto
==============================================================================
--- httpd/site/trunk/lib/path.pm (added)
+++ httpd/site/trunk/lib/path.pm Sun May  6 13:14:42 2012
@@ -0,0 +1,33 @@
+package path;
+use ASF::Value;
+
+# taken from django's url.py
+$localMode = 0;
+
+# Patterns should go from more restrictive matches to less restrictive.
+our @patterns = (
+  [qr!test\/flood\/.*?\.mdtext$!, main => { template => "core_flood.html"   }], # /test/flood site
+  [qr!\.mdtext$!, main => { template => "core.html"    }] # Everything else
+) ;
+
+
+1;
+
+=head1 LICENSE
+
+           Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+
+             http://www.apache.org/licenses/LICENSE-2.0
+
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
\ No newline at end of file

Propchange: httpd/site/trunk/lib/path.pm
------------------------------------------------------------------------------
    svn:eol-style = native