
FURI - a distributed, peer-to-peer file sharing system.
By: William W. Wong
Revised Date: 5/1/2000
Email: williamw@jps.net
Website: http://www.jps.net/williamw/furi/



Disclaimers
===========

FURI is distributed in the hope that it will be useful.
It is provided "as is", without any warranty whatsoever.
Its developer disclaims all warranties and conditions,
either express or implied, including, without limitation,
warranties of merchantability and fitness for a particular
purpose.  To the extent allowed by applicable law, in no
event will its developer or its suppliers be liable for
any damages, including, without limitation, direct, indirect,
special, incidental or consequential damages of any kind,
even if its developer or its suppliers has been advised of
the possibility of such damages.

Note that in some countries it is against the law to
distribute copyrighted material without the permission of 
the copyright holder.


Introduction
============

It was said that Internet was created with the goal of surviving
a nuclear attack.  Gnutella net is organized in a similar fashion.
It's totally distributed; there is no central server.  Machines
are connected to each other in a peer to peer setup, in a completely
unpreditably way.  It allows many users to open up their own machines
and share files with anyone.  It let users to search others' shared
directories, to download files from each other.  It is a new way
to share information.

FURI is a Gnutella protocol-compatible Java program that can
participate in the Gnutella network.  It is a full version program
that can perform most of the tasks of a Gnutella servant.


System Requirement
==================

FURI will run in any platform that supports Java.

FURI requires Java JDK 1.2.2 or up.  It also work with 1.1.7 or up
with Swing 1.1.1 support.  It runs on JDK 1.3 as well.

Java plus Swing is a memory hog.  When running, FURI usually fluctuate
between 8 megs to 20 megs of memory usage, back and forth.  It would
run comfortably on a 64 megs machine.  Probably runs fine on a 48 megs
machine.  You might experience sluggishness when running it on a 
32 megs machine.


Installation
============

Currently, no installer.  Don't know whether there will ever
be one.

Simply unzip the files from the zip file into a directory.


Running FURI
============

The starting class for FURI is furi.f.  The jar file
furi.jar contains all the classes (and source) of FURI.
Place the furi.jar file into your Java classpath.  Make
sure the Java runtime class libraries have been set up
properly in the classpath as well.  Remember FURI needs
Java JDK 1.2.2, or JDK 1.1.7 and Swing 1.1.1.

Type the following to invoke FURI.

	java furi.f

For JDK 1.2 and up, you can alternatively start FURI by:

	java -jar furi.jar

For JDK 1.2 on Windows 95/98/NT/NT2000, you can simply
double-click on the furi.jar to run it.



Where to Find Gnutella Hosts
============================

The following links are good places to look for starting host
to connect.  Once you connected one host, you are in the
Gnutella network.  You can connect to addition hosts by looking
at the host catcher.

http://www.idi.ntnu.no/~havardot/betaz/GNUTELLA.net
http://gnutella.nerdherd.net/


Beta
====

FURI is current in beta.  The program is still very rough.
Please bear with any bugs and shortcomings.  For bug report,
please email back to me at: williamw@jps.net.  Thanks.

Check the following website for periodic updates of FURI.
http://www.jps.net/williamw/furi/


Development Work
================

I really prefer to work alone.  As I found out over the years, 
software development is mainly an individual endeavor.  If you
figure out a bug, please report it back to me.  If you want
certain feature, please let me know, and I will schedule it
into the development cycle.  Please don't write a separate
module and send it to me to expect me to incorporate it.
Thank you.


Happy Sharing!


