Frequently Asked Questions (FAQ) about opennap
==============================================
Last updated on May 30, 2000.

Q:  What is opennap?
A:  opennap is an open source server which speaks the napster protocol

Q:  What is napster?
A:  See www.napster.com for information.

Q:  Is this project associated with napster.com?
A:  No, this server was developed without any communication with napster.com

Q:  Why can't I connect to the Napster.com servers?
A:  We are not affiliated with Napster, Inc.  You should contact them for
    assistance.

Q:  What language is opennap written in?
A:  ANSI C.

Q:  How do I get more than 256 connections?
A:  On some systems without a poll() function, the maximum number of file
    descriptors that a process can have is controlled by the FD_SETSIZE
    macro.  If you only have select(), try rerunning configure with the
    --fd-setsize=1024 option to specify a higher value.

Q:  How do I get more than 1024 connections under Linux?
A:  You can set the per-process file descriptor limit dynamically by piping
    an integer to /proc/sys/fs/file-max
    (eg.  echo 8192 > /proc/sys/fs/file-max).  The default value seems to
    4096 which should be good enough.

    In order to utilize more than 1024 file descriptors, you must run
    opennap as root.  Set your `connection_hard_limit' variable to something
    higher than 1024 and you should be set.

Q:  Isn't running opennap as root a security risk?
A:  Running anything as root can potentially be a security risk.  Opennap
    attempts to reduce the risk by allowing you to specify the default
    uid/gid to run as.  After setting the max file descriptors, opennap
    calls setuid() and setgid() to drop root privilege (by default it uses
    user nobody, group nobody).

Q:  Why do I get disconnected when I browse a user with many shared files?
A:  By default, OpenNap will only queue up to 100kbytes of data for a user
    to prevent a huge backlog of data for a dead/slow client.  A user with
    1000 shared files will often create more than 100kbytes of output, which
    triggers the dead client detection to prevent using too much resources.

Q:  How do I fix it?
A:  If you have memory to spare, you can increase the value of
    client_queue_length, or alternatively decrease the number of files
    returned by a browse command (max_browse_result) so that it does not cross
    the 100kbytes default limit.

Q:  How do I get my server listed on napigator.com?
A:  Go to www.napigator.com and look for the section on adding servers.

Q:  How do I link my server to other servers?
A:  Find the people who run the server you want to link with and discuss it
    with them.  If both parties agree you exchange a password and follow
    the directions in the README for linking up.
