README for Jabber Open Source Server (2.0s1)

Thanks for downloading jabberd 2.0. Below are some basic instructions to
get you started. Complete documentation is available at
http://www.jabberdoc.org/

-- the jabberd team


Build requirements:

 - OpenSSL (0.9.6b or higher)
     http://www.openssl.org/news/

Optional packages:

 - Berkeley DB (4.1.24 or higher)
     http://www.sleepycat.com/download/
 - OpenLDAP (2.1.0 or higher)
     http://www.openldap.org/software/download/
 - PostgrsSQL (development libraries and headers)
     http://www.postgresql.org/
 - MySQL (development libraries and headers)
     http://www.mysql.com/
 - PAM
     http://www.linux-pam.org/  (for Linux)


Build:

  % ./configure
  % make
  % make install

Options to ./configure:

  --prefix=/path/to/install
      Where to install everything

  --enable-authreg=MODULE MODULE ...
      c2s authentication/registration modules to build, one or more of:
        anon
        db      (requires Berkeley DB)
        pipe
        ldap    (requires OpenLDAP)
        mysql   (requires MySQL)
        pam     (requires PAM)
        pgsql   (requires PostgreSQL)
      Defaults to "mysql".

  --enable-storage=DRIVER DRIVER ...
      SM storage drivers to build, one or more of:
        db      (requires Berkeley DB)
        fs      (NOT RECOMMENDED)
        mysql   (requires MySQL)
        pgsql   (requires PostgreSQL)
      Defaults to "mysql".
      
  --enable-mio=BACKEND
      Specify MIO backend to use (poll or select)
      Defaults to "poll".

  --enable-parts=COMPONENT COMPONENT ...
      Server components to build, one or more of:
        c2s         client to server connector
        resolver    DNS resolver
        router      XML router
        s2s         server to server connector
        sm          session manager
      Defaults to "c2s resolver router s2s sm".

  --with-openssl=PATH
      Alternate path to OpenSSL headers and libs

  --with-berkeley-db=PATH
      Alternate path to Berkeley DB headers and libs

  --with-openldap=PATH
      Alternate path to OpenLDAP headers and libs

  --with-mysql=PATH
      Alternate path to MySQL headers and libs

  --with-pgsql=PATH
      Alternate path to PostgreSQL headers and libs

  --enable-developer
      Compile with full warnings and debugging symbols

  --enable-debug
      Output debugging info when run with -D

  --enable-nad-debug
      Compile with NAD pointer tracking

  --enable-pool-debug
      Compile with pool statistics


Configure:

  Edit $prefix/etc/(router|sm|c2s|resolver|s2s).xml to taste. In
  particular, make sure you setup for your choice of data storage
  correctly. If you're using the Berkeley DB backend, you'll need to
  create /var/run/jabberd and sets its permissions so that the server
  processes can find it.
  
  If you're using a SQL backend, you'll need to create an account for
  the server to use, and create the tables. Load db-setup.mysql or
  db-setup.pgsql from the tools/ directory into your database to do
  this.

  If you plan to use the jabberd wrapper script, make sure you look at
  the paths in the $prefix/etc/jabber/jabberd.cfg.


Run:

  You can either run all of the pieces separately:

    % $prefix/bin/router &
    % $prefix/bin/resolver &
    % $prefix/bin/s2s &
    % $prefix/bin/sm &
    % $prefix/bin/c2s &

  Or you can run them all from the jabberd wrapper script:

    % $prefix/jabberd &

All the processes can take the following switches:

    -c use an alternate config file
    -D output lots of debugging info (if compiled with --enable-debug)


Support:

Documentation: http://www.jabberdoc.org/

    Bugs to: http://www.jabberstudio.org/projects/jabberd2/bugs/
Requests to: http://www.jabberstudio.org/projects/jabberd2/features/

Everything else: jabberd@jabberstudio.org
 (Subscribe at http://jabberd.jabberstudio.org/cgi-bin/mailman/listinfo/jabberd
  Archives at http://jabberd.jabberstudio.org/pipermail/jabberd/ )

When requesting assistance, please note that the following things can
provide useful information which may assist with finding your problem:

 - debug logs (compile with --enable-debug and run with -D)
 - running components seperately (ie without the wrapper script)
 - config.log

Please try to provide as much relevant information as possible when
reporting problems - it will make helping you much easier.


Copyright & License:
  
 jabberd - Jabber Open Source Server
 Copyright (c) 2002-2003 Jeremie Miller, Thomas Muldowney,
                         Ryan Eatmon, Robert Norris.

 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; either version 2 of the License, or
 (at your option) any later version.

 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, MA02111-1307USA


 The idn/ directory contains portions of the GNU Libidn package (0.2.1).
 Copyright (c) 2002, 2003 Simon Josefsson.

 The expat/ directory contains the Expat package (1.95.6).
 Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
                                and Clark Cooper
 
 The M4 macros in the ac-helpers/ directory were based on berkeley-db.m4
 taken from the 'subversion' project.
   Originally copyright (c) 2002-2003 CollabNet.

 snprintf.c and base64.c in the util/ directory were originally taken
 from the Apache web server project.
   Originally copyright (c) 1995-2003 Apache Software Foundation.
 
 md5.c in the util/ directory was taken from Ghostscript.
   Originally copyright (c) 1999-2002 Aladdin Enterprises.
 
 sha1.c in the util/ directory was taken from Mozilla
   Originally copyright (c) 1995-1999 Cryptography Research, Inc.
