--- /dev/null
+# $Id$
+# Captive project doc LinuxNTFS page Perl template.
+# Copyright (C) 2003-2005 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::LinuxNTFS;
+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;
+
+use My::Web;
+
+
+sub handler
+{
+ BEGIN { Wuse 'project::captive::doc::Macros'; }
+project::captive::doc::Macros->init(
+ "title"=>'Captive NTFS Developer Documentation: Captive vs. Linux-NTFS',
+ "rel_prev"=>'Related.pm',
+ );
+
+
+print <<"HERE";
+
+
+<h1>Re: @{[ a_href 'http://linux-ntfs.sourceforge.net/info/ntfs.html#7.7',
+ "7.7 Can't we write a wrapper for Windows' driver?" ]}</h1>
+
+ <p class="re">> It sounds like a great idea, to start with, but there are numerous
+ problems.</p>
+
+ <p><span class="re">> The largest technical problem is joining the Windows
+ system DLL to the Linux VFS. It could be done, but it wouldn't be pretty.</span><br />
+ Yep. :-)</p>
+
+ <p><span class="re">> It would have to run as part of the kernel which would mean
+ that if it went wrong it could crash the machine. With no source, we might not
+ be able to work around the problem.</span><br />
+ @{[ a_href 'Details.pm#sandbox','Nope' ]},
+ @{[ a_href 'http://lufs.sourceforge.net/lufs/','Linux Userland File System (LUFS)' ]}
+ moves the filesystem implementation to UNIX userland where the Microsoft
+ Windows filesystem is completely unarmed by Captive jail of chroot(2),
+ setuid(2) and setrlimit(2). There only remains one narrow connection to the rest of
+ system (by CORBA/ORBit). The filesystem's life environment gets kill(2)ed when
+ UNIX is no longer satisfied with it. Safety similiar to
+ @{[ a_href 'http://www.vmware.com/solutions/security.html','VMware sandbox' ]}.</p>
+
+ <p><span class="re">> The next major problem is compati<!--orig. text typo-->bility.
+ Which version of the Windows system file would we use? Picking one would limit
+ its use, making the wrapper versatile for all of them would be a programming
+ nightmare.</span><br />
+ Microsoft Windows NTFS filesystem driver is capable of accessing older formats
+ of the filesystem. This project currently runs Microsoft Windows XP version,
+ porting to Microsoft Windows 2003 Server expected. (Microsoft Windows upgrades
+ NTFS disk filesystem to its own version during complete CD-ROM Microsoft
+ Windows system installation – such operation is not threat this project use.)</p>
+
+ <p><span class="re">> And it gets worse. The legal implications of
+ distributing Windows systems files would cause problems.</span><br />
+ User must be careful to obey all licensing restrictions according to his
+ local country laws.<br />
+ <span class="re">> Also the proprietary nature of the driver would mean that
+ the other kernel coders would not investigate any problems if someone had used
+ the NTFS wrapper.</span><br />
+ It does not apply to this project due to the implemented
+ @{[ a_href 'Details.pm#sandbox','filesystem separation' ]}.</p>
+
+
+HERE
+
+
+exit;
+}
+1;