Index: doc/README
===================================================================
--- doc/README	(revision 210d1d9cf4366d9933c02383300175e4b573be61)
+++ doc/README	(revision b7d3cc34f68dab7b8f7d0777711317b334fc2219)
@@ -9,27 +9,4 @@
 make install will move all the files to the right places.
 
-RUN MODES
-=========
-
---- (Fork)Daemon mode
-
-These days ForkDaemon mode is the recommended way of running BitlBee. The
-difference between Daemon and ForkDaemon mode is that in the latter, a
-separate process is spawned for every user. This costs a little bit more
-memory, but means that if one user hits a bug in the code, not all other
-users get disconnected with him/her.
-
-To use BitlBee in any daemon mode, just start it with the right flags or
-enable it in bitlbee.conf (see the RunMode option). You probably want to
-write an init script to start BitlBee automatically after a reboot. (This
-is where you realise using a package from your distro would've been a better
-idea. :-P)
-
-Please do make sure that the user BitlBee runs as (not root, please!) is
-able to read from and write to the /var/lib/bitlbee directory to save your
-settings!
-
---- inetd installation (more or less deprecated)
-
 After installation you have to set up inetd (you got that one running,
 right? If not, just take a look at utils/bitlbeed.c) to start BitlBee. You
@@ -41,25 +18,9 @@
 of just 'nobody') might be a good idea.
 
-*BSD/Darwin/OSX NOTE: Most *BSD inetds are more strict than the one that
-comes with Linux systems. Possibly all non-Linux inetds are like this. They
-don't allow you to specify a port number in the inetd.conf entry, instead
-you have to put a service name there (one that is also mentioned in
-/etc/services). So if there's no line in /services for 6667/tcp (or whatever
-you choose), add it and use that name in the inetd.conf entry.
-
--- xinetd installation (equally deprecated)
-
-Most machines use xinetd instead of inetd these days. If your machine runs
-xinetd, you can copy the bitlbee.xinetd file from the doc/ directory to your
-xinetd.d/ directory. Most likely you'll have to change a thing or two before
-it'll work.
-
-After configuring your (x)inetd, send the daemon a SIGHUP and things should
-work. If not, see your syslogs, since both daemons will complain there when
-something's wrong.
-
 Also, don't forget to create the configuration directory (/var/lib/bitlbee/
 by default) and chown it to the UID BitlBee is running as. Make sure this
 directory is read-/writable by this user only.
+
+(For xinetd users a xinetd configuration file is included: doc/bitlbee.xinetd)
 
 
@@ -68,17 +29,12 @@
 
 BitlBee's only real dependency is GLib. This is available on virtually every
-platform. Any recent version of GLib (2.4 or higher) will work.
+platform. Any recent version of GLib (including 1.x versions) will work.
 
-Off-the-Record encryption support can be included if libotr is available on
-your machine. Pass --otr=1 to configure to build it into BitlBee, or
---otr=plugin to build it as a separate loadable plugin (mostly meant for
-distro packages).
-
-These days, many IM protocols use SSL/TLS connections (for authentication
-or for the whole session). BitlBee can use several SSL libraries for this:
-GnuTLS, NSS (which comes with Mozilla) and OpenSSL. OpenSSL is not GPL-
-compatible in some situations, so using GnuTLS is preferred. However,
-especially on *BSD, OpenSSL can be considered part of the operating system,
-which eliminates the GPL incompatibility.
+These days, MSN Messenger clients have to connect to the MS Passport servers
+through HTTPS. BitlBee can use serveral SSL libraries for this: GnuTLS, NSS
+(which comes with Mozilla) and OpenSSL. OpenSSL is not GPL-compatible in some
+situations, so using GnuTLS or NSS is preferred. However, especially on *BSD,
+OpenSSL can be considered part of the operating system, which eliminates the
+GPL incompatibility.
 
 The incompatibility is also the reason why the SSL library detection code
@@ -92,12 +48,51 @@
 ==================
 
-The configure script is may not work very well with some non-bash shells (but
-dash is supported), so if you experience problems, make sure you use bash to
-run the script. Same for the Makefile, it only works well with GNU make. (gmake
-on most BSD systems)
+FreeBSD NOTE: It looks like FreeBSD does allow port numbers instead of service
+names in inetd.conf, as long as the service for this port exists in
+/etc/services. Linux isn't this strict. If you got problems in FreeBSD, just
+add a line for your chosen port number to /etc/services.
 
