README for Jabber Open Source Server (2.x)
Thanks for downloading jabberd2. Below are some basic instructions to
get you started. Complete documentation is available at http://jabberd2.org/
-- the jabberd team
Required packages:
- expat - XML parsing libraries
http://expat.sourceforge.net/
- GnuSASL (1.1 or higher) - Simple Authentication and Security Layer library
http://www.gnu.org/software/gsasl/
- UDNS - asynchronous DNS resolver library
http://www.corpit.ru/mjt/udns.html
Optional packages:
- GNU Libidn (0.3.0 or higher) - needed for JID canonicalisation
http://www.gnu.org/software/libidn/
- OpenSSL (0.9.6b or higher) - needed for SSL/TLS support
http://www.openssl.org/news/
- zlib (1.2.3 or higher) - needed for stream compression
http://www.zlib.net/
- Berkeley DB (4.1.24 or higher)
http://www.sleepycat.com/download/
- OpenLDAP (2.1.0 or higher)
http://www.openldap.org/software/download/
- PostgresSQL (8.0 or higher; development libraries and headers)
http://www.postgresql.org/
- MySQL (5.0 or higher; development libraries and headers)
http://www.mysql.com/
- PAM
http://www.linux-pam.org/ (for Linux)
- SQLite (3.0 or higher)
http://www.sqlite.org/
Build:
% ./configure
% make
% make install
Options to ./configure:
--prefix=/path/to/install
Where to install everything
--enable-idn (default: enabled)
Compile with IDN (Stringprep) support
--enable-ssl (default: enabled)
Compile with SSL/TLS support
--enable-mysql (default: enabled)
Compile MySQL auth/reg/storage support
--enable-pgsql (default: disabled)
Compile PostgreSQL auth/reg/storage support
--enable-db (default: disabled)
Compile Berkeley DB auth/reg/storage support
--enable-sqlite (default: disabled)
Compile SQLite storage support
--enable-ldap (default: disabled)
Compile OpenLDAP auth/reg support
--enable-pam (default: disabled)
Compile PAM auth/reg support
--enable-pipe (default: disabled)
Compile pipe auth/reg support
--enable-anon (default: disabled)
Compile anonymous auth support
--enable-fs (default: disabled)
Compile filesystem storage support (NOT RECOMMENDED)
--enable-mio=BACKEND
Specify MIO backend to use (poll or select)
--with-extra-include-path
--with-extra-library-path
Add extra header/library search paths
--enable-debug (default: disabled)
Output debugging info when run with -D
--enable-nad-debug (default: disabled)
Compile with NAD pointer tracking
--enable-pool-debug (default: disabled)
Compile with pool statistics
--enable-developer (default: disabled)
Compile with full warnings and debugging symbols
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/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)
Upgrade:
Please see NEWS file.
Support:
Webpage: http://jabberd2.org/
Mailinglist: [email protected]
(Subscribe by sending mail to [email protected])
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-2012 Jeremie Miller, Thomas Muldowney,
Ryan Eatmon, Robert Norris, Tomasz Sterna.
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
As a special exception, the authors give permission to link this
program with the OpenSSL library and distribute the resulting binary.
subst/snprintf.c and util/base64.c were originally taken from the
Apache web server project.
Originally copyright (c) 1995-2003 Apache Software Foundation.
util/md5.c was taken from Ghostscript.
Originally copyright (c) 1999-2002 Aladdin Enterprises.
util/sha1.c was taken from Mozilla.
Originally copyright (c) 1995-1999 Cryptography Research, Inc.
subst/getopt.[ch] was taken from GNU Libc.
Originally copyright (c) 1987-1993 Free Software Foundation, Inc.
subst/gettimeofday.c was taken from PostgreSQL.
Originally copyright (c) 2003 SRA, Inc. & SKC, Inc.
subst/syslog.[ch] was taken from Bind.
Originally copyright (c) 2001 Internet Software Consortium.
subst/inet_aton.c
Originally copyright (c) 1995-1997 Kungliga Teniska Hogskolan
subst/ip6_misc.h
Originally copyright (c) 1993,1994,1997 The Regents of the University of California.
subst/dirent.[ch]
Originally copyright (c) 1997,2003 Kevlin Henney.