This package was debianized by Nathan Scott nathans@debian.org on
Sun, 19 Nov 2000 07:37:09 -0500.

It was downloaded from ftp://oss.sgi.com/projects/xfs/download/

Copyright:

Copyright (c) 2000-2002 Silicon Graphics, Inc.  All Rights Reserved.

You are free to distribute this software under the terms of
the GNU General Public License.
On Debian systems, the complete text of the GNU General Public
License can be found in /usr/share/common-licenses/GPL file.