-If someone can tell us how to write Makefiles that work with both/all
-versions of make, we'd love to hear it, but it seems this just isn't
-possible.
+Darwin/Mac OS X is even more strict; you should add a bitlbee service to
+/etc/services and use that name in inetd.conf. Not really a problem, since
+that's the cleanest way of doing this on any operating system anyway.
+
+Cygwin NOTE: You'll need a glib installation to run BitlBee. However, Cygwin
+doesn't provide a glib package. You can download a binary tar.gz from:
+<http://my.dreamwiz.com/jbdoll/>. When you installed it, BitlBee should work
+fine. You'll probably like bitlbeed or xinetd to get it running on the
+network.
+
+On some non-Linux systems the program still suffers from some random bugs.
+Please do report them, we might be able to fix them if they're not too
+mysterious.
+
+
+RUNNING ON SERVERS WITH MANY USERS
+==================================
+
+BitlBee is not yet bug-free. Sometimes a bug causes the program to get into
+an infinite loop. Something you really don't want on a public server,
+especially when that machine is also used for other (mission-critical) things.
+For now we can't do much about it. We haven't seen that happen for a long
+time already on our own machines, but some people still manage to get
+themselves in nasty situations we haven't seen before.
+
+For now the best we can offer against this problem is bitlbeed, which allows
+you to setrlimit() the child processes to use no more than a specified
+number of CPU seconds. Not the best solution (not really a solution anyway),
+but certainly trashing one busy daemon process is better than trashing your
+whole machine.
+
+We don't believe adding a limit for bitlbee to /etc/security/limits.conf will
+work, because that file is only read by PAM (ie just for real login users,
+not daemons).
+
+See utils/bitlbeed.c for more information about the program.
+
+Just a little note: We run our public server im.bitlbee.org for a couple of
+months now, and so far we haven't experienced this problem yet. The only
+BitlBee processes killed because of CPU-time overuse were running for a long
+time already, they were usually killed during the MSN login process (which
+is quite CPU-time consuming).
 
 
@@ -126,8 +121,4 @@
 on it almost immediately. And the result is BitlBee.
 
-In the years after, Gaim was renamed to Pidgin, BitlBee got libpurple support
-allowing to use Pidgin plugins and the support for the old chatprotocols ICQ,
-MSN and AIM was finally removed from BitlBee.
-
 
 WEBSITE
@@ -135,27 +126,22 @@
 
 You can find new releases of BitlBee at:
-https://www.bitlbee.org/
-
-The bug tracking system:
-https://bugs.bitlbee.org/
-
-Our version control system is Git. Our repository is at:
-https://github.com/bitlbee/bitlbee
-
-More documentation on the Wiki:
-https://wiki.bitlbee.org/
+http://www.bitlbee.org/
 
 
-A NOTE ON PASSWORD ENCRYPTION
-=============================
+A NOTE ON ENCRYPTION
+====================
 
-BitlBee currently uses salted MD5 and RC4 to store the passwords. This means
-that people who somehow get their hands on your configuration files can't
-easily extract your passwords from them anymore.
+BitlBee stores the accounts and settings (not your contact list though) in
+some sort of encrypted/obfuscated format.
 
-However, once you log into the BitlBee server and send your password, an
-intruder with tcpdump can still read your passwords. This can't really be
-avoided, of course. So if you run a public server, it's most important that you
-don't give root access to people who like to play with tcpdump.
+*** THIS IS NOT A SAFE FORMAT! ***
+
+You should still make sure the rights to the configuration directory and
+files are set so that only root and the BitlBee user can read/write them.
+
+This format is not to prevent malicicous users from running with your
+passwords, but to prevent accidental glimpses of the administrators to cause
+any harm. You have no choice but to trust root though.
+
 
 LEGAL
@@ -165,7 +151,22 @@
 file COPYING for this license.
 
+Unfortunately some parts of the Gaim Jabber plugin (most notably the XML
+code) were licensed under the MPL (Mozilla Public License) version 1.1. We
+could not relicense this code under the GPL. As such it is still licensed
+under the MPL. The parts of the code to which this applies are marked as
+such.
+
+The MPL is provided in the file MPL-1.1.txt. This license is not GPL
+compatible. It is however a free software license.
+
+Another part (the md5 algorithm) is licensed under the Aladdin license.
+This license can be found in the files, to which this applies.
+
+The Yahoo! library used by BitlBee is libyahoo2 <http://libyahoo2.sf.net/>,
+also licensed under the GPL.
+
 
 	BitlBee - An IRC to other chat networks gateway 
-	          <https://www.bitlbee.org/>
-	Copyright (C) 2002-2010  Wilmer van der Gaast <wilmer@gaast.net>
+	          <http://www.bitlbee.org/>
+	Copyright (C) 2002-2004  Wilmer van der Gaast <wilmer@gaast.net>
 	                         and others
