#! /usr/bin/perl
# 
# $Id$
# Captive project doc Related Projects page Perl template.
# Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; exactly version 2 of June 1991 is required
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


package project::captive::doc::Related;
require 5.6.0;	# at least 'use warnings;' but we need some 5.6.0+ modules anyway
our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
our $CVS_ID=q$Id$;
use strict;
use warnings;

BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,<F>)[0]]}; eval "use lib '$top_dir'"; close F; }
use My::Web;
require CGI;
BEGIN { Wuse 'project::captive::doc::Macros'; }


project::captive::doc::Macros->init(
		"__PACKAGE__"=>__PACKAGE__,
		"title"=>'Captive NTFS Developer Documentation: Related Projects',
		"rel_prev"=>'TODO.html.pl',
		"rel_next"=>'LinuxNTFS.html.pl',
		);


print <<"HERE";


<h1>Related Projects</h1>

	<p>The usual solution for file exchange between $freespeech operating systems
	and <span class="productname">Microsoft Windows NT</span> is to use
	<span class="productname">FAT32</span> (<span class="productname">vfat</span>
	called in $gnulinux) partition and swap the files over it. This method is not
	very comfortable as you never have access to all the files of the other
	operating system.</p>

	<a name="LinuxNTFScompet"><h2>$LinuxNTFS</h2></a>

		<p>Although this project takes a&nbsp;completely different approach and has
		a&nbsp;different architecture, the final goal is the same as for this
		project &ndash; reliable read-write <span class="productname">NTFS</span>
		filesystem support. $LinuxNTFS goes the way of reverse engineering
		filesystem data structures (and possibly
		<span class="fname">ntfs.sys</span> itself). Unfortunately after many years
		of its development it did not yet reach the state of reliable read-write
		access although its read-only part is considered trustworthy.</p>

		<p>Using $LinuxNTFS for read-only access to existing partition with
		<span class="productname">Microsoft Windows NT</span> installation is
		planned to be able to acquire existing <span class="fname">ntfs.sys</span>,
		<span class="fname">ntoskrnl.exe</span> and possibly
		<span class="fname">ksecdd.sys</span> (imported by
		<span class="fname">ntfs.sys</span>) files from the user's
		<span class="productname">NTFS</span> partition.</p>

	<a name="NTPwd"><h2><span class="productname">@{[ a_href 'http://www.cgsecurity.org/ntfs.html',
			'NTPwd NTFS Driver' ]}</span></h2></a>

		<p>DOS based @{[ a_href 'http://www.gnu.org/licenses/gpl.html','GPL-2.0' ]}
		read-write NTFS driver. Filesystem structures are reverse engineered in the
		way of @{[ a_href 'Related.html.pl#LinuxNTFScompet','Linux-NTFS Project' ]}. As it is not very
		actively maintained it reaches a&nbsp;lower level of
		<span class="productname">NTFS</span> compatibility.</p>

	<a name="vmware"><h2>@{[ a_href 'http://www.vmware.com/download/workstation.html','VMware Workstation' ]}</h2></a>

		<p>The only real competition: Closed-source read/write @{[ '$299' ]} equivalent.</p>

		<p>Original Microsoft Windows operating system can be run inside a virtual
		machine running under GNU/Linux and share the read-write NTFS disk by using
		a network file sharing through a&nbsp;VMware virtual network card.</p>

		<p>You need @{[ '$299' ]} for this product and you need to
		give up your system security by running un@{[ a_href 'Details.html.pl#sandbox','sandbox' ]}ed
		closed-source program in your GNU/Linux.</p>

	<a name="wine"><h2>@{[ a_href 'http://www.winehq.com/','Wine Project' ]}</h2></a>

		<p>No code could be shared &ndash; Wine emulates only Microsoft Windows userland.
		Filesystem drivers completely belong to Microsoft Windows kernelland.</p>

	<a name="ntfs98"<h2>@{[ a_href 'http://www.sysinternals.com/ntw2k/freeware/ntfswin98.shtml','NTFS for Windows 98' ]}</h2></a>

		<p>Closed-source read-only-crippled @{[ '$0' ]} equivalent for Microsoft Windows.</p>

		<p>There is a @{[ a_href 'http://www.sysinternals.com/images/screenshots/ntfs98ap.gif',
				'diagram' ]} showing exactly the principle of Captive NTFS project.
		There is apparently disabled read/write functionality in <i>NTFS for
		Windows 98</i> as the same company also sells the following product sharing
		the same codebase:</p>

	<a name="ntfsdos"><h2>@{[ a_href 'http://www.winternals.com/products/repairandrecovery/ntfsdospro.asp',
			'NTFSDOS Professional' ]}</h2></a>

		<p>Closed-source read/write @{[ '$299' ]} equivalent for MS-DOS.</p>

		<p>This product is the most close equivalent to Captive NTFS but it is
		a commercial product, closed-source and it has filesystem interface only
		for MS-DOS.</p>


HERE


project::captive::doc::Macros->footer();
