You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mod_ftp-commits@incubator.apache.org by sc...@apache.org on 2006/11/29 01:19:18 UTC

svn commit: r480316 - /incubator/mod_ftp/trunk/docs/manual/ftp/

Author: sctemme
Date: Tue Nov 28 17:19:16 2006
New Revision: 480316

URL: http://svn.apache.org/viewvc?view=rev&rev=480316
Log:
Frame out FTP protocol and implementation documentation; start on the Introduction

Added:
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html.en
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml.meta
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html.en
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml.meta
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html.en
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml.meta
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html.en
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml
    incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml.meta
Modified:
    incubator/mod_ftp/trunk/docs/manual/ftp/index.html.en
    incubator/mod_ftp/trunk/docs/manual/ftp/index.xml

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html Tue Nov 28 17:19:16 2006
@@ -0,0 +1,3 @@
+URI: ftp_faq.html.en
+Content-Language: en
+Content-type: text/html; charset=ISO-8859-1

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html.en
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html.en?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html.en (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.html.en Tue Nov 28 17:19:16 2006
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+              This file is generated from xml source: DO NOT EDIT
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+      -->
+<title> - Apache HTTP Server</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body id="manual-page" class="no-sidebar"><div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
+<p class="apache">Apache HTTP Server Version 2.3</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="../"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1 />
+<div class="toplang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_faq.html" title="English">&nbsp;en&nbsp;</a></p>
+</div>
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_faq.html" title="English">&nbsp;en&nbsp;</a></p>
+</div><div id="footer">
+<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
+</body></html>
\ No newline at end of file

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml Tue Nov 28 17:19:16 2006
@@ -0,0 +1,32 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 420990 $ -->
+
+<!--
+ 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.
+-->
+
+<!-- 
+ Original Copyright (c) Covalent Technologies 2001-2005
+
+ FTP Protocol module for Apache 2.0
+-->
+
+<manualpage metafile="ftp_faq.xml.meta">
+<parentdocument href="../"/>
+
+</manualpage>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml.meta
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml.meta?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml.meta (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_faq.xml.meta Tue Nov 28 17:19:16 2006
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<metafile>
+  <basename>ftp_faq</basename>
+  <path>/ftp/</path>
+  <relpath>..</relpath>
+
+  <variants>
+    <variant>en</variant>
+  </variants>
+</metafile>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html Tue Nov 28 17:19:16 2006
@@ -0,0 +1,3 @@
+URI: ftp_howto.html.en
+Content-Language: en
+Content-type: text/html; charset=ISO-8859-1

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html.en
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html.en?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html.en (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.html.en Tue Nov 28 17:19:16 2006
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+              This file is generated from xml source: DO NOT EDIT
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+      -->
+<title> - Apache HTTP Server</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body id="manual-page" class="no-sidebar"><div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
+<p class="apache">Apache HTTP Server Version 2.3</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="../"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1 />
+<div class="toplang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_howto.html" title="English">&nbsp;en&nbsp;</a></p>
+</div>
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_howto.html" title="English">&nbsp;en&nbsp;</a></p>
+</div><div id="footer">
+<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
+</body></html>
\ No newline at end of file

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml Tue Nov 28 17:19:16 2006
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 420990 $ -->
+
+<!--
+ 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.
+-->
+
+<!-- 
+ Original Copyright (c) Covalent Technologies 2001-2005
+
+ FTP Protocol module for Apache 2.0
+-->
+
+<manualpage metafile="ftp_howto.xml.meta">
+<parentdocument href="../"/>
+</manualpage>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml.meta
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml.meta?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml.meta (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_howto.xml.meta Tue Nov 28 17:19:16 2006
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<metafile>
+  <basename>ftp_howto</basename>
+  <path>/ftp/</path>
+  <relpath>..</relpath>
+
+  <variants>
+    <variant>en</variant>
+  </variants>
+</metafile>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html Tue Nov 28 17:19:16 2006
@@ -0,0 +1,3 @@
+URI: ftp_intro.html.en
+Content-Language: en
+Content-type: text/html; charset=ISO-8859-1

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html.en
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html.en?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html.en (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.html.en Tue Nov 28 17:19:16 2006
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+              This file is generated from xml source: DO NOT EDIT
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+      -->
+<title>Introduction to the FTP Protocol - Apache HTTP Server</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body id="manual-page"><div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
+<p class="apache">Apache HTTP Server Version 2.3</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="../"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1>Introduction to the FTP Protocol</h1>
+<div class="toplang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_intro.html" title="English">&nbsp;en&nbsp;</a></p>
+</div>
+
+
+<p>The <strong>File Transfer Protocol (FTP)</strong> is a classic
+standard for transfer of files and records over a TCP/IP network.  It
+was defined by Jon Postel and Joyce Reynolds in <a href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC 959</a>,
+which was released in 1985.  This means that FTP precedes the HTTP
+protocol that is usually associated with the Apache server by more
+than half a decade.  The <code>mod_ftp</code> module brings support
+for FTP to the Apache server and includes several updates to the
+original protocol.  Most notably, <code>mod_ftp</code> implements FTP
+over Transport Layer Security (TLS) as described in <a href="http://www.rfc-archive.org/getrfc.php?rfc=4217">RFC
+4217</a>.</p>
+
+<p>On this manual page, a brief technical overview of the FTP protocol
+is provided, followed by a discussion of the FTP implementation by
+<code>mod_ftp</code>. </p>
+
+</div>
+<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#protocol_overview">Overview of the FTP Protocol</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#protocol_extensions">FTP Protocol Extensions</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#mod_ftp_implementation">Implementation of the FTP Protocol by <code>mod_ftp</code></a></li>
+</ul><h3>See also</h3><ul class="seealso"><li><a href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC
+959 &#8212; FILE TRANSFER PROTOCOL (FTP)</a></li><li><a href="http://www.rfc-archive.org/getrfc.php?rfc=1579">RFC
+1579 &#8212; Firewall-Friendly FTP</a></li><li><a href="http://www.rfc-archive.org/getrfc.php?rfc=4217">RFC
+4217 &#8212; Securing FTP with TLS</a></li><li><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code></li><li><a href="../howto/auth.html">Authentication, Authorization
+and Access Control</a></li></ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="protocol_overview" id="protocol_overview">Overview of the FTP Protocol</a></h2>
+
+ 
+
+<p>The File Transfer Protocol (FTP) is designed to facilitate
+bi-directional transfer of files and records between hosts on a TCP/IP
+network.  Unlike HTTP, the FTP protocol is stateful: the client
+establishes a <em>Control Connection</em> for the duration of an FTP
+session that typically spans multiple data transfers.</p>
+
+<p>FTP uses a separate TCP connection for data transfer.  Commands are
+issued and acknowledged over the <em>Control Connection</em>, a TCP
+connection to well-known port 21.  If the user issues a command that
+requires a response more elaborate than a one-line response code, a
+<em>Data Connection</em> is established between the client and the
+server.  The response data&#8212;the contents of a file or a
+directory listing&#8212;is sent over that data connection.</p>
+
+<p>Historically, the data connection was established from the server
+back to the client.  The client would bind to an arbitrary port, and
+then transmit its IP address and the port number to the server using
+the <em>PORT</em> command.  The server then set up a data connection
+to that port on the client host, whereupon the client issues the data
+transfer command.  This approach is referred to as <em>Active</em> FTP
+(since the server acts to set up the data connection).  Unfortunately,
+active FTP does not work well with firewalls and Network Address
+Translation (NAT) because incoming connections are often blocked.  In
+the case of NAT, the client only instructs the server to connect to
+its internal, non-routable IP address.  Some firewalls and NAT routers
+support the FTP protocol, but this support is not universal.  In cases
+where FTP is supported, these devices can rewrite the PORT command and
+establish ad-hoc access rules for FTP data connections.</p>
+
+<p>Because of these limitations, an alternative approach was developed
+in which the direction of the data connection is reversed.  This is
+known as <em>Passive</em> FTP. Before starting a data transfer, the
+client issues a <em>PASV</em> command.  The server binds to an
+arbitrary port number and transmits its IP address and that port
+number back to the client.  The client then sets up a data connection
+to this address and port on the server, and issues the data transfer
+command.  Passive FTP is more firewall-friendly than Active FTP,
+because client-side firewalls are generally more lenient on outgoing
+connections than they are on inbound ones.  This kind of data
+connection will be translated by a NAT router like the control
+connection.</p>
+
+<p>While it is possible for FTP to support unauthenticated sessions,
+in practice all sessions are authenticated.  Typically, FTP servers
+authenticate against the user database of the server on which they
+run.  To facilitate downloads by the general public, FTP servers
+generally support a special username (by convention
+<em>&#8216;anonymous&#8217;</em> or <em>&#8216;ftp&#8217;</em>) to
+provide read-only access.  Users are asked (but often not required) to
+provide their e-mail address as response to the <code>Password</code>
+prompt.
+</p>
+
+<p>For more information on the basic functionality of the FTP protocol
+please refer to <a href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC 959</a> or <a href="http://en.wikipedia.org/wiki/FTP">Wikipedia</a>.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="protocol_extensions" id="protocol_extensions">FTP Protocol Extensions</a></h2>
+
+
+
+
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="mod_ftp_implementation" id="mod_ftp_implementation">Implementation of the FTP Protocol by <code>mod_ftp</code></a></h2>
+
+</div></div>
+<div class="bottomlang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_intro.html" title="English">&nbsp;en&nbsp;</a></p>
+</div><div id="footer">
+<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
+</body></html>
\ No newline at end of file

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml Tue Nov 28 17:19:16 2006
@@ -0,0 +1,142 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 420990 $ -->
+
+<!--
+ 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.
+-->
+
+<!-- 
+ Original Copyright (c) Covalent Technologies 2001-2005
+
+ FTP Protocol module for Apache 2.0
+-->
+
+<manualpage metafile="ftp_intro.xml.meta">
+<parentdocument href="../"/>
+
+<title>Introduction to the FTP Protocol</title>
+
+<summary>
+
+<p>The <strong>File Transfer Protocol (FTP)</strong> is a classic
+standard for transfer of files and records over a TCP/IP network.  It
+was defined by Jon Postel and Joyce Reynolds in <a
+href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC 959</a>,
+which was released in 1985.  This means that FTP precedes the HTTP
+protocol that is usually associated with the Apache server by more
+than half a decade.  The <code>mod_ftp</code> module brings support
+for FTP to the Apache server and includes several updates to the
+original protocol.  Most notably, <code>mod_ftp</code> implements FTP
+over Transport Layer Security (TLS) as described in <a
+href="http://www.rfc-archive.org/getrfc.php?rfc=4217">RFC
+4217</a>.</p>
+
+<p>On this manual page, a brief technical overview of the FTP protocol
+is provided, followed by a discussion of the FTP implementation by
+<code>mod_ftp</code>. </p>
+
+</summary>
+
+<seealso><a href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC
+959 &mdash; FILE TRANSFER PROTOCOL (FTP)</a></seealso>
+<seealso><a href="http://www.rfc-archive.org/getrfc.php?rfc=1579">RFC
+1579 &mdash; Firewall-Friendly FTP</a></seealso>
+<seealso><a href="http://www.rfc-archive.org/getrfc.php?rfc=4217">RFC
+4217 &mdash; Securing FTP with TLS</a></seealso> 
+<seealso><module>mod_ssl</module></seealso>
+<seealso><a href="../howto/auth.html">Authentication, Authorization
+and Access Control</a></seealso>
+
+
+<section id="protocol_overview">
+
+<title>Overview of the FTP Protocol</title> 
+
+<p>The File Transfer Protocol (FTP) is designed to facilitate
+bi-directional transfer of files and records between hosts on a TCP/IP
+network.  Unlike HTTP, the FTP protocol is stateful: the client
+establishes a <em>Control Connection</em> for the duration of an FTP
+session that typically spans multiple data transfers.</p>
+
+<p>FTP uses a separate TCP connection for data transfer.  Commands are
+issued and acknowledged over the <em>Control Connection</em>, a TCP
+connection to well-known port 21.  If the user issues a command that
+requires a response more elaborate than a one-line response code, a
+<em>Data Connection</em> is established between the client and the
+server.  The response data&mdash;the contents of a file or a
+directory listing&mdash;is sent over that data connection.</p>
+
+<p>Historically, the data connection was established from the server
+back to the client.  The client would bind to an arbitrary port, and
+then transmit its IP address and the port number to the server using
+the <em>PORT</em> command.  The server then set up a data connection
+to that port on the client host, whereupon the client issues the data
+transfer command.  This approach is referred to as <em>Active</em> FTP
+(since the server acts to set up the data connection).  Unfortunately,
+active FTP does not work well with firewalls and Network Address
+Translation (NAT) because incoming connections are often blocked.  In
+the case of NAT, the client only instructs the server to connect to
+its internal, non-routable IP address.  Some firewalls and NAT routers
+support the FTP protocol, but this support is not universal.  In cases
+where FTP is supported, these devices can rewrite the PORT command and
+establish ad-hoc access rules for FTP data connections.</p>
+
+<p>Because of these limitations, an alternative approach was developed
+in which the direction of the data connection is reversed.  This is
+known as <em>Passive</em> FTP. Before starting a data transfer, the
+client issues a <em>PASV</em> command.  The server binds to an
+arbitrary port number and transmits its IP address and that port
+number back to the client.  The client then sets up a data connection
+to this address and port on the server, and issues the data transfer
+command.  Passive FTP is more firewall-friendly than Active FTP,
+because client-side firewalls are typically more lenient on outgoing
+connections than inbound ones.</p>
+
+<p>While it is possible for FTP to support unauthenticated sessions,
+in practice all sessions are authenticated.  Typically, FTP servers
+authenticate against the user database of the server on which they
+run.  To facilitate downloads by the general public, FTP servers
+generally support a special username (by convention
+<em>&lsquo;anonymous&rsquo;</em> or <em>&lsquo;ftp&rsquo;</em>) to
+provide read-only access.  Users are asked (but often not required) to
+provide their e-mail address as response to the <code>Password</code>
+prompt.
+</p>
+
+<p>For more information on the basic functionality of the FTP protocol
+please refer to <a
+href="http://www.rfc-archive.org/getrfc.php?rfc=959">RFC 959</a> or <a
+href="http://en.wikipedia.org/wiki/FTP">Wikipedia</a>.</p>
+
+</section>
+
+<!--
+<section id="protocol_extensions">
+
+<title>FTP Protocol Extensions</title>
+
+
+
+</section>
+
+<section id="mod_ftp_implementation">
+<title>Implementation of the FTP Protocol by <code>mod_ftp</code></title>
+</section>
+-->
+
+</manualpage>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml.meta
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml.meta?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml.meta (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_intro.xml.meta Tue Nov 28 17:19:16 2006
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<metafile>
+  <basename>ftp_intro</basename>
+  <path>/ftp/</path>
+  <relpath>..</relpath>
+
+  <variants>
+    <variant>en</variant>
+  </variants>
+</metafile>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html Tue Nov 28 17:19:16 2006
@@ -0,0 +1,3 @@
+URI: ftp_tls.html.en
+Content-Language: en
+Content-type: text/html; charset=ISO-8859-1

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html.en
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html.en?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html.en (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.html.en Tue Nov 28 17:19:16 2006
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+              This file is generated from xml source: DO NOT EDIT
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+      -->
+<title> - Apache HTTP Server</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body id="manual-page" class="no-sidebar"><div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
+<p class="apache">Apache HTTP Server Version 2.3</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="../"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1 />
+<div class="toplang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_tls.html" title="English">&nbsp;en&nbsp;</a></p>
+</div>
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Available Languages: </span><a href="../en/ftp/ftp_tls.html" title="English">&nbsp;en&nbsp;</a></p>
+</div><div id="footer">
+<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
+</body></html>
\ No newline at end of file

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml Tue Nov 28 17:19:16 2006
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision: 420990 $ -->
+
+<!--
+ 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.
+-->
+
+<!-- 
+ Original Copyright (c) Covalent Technologies 2001-2005
+
+ FTP Protocol module for Apache 2.0
+-->
+
+<manualpage metafile="ftp_tls.xml.meta">
+<parentdocument href="../"/>
+</manualpage>

Added: incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml.meta
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml.meta?view=auto&rev=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml.meta (added)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/ftp_tls.xml.meta Tue Nov 28 17:19:16 2006
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<metafile>
+  <basename>ftp_tls</basename>
+  <path>/ftp/</path>
+  <relpath>..</relpath>
+
+  <variants>
+    <variant>en</variant>
+  </variants>
+</metafile>

Modified: incubator/mod_ftp/trunk/docs/manual/ftp/index.html.en
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/index.html.en?view=diff&rev=480316&r1=480315&r2=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/index.html.en (original)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/index.html.en Tue Nov 28 17:19:16 2006
@@ -24,18 +24,23 @@
 <p>This is the FTP Protocol Module</p>
 </div>
 <div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#documentation">Documentation</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#mod-ftp">mod_ftp</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#mod-ftp"><code>mod_ftp</code></a></li>
 </ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="section">
 <h2><a name="documentation" id="documentation">Documentation</a></h2>
-<p>This section will have a table of contents to the documentation
-files in this directory</p>
+<ul>
+<li><a href="ftp_intro.html">Introduction and Overview</a></li>
+<li><a href="ftp_tls.html">Securing FTP with TLS</a></li>
+<li><a href="ftp_howto.html"><code>mod_ftp</code> Examples and HowTo</a></li>
+<li><a href="ftp_faq.html">Frequently Asked Questions about
+<code>mod_ftp</code></a></li>
+</ul>
 </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="section">
-<h2><a name="mod-ftp" id="mod-ftp">mod_ftp</a></h2>
+<h2><a name="mod-ftp" id="mod-ftp"><code>mod_ftp</code></a></h2>
 <p>Extensive documentation on the directives provided by this module
-can be found in the <a href="../mod/mod_ftp.html">mod_ftp reference
+can be found in the <a href="../mod/mod_ftp.html"><code>mod_ftp</code> reference
 documentation</a>. 
 </p>
 </div></div>

Modified: incubator/mod_ftp/trunk/docs/manual/ftp/index.xml
URL: http://svn.apache.org/viewvc/incubator/mod_ftp/trunk/docs/manual/ftp/index.xml?view=diff&rev=480316&r1=480315&r2=480316
==============================================================================
--- incubator/mod_ftp/trunk/docs/manual/ftp/index.xml (original)
+++ incubator/mod_ftp/trunk/docs/manual/ftp/index.xml Tue Nov 28 17:19:16 2006
@@ -36,13 +36,18 @@
 </summary>
 
 <section id="documentation"><title>Documentation</title>
-<p>This section will have a table of contents to the documentation
-files in this directory</p>
+<ul>
+<li><a href="ftp_intro.html">Introduction and Overview</a></li>
+<li><a href="ftp_tls.html">Securing FTP with TLS</a></li>
+<li><a href="ftp_howto.html"><code>mod_ftp</code> Examples and HowTo</a></li>
+<li><a href="ftp_faq.html">Frequently Asked Questions about
+<code>mod_ftp</code></a></li>
+</ul>
 </section>
 
-<section id="mod-ftp"><title>mod_ftp</title>
+<section id="mod-ftp"><title><code>mod_ftp</code></title>
 <p>Extensive documentation on the directives provided by this module
-can be found in the <a href="../mod/mod_ftp.html">mod_ftp reference
+can be found in the <a href="../mod/mod_ftp.html"><code>mod_ftp</code> reference
 documentation</a>. 
 </p>
 </section>