2005-07-25 Justin Kirby * fixed second log-in in with similar resource breaks routing for first login * fixed 3 buffer overflows in jid.c, bug#99 * fixed Incorrect SASL error message defined in sx/sasl.c, bug#98 2005-06-22 Justin Kirby * fixed sx io mem leak, bug#90 * fixed c2s glibc abort and mysql option flags, bug#82 * fixed version attribute reply in stream, bug#94 2005-06-02 Justin Kirby * fixed only one user is loaded correctly for each router acl, bug#60 * fixed s2s segfault under particular connection timeout conditions, bug#66 * fixed id is being case sensitive, bug#68 * fixed Users cannot login after a long period of server inactivity, bug#69 * fixed handling of stream errors, bug#79 2005-04-20 Justin Kirby * fixed s2s segfault from resolver race condition bug#59 * fixed mem leak in s2s bug#59 2005-04-14 Justin Kirby * added oracle support. * add keepalives to router bug#54 * fixed info in PROTOCOL file * Fixed handling of (un)subscribe packets for XMPP-IM compliance 2005-04-07 Justin Kirby * fixed time values which were not stored correctly * the '>' must always be escaped (andrey) * fixed failed access_check() in hpux-ia64 * fixed ssl memory leak * fixed s2s segfaults relating firewall problems 2005-03-31 Justin Kirby * Memory cleanups in shutdown * Fixed mysql varchar and options in storage 2005-03-22 Justin Kirby * Outgoing presence probe was dropped via privacy lists. Fixed * Compiler problems with strict aliasing fixed * Fixed expat.h for non-386 machines * Disconnected log sink no longer causes crash * Fixed cases where dns resolution fails, s2s does not remove the domain from theoutgoing queue hash. * Where an outgoing domain is inactive (no active connection), s2s does not check whether there are packets queued before attempting to bounce queued packets (and adding a debug notice) 2005-01-07 Justin Kirby * Reset router reconnection counter after successful reconnect * Correctly close sm sessions held by components which do not close down cleanly * Remove bdb environment if no longer needed at shutdown * Fixes error in parameter to storage_match() introduced with patch #51 / 2.0s5 * End all sessions properly when sm shuts down * Add check for XMPP-compliant element for stream error descriptions * Fixes error in patch 57k above (uninitialised variable causing dialback timeout check not to work correctly) * Add yet another timeout check to s2s for even more resilience when connecting to old & flaky jabber servers ... * Fix consistency of s2s log entries * Perform LDAP rebind if given a referral by Active Directory LDAP server * Resolve -lsocket detection for building on Solaris 2004-12-11 Justin Kirby * Fix base64 encoding length in authreg_pipe.c Stephen Marquard, Diagnosed by Jerome Vandenabeele * Fixes segfault on s2s startup on some platforms when ssl is enabled (local pemfile defined in s2s.xml), Stephen Marquard * mod_offline handling of jabber:x:event client requests (JEP-0022) can lead to a loop repeatedly adding duplicates to the offline queue under certain race conditions. Correctly detect jabber:x:event notifications and do not respond to them as requests, Stephen Marquard * Check for invalid jids in directed presence packets, Stephen Marquard, Based on bug report by Christopher Zorn * Fixes minor memory leaks in authreg_ldap, Ilja Booij * Fixes error in storage filter code using bdb storage causing sm crash, Stephen Marquard * Changes incorrectly indexed primary keys to non-unique indexes, adds other indexes for efficiency, and changes type of xml field to increase max allowed length, Stephen Marquard * Include sys/types.h if available in util.h inter alia for FreeBSD, Stephen Marquard * Minor code cleanups for compilation on HP-UX, Christof Meerwald * Fix configure.in for correct handling of resolv.h, Magnus Henoch * Include resquery checks from MAIN cvs branch in 2.0, Christof Meerwald * Allows jabberd to start new components and place itself in the background, Richard Bullington-McGuire (original ver), Additional components defined in jabberd.cfg get started as long as they are in the same directory as the jabberd script (useful for mu-conference installed through jcr) The script can daemonize itself with the "-b" switch after starting the various programs it watches over, unless the debug option is set. * Paranoia, ensure than srv->name is nul terminated., Jedi/Sector One 2004-11-25 Justin Kirby * Remove incorrect semicolumn from os_object_free() in sm/object.c Typographical error in code - could lead to memory not being freed correctly - jedi * Fixes to mysql storage for boundary conditions Apply if using mysql storage. -jedi * Fix length-related issues in base64 decoding routines. Could affect authentication in c2s. - Christof Meerwald * Fixes to storage_db.c to avoid roster corruption: "sm/storage_db inserts items in the filter hash table with keys which are located on the stack. This creates confusion when the code later tries to compare with these keys.". - Martin Forssen * Fixes bug in _nad_escape() where escaping ]]> can cause a segfault when handling large messages where nad_realloc is called. - Stephen Marquard * Fixes to pgsql storage for boundary conditions and incorrect buffer length calculation - jedi * Fix minor memory leaks in digest-md5 authentication and nad_free() - Martin Forssen * Fixes omission of namespace declaration where a namespace has already been used in the XML stanza - Stephen Marquard * Fixes omission of prefix on attributes processed by nad_parse (e.g. in queue storage) - Stephen Marquard * Corrects check for deleting previously published disco items from "delete" to "remove" (as per JEP-0030). - Stephen Marquard * Alters filter handling and adds mysql/pgsql escaping on filter strings to allow brackets and apostrophes in resource names that form part of JIDs stored as roster entries - Stephen Marquard * Fixes buffer overflow that can lead to segfault in c2s mysql and pgsql auth modules - see report by icbm (www.venustech.com.cn) - Stephen Marquard * Avoid crash in some versions of FreeBSD / DragonFlyBSD When a TCP socket is accepted and the immediately closed, the client address is not filled, but accept() does return a descriptor. It can be triggered with nmap -sT. The type of the length of a socket is also socklen_t, not size_t. - jedi * Resolves problems with strings starting "NAD" being interpreted as xml in mysql/postgresql storage Does not require any db changes to implement. - Stephen Marquard * Updates to etc/c2s.xml.dist.in and etc/s2s.xml.dist.in for c2s certificate chains and s2s ssl connections (patches #25b and #17). - Stephen Marquard * Corrects pipe_authreg to correctly base64-encode passwords for SET-PASSWORD and CHECK-PASSWORD calls. Apply if using pipe authentication. Note that this will change the previous (incorrect) behaviour for SET-PASSWORD and CHECK-PASSWORD which was to pass the password unencoded. - Stephen Marquard (from dgbbk) * Correctly free storage instance before c2s exit in cases where storage driver fails to initialise - Cameron Moore * Adds SSL support to s2s (server-server) connections. Add a entry in the section of s2s.xml to enable. - Stephen Marquard * tons of autoconf magic fixes by jedi 2004-10-23 Justin Kirby * Fixed race condition allowing c2s to be killed, Stephen Marquard * Fixed off-by-one bug in s2s/main.c leading to segfault on startup in some environmentsp * Fixed memory leak in sm, Michal Kára * Fixed problem relating to SSL connections not being closed correctly, Nathan Christiansen * Fixed 3 problems in mod_announce: (a) NAD freed before use, (b) struct tm not initialised correctly on some platforms, and (c) time not initialised for broadcast motd messages delivered to online users, Stephen Marquard * Fixed insertion of extra namespace in element in some types of messages retrieved from offline queue, which causes a parse error in the router, Matthew Buckett * Fixed off-by-one bug in PLAIN SASL authentication code. May also resolve a number of other bugs relating to c2s authentication, Robert Theisen * Fixed return value of jid_new() in pkt.c to avoid sm segfault from dereferencing NULL pointer, triggered by a message with a to JID of the form "@some.server@", Stephen Marquard * Avoided adding nads to the cache that are created through nad_copy(), Stephen Marquard * Fixed bug in retrieving hash values, Stephen Marquard * Improved performance of pool cleanup function, Stephen Marquard * Corrected handling of EMAIL, TEL and ADR/CTRY elements in vcards for JEP-0054 compliance, Stephen Marquard * Optimised sm algorithm for announcing presence to skip presence announcements and probes for users on the same server who are not online, Stephen Marquard * Checked that storage drivers are initialised correctly; if not, abort, Stephen Marquard * Fixed file descriptor leak in storage_fs * Allowed c2s to supply a certificate chain to clients, Iain MacDonnell 2004-08-19 Robert Norris * sm/mod_privacy.c: fixed a tiny little edge case crasher 2004-06-30 Robert Norris * util/util.h: include all the headers need for network stuff (ie struct sockaddr_storage) 2004-06-25 Robert Norris * 2.0s3 released 2004-06-07 Robert Norris * sm/mod_iq_private.c: don't match iq:private packets that are trying to be routed elsewhere 2004-06-01 Robert Norris * configure.in: check and include sys/filio.h; define sa_family_t; define broken sockaddr_storage members * mio/mio.h: same * subst/inet_aton.c: match configure defines * subst/inet_ntop.c: same * subst/inet_pton.c: same * util/util_compat.h: same * c2s/authreg_mysql.c: use C-style comments * c2s/authreg_pgsql.c: same * sm/mod_iq_version.c: same * sx/sx.c: same * util/log.c: same 2004-05-24 Robert Norris * configure.in: use fcntl/O_NONBLOCK instead of ioctl(FIONBIO) where possible * mio/mio.c: same * mio/mio.h: same * c2s/authreg_pgsql.c: fix potential buffer overruns * c2s/c2s.c: shutdown if listening sockets can't be opened * c2s/c2s.h: same * util/util.h: removed debug_flag extern, as it clashes with the decl in log.c, and isn't needed anyway 2004-05-21 Robert Norris * configure.in: do global search/replace on include paths * c2s/authreg_mysql.c: fix potential buffer overruns * subst/snprintf.c: handle %.*s without calling strlen 2004-05-06 Robert Norris * router/router.c: tiny logging fix 2004-05-05 Robert Norris * router/main.c: fix umask ifdef * sm/mod_announce.c: cleanup nads as we finish with them * sm/storage_db.c: same * sm/storage_mysql.c: same * sm/storage_pgsql.c: same * sm/mod_privacy.c: cleanup lists properly * sm/pres.c: probes come from user only; added pres_probe() for upcoming mod_privacy changes * sm/sm.h: same 2004-04-30 Robert Norris * c2s/authreg.c: reject register get on password change only (closes #3059) * c2s/authreg_pipe.c: make the exec name the first argument (closes #3174) * c2s/authreg.c: fixed various leaks, bugs and other small cleanups * c2s/authreg_mysql.c: same * c2s/sm.c: same * scod/mech_plain.c: same * sm/mod_disco_publish.c: same * sm/mod_privacy.c: same * sm/mod_roster.c: same * sm/object.c: same * sm/pkt.c: same * sm/sm.h: same * sm/storage.c: same * sm/storage_db.c: same * sm/storage_fs.c: same * sm/storage_mysql.c: same * sm/storage_pgsql.c: same * sx/sx.c: same * sx/sx.h: same * util/jid.c: same * util/nad.c: same * util/serial.c: same * util/sha1.c: same * util/sha1.h: same * util/util.h: same * util/xdata.c: same 2004-04-27 Robert Norris * sm/aci.c: allow resources in acis 2004-04-26 Robert Norris * expat/*: upgraded to 1.95.7 * c2s/authreg_ldap.c: LDAPv3 support (closes #3344) * etc/c2s.xml.dist.in: same * c2s/authreg.c: buffer overrun fix * mio/mio.c: only call ACT() for action_WRITE if the socket is in type_NORMAL 2004-04-25 Robert Norris * c2s/c2s.c: added "replaced" session command to support session replacement * sm/sess.c: same * s2s/main.c: generate random dialback key if none provided * etc/s2s.xml.dist.in: * sm/aci.c: cleanup acls on exit * sm/main.c: same * sm/mod_roster.c: removed redundant code * sx/error.c: get error lengths right * sx/ssl.c: only read ssl data if the encrypted channel is up * util/nad.c: free nad_parse() parser when finished 2004-04-20 Robert Norris * util/nad.c: don't explicitly declare the implicit xml namespace * util/util.h: same 2004-04-17 Robert Norris * mio/mio.c: actually set sockets non-blocking 2004-04-16 Robert Norris * COPYING: added exception to allow linking with openssl * configure.in: enable switches for anon authreg and fs storage * c2s/authreg.c: same * c2s/authreg_anon.c: same * sm/storage_fs.c: same * resolver/dns.c: win32 bugfixes * sm/mod_iq_version.c: same 2004-04-15 Robert Norris * configure.in: treat pipe auth as an external package * c2s/authreg.c: same * c2s/authreg_pipe.c: same * c2s/c2s.h: only include things if they're available * mio/mio.h: same * mio/mio_poll.h: same * mio/mio_select.h: same * resolver/dns.h: same * resolver/resolver.h: same * router/router.h: same * s2s/s2s.h: same * sm/mod_iq_version.c: same * sm/storage.c: same * sm/storage_fs.c: same * util/inaddr.h: same * util/util.h: same * mio/mio.c: include fixups * scod/mech_digest_md5.c: same * subst/gettimeofday.c: same * sx/callback.c: same * sx/chain.c: same * sx/client.c: same * sx/env.c: same * sx/error.c: same * sx/io.c: same * sx/sasl.c: same * sx/sasl.h: same * sx/server.c: same * sx/ssl.c: same * sx/ssl.h: same * sx/sx.c: same * sx/sx.h: same * util/util_compat.h: same * c2s/main.c: replace win32 checks with feature checks * router/main.c: same * s2s/main.c: same * sm/main.c: same * resolver/dns.c: win32 resolver * resolver/resolver.h: same * resolver/resolver.c: same * sm/mod_iq_time.c: use normal time functions rather than less-common thread-safe variants * sm/sm.c: same * subst/ip6_misc.h: general cleanups * subst/syslog.c: same * util/inaddr.c: same * subst/subst.h: more prototypes 2004-04-14 Robert Norris * configure.in: make idn/ssl optional; loads more specific checks * c2s/authreg.c: make idn/ssl optional * c2s/c2s.c: same * c2s/main.c: same * resolver/resolver.c: same * router/main.c: same * router/router.c: same * s2s/main.c: same * s2s/router.c: same * sm/main.c: same * sm/sm.c: same * sx/sasl.c: same * sx/ssl.c: same * sx/ssl.h: same * util/jid.c: same * subst/*: compat stuff * util/util.h: pull in substitutions * win32/: removed 2004-04-08 Robert Norris * idn/*: removed due to license issues * configure.in: new build system * acinclude.m4: same * Makefile.am: same * */Makefile.am: same * c2s/authreg*.c: updated for new defines * sm/storage*.c: same * c2s/c2s.h: only include required headers * mio/mio.h: same * resolver/dns.h: same * resolver/resolver.h: same * router/router.h: same * s2s/s2s.h: same * sm/sm.h: same * sx/sx.h: same * util/inaddr.h: same * util/util.h: same * mio/mio.c: use ioctl instead of fcntl to set non-blocking * sx/ssl.c: slightly more standard way to startup openssl * util/jid.c: use external stringprep headers * c2s/authreg.c: same * sx/error.c: fix off-by-one bug (closes #3481) * util/inaddr.c: use correct size for sin6_len (closes #3594) * c2s/authreg.c: get namespace before searching for elements (closes #3368) * c2s/main.c: win32 stuff * expat/Makefile.am: same * expat/expat_config.h: same * mio/mio_select.h: same * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * sm/mod_iq_version.c: same * win32/*: various interim win32 changes 2004-04-02 Robert Norris * sm/mod_presence.c: block incoming presence if user not online * etc/sm.xml.dist.in: same 2004-03-24 Robert Norris * win32/*: initial checkin of win32 compatibility files * configure.in: basic mingw checks * acinclude.m4: helper macros moved here to reduce clutter * ac-helpers/*: removed * c2s/c2s.c: moved from read/write to recv/send * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same 2004-03-23 Robert Norris * sx/sasl.c: optionally require tls before auth * sx/sasl.h: same * sx/ssl.c: same * c2s/c2s.c: same * c2s/c2s.h: same * c2s/main.c: same * sx/ssl.h: same * etc/c2s.xml.dist.in: same * sm/main.c: free stream environment after closing the last stream 2004-03-22 Robert Norris * sx/io.c: thinko fix 2004-03-19 Robert Norris * sx/io.c: don't close streams that are already closing * router/router.c: initialize prep cache for local jid structures (closes #3480) * sm/main.c: free the router stream (and nad cache) after all nads are freed * sm/pkt.c: memory leak fixes * sm/storage_db.c: same * util/nad.c: prevent running of the end of the element list during print * c2s/bind.c: present correct session namespace to xmpp clients * c2s/c2s.c: same * util/util.h: same 2004-02-26 Robert Norris * util/util.h: make the debug line buffer larger so long lines don't get cut 2004-02-17 Robert Norris * c2s/authreg.c: don't call the module free function if it doesn't exist 2004-02-13 Robert Norris * c2s/authreg_ldap.c: logging typo fix (closes #3343) 2004-02-10 Robert Norris * ac-helpers/berkeley-db.m4: removed -R flags from link directives * ac-helpers/ldap.m4: same * ac-helpers/mysql.m4: same * ac-helpers/openssl.m4: same * ac-helpers/pam.m4: same * ac-helpers/pgsql.m4: same * ac-helpers/ldap.m4: build against openldap > api 2004 * 2.0s2 released 2004-02-03 Robert Norris * sx/io.c: new function sx_raw_write(), send raw data over a stream * sx/sx.h: same * c2s/main.c: use sx_raw_write() to send keepalives (closes #3144) * c2s/c2s.c: same * c2s/c2s.h: same * s2s/main.c: same * s2s/out.c: same * s2s/s2s.h: same * sm/pkt.c: treat empty packet addresses as though they don't exist * configure.in: check for vsyslog() * util/log.c: use vsnprintf() & syslog() to replace vsyslog() on systems that don't have it * sm/mod_roster.c: gracefully handle malformed roster jids stored in the database (closes #3157) 2004-02-02 Robert Norris * sm/mod_privacy.c: relink item list correctly 2004-01-29 Robert Norris * sm/pres.c: always forward broadcasts to trusted jids 2004-01-27 Robert Norris * sm/mod_privacy.c: order items properly; send "subscription" instead of "s10n" 2004-01-23 Robert Norris * sm/mod_privacy.c: match group jids correctly * sm/mm.c: silence warnings * configure.in: look for DB 4.2 2004-01-22 Robert Norris * sx/io.c: make sx_kill() shut things down properly 2004-01-21 Robert Norris * c2s/authreg_pam.c: use pam account management functions * sx/io.c: new function sx_kill(), to close a stream abruptly * sx/sx.h: same * c2s/c2s.c: use sx_kill() to close streams after io errors * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same 2004-01-20 Robert Norris * sm/mod_privacy.c: match item jids correctly * c2s/authreg.c: brought registration into line with jep-0077 (closes #3166) 2004-01-19 Robert Norris * sm/mod_privacy.c: brought in line with latest xmpp-im * scod/mech_digest_md5.c: quote qop list returned to client 2004-01-03 Robert Norris * c2s/authreg_ldap.c: don't allow zero-length passwords (closes #3131) 2003-12-28 Robert Norris * 2.0s1 released 2003-12-27 Robert Norris * configure.in: don't fail configure if inet_ntop() not found (closes #3080) 2003-12-24 Robert Norris * sx/io.c: only send stream close once 2003-12-17 Robert Norris * c2s/main.c: do router connect retry properly on openbsd * resolver/resolver.c: same * s2s/main.c: same * sm/main.c: same 2003-12-16 Matthias Wimmer * sx/sx.h: small syntax fix in _sx_state() macro 2003-12-15 Robert Norris * sx/ssl.c: don't offer tls after auth * mio/mio.c: use ipv6 compat functions from util [mawis] * mio/mio.h: same * util/inaddr.c: same * util/inaddr.h: same * util/util.h: same * util/util_compat.h: same * sm/mod_roster.c: only drop roster results * sx/io.c: ignore parse errors that happen after failures 2003-12-12 Robert Norris * router/aci.c: create a new acl for each type * sm/mod_privacy: remove default list correctly 2003-12-11 Matthias Wimmer * sm/aci.c: create a new acl for each type 2003-12-10 Robert Norris * s2s/out.c: make sure we actually requested an incoming resolver response * 2.0rc2 released 2003-12-09 Robert Norris * sm/mod_roster.c: drop un-namespaced iq results 2003-12-08 Robert Norris * configure.in: check for "broken" snprintf/vsnprintf * ac-helpers/j2_printf.m4: same * configure.in: check for FIONREAD * util/ldap.m4: removed unneeded version variables * router/aci.c: load multiple names correctly (closes #3026) * ac-helpers/mysql.m4: paths for mysql on freebsd (closes #3028) 2003-12-05 Robert Norris * sm/mod_presence.c: don't set namespace on type attribute (closes #3011) * sm/pres.c: forward invisible to sessions as unavailable * sx/io.c: close stream properly on certain errors * sx/ssl.c: same * sx/sx.c: don't use vfprintf, avoids crashes on solaris * ac-helpers/mysql.m4: small log tweak * ac-helpers/pam.m4: same * ac-helpers/pgsql.m4: same * ac-helpers/ldap.m4: moved from openldap.m4; only link libldap; only check LDAP_API_VERSION (support Sun LDAP) * ac-helpers/configure.in: load ldap.m4 2003-12-04 Robert Norris * sm/pres.c: force presence unavailable and invisible broadcasts to all sessions * sx/server.c: only process pre-stream packets if the stream is open (closes #2987) * sx/io.c: drop outgoing packets if the stream is closed 2003-12-03 Robert Norris * s2s/main.c: bounce non-client packets * s2s/out.c: same * sm/pres.c: forward presence broadcasts to all user sessions (closes #2993) * sm/mod_roster.c: send appropriate unsubscriptions on roster remove (closes #3002) * sm/dispatch.c: require from address on sm packets * sx/error.c: don't send the null over the wire 2003-12-02 Robert Norris * c2s/c2s.c: watch for closed states on file descriptors * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same * util/util.h: same * c2s/bind.c: offer xmpp-session feature * sm/mod_announce.c: small memory leak fixes 2003-12-01 Robert Norris * sm/mod_deliver.c: process packets with unmatched resources correctly * s2s/out.c: don't error non-client packets 2003-11-28 Robert Norris * sm/mod_disco.c: force gateways into the correct browse category 2003-11-27 Robert Norris * c2s/c2s.c: pre-stream race fix * c2s/bind.c: doxygen updates * mio/mio.h: same * mio/mio_inaddr.h: same * sm/sm.h: same * util/inaddr.c: same * util/util_compat.h: same 2003-11-26 Robert Norris * sx/server.c: only allow "stream" as stream element name (closes #2962) * sx/client.c: same * sm/storage_db.c: handle empty objects correctly * sm/storage_mysql.c: same * sm/storage_pgsql.c: same 2003-11-25 Robert Norris * c2s/authreg.c: better session start logging 2003-11-21 Robert Norris * sm/dispatch.c: free users that were only loaded for delivery 2003-11-20 Matthias Wimmer * configure.in: POOL_DEBUG got defined with --enable-nad-debug 2003-11-17 Robert Norris * 2.0rc1 released 2003-11-11 Robert Norris * configure.in: default authreg is "mysql" * util/log.c: only compile in debug logging code when debug is enabled * util/pool.c: print directly rather than using debug_log() * c2s/main.c: provide regular pool stats when running in pool debug mode * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * c2s/main.c: only free sessions once at shutdown * resolver/dns.h: added bind 8 compat define for os x 10.3 * sm/mod_iq_vcard.c: route packets with to addresses, rather than handling implicitly 2003-11-10 Robert Norris * configure.in: configure option for pool debugging * util/pool.c: same * util/util.h: same 2003-11-09 Matthias Wimmer * c2s/main.c: calling pool debugging at the end * resolver/main.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * util/pool.c: fix the pool debugging functions * util/util.h: same 2003-11-04 Robert Norris * sx/error.c: don't crash on in-stream errors * c2s/c2s.c: ignore pre-auth sessions on offline component checks 2003-11-03 Robert Norris * c2s/authreg.c: use normal stanza errors * c2s/c2s.c: close stream on pre-session packets * sm/pkt.c: limit presence priority to -128 < p < 127 * sx/error.c: updated to latest xmpp; open stream before reporting pre-stream errors * sx/sx.h: same * sx/sasl.c: updated errors to latest xmpp * util/stanza.c: same * util/util.h: same * sx/server.c: version checking and response * sx/client.c: more correct error usage * util/nad.c: silence compiler warnings * sm/*.c: doxygen comments * c2s/authreg_pgsql.c: clear results when finished * sm/storage_pgsql.c: same * etc/sm.xml.dist.in: removed browse compat namespaces * Doxyfile.in: updated doxygen config * 2.0b3 released 2003-10-31 Robert Norris * sm/mod_roster.c: xmpp-im updates 2003-10-30 Robert Norris * c2s/c2s.c: a note about resource conflicts * c2s/sm.c: change session control prefix * sm/sm.c: same * etc/resolver.xml.dist.in: use xmpp-server instead of jabber-server * sm/mod_roster.c: must ignore the to address on roster packets from clients 2003-10-29 Robert Norris * sx/error.c: update stream errors to recent xmpp revisions * sx/sx.h: same * util/stanza.c: update stanza errors to recent xmpp revisions * c2s/c2s.c: send diagnostic text on stream errors * c2s/main.c: same * router/router.c: same * sx/client.c: same * sx/io.c: same * sx/server.c: same * sx/ssl.c: same 2003-10-28 Robert Norris * c2s/c2s.c: support for xmpp resource binding * c2s/bind.c: same * c2s/c2s.h: same * util/util.h: same * scod/mech_digest_md5.c: sasl changes to support recent xmpp revisions * scod/mech_plain.c: same * scod/scod.c: same * sx/sasl.c: same * c2s/main.c: same * resolver/resolver.c: same * router/main.c: same * s2s/router.c: same * sm/sm.c: same 2003-10-27 Robert Norris * util/util.h: removed varargs.h test and include 2003-10-24 Robert Norris * c2s/authreg_mysql.c: always allocate templates so they can be freed without issue * c2s/authreg_pgsql.c: same * sm/storage_mysql.c: prefix table names * sm/storage_pgsql.c: same * resolver/resolver.c: logging fixes 2003-10-23 Robert Norris * c2s/c2s.c: c2s won't try to start sessions if the sm isn't online * c2s/main.c: same * c2s/c2s.h: same * s2s/out.c: check the queue exists before using it * util/log.c: optional logging to stdout * util/util.h: same * c2s/c2s.h: same * c2s/main.c: same * resolver/resolver.c: same * resolver/resolver.h: same * router/main.c: same * router/router.h: same * s2s/main.c: same * s2s/s2s.h: same * sm/main.c: same * sm/sm.h: same * etc/c2s.xml.dist.in: same * etc/resolver.xml.dist.in: same * etc/router.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same 2003-10-21 Robert Norris * resolver/resolver.c: allow multiple SRV lookups (specified in config) * resolver/resolver.h: same * etc/resolver.xml.dist.in: same * s2s/main.c: make queue bounces work correctly * s2s/router.c: same * s2s/s2s.c: bounce queue on failed resolution * util/xhash.c: xhash_putx returns void, so don't try to take a return value 2003-10-17 Robert Norris * sm/mod_roster.c: use jid_t rather than a static buffer; clear pointers after free * util/stanza.c: jids buffers are 3072 bytes 2003-10-16 Robert Norris * c2s/c2s.c: handle packets bounced by the sm in a sane way * sm/mod_session.c: redundant logging 2003-10-15 Robert Norris * c2s/main.c: actually use the realm once we've computed it * c2s/c2s.c: teeny logging update 2003-10-13 Robert Norris * c2s/c2s.c: if c2s or sm disappears unexpectedly, make the other kill corresponding sessions * sm/mod_session.c: same * sm/sess.c: same * sm/sm.h: same * etc/sm.xml.dist.in: same * sm/dispatch.c: don't remove the error attr on bounced packets, so the router can avoid loops properly * util/log.c: configurable syslog facility * util/util.h: same * c2s/main.c: same * c2s/c2s.h: same * resolver/resolver.c: same * resolver/resolver.h: same * router/main.c: same * router/router.h: same * s2s/main.c: same * s2s/main.h: same * sm/main.c: same * sm/sm.h: same * etc/c2s.xml.dist.in: same * etc/resolver.xml.dist.in: same * etc/router.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same 2003-10-11 Robert Norris * c2s/authreg_pam.c: only use PAM_FAIL_DELAY on systems that support it 2003-10-08 Robert Norris * sm/mod_iq_private.c: don't free the stored object nad * resolver/resolver.c: less verbose logging * configure.in: configure switch for nad debug * 2.0b2 released 2003-10-07 Robert Norris * c2s/authreg_*.c: logging now reports module name * sm/storage_*.c: same * sm/storage_*.c: checks for malformed or missing xml 2003-10-06 Robert Norris * sm/pres.c: slight log text change * sm/storage_fs.c: don't read off the end of the buffer * sx/server.c: more memory corruption fixes 2003-10-03 Robert Norris * s2s/main.c: don't do checks on unresolved domains * tools/migrate.pl: do mysql roster subscriptions properly 2003-10-02 Robert Norris * c2s/authreg_mysql.c: logging updates; handle failed initial connection correctly (closes #2589) * sm/storage_mysql.c: same * c2s/authreg_pgsql.c: check failures properly * sm/storage_pgsql.c: same * sm/mod_offline.c: don't free the stored object nad * sm/storage.c: better logging * sx/io.c: don't free the nad before we're finished with it * util/nad.c: pointer tracking (for debugging) 2003-09-29 Robert Norris * c2s/authreg_pgsql.c: reconnect to database immediately * sm/storage_pgsql.c: same 2003-09-27 Matthias Wimmer * mio/mio.h: update and add doxygen documentation comments related to IPv6 * mio/mio_inaddr.c: same (and a small return value fix) * mio/mio_inaddr.h: same * util/inaddr.c: same * util/util_compat.h: same 2003-09-25 Robert Norris * sm/mod_iq_vcard.c: properly set packet to, from and type before returning (closes #2630) * ac-helpers/berkeley-db.m4: look in /sw for things (Fink on OS X puts libs here) * ac-helpers/mysql.m4: same * ac-helpers/openssl.m4: same * ac-helpers/pgsql.m4: same 2003-09-24 Robert Norris * scod/mech_digest_md5.c: don't pass pointers to stack variables (closes #2637) * c2s/authreg.c: prep checking on iq:auth/iq:register usernames & resources (closes #2638) * c2s/main.c: configurable router reconnect * c2s/c2s.c: same * c2s/c2s.h: same * s2s/main.c: same * s2s/router.c: same * s2s/s2s.h: same * etc/c2s.xml.dist.in: same * etc/s2s.xml.dist.in: same * sm/sm.h: documented 2003-09-23 Robert Norris * resolver/resolver.c: configurable router reconnect * resolver/resolver.h: same * sm/main.c: same * sm/sm.c: same * sm/sm.h: same * etc/resolver.xml.dist.in: same * etc/sm.xml.dist.in: same * util/daemon.c: removed, not going to do it this way after all * util/util.h: same * util/Makefile.am: same * c2s/main.c: don't pass pointers to stack variables (closes #2637) * sx/io.c: improve sx close semantics * c2s/c2s.c: same * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same 2003-09-22 Robert Norris * doxygen.conf: doxygen bootstrapping * */*.[ch]: same * util/daemon.c: daemon utilites * c2s/c2s.c: check for null jid before printing it (closes #2639) 2003-09-19 Robert Norris * c2s/c2s.c: check for null jid before printing it (closes #2628) * scod/mech_digest_md5.c: don't send null after rspauth (closes #2629) 2003-09-16 Robert Norris * sm/mod_disco.c: change category/type to server/im * etc/sm.xml.dist.in: same 2003-09-12 Robert Norris * tools/migrate.pl: rewritten to use Net::Jabber; migrates auth info * sm/mod_announce.c: don't free the stored motd * sm/mod_template_roster.c: ask can take three values * sm/mod_privacy: fix nasty crasher that hits roster pushes 2003-09-11 Robert Norris * etc/sm.xml.dist.in: updated comments about alternate db drivers * util/md5.h: use uint8_t/uint32_t * util/sha1.h: get rid of typedefs we never use 2003-09-10 Matthias Wimmer * util/util.h: Changed comments that were out of date since revision 1.21 2003-09-10 Robert Norris * tools/migrate.pl: basic 1.4 migration tool * ac-helpers/berkeley-db.m4: more informative error text * ac-helpers/mysql.m4: same * ac-helpers/openldap.m4: same * ac-helpers/openssl.m4: same * ac-helpers/pam.m4: same * ac-helpers/pgsql.m4: same 2003-09-05 Robert Norris * etc/sm.xml.dist.in: all vcard requests get answered by the server 2003-09-04 Robert Norris * c2s/main.c: more authzid checks * scod/mech_plain.c: buffer overrun fix * sm/mod_roster.c: quietly drop roster results, since they're probably push responses 2003-09-03 Robert Norris * sm/pres.c: huge memory leak fix * util/datetime.c: gettimeofday needs both arguments * c2s/authreg.c: error auth requests if no mechanisms enabled * configure.in: tr requires brackets on some systems; check for libsocket and libnsl (needed on solaris) * expat/internal.h: only enable optimisations on with gcc and linux (patch from expat cvs) * 2.0b1 released 2003-09-02 Robert Norris * configure.in: automake docs says this is a good idea * sm/mod_session.c: broke c2s protocol handling out into a module * sm/dispatch.c: same * sm/mm.c: same * etc/sm.xml.dist.in: same 2003-09-01 Robert Norris * scod/mech_anonymous.c: SASL ANONYMOUS support * scod/scod.c: same * scod/scod.h: same * sx/sasl.c: same * sx/sasl.h: same * scod/mech_digest_md5.c: callback prototype change * scod/mech_plain.c: same * scod/scod.h: same * sx/sasl.c: same * sx/sasl.h: same * c2s/c2s.c: updated for ANONYMOUS and sasl callback change * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same * sm/sess.c: log update * c2s/main.c: initialise random number generator at startup * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * sx/server.c: don't initalise random number generator * c2s/authreg_mysql.c: memory leaks * c2s/authreg_pgsql.c: same * ac-helpers/berkeley-db.m4: include stdio.h after other headers * ac-helpers/openldap.m4: same * ac-helpers/openssl.m4: same 2003-08-29 Robert Norris * man/jabberd.8.in: jabberd manpage * router/router.c: offer SASL mechanisms 2003-08-28 Robert Norris * sx/io.c: queue pre-stream packets, and replay them after stream establishment * sx/server.c: same * sx/sx.h: same * c2s/c2s.c: logging tweaks * sx/sasl.c: application can specify wanted mechanisms * sx/sasl.h: same * c2s/authreg.c: auth mechanisms restricted by configuration * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same * man/*: basic manpages 2003-08-27 Robert Norris * util/jid.c: jid_append() returns list pointer, for new lists * util/util.h: same * sm/aci.c: incorporate jid_append() changes * sm/pres.c: track A and E lists properly * sm/sess.c: full session restart on replacement * etc/sm.xml.dist.in: chain cleanups * s2s/main.c: bounce queues on timeout, cleanup conns properly * s2s/in.c: same * s2s/out.c: same * sx/error.c: updated string length to please assertion * sm/dispatch.c: only drop broadcasts, not domain unadvertisments * sm/mod_disco.c: forward directed agents requests 2003-08-26 Robert Norris * etc/c2s.xml.dist.in: config file comment cleanup * etc/resolver.xml.dist.in: same * etc/router.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same * s2s/in.c: remove remote starttls support, its not quite right * s2s/main.c: same * s2s/s2s.h: same * sm/mod_disco.c: proper agents session response (closes #2480) * sm/mod_offline.c: actually read queue messages before delivering them * sm/mod_roster.c: removed redundant code * sm/user.c: don't free users when they've already been freed * util/config.c: read attributes properly * resolver/dns.c: don't crash on multiple srv records * c2s/authreg_mysql.c: sql template updates * c2s/authreg_pgsql.c: same 2003-08-25 Robert Norris * c2s/authreg.c: optionally allow password changes even if registration is disabled * c2s/main.c: same * c2s/c2s.h: same * etc/c2s.xml.dist.in: same * util/Makefile.am: changed queue_* to jqueue_* to help solaris 9 * util/util.h: same * util/queue.c: same * util/jqueue.c: same * c2s/c2s.c: same * router/main.c: same * router/router.c: same * router/router.h: same * s2s/in.c: same * s2s/main.c: same * s2s/out.c: same * s2s/s2s.h: same * sx/callback.c: same * sx/client.c: same * sx/error.c: same * sx/io.c: same * sx/server.c: same * sx/ssl.c: same * sx/ssl.h: same * sx/sx.c: same * sx/sx.h: same 2003-08-20 Matthias Wimmer * etc/s2s.xml.dist.in: allow multiple s2s components to be present (needed sometimes for IPv6) * s2s/main.c: same * s2s/router.c: same * s2s/s2s.h: same 2003-08-20 Robert Norris * sm/mod_roster.c: ask can have three values * tools/db-setup.mysql: same * tools/db-setup.pgsql: same 2003-08-14 Robert Norris * c2s/main.c: getopt() returns int, not char (closes #2421) * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * sm/mod_roster.c: generate correctly-namespaced roster packets * util/stanza.c: updated error codes to match JEP-0086 v0.2 2003-08-13 Robert Norris * c2s/main.c: set process umask at startup * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * etc/Makefile.am: get jabberd.cfg binary names correct based on configure options * etc/jabberd.cfg.dist.in: same 2003-08-12 Robert Norris * bootstrap: work with libtool 1.5 * c2s/c2s.c: free rate limit state at shutdown * c2s/main.c: free rate limit state at shutdown; check authzid for validity * sx/io.c: free buffers * c2s/authreg.c: comment update * sm/main.c: same * util/nad.c: same * c2s/c2s.c: stupid logic bug checking for bounced sm request * sm/mod_template_roster.c: construct delete filter properly * sm/storage.c: free filter pool if filter parse fails * sx/env.c: free plugins and plugin data when environment is freed * sx/sasl.c: same * sx/ssl.c: same * sx/sx.h: same 2003-08-11 Robert Norris * configure.in: static builds * ac-helpers/openssl.m4: same 2003-08-10 Robert Norris * c2s/authreg_ldap.c: search as priveliged user, specify uid attribute in config * etc/c2s.xml.dist.in: same * sm/dispatch.c: bounce non-unicast routes, handle invalid jids * sm/mod_offline.c: bounce queued messages on user delete * sx/sx.c: free chains on stream free * util/jid.c: use assertoin for jid_reset() * resolver/dns.c: comment update * sm/mod_disco.c: same * sm/mod_disco_publish.c: same * sm/mod_iq_vcard.c: same * sx/callback.c: same * util/nad.c: same 2003-08-09 Robert Norris * c2s/authreg.c: nasty potential crasher 2003-08-08 Robert Norris * configure.in: -g for compilers is more portable than -ggdb * tools/db-setup.mysql: more escaping issues * c2s/authreg_mysql.c: sql templates * c2s/authreg_pgsql.c: same * sm/pres.c: unavailables get broadcast to people we trust, not people who trust us 2003-08-07 Robert Norris * idn/*: updated to libidn 0.2.1 * configure.in: updated for idn changes * util/jid.c: same 2003-08-06 Robert Norris * sm/sess.c: session memory handled by pools * sm/sess.c: all sessions are active now, so no need to check * sm/dispatch.c: same * sm/mod_announce.c: same * sm/mod_disco.c: active sessions are now listed under a seperate node * sm/mod_disco_publish.c: free user data * sm/mod_privacy.c: same * sm/mod_roster.c: same * sm/mod_vacation.c: updated for vacation protocol 0.2 * sm/sm.h: cleanup * sx/error.c: brought stream errors into line with xmpp-core 16 * sx/sx.h: same * sx/sasl.c: brought sasl errors into line with xmpp-core 16 * util/stanza.c: brought stanza errors into line with xmpp-core 16 * util/util.h: same * s2s/main.c: expire old pending dns queries 2003-08-05 Robert Norris * sm/sess.c: call user_create correctly (closes #2436) * sm/pkt.c: pkt_delay: x:delay stamp function * sm/sm.h: same * sm/mod_announce.c: use pkt_delay * sm/pres.c: same * sm/mod_offline.c: use pkt_delay; respond to offline events; expire messages * configure.in: allow openldap 2.0 * ac-helpers/mysql.m4: check for stupid redhat systems * util/datetime.c: calculate timezone correctly * mio/mio.c: extra semicolon shouldn't be there * expat/internal.h: silence osx warnings 2003-08-04 Robert Norris * c2s/authreg.c: registration remove * c2s/c2s.c: registration remove, catch failed sm requests * c2s/c2s.h: c2s->result now gets used for the register result too * c2s/main.c: same * c2s/sm.c: trigger user creation/deletion in the sm * etc/sm.xml.dist.in: more user-create and user-delete modules * router/router.c: broadcast packets * sm/user.c: user_load (user_get) now returns NULL if user not exist user_create & user_delete delete by jid, not user * sm/dispatch.c: support user_* changes * sm/mm.c: same * sm/sess.c: remove protocol code * sm/main.c: trigger c2s session ends (sess_end doesn't do it anymore) * sm/mod_active.c: cause user_load to fail on inactive users * sm/mod_announce.c: delete data on user delete * sm/mod_disco_publish.c: same * sm/mod_iq_last.c: same * sm/mod_iq_private.c: same * sm/mod_iq_vcard.c: same * sm/mod_offline.c: same * sm/mod_privacy.c: same * sm/mod_roster.c: same * sm/mod_vacation.c: same * sm/mod_template_roster.c: populate rosters from template at user create (closes FR#2388) * etc/templates/Makefile.am: same * etc/templates/roster.xml.dist.in: same * sm/pres.c: no U list needed (after clarification from xmppwg) * sm/mod_roster.c: fix group deletion properly this time * sm/sm.h: support all of this * sm/storage_mysql.c: free filter after use * sm/storage_pgsql.c: same * 2.0.0-a6 released 2003-07-30 Robert Norris * c2s/authreg.c: allow 128 chars for packet ids * sm/mod_roster.c: correctly handle roster group deletions (closes #2395) * scod/mech_digest_md5.c: free attributes correctly * sm/mm.c: user-create and user-delete chains * etc/sm.xml.dist.in: same * sm/sess.c: better seperation of session activity from trigger packet; support proper auto-creation of users; moved active code into mod_active * sm/user.c: moved active code into mod_active; added user creation/deletion functions * sm/mod_active.c: handle user active status * sm/sm.c: moved packet dispatcher into dispatch.c * sm/dispatch.c: move packet dispatcher here, with changes to support user-create/user-delete chains and sess.c changes * sm/mod_disco_publish.c: user-load now returns int * sm/mod_privacy: same * sm/mod_roster.c: same * sm/mod_vacation.c: same * sm/pkt.c: free packet nad only if it exists * sm/sm.h: changes to support all of this 2003-07-28 Robert Norris * etc/sm.xml.dist.in: offline and announce need to get the first presence * sx/server.c: a smarter way to generate stream ids * sx/sasl.c: simple valgrind warning fixer 2003-07-27 Robert Norris * c2s/authreg_ldap.c: user doesn't exist if we're unable to check 2003-07-25 Robert Norris * sx/ssl.c: fixed ssl mode * sx/sx.c: same * sm/pres.c: more logging, small distribution thinko * router/user.c: small leak * c2s/main.c: save process id files * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * sm/main.c: same * etc/c2s.xml.dist.in: same * etc/resolver.xml.dist.in: same * etc/router.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same * router/router.c: packet throttling * router/router.h: same 2003-07-24 Robert Norris * sm/pres.c: new xmpp-compliant presence tracker * sm/mod_presence.c: same * sm/pkt.c: same * sm/sm.h: same * etc/sm.xml.dist.in: same * sm/sm.c: store sm sessions in hashtable; more unique session ids * sm/main.c: same * sm/sess.c: same * c2s/c2s.c: same * c2s/c2s.h: same * util/datetime.c: now generates correct timestamps * util/hex.c: hex conversion utilities * util/sha1.c: refactored to be more like md5_* * util/sha1.h: same * util/str.c: moved shahash_r here and refactored to use new hex utils * util/sha.c: removed * util/util.h: updated to incorporate these changes * util/Makefile.am: same * sx/server.c: shahash_r can't generate random strings anymore, so do it ourselves * scod/mech_digest_md5.c: use new hex utils * tools/db-setup.mysql: fixed quotes (closes #2382) * etc/router.xml.dist.in: fixed well-formedness bug (closes #2381) 2003-07-22 Robert Norris * c2s/c2s.c: protect against packets in no namespace (closes #2322) * resolver/resolver.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same * sx/io.c: same * sx/sasl.c: same * sx/ssl.c: same * s2s/out.c: correctly flag pending dns resolutions * s2s/out.c: leak and double-free fixes * sm/mod_roster.c: same * sx/sasl.c: same * configure.in: check for res_query * tools/Makefile.am: removed references to pass-sync.sh 2003-07-21 Robert Norris * scod/mech_digest_md5.c: check return value of password methods, method flags * scod/mech_plain.c: method flags * scod/scod.c: same * scod/scod.h: same * sx/sasl.c: new flags for password method availability * sx/sasl.h: same * resolver/resolver.c: same * s2s/main.c: same * sm/main.c: same * c2s/main.c: same * router/user.c: user/pass tables * router/main.c: same * router/router.h: same * router/Makefile.am: user/pass table for router users * etc/router-users.xml.dist.in: same * etc/router.xml.dist.in: same * etc/Makefile.am: same * c2s/authreg.c: don't need password sync anymore * c2s/main.c: same * etc/c2s.xml.dist.in: same 2003-07-17 Robert Norris * scod/mech_digest_md5.c: only send one server realm; report success correctly; use callback for password and authzid checking * scod/mech_plain.c: use callback for password and authzid checking * scod/scod.c: specify realm to server_start(), bugfixes * scod/scod.h: more callback stuff * c2s/c2s.c: updated sasl code to use scod; router port is now 5347 * c2s/c2s.h: same * c2s/main.c: same * resolver/resolver.c: same * router/main.c: same * s2s/main.c: same * s2s/router.c: same * sm/main.c: same * sm/sm.c: same * sx/sasl.c: same * sx/sasl.h: same * README: removed references to cyrus-sasl * configure.in: don't search for/link cyrus-sasl anymore * ac-helpers/cyrus-sasl.m4: removed * etc/c2s.xml.dist.in: removed sasl config, router port is now 5347 * etc/resolver.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same * c2s/Makefile.am: link with scod * resolver/Makefile.am: same * router/Makefile.am: same * s2s/Makefile.am: same * sm/Makefile.am: same 2003-07-16 Robert Norris * scod/mech_digest_md5.c: working DIGEST-MD5 implementation (client & server) * scod/scod.h: same 2003-07-15 Robert Norris * scod/*: minimal sasl implementation, work in progress * configure.in: same * Makefile.am: same 2003-07-10 Robert Norris * util/str.c: add j_strnchr, like strchr but only counts n chars * util/util.h: same * util/md5.c: md5 hashing code * util/md5.h: same * util/util.h: same * util/Makefile.am: same * c2s/c2s.c: small bugfix (deref jid correctly) 2003-07-09 Robert Norris * s2s/main.c: fixed compile errors * s2s/out.c: same * router/main.c: changed default port ot 5347 * etc/router.xml.dist.in: same 2003-07-08 Robert Norris * util/xdata.c: xdata parsing * util/xdata.h: same * util/util.h: same 2003-07-07 Robert Norris * util/datetime.c: seems to work, hurrah * sm/mod_vacation: vacation messages * sm/main.c: same * sm/mm.c: same * sm/sm.h: same * tools/db-setup.pgsql: same * tools/db-setup.mysql: same * etc/sm.xml.dist.in: same * sm/mod_privacy.c: initialise vars properly * sm/mod_disco.c: browse is officially deprecated * etc/sm.xml.dist.in: same * s2s/in.c: keepalives, queue expiry, invalid expiry * s2s/main.c: same * s2s/out.c: same * s2s/s2s.h: same * sm/sm.h: use defines instead of enum for namespace numbers * sm/pkt.c: same 2003-07-06 Robert Norris * util/datetime.c: start of iso8601 datetime parser * util/util.h: same * util/Makefile.am: same 2003-07-04 Robert Norris * sm/mod_privacy.c: cleanups and fixes, item/default storage * sm/db-setup.mysql: privacy fixes, motd-messages table rename, comments * sm/db-setup.pgsql: same * sm/mod_announce.c: motd-messages table rename 2003-07-01 Robert Norris * configure.in: get uint8_t in a portable way * ac-helpers/ac_create_stdint_h.m4: same * ac-helpers/ac_compile_check_sizeof.m4: same * ac-helpers/Makefile.am: same * mio/mio.h: same * sx/sx.h: same * util/util.h: same * sm/mod_roster.c: make string large enough for full jids * util/stanza.c: same * configure.in: fix --enable-select * sm/mod_privacy.c: xmpp iq:privacy support (incomplete) * sm/mm.c: same * etc/sm.xml.dist.in: same * sm/Makefile.am: build for mod_privacy * tools/db-setup.pgsql: privacy list storage * tools/db-setup.mysql: same * configure.in: don't clobber CFLAGS with --enable-developer (closes #2247) * sm/storage_mysql.c: small thinko (thanks shuo) (closes #2240) * s2s/in.c: refactored much of the internals, much simpler now * s2s/main.c: same * s2s/out.c: same * s2s/router.c: same * s2s/s2s.h: same * idn/toutf8: use ICONV_CONST to make call to iconv() portable without warnings (closes #2222) 2003-06-25 Robert Norris * util/jid.c: stringprep cache, for speed (thanks temas!) * util/util.h: same * c2s/authreg.c: same * c2s/c2s.c: same * c2s/c2s.h: same * c2s/main.c: same * router/main.c: same * router/router.c: same * router/router.h: same * s2s/in.c: same * s2s/main.c: same * s2s/out.c: same * s2s/s2s.h: same * sm/aci.c: same * sm/main.c: same * sm/mod_disco.c: same * sm/mod_disco_publish.c: same * sm/mod_roster.c: same * sm/pkt.c: same * sm/sess.c: same * sm/sm.h: same 2003-06-23 Robert Norris * configure.in: extra header check that idn asks for ; force libtool to link during configure (closes #2192) * c2s/authreg.c: more memory leaks * c2s/c2s.h: same * c2s/main.c: same * resolver/resolver.c: same * router/main.c: same * sm/mm.c: same * sm/mod_announce: same * sm/sm.c: same * sm/storage_mysql.c: same * sm/storage_pgsql.c: same 2003-06-20 Robert Norris * Makefile.am: don't distribute ac-helpers/CVS * ac-helpers/Makefile.am: same * configure.in: same * c2s/main.c: stupid crasher when getting realm with no to address (closes #2210) * router/main.c: numerous memory leaks * router/router.c: same * sm/mod_disco.c: same * sm/sm.h: same * sx/io.c: same * sx/sasl.c: same * sx/server.c: same * sx/sx.c: same * util/config.c: same 2003-06-19 Robert Norris * sx/client.c: allow partial writes; better buffer management (closes #1905) * sx/error.c: same * sx/io.c: same * sx/sasl.c: same * sx/server.c: same * sx/ssl.c: same * sx/sx.c: same * sx/sx.h: same * s2s/sx.c: same * c2s/c2s.c: changed to use partial writes (closes #1905) * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same * util/nad.c: fix compiler warnings on some systems (closes #1905) * util/util.h: same * c2s/main.c: more realm sanity checks * c2s/authreg.c: xmpp-style session start * c2s/c2s.c: same * c2s/c2s.h: same * c2s/main.c: same * sx/sasl.c: xmpp-style sasl errors * sm/mod_disco_publish.c: disco item publishing * sm/mod_disco.c: same * sm/mm.c: same * sm/Makefile.am: same * etc/sm.xml.dist.in: same * tools/db-setup.pgsql: same * tools/db-setup.mysql: same * 2.0.0-a5 released 2003-06-18 Robert Norris * sm/object.c: preserve object order (closes #2103) * sm/storage_mysql.c: force object return order (closes #2103), correct storage of field names * sm/storage_pgsql.c: force object return order (closes #2103) * tools/db-setup.mysql: same * tools/db-setup.pgsql: same 2003-06-17 Robert Norris * c2s/authreg_pam.c: pam authentication module (closes FR#1209) * c2s/authreg.c: same * c2s/Makefile.am: build for pam module * ac-helpers/pam.m4: checks for pam * configure.in: checks for pam, set alt cflags first 2003-06-12 Robert Norris * ac-helpers/openldap.m4: swap link order on lber & ldap, helps systems that don't have deep deps on libs * ac-helpers/mysql.m4: only try to link, since running doesn't do anything * ac-helpers/pgsql.m4: same 2003-06-11 Robert Norris * configure.in: use libtool to build everything (closes #1937) * c2s/Makefile.am: same * expat/Makefile.am: same * idn/Makefile.am: same * mio/Makefile.am: same * resolver/Makefile.am: same * router/Makefile.am: same * s2s/Makefile.am: same * sm/Makefile.am: same * sx/Makefile.am: same * util/Makefile.am: same 2003-06-10 Robert Norris * config.rpath: taken from gettext, needed for AM_ICONV to work on all platforms * ac-helpers/*: added -R to try and link runpaths correctly (possibly closes #1937) * sx/sx.h: removed fd requirement so sx is not completely io-agnostic (closes #1896) * authreg/authreg.c: same * router/router.c: same * tools/pass-sync.sh: example password sync script 2003-06-09 Robert Norris * configure.in: require openssl 0.9.6b+ to better support Redhat * c2s/authreg.c: external password synchronisation, sane default realm * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same * etc/jabberd.cfg.dist.in: run s2s before c2s * sx/sasl.c: allow authzid to differ from user@realm, minor cleanups * sx/sasl.h: minor cleanups * sx/client.c: removed fd requirement so sx is not completely io-agnostic (closes #1896) * sx/io.c: same * sx/sasl.c: same * sx/server.c: same * sx/ssl.c: same * sx/sx.c: same * sx/sx.h: same * configure.in: include sys/types.h in various ipv6 checks (closes #1931) 2003-06-05 Robert Norris * README: documentation updates * etc/c2s.xml.dist.in: same * etc/sm.xml.dist.in: same * tools/db-setup.mysql: same * tools/db-setup.pgsql: same * configure.in: documentation updates and build cleanups * c2s/authreg.c: change functions to ar_* and _ar_*, for consistency * c2s/authreg_anon.c: same * c2s/authreg_db.c: same * c2s/authreg_pipe.c: same * sm/storage_mysql.c: optionally disable transactions * sm/storage_pgsql.c: same * tools/db-setup.pgsql: initial setups for mysql storage 2003-06-04 Robert Norris * sm/storage_mysql.c: mysql storage module * sm/storage.c: same * c2s/authreg_mysql.c: mysql authreg module * c2s/authreg.c: same * ac-helpers/mysql.m4: build for mysql * configure.in: same * sm/Makefile.am: same * etc/sm.xml.dist.in: config for mysql * etc/c2s.xml.dist.in: same 2003-06-02 Robert Norris * sm/storage_pgsql.c: insert multiple objects correctly, and fixed some leaks 2003-05-30 Robert Norris * configure.in: more task-based build system * ac-helpers/*: same * c2s/authreg.c: same * c2s/authreg_anon.c: same * c2s/authreg_db.c: same * c2s/authreg_ldap.c: same * c2s/authreg_pgsql.c: same * c2s/authreg_pipe.c: same * sm/storage.c: same * sm/storage_db.c: same * sm/storage_fs.c: same * sm/storage_pgsql.c: same 2003-05-29 Robert Norris * c2s/authreg_pgsql.c: postgresql authreg module * c2s/Makefile.am: same * c2s/authreg.c: same * etc/c2s.xml.dist.in: same * tools/db-setup.pgsql: updated schema for authreg 2003-05-28 Robert Norris * configure.in: build for postgresql * ac-helpers/pgsql.m4: same * sm/Makefile.am: same * sm/storage.c: postgresql storage module * sm/storage_db.c: correct init return on failure * sm/storage_fs.c: same * sm/storage_pgsql.c: numerous fixes from testing, works now 2003-05-27 Robert Norris * c2s/c2s.c: record activity at accept so we don't send a keepalive before the stream is established * sm/storage_pgsql.c: postgresql storage module * etc/sm.xml.dist.in: same * tools/db-setup.pgsql: initial setups for postgresql storage * sm/mod_announce.c: split storage into two seperate types to make the schema sane 2003-05-21 Robert Norris * c2s/authreg_pipe.c: base64 pipe-auth passwords * tools/pipe-auth.pl: same * c2s/c2s.c: c2s keepalives * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same * sm/sess.c: correctly replace sessions (closes #1917) * sm/sm.c: same * sm/sm.h: same 2003-05-20 Robert Norris * sm/mm.c: user load chain * sm/mod_roster.c: same * sm/user.c: same * sm/sm.h: same * etc/sm.xml.dist.in: same * sm/mod_iq_last.c: don't reply to untrusted requested * sm/pres.c: _jid_trust() is now pres_trust() 2003-05-16 Robert Norris * sx/callback.c: handle empty namespace declarations 2003-05-15 Robert Norris * util/stanza.c: fixed error code assertion * util/util.h: error codes are >100 to prevent clashes with sm module return codes * sm/mod_announce.c: xmpp stanza errors * sm/mod_deliver.c: same * sm/mod_disco.c: same * sm/mod_iq_last.c: same * sm/mod_iq_private.c: same * sm/mod_iq_vcard.c: same * sm/mod_offline.c: same * sm/mod_roster.c: same * sm/mod_validate.c: same * sm/pkt.c: same * sm/sm.c: same * sm/sm.h: same 2003-05-14 Robert Norris * resolver/resolver.c: xmpp stanza errors * router/router.c: same * s2s/in.c: same * s2s/out.c: same * sm/sess.c: same * sm/sm.c: same * util/nad.c: removed nad_error() and nad_tofrom() * util/util.h: same * c2s/c2s.c: xmpp stream errors * c2s/main.c: same * router/router.c: same * sx/client.c: same * sx/io.c: same * sx/server.c: same * sx/ssl.c: same * sx/sx.h: same 2003-05-09 Robert Norris * util/stanza.c: xmpp stanza errors * util/util.h: xmpp stanza errors, defines for namespace URIs * c2s/authreg.c: use xmpp stanza errors, defines for namespace URIs * c2s/c2s.c: defines for namespace URIs * c2s/sm.c: same * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * s2s/sx.c: same * sm/main.c: same * sm/mod_announce.c: same * sm/mod_disco.c: same * sm/mod_iq_last.c: same * sm/mod_iq_private.c: same * sm/mod_iq_time.c: same * sm/mod_iq_version.c: same * sm/mod_offline.c: same * sm/mod_privacy.c: same * sm/mod_roster.c: same * sm/pkt.c: same * sm/pres.c: same * sm/sess.c: same * sm/sm.c: same * sm/sm.h: same * sx/io.c: same * sx/sasl.c: same * sx/server.c: same * sx/ssl.c: same * sx/client.c: defines for namespace URIs, sx_client_init() triggers write correctly 2003-05-09 Matthias Wimmer * etc/sm.xml.dist.in: corrected mismatched tag * configure.in: added _mio_addrlen * mio/mio.c: same * mio/mio_inaddr.c: same * mio/mio_inaddr.h: same 2003-04-16 Robert Norris * util/queue.c: no reason to restrict null data 2003-04-15 Robert Norris * sx/ssl.c: handle large buffers correctly 2003-04-10 Robert Norris * sm/mod_disco.c: correct local identity handling (including config options) * etc/sm.xml.dist.in: same 2003-04-04 Robert Norris * sx/io.c: correct error/close handling * c2s/c2s.c: don't need to force close after error any more * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same * sm/mm.c: fix nasty crasher when module can't support requested chain * c2s/c2s.c: idle connection checks * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same 2003-04-03 Robert Norris * sm/storage_db.c: refactored for new storage layer * sm/mod_roster.c: silly memory allocation bug 2003-04-02 Robert Norris * sm/mod_announce.c: refactored for new storage layer * sm/mod_iq_vcard.c: same * sm/storage_fs.c: warns about its unstable nature 2003-04-01 Robert Norris * etc/sm.xml.dist.in: no more private index, so nothing to do at session start * sm/mod_iq_last.c: refactored for new storage layer * sm/mod_iq_private.c: same * sm/mod_offline.c: free object sets when we're done with them * sm/user.c: same * sm/mod_roster.c: group storage * sm/object.c: track the set tail * sx/sx.h: new plugin method for freeing connection state on close * sx/sx.c: same * sx/sasl.c: free connection state on close * sx/ssl.c: same * ac-helpers/openldap.m4: stupid missing comment [jaxp] * sx/ssl.c: catch transport closure correctly (closes #1411) * c2s/c2s.c: close streams after errors (closes #1411) * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same 2003-03-31 Robert Norris * sm/sm.h: new object-based storage layer * sm/storage.c: same * sm/object.c: data objects for storage * sm/storage_fs: nasty filesystem backend for storage layer testing * sm/mod_offline.c: refactored for new storage layer * sm/mod_roster.c: same * sm/sess.c: same * sm/user.c: same * util/nad.c: parse raw xml into a nad * util/util.h: same 2003-03-27 Robert Norris * router/router.c: make sure components get reverse notifications about legacy components * sm/mod_disco.c: refactored and heavily optimised * util/base64.c: base64 encode/decode functions * util/util.h: same * util/str.c: removed old str_b64decode() function * router/router.c: use statically allocated jid buffers, so we don't need 2-4 large malloc's every packet * util/jid.c: jid_reset() shouldn't free memory that it doesn't know the origin of * sm/mod_validate.c: allow subscription packets 2003-03-25 Robert Norris * c2s/authreg_db.c: xhashes can't store empty strings, so hold the empty realm handle seperately (possibly closes #1411) * util/xhash.c: iteration functions * util/util.h: same 2003-03-24 Robert Norris * configure.in: check for openssl >= 0.9.6d (admin should check for security holes) * ac-helpers/openssl.m4: same * c2s/main.c: avoid segfault on unknown realm 2003-03-21 Robert Norris * 2.0.0-a4 released 2003-03-20 Robert Norris * router/main.c: packet logging facilities (log sinks) * router/router.c: same * router/router.h: same * etc/router.xml.dist.in: same 2003-03-19 Robert Norris * ac-helpers/*: alternate paths for external libs * configure.in: same * sx/sasl.c: callback to get sasl auth realm * sx/sasl.h: same * c2s/authreg.c: sasl client auth * c2s/c2s.c: same * c2s/c2s.h: same * c2s/main.c: same * etc/c2s.xml.dist.in: same * router/router.c: move component auth into seperate realm * router/main.c: same * resolver/resolver.c: modified for sx sasl change * s2s/main.c: same * sm/main.c: same * configure.in: ldap support * ac-helpers/openldap.m4: same * c2s/authreg_ldap.c: ldap authentication module * c2s/authreg.c: same * etc/c2s.xml.dist.in: same * c2s/c2s.h: pull in config.h * idn/strinprep.h: same * mio/mio.h: same * resolver/resolver.h: same * router/router.h: same * s2s/s2s.h: same * sm/sm.h: same * sx/sx.h: same * expat/*: updated to 1.95.6 2003-03-18 Robert Norris * sx/sasl.c: force servers to explicitly offer sasl/starttls * sx/sasl.h: same * sx/ssl.c: same * sx/ssl.h: same * c2s/c2s.c: authenticate to router with seperate user/pass; seperate connect and accept SSL pemfiles * c2s/main.c: same * c2s/c2s.h: same * resolver/resolver.c: same * resolver/resolver.h: same * s2s/in.c: same * s2s/main.c: same * s2s/out.c: same * s2s/router.c: same * s2s/s2s.h: same * sm/main.c: same * sm/sm.c: same * sm/sm.h: same * etc/c2s.xml.dist.in: same * etc/resolver.xml.dist.in: same * etc/router.xml.dist.in: same * etc/s2s.xml.dist.in: same * etc/sm.xml.dist.in: same * sm/main.c: version signature * sm/mod_iq_version.c: same * sm/sm.h: same * router/main.c: name aliases; bind access controls * router/router.c: same * router/router.h: same * sm/mod_iq_vcard.c: sanity checks for dodgy data * sm/mod_iq_private.c: same * sm/mod_announce.c: same * sm/mod_offline.c: same * s2s/out.c: cache dns results * s2s/s2s.h: same 2003-03-14 Robert Norris * tools/jabberd.in: run s2s by default * etc/jabberd.cfg.dist.in: same * c2s/c2s.c: write large buffers out * resolver/resolver.c: same * router/router.c: same * s2s/in.c: same * s2s/out.c: same * s2s/router.c: same * sm/sm.c: same * sx/sasl.c: correctly encode large buffers 2003-03-13 Robert Norris * s2s/*: s2s (dialback) component * etc/s2s.xml.dist.in: config for s2s * configure.in: build system for s2s * router/router.c: support for a "default" bind option * router/router.h: same * c2s/c2s.c: weird indenting fixed * sm/sm.h: no conflicting bitmasks * sx/ssl.h: bit-shifted flag the wrong way 2003-03-11 Robert Norris * configure.in: set berkeley include and lib paths properly * berkeley-db.m4: same * router/router.c: route advertisements * router/router.h: domain_t doesn't exist anymore * sm/mod_disco.c: updated for new advertisement protocol * sm/pkt.c: recognize and build advertisement packets * sm/sm.h: same * sm/sm.c: dispatch non-route packets to pkt_router chain * router/router.c: support for legacy 'jabber:component:accept' components * router/main.c: same * etc/router.xml.dist.in: same * util/nad.c: errors don't have to have text, the code is enough * resolver/resolver.c: update for SX2 and new component protocol * resolver/resolver.h: same * etc/resolver.xml.dist.in: same * c2s/main.c: free mio at exit * sm/main.c: same * router/main.c: same * sx/ssl.c: fixed ssl/sasl establishment checks * sx/sasl.c: same * sx/sx.c: same 2003-03-10 Robert Norris * sx/sasl.c: updated to xmpp-core-05 * sx/sasl.h: same * sx/ssl.c: same * sx/ssl.h: same * sx/client.c: supporting changes * sx/io.c: same * sx/server.c: same * c2s/c2s.c: encrypt the router conn if possible * sm/main.c: same * sm/sm.c: same * sm/sm.h: same * README: copyright and licensing info * idn/*: import of GNU Libidn 0.1.11 * configure.in: checks for iconv and locale (for idn) * Makefile.am: build idn * c2s/Makefile.am: link libidn.a * sm/Makefile.am: same * router/Makefile.am: same * resolver/Makefile.am: same * util/jid.c: prep new jids, use xmpp-core-05 field widths (closes #809) * util/util.h: same * c2s/authreg.c: prep modified session jid * router/router.c: prep domain names on incoming packets * sm/pres.c: verify trust using prep'd jids directly * berkeley-db.m4: alternate paths for berkeley db (actions #791) * configure.in: same 2003-03-05 Robert Norris * sx/Makefile.am: removed handshake.[ch] * sx/callback.c: start nad depth at 0, track namespaces for attributes * sx/client.c: track namespaces for attributes * sx/server.c: same * sx/io.c: better close handling * sx/chain.c: starting element for nads * sx/sasl.c: same * sx/sx.c: track callback reentry correctly * sx/sx.h: header changes for all this * configure.in: removed debugging flags * c2s/authreg_pipe.c: redundant buffer removed * c2s/c2s.c: ported to new SX2 and adjusted for new packet format * c2s/c2s.h: same * c2s/main.c: same * c2s/sm.c: same * sm/*: ported to new SX2 and adjusted for new packet format * router/router.c: route errors, unbind names on disconnect * sx/io.c: make sx_nad_write_elem() actually write from elem * util/jid.c: TODO item about libidn * util/nad.c: nad_append_namespace(), changes to nad_error() * util/util.h: same * etc/c2s.xml.dist.in: router is now on port 5230 * etc/sm.xml.dist.in: same * docs/dev/sm-c2s-protocol: new session protocol * docs/dev/component-protocol: new component protocol * c2s/c2s.c: fixed router reconnect * sm/sm.c: same 2003-03-03 Robert Norris * router/main.c: new route protocol, early ssl/sasl component support * router/main.c: same * router/router.h: same 2003-02-26 Robert Norris * sx/sx.c: don't allow sx_free to be called from a callback * sx/io.c: same * router/main.c: same * router/router.c: same 2003-02-25 Robert Norris * README: warning about broken CVS * sx/*: new streams layer * c2s/*: partial port to new SX2 * router/*: port to new SX2 * etc/router.xml.dist.in: same * util/nad.c: nad_tofrom() and nad_error() utilities from SX1 * util/util.h: same * configure.in: get reasonable debug flags with --enable-debug 2003-02-09 Matthias Wimmer * README: The URL to download Berkeley DB changed 2003-01-16 Robert Norris * sm/mod_roster.c: fixed a little bug that could break group management * router/main.c: service aliases * router/router.h: same * etc/router.xml.dist.in: same; 1.4 uplink example * router/router.c: allow ip/port fallback to work correctly * sx/conn.c: fill out conn peer structure correctly 2003-01-10 Robert Norris * sm/mod_roster.c: s10n for jids not on the roster get created correctly (closes #864) 2003-01-08 Matthias Wimmer * mio/mio_inaddr.h: fixed a typo 2003-01-07 Matthias Wimmer * configure.in: check for in_port_t added 2002-12-20 Robert Norris * sm/mm.c: removed per-module module data (redundant) * sm/sm.h: same * sm/mod_announce.c: same * sm/mm.c: module instance data passed to each module * sm/mod_*.c: same * sm/sm.h: same * 2.0.0-a3 released 2002-12-18 Robert Norris * configure.in: IPv6 support [mawis] * c2s/c2s.c: same * c2s/main.c: same * mio/mio.c: same * mio/mio.h: same * mio/mio_inaddr.c: same * mio/mio_inaddr.h: same * resolver/dns.c: same * resolver/dns.h: same * resolver/resolver.c: same * resolver/resolver.h: same * router/main.c: same * router/router.c: same * sx/conn.c: same * sx/dialback.c: same * sx/sasl.c: same * sx/server.c: same * sx/sx.h: same * util/access.c: same * util/util.h: same * util/inaddr.c: same * util/util_compat.h: same * etc/resolver.xml.dist.in: same 2002-12-17 Robert Norris * sm/mod_announce.c: broadcast messages (broadcast, motd, etc) * sm/mm.c: same * etc/sm.xml.dist.in: same * sm/mm.c: global per-module data * sm/sm.h: same * util/nad.c: rewrote nad_find_scoped_namespace() * sm/mod_echo.c: send sm message to admins * sm/mm.c: same * etc/sm.xml.dist.in: same 2002-12-16 Robert Norris * sm/mod_deliver.c: packets to offline resources return 404 * sm/mm.c: per-instance module arguments (for module multiplexors eg mod_perl) * sm/mod_*.c: same * sm/sm.h: same 2002-12-14 Robert Norris * util/jid.c: jid list helpers moved from sm/pres.c * util/util.h: same * sm/pres.c: same * sm/aci.c: access control specification and checking * sm/main.c: same * sm/sm.h: same * etc/sm.xml.dist.in: same * sm/disco.c: user/session disco now restricted 2002-12-09 Robert Norris * sm/mod_disco.c: set feature element at the correct depth (closes #792) * util/nad.c: added a note about a needed fix to use of parents and the depth array 2002-12-04 Robert Norris * c2s/authreg_pipe.c: pipe authenticator * c2s/authreg.c: same * etc/c2s.xml.dist.in: same * tools/pipe-auth.pl: sample module for pipe authenticator * c2s/c2s.c: flag chunks from domains (no node) correctly * sm/mod_deliver.c: send everything not for this session instead of this user * sm/mod_disco.c: list of active users, and active sessions per user 2002-12-01 Robert Norris * router/router.c: component presence * c2s/c2s.c: same * resolver/resolver.c: same * sm/sm.c: same * sm/mod_disco.c: service discovery (JEP-0030) support, agents/browse compatibiltiy * sm/main.c: same * sm/mm.c: same * sm/sm.h: same * etc/sm.xml.dist.in: same * sm/feature.c: feature registry * sm/: updated modules to register supported features * sm/storage.c: removed redundant code * sm/mm.c: prevent infinite loops * sm/pkt.c: tiny packet id bugfix 2002-11-28 Robert Norris * c2s/main.c: SIGHUP now rotates the log * resolver/resolver.c: same * router/main.c: same * sm/main.c: same * c2s/main.c: reorganised some code slightly * sm/main.c: same 2002-11-26 Robert Norris * sm/mm.c: setup module_t fields before the initialiser gets called 2002-11-22 Robert Norris * sm/storage_db.c: restructured to make more sense (and work correctly) * sm/mod_iq_private.c: rewritten to make more effective use of utils * sm/mm.c: same * sm/sm.c: log connection info like c2s/resolver * sm/mod_iq_vcard.c: return 501 if put isn't implemented, not 500 * 2.0.0-a2 released * sm/mod_iq_private.c: no more namespace restrictions 2002-11-21 Robert Norris * c2s/authreg_db.c: tranaction/recovery support * sm/storage_db.c: same * util/xhash.c: added xhash_zapx() and xhash_putx() * util/util.h: same 2002-11-20 Robert Norris * sx/chunk.c: now has the concept of local/remote for peers, and experimental support for the new router stream * sx/client.c: same * sx/conn.c: same * sx/dialback.c: same * sx/nad.c: same * sx/sasl.c: same * sx/server.c: same * sx/sx.h: same * c2s/: updated to support changed api * resolver/: same * router/: same * sm/: same * configure.in: only support db 4.1 * sm/storage_db.c: same * c2s/authreg_db.c: same 2002-11-19 Robert Norris * c2s/sm.c: new c2s/sm control protocol (see docs/dev/sm-c2s-protocol) * c2s/c2s.c: same * c2s/authreg.c: same * c2s/c2s.h: same * sm/main.c: same * sm/pkt.c: same * sm/sess.c: same * sm/sm.c: same * sm/sm.h: same * util/jid.c: clear dirty flag when we expand 2002-11-18 Robert Norris * etc/: more changes to config building, now we insert correct paths into xml files * util/nad.c: nad_wrap_elem() brings new namespaces into scope * util/util.h: same * c2s/c2s.c: converted to run on jid_* * c2s/authreg.c: same * c2s/c2s.h: same 2002-11-15 Robert Norris * util/nad.c: nad_set_attr now takes a length for the value, so no restrictions on packet id length * util/util.h: same * c2s/authreg.c: same * c2s/c2s.c: same * resolver/resolver.c: same * sm/mod_deliver.c: same * sm/mod_iq_last.c: same * sm/mod_iq_private.c: same * sm/mod_iq_time.c: same * sm/mod_iq_vcard.c: same * sm/mod_iq_version.c: same * sm/mod_offline.c: same * sm/mod_privacy.c: same * sm/mod_roster.c: same * sm/pkt.c: same * sm/pres.c: same * sm/sess.c: same * sm/sm.h: same * sx/dialback.c: same * sx/nad.c: same * sx/sasl.c: same * configure.in: install config under $(sysconfdir)/jabber 2002-11-14 Ryan Eatmon * Makefile.am: include tools * configure.in: same * etc/jabberd.cfg.dist: config file for jabberd wrapper * etc/Makefile.am: same * tools/jabberd: jabberd wrapper script to provide easier launching * tools/Makefile.am: same * util/log.c: flush the debug output 2002-11-14 Robert Norris * resolver/dns.h: explicitly include some headers (closes #728) * configure.in: link with -lcrypto (closes #728) * sm/pres.c: make sure _jid_trust build the user jid correctly (closes #733) * util/serial.c: nice string/int serialiser functions * util/util.h: same * util/Makefile.am: same * sm/mod_iq_private.c: fixed compile warnings * sm/mod_roster.c: modified to use new serialiser utils * sm/mod_privacy.c: same 2002-11-13 Robert Norris * sm/mm.c: actually update mm->nindex (I have no idea how this worked before) * sm/sm.h: per-user module data * sm/user.c: same * sm/sess.c: send through unavailable presence before we call mm_sess_end(); * sm/sess.c: free module data on session end * sm/mod_privacy.c: jabber:iq:privacy (JEP-0016) support * sm/sm.h: same * sm/main.c: same * sm/mm.c: same * sm/Makefile.am: same * etc/sm.xml.dist: same * sm/mod_iq_private.c: jabber:iq:privacy (JEP-0049) support * sm/mm.c: same * sm/Makefile.am: same * etc/sm.xml.dist: same * sm/mod_echo.c: message echo module (closes FR#375) * sm/Makefile.am: same * sm/mm.c: same * sm/Makefile.am * etc/sm.xml.dist: same * sm/sess.c: new function sess_match(), finds a session by resource (full or partial) * sm/sm.h: same * sm/mod_deliver.c: modified to use sess_match() * sm/mod_privacy.c: same * sm/mod_roster.c: send presence from top session with automated (un)sub responses 2002-11-12 Robert Norris * util/nad.c: started a todo list 2002-11-11 Robert Norris * util/log.c: removed restriction on filename length (closes #714) * util/util.h: same 2002-11-08 Robert Norris * sm/mod_iq_vcard.c: overwrite existing vcard properly * c2s/authreg_db.c: support db 4.1+ * sm/storage_db.c: same * etc/Makefile.am: don't overwrite existing config files if present (closes #705) * etc/c2s.xml.dist: moved from etc/c2s.xml * etc/router.xml.dist: moved from etc/router.xml * etc/resolver.xml.dist: moved from etc/resolver.xml * etc/sm.xml.dist: moved from etc/sm.xml * sx/dialback.c: lowercase domain names * sx/conn.c: handle empty namespace declarations * util/jid.c: added a note about jid comparisions 2002-11-07 Ryan Eatmon * util/log.c: fixed logging of notices when debug is turned on * c2s/main.c: reconnect to router on router disconnect * resolver/resolver.c: same * sm/main.c: same 2002-11-07 Robert Norris * 2.0.0-a1 released