Author: buildbot
Date: Mon Oct 15 17:06:15 2012
New Revision: 835139

Log:
Staging update by buildbot for vcl

Added:
    
websites/staging/vcl/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.html
Modified:
    websites/staging/vcl/trunk/content/   (props changed)

Propchange: websites/staging/vcl/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Oct 15 17:06:15 2012
@@ -1 +1 @@
-1398376
+1398387

Added: 
websites/staging/vcl/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.html
==============================================================================
--- 
websites/staging/vcl/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.html
 (added)
+++ 
websites/staging/vcl/trunk/content/docs/UpgradePreviousVersions/UpgradeFrom2.2to2.3.html
 Mon Oct 15 17:06:15 2012
@@ -0,0 +1,298 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+  <link href="/css/vcl.css" rel="stylesheet" type="text/css">
+  <link href="/css/code.css" rel="stylesheet" type="text/css">
+  <title>Apache VCL - </title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+</head>
+
+<body>
+  <div id="sitetitle">
+    <table width="100%" border="0" cellspacing="0" cellpadding="5">
+      <tr>
+         <td><a href="/index.html"><img src="/img/vcl-logo.png" height="100" 
align="left" alt="Apache VCL logo"></a></td>
+         <td><a href="http://www.apache.org";><img src="/img/asf-logo.png" 
align="right" alt="Apache Software Foundation logo"></a></td>
+      </tr>
+    </table>
+  </div>
+
+  <div id="navigation"> 
+  <ul>
+<li>Information<ul>
+<li><a href="/info/about.html">What is VCL?</a></li>
+<li><a href="/info/features.html">Features</a></li>
+<li><a href="/info/architecture.html">Architecture</a></li>
+<li><a href="/info/use-cases.html">Use Cases</a></li>
+<li><a href="/downloads/download.cgi">Download</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0.html";>License</a></li>
+<li><a href="/info/faq.html">FAQ</a></li>
+</ul>
+</li>
+<li><a href="/docs/index.html">Documentation</a><ul>
+<li><a href="/docs/using-vcl.html">Using VCL</a></li>
+<li><a href="/docs/image-creation.html">Image Creation</a></li>
+<li><a href="/docs/administration.html">Administration</a></li>
+<li><a href="/docs/installation.html">Installation</a></li>
+<li><a href="/docs/deployment-planning.html">Deployment Planning</a></li>
+</ul>
+</li>
+<li><a href="/comm/index.html">Community</a><ul>
+<li><a href="/comm/index.html#getInvolved">Getting Involved</a></li>
+<li><a href="/comm/index.html#mail-list">Mailing Lists</a></li>
+<li><a href="/comm/index.html#how-do-i-join-the-project">How can I 
Join</a></li>
+<li><a href="/comm/wiki.html">Wiki</a></li>
+<li><a href="/dev/index.html">Development</a><ul>
+<li><a href="/dev/jira.html">Issue Tracking</a></li>
+<li><a href="/dev/code-documentation.html">Code Documentation</a></li>
+<li><a href="/dev/roadmap.html">Roadmap</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li><a href="http://www.apache.org";>Apache Software Foundation</a><ul>
+<li><a href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html";>Become a 
Sponsor</a></li>
+</ul>
+</li>
+</ul>
+  </div>
+  
+  <div id="content">
+    <h1 class="title"></h1>
+    <p>This page provides information on how to upgrade from VCL 2.2 to VCL 
2.3. Please note it only applies for the upgrade from 2.2 to 2.3, this may or 
may not work for other versions.</p>
+<p><strong>The basic steps that will be performed</strong></p>
+<ul>
+<li>Download and Extract 2.3 code</li>
+<li>Shutdown httpd and vcld services</li>
+<li>Create backup of vcl database</li>
+<li>Update mysql schema</li>
+<li>Update Web code, create a backup, copy in new, make changes</li>
+<li>Restart httpd service</li>
+<li>Update Management node vcl code, create a backup, copy in new, make 
changes</li>
+<li>Restart vcld service</li>
+</ul>
+<h1 id="detailed-steps-for-upgrade-from-221-to-23">Detailed steps for upgrade 
from 2.2.1 to 2.3</h1>
+<ol>
+<li>follow instructions on VCL 2.3 Release page to download and verify 
apache-VCL-2.3.tar.bz2 and put in in /root</li>
+<li>
+<p><strong>extract VCL 2.3 code</strong></p>
+<div class="codehilite"><pre><span class="n">tar</span> <span 
class="n">xjf</span> <span class="n">apache</span><span class="o">-</span><span 
class="n">VCL</span><span class="o">-</span><span class="mf">2.3</span><span 
class="o">.</span><span class="n">tar</span><span class="o">.</span><span 
class="n">bz2</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Shutdown</strong> the httpd and vcld services</p>
+<div class="codehilite"><pre><span class="n">service</span> <span 
class="n">httpd</span> <span class="n">stop</span> <span class="ow">or</span> 
<span class="sr">/etc/i</span><span class="n">nit</span><span 
class="o">.</span><span class="n">d</span><span class="o">/</span><span 
class="n">httpd</span> <span class="n">stop</span>
+<span class="n">service</span> <span class="n">vcld</span> <span 
class="n">stop</span> <span class="ow">or</span> <span 
class="sr">/etc/i</span><span class="n">nit</span><span class="o">.</span><span 
class="n">d</span><span class="o">/</span><span class="n">vcld</span> <span 
class="n">stop</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>We will <strong>create a backup of the vcl database</strong>. This will 
provide a restore point if necessary.</p>
+<div class="codehilite"><pre><span class="n">mysqldump</span> <span 
class="n">vcl</span> <span class="o">&gt;</span> <span class="o">~/</span><span 
class="n">vcl</span><span class="o">-</span><span class="n">pre2</span><span 
class="mf">.3</span><span class="o">-</span><span class="n">upgrade</span><span 
class="o">.</span><span class="n">sql</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>This step <strong>updates the mysql schema</strong>. <em>Note</em>: A new 
resource group is added in update-vcl.sql - <strong>all profiles</strong>. 
Access to manage the group is added to the VCL-&gt;admin node in the privilege 
tree if that node exists. If not, you will need to add it manually after 
starting httpd again. To add it manually, pick a node in the privilege tree, 
scroll to Resources, click Add Resource Group, select serverprofile/all 
profiles from the drop-down box, check available, administer, manageGroup, and 
manageMapping, and click Submit New Resource Group.</p>
+<div class="codehilite"><pre><span class="n">cd</span> <span 
class="sr">/root/</span><span class="n">apache</span><span 
class="o">-</span><span class="n">VCL</span><span class="o">-</span><span 
class="mf">2.3</span>
+<span class="n">mysql</span> <span class="n">vcl</span> <span 
class="o">&lt;</span> <span class="n">mysql</span><span class="o">/</span><span 
class="n">update</span><span class="o">-</span><span class="n">vcl</span><span 
class="o">.</span><span class="n">sql</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>Grant CREATE TEMPORARY TABLES to mysql user
+The web code now requires access to create temporary tables in mysql. You need 
to grant the user your web code uses to access mysql the "CREATE TEMPORARY 
TABLES" permission. Look at the secrets.php file in your web code for the user 
and hostname. For example, if your web code is installed at /var/www/html/vcl, 
your secrets.php file would be /var/www/html/vcl/.ht-inc/secrets.php. Look for 
$vclhost and $vclusername. The secrets.php file might have something like:</p>
+<div class="codehilite"><pre><span class="nv">$vclhost</span> <span 
class="o">=</span> <span class="s">&#39;localhost&#39;</span><span 
class="p">;</span>
+<span class="nv">$vcluser</span> <span class="o">=</span> <span 
class="s">&#39;vcluser&#39;</span><span class="p">;</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>Then, you need to issue the grant command to mysql. Using the values from 
above as examples, connect to mysql and then issue the grant command:</p>
+<div class="codehilite"><pre>
+</pre></div>
+
+
+<p>mysql
+    GRANT CREATE TEMPORARY TABLES ON <code>vcl</code>.* TO 
'vcluser'@'localhost';
+    exit</p>
+</li>
+<li>
+<p><strong>Update the web code</strong>. This step we will move the 2.2 web 
directory out of the way, so we can copy in the new web code base. After 
copying in the new code, we will migrate your configuration changes. These 
instructions assume that you installed the vcl web code at /var/www/html/vcl. 
If you installed it elsewhere, replace /var/www/html/vcl with your vcl web 
root.</p>
+<div class="codehilite"><pre><span class="n">cd</span> <span 
class="sr">/var/</span><span class="n">www</span><span class="o">/</span><span 
class="n">html</span>
+<span class="n">mv</span> <span class="n">vcl</span> <span 
class="o">~/</span><span class="n">vcl_2</span><span class="mf">.2_</span><span 
class="n">web</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Copy the new code</strong> in place</p>
+<div class="codehilite"><pre><span class="n">cd</span> <span 
class="sr">/root/</span><span class="n">apache</span><span 
class="o">-</span><span class="n">VCL</span><span class="o">-</span><span 
class="mf">2.3</span>
+<span class="n">cp</span> <span class="o">-</span><span class="n">r</span> 
<span class="n">web</span> <span class="sr">/var/</span><span 
class="n">www</span><span class="sr">/html/</span><span class="n">vcl</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Copy your 2.2 config files</strong></p>
+<div class="codehilite"><pre><span class="n">cd</span> <span 
class="o">~</span><span class="sr">/vcl_2.2.1_web/</span><span 
class="o">.</span><span class="n">ht</span><span class="o">-</span><span 
class="n">inc</span>
+<span class="n">cp</span> <span class="n">conf</span><span 
class="o">.</span><span class="n">php</span> <span 
class="n">secrets</span><span class="o">.</span><span class="n">php</span> 
<span class="n">pubkey</span><span class="o">.</span><span class="n">pem</span> 
<span class="nb">keys</span><span class="o">.</span><span class="n">pem</span> 
<span class="sr">/var/</span><span class="n">www</span><span 
class="sr">/html/</span><span class="n">vcl</span><span 
class="o">/.</span><span class="n">ht</span><span class="o">-</span><span 
class="n">inc</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Make the maintenance directory writable by the web server 
user</strong>. Normally this is the apache user,  if using a different user 
change below cmd accordingly.</p>
+<div class="codehilite"><pre><span class="nb">chown</span> <span 
class="n">apache</span> <span class="sr">/var/</span><span 
class="n">www</span><span class="sr">/html/</span><span 
class="n">vcl</span><span class="sr">/.ht-inc/m</span><span 
class="n">aintenance</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Make changes to conf.php</strong>:</p>
+<p>a. A new user group permission that controls who can manage block 
allocations globally or for a specific affiliation has been added. It can be 
granted to any user group under Privileges-&gt;Additional User 
Permissions-&gt;Manage Block Allocations. Users with this permission are 
notified of new block allocation requests. <strong>Remove the following from 
conf.php</strong>.</p>
+<div class="codehilite"><pre>    <span class="nv">$blockNotifyUsers</span>
+</pre></div>
+
+
+<p>b. A new user group permission that controls who can look up users globally 
or for a specific affiliation has been added. It can be granted to any user 
group under Privileges-&gt;Additional User Permissions-&gt;User Lookup. Users 
with this permission can look up information about other users. <strong>Remove 
the following from conf.php</strong> </p>
+<div class="codehilite"><pre>    <span class="nv">$userlookupUsers</span>
+</pre></div>
+
+
+<p>c. <strong>Multilingualization</strong> has been added VCL. So, 
<strong>DEFAULTLOCALE</strong> has been added to conf.php to set the default 
locale. <strong>Add the following to conf.php</strong>, changing en_US if 
needed to match your locale. You can look in /var/www/html/vcl/locale to see 
which ones are available.</p>
+<div class="codehilite"><pre>    <span class="n">define</span><span 
class="p">(</span><span class="s">&quot;DEFAULTLOCALE&quot;</span><span 
class="p">,</span> <span class="s">&quot;en_US&quot;</span><span 
class="p">);</span>
+</pre></div>
+
+
+<p>d. Users authenticated using Shibboleth without also having an LDAP server 
can now be added before they log in. <strong>Add the following to 
conf.php</strong>  If you are using Shibboleth and would like to be able to add 
users to groups before the user has ever logged in to VCL, you can set this to 
1. However, please note that if you typo the userid, there is no way to verify 
it, and the user will be added with the typoed userid.</p>
+<div class="codehilite"><pre>    <span class="n">define</span><span 
class="p">(</span><span class="s">&quot;ALLOWADDSHIBUSERS&quot;</span><span 
class="p">,</span> <span class="mi">0</span><span class="p">);</span>
+</pre></div>
+
+
+<p>e. LDAP related items have been simplified in the code using additional 
options in $authMechs. For any LDAP entries, add two options. 
"lookupuserbeforeauth" is used if you need VCL to look up the full DN of a user 
and use that when doing the bind that authenticates the user (if you don't know 
what this means, leave it set to 0). If you need to set it to 1, then you will 
need to set "lookupuserfield" to what LDAP attribute to use when looking up the 
user's DN (typically either 'cn', 'uid', or 'samaccountname'). In conf.php, 
<strong>Add the following to each LDAP</strong> array you have in the $authMech 
array.</p>
+<div class="codehilite"><pre>    <span 
class="s">&quot;lookupuserbeforeauth&quot;</span> <span class="o">=&gt;</span> 
<span class="mi">0</span><span class="p">,</span>
+    <span class="s">&quot;lookupuserfield&quot;</span> <span 
class="o">=&gt;</span> <span class="s">&#39;&#39;</span><span class="p">,</span>
+</pre></div>
+
+
+<p>f. The way the authentication functions toward the bottom of conf.php are 
initialized has been simplified. Make the following changes:</p>
+<div class="codehilite"><pre>    <span class="n">REMOVE</span>
+    <span class="nv">$affilValFunc</span>
+    <span class="nv">$affilValFuncArgs</span> 
+    <span class="nv">$addUserFunc</span>
+    <span class="nv">$addUserFuncArgs</span>
+    <span class="nv">$updateUserFunc</span>
+    <span class="nv">$updateUserFuncArgs</span>
+
+    <span class="n">ADD</span>
+    <span class="nv">$affilValFunc</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="nv">$affilValFuncArgs</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="nv">$addUserFunc</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="nv">$addUserFuncArgs</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="nv">$updateUserFunc</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="nv">$updateUserFuncArgs</span> <span class="o">=</span> <span 
class="n">array</span><span class="p">();</span>
+    <span class="k">foreach</span><span class="p">(</span><span 
class="nv">$authMechs</span> <span class="n">as</span> <span 
class="nv">$key</span> <span class="o">=&gt;</span> <span 
class="nv">$item</span><span class="p">)</span> <span class="p">{</span>
+       <span class="k">if</span><span class="p">(</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;type&#39;</span><span class="p">]</span> <span 
class="o">==</span> <span class="s">&#39;ldap&#39;</span><span 
class="p">)</span> <span class="p">{</span>
+          <span class="nv">$affilValFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="s">&#39;validateLDAPUser&#39;</span><span 
class="p">;</span>
+          <span class="nv">$affilValFuncArgs</span><span 
class="p">[</span><span class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="nv">$key</span><span class="p">;</span>
+          <span class="nv">$addUserFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="s">&#39;addLDAPUser&#39;</span><span 
class="p">;</span>
+          <span class="nv">$addUserFuncArgs</span><span 
class="p">[</span><span class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="nv">$key</span><span class="p">;</span>
+          <span class="nv">$updateUserFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="s">&#39;updateLDAPUser&#39;</span><span 
class="p">;</span>
+          <span class="nv">$updateUserFuncArgs</span><span 
class="p">[</span><span class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="nv">$key</span><span class="p">;</span>
+       <span class="p">}</span>
+       <span class="n">elseif</span><span class="p">(</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;type&#39;</span><span class="p">]</span> <span 
class="o">==</span> <span class="s">&#39;local&#39;</span><span 
class="p">)</span> <span class="p">{</span>
+          <span class="nv">$affilValFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="n">create_function</span><span 
class="p">(</span><span class="s">&#39;&#39;</span><span class="p">,</span> 
<span class="s">&#39;return 0;&#39;</span><span class="p">);</span>
+          <span class="nv">$addUserFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="n">create_function</span><span 
class="p">(</span><span class="s">&#39;&#39;</span><span class="p">,</span> 
<span class="s">&#39;return NULL;&#39;</span><span class="p">);</span>
+          <span class="nv">$updateUserFunc</span><span class="p">[</span><span 
class="nv">$item</span><span class="p">[</span><span 
class="s">&#39;affiliationid&#39;</span><span class="p">]]</span> <span 
class="o">=</span> <span class="n">create_function</span><span 
class="p">(</span><span class="s">&#39;&#39;</span><span class="p">,</span> 
<span class="s">&#39;return NULL;&#39;</span><span class="p">);</span>
+       <span class="p">}</span>
+    <span class="p">}</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Restart httpd service</strong></p>
+<div class="codehilite"><pre>    <span class="n">service</span> <span 
class="n">httpd</span> <span class="n">start</span> <span class="ow">or</span> 
<span class="sr">/etc/i</span><span class="n">nit</span><span 
class="o">.</span><span class="n">d</span><span class="o">/</span><span 
class="n">httpd</span> <span class="n">start</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Update management node code</strong> This step will make a backup 
copy of the 2.2 vcl code base and then copy the new code over the existing code 
to preserve any drivers or other files you've added.</p>
+<div class="codehilite"><pre>    <span class="n">cd</span> <span 
class="o">&lt;</span><span class="n">your</span> <span class="n">vcl</span> 
<span class="n">MN</span> <span class="n">code</span> <span 
class="n">root</span> <span class="n">path</span><span class="o">&gt;</span>
+    <span class="n">ie</span><span class="o">.</span> <span 
class="n">cd</span> <span class="sr">/usr/</span><span 
class="nb">local</span><span class="o">/</span>
+    <span class="n">cp</span> <span class="o">-</span><span class="n">r</span> 
<span class="n">vcl</span> <span class="o">~/</span><span 
class="n">vcl_2</span><span class="mf">.2_</span><span 
class="n">managementnode</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Copy in the 2.3 code base to /usr/local</strong>, copying in should 
preserve any drivers or other files you've added.</p>
+<div class="codehilite"><pre>    <span class="sr">/bin/c</span><span 
class="n">p</span> <span class="o">-</span><span class="n">r</span> <span 
class="sr">/root/</span><span class="n">apache</span><span 
class="o">-</span><span class="n">VCL</span><span class="o">-</span><span 
class="mf">2.3</span><span class="sr">/managementnode/</span><span 
class="o">*</span> <span class="sr">/usr/</span><span 
class="nb">local</span><span class="o">/</span><span class="n">vcl</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Run install_perl_libs.pl</strong> to add any new perl library 
requirements:</p>
+<div class="codehilite"><pre>    <span class="sr">/usr/</span><span 
class="nb">local</span><span class="sr">/vcl/</span><span 
class="n">bin</span><span class="o">/</span><span 
class="n">install_perl_libs</span><span class="o">.</span><span 
class="n">pl</span>
+</pre></div>
+
+
+</li>
+<li>
+<p><strong>Restart vcld service</strong></p>
+<div class="codehilite"><pre>    <span class="n">service</span> <span 
class="n">vcld</span> <span class="n">start</span> <span class="ow">or</span> 
<span class="sr">/etc/i</span><span class="n">nit</span><span 
class="o">.</span><span class="n">d</span><span class="o">/</span><span 
class="n">vcld</span> <span class="n">start</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>Make some test reservations and watch the vcld.log to verify everything is 
working correctly.</p>
+<div class="codehilite"><pre>    <span class="n">tail</span> <span 
class="o">-</span><span class="n">f</span> <span class="sr">/var/</span><span 
class="nb">log</span><span class="o">/</span><span class="n">vcld</span><span 
class="o">.</span><span class="nb">log</span>
+</pre></div>
+
+
+</li>
+</ol>
+  </div>
+  
+  <div id="footer">
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2012 The Apache Software Foundation, Licensed under 
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache 
License, Version 2.0</a>.
+        <br />
+        Apache and the Apache feather logo are trademarks of The Apache 
Software Foundation.
+      </p>
+    </div>
+  </div>
+  
+</body>
+</html>


Reply via email to