mod_bosh: Set session.ip for BOSH sessions.

util.sasl: Added compatibility workaround for jwchat sending an encoded trailing '\0' in SASL responses.

net.dns: Be more strict about the records we cache

net.dns: Be more strict about checking the DNS replies we receive

util.sasl: Improved a log message.

util.sasl: Allow authzid=username (for compatibility with Smack's non-compliant behavior).

util.sasl: Return proper error when client provides authzid.

Changed separator between attribute names and prefixes from '|' to '\1' (optimization and cleanup).

net.connlisteners: Log an error when a listener fails to load.

componentmanager: Improved logging for stanzas being bounced for unavailable components.

mod_posix: Log warning when no_daemonize is used, and instruct on how to update config

mod_posix: Switch config option to 'daemonize', fall back to 'no_daemonize' if not set, default behaviour remains the same... daemonize if mod_posix is loaded

modulemanager: api:get_option(): Handle correctly option values of boolean false, don't assume value unset

Merge with trunk

net.dns: Fixed indentation and coding style.

util.dataforms: Support for jid-multi field type

net.dns: Initialize default resolver on module load (instead of on first use).

net.dns: Updated to use util.windows.get_nameservers for enumerating nameservers on Windows.

net.httpserver: Pass correct connection object to disconnect listener, which fixes a small leak

prosodyctl: Put 'pidfile' in quotes to make more clear that it is the literal name of the option

MUC: Include occupants' real JIDs in their presence (semi-anonymous rooms).

Makefile.win: Added support for util.windows, improved cleanup of temporary files, switched to dynamic linking with MSVCRT, etc.

util.windows: Initial commit. Adds support for querying the windows DNS API for nameservers.

util.dataforms: Only add value to rendered form if supplied in the data

util.pposix: Add abort() function

server.lua: Standardise on 'client' variable to refer to the socket, makes the code a bit cleaner

Merge with trunk

mod_welcome: Change $user to $username in default welcome message (thanks to chris for spotting)

Prosody top-level error handler modified to log properly on non-string error messages.

mod_console: Added proper cleanup for disconnected console sessions.

MUC: Fixed: affiliation='none' was omitted from some presence broadcasts.

xmppserver_listener: Minor logging fix: Prefer the session logger when available to log invalid XML warnings.

MUC: Fixed an issue with multi-session nicks where the 'from' attribute in a presence broadcast was not being properly set.

server.lua: Add addsocket(), refactor all code to use it, fixes nasty socket object leak - moral of the story is to not duplicate code, and not prematurely optimise. But you knew that already didn't you?

rostermanager: Fixed a global access.

rostermanager: Refactored roster loading to remove duplicate code.

rostermanager: Log a warning when a self-contact is detected.

rostermanager: Ensure meta-data entry is present on roster load.

rostermanager: Remove self-contacts from loaded rosters.

PEP: Better reload support.

PEP: Send publish IQ result before broadcast.

PEP: Stricter checks on payload validity.

PEP: Clone payloads to allow plugins to reuse stanzas.

PEP: Fixed namespace for the <item> element in PEP broadcasts.

util.require: Yes hg, I really did want to remove it, thanks.

prosody, util.require: Remove util.require, the shortest-lived module so far. Woke up this morning with a much simpler idea, which is also effective against C modules (I believe). Yay for metatables :)

mod_presence: Send unavailable presence when sending unsubscribed presence stanzas (some legacy clients continue to display unsubscribed contacts as available).

xmlhandlers: Reset state on error or stream close, fixes possible traceback

connlisteners: Localize tostring, fixes possible traceback when LuaSec not installed

MUC: List occupants in a room's disco#items response.

Merged with trunk.

MUC: Added config option 'restrict_room_creation' to allow restricting room creation to admins.

usermanager: Removed an unnecessary global access.

usermanager: Logged a clear warning when the 'admins' option is not a table.

usermanager: Changed function is_admin to allow checking for host-specific admins.

mod_lastactivity: Gave a positive priority to the presence event hook.

MUC: Added 'name' config option, for specifying the component's name in disco responses.

net.dns: Don't expire records with TTL of 0 instantly

mod_lastactivity: Persist data across reloads.

mod_lastactivity: Allow users to request their own last activity.

prosody.cfg.lua.dist: Convert to unix line endings from DOS

prosody: Use rawget to test for the existence of ssl (LuaSec) so we don't look for a nil global

util-src/Makefile: Add missing flags to building of util.signal

net.httpserver: Pass on interface option from new_from_config() (thanks Chris)

prosodyctl: Remove dependency on hostmanager, and friends

s2smanager: Use session-specific logger to log outgoing data on outgoing s2s connections

mod_lastactivity: Initial commit.

mod_uptime: Removed event hook for iq/bare. mod_uptime only deals with iq/host queries.

mod_uptime: Removed unused variables.

mod_uptime: Updated to use events (which also fixes a few minor issues).

mod_saslauth: Fixed access of globals.

mod_saslauth: Marked the im-session stream feature as optional. This allows smart clients to save a round trip.

mod_time: Updated to use events (which also fixes a few minor issues).

mod_ping: Updated to use events (which also fixes a few minor issues).

mod_console: Fixed traceback occuring on using module:list on unknown hosts.

mod_console: Added help text for config:reload().

MUC: Re-enable nick changes for non-multisession nicks.

mod_console: Add missing hosts:list() command

MUC: Added support for reason messages in role and affiliation changes (e.g., reason for kick, etc).

MUC: Rewrote code for mediated invites to be more robust, and to support legacy clients.

mod_vcard: Cleaned up unused variables and global accesses.

mod_vcard: Removed stream feature.

mod_vcard: Refactoring and cleanup.

mod_vcard: Moved completely to new event based hooks.

mod_vcard: Fixed traceback on attempt to set vcards by non-c2s sessions.

MUC: Improved handling of error stanzas and made error messages concise.

MUC: Ignore invisible presence (incorrectly broadcasted or forwarded by ejabberd).

MUC: Fixed an incorrect error message.

MUC: Kick occupants on sending error messages to other occupants.

Merge with trunk.

modulemanager: Module loading rewritten to gracefully deal with errors in module initialization.

modulemanager: Use componentmanager to create new components.

componentmanager: Added a FIXME comment.

componentmanager: Unload mod_tls for components before removing them.

componentmanager: Let the default component handler handle stanzas if a component handler isn't available.

MUC: Multiple sessions per nick.

modulemanager: Fixed: Stanza modules were being auto-loaded for components (regression in hg:1e674dae31ae).

modulemanager: Fixed traceback on loading modules on unknown hosts.

modulemanager: Slightly rearranged code for more robust unloading of modules.

stanza_router: Added a compatibility workaround for missing 'id' attribute in <iq/> elements.

util.stanza: Don't add xmlns to tags when serializing if same as the parent tag's xmlns. Should hopefully shut up Gajim once and for all :)

certs: Update default certs

net.dns: Don't cache some records indefinitely

mod_tls: Offer the host-specific cert (when there is one) to incoming c2s/s2s connections, fixes #30 (thanks, albert, Flo, johnny, and all who nagged me :) )

hostmanager: Create a server sslctx for incoming connections

net.server: Allow changing the sslctx of a connection after it has been established

xmppserver_listener: Use listener log() if session doesn't have one yet (thanks Flo)

mod_console: Add commands host:activate(host, config) and host:deactivate(host, reason) to add/remove hosts at runtime

s2smanager: Add incoming_s2s to the prosody object

hostmanager: deactivate() now accepts a reason, closes s2s connections as well as disconnecting users, and unloads modules for the host

hostmanager: Add return _M;

tests: Fix stanza_router tests to work with the new routing code, finally all tests pass again \o/

tests: More environment magic to help get stuff working in a sandbox

stanza_router: Localize hosts, full_sessions and bare_sessions, and take from the prosody object instead of _G

componentmanager: Handle missing prosody object (helps us pass some tests)

prosody: Move global protection earlier (to before modules are loaded, etc.)

prosody: Require new require :)

prosody: Require some core/util libraries which core modules depend upon, C modules and other modules which write to _G

prosody: Rename global net_activate_ports -> prosody.net_activate_ports

util.require: A replacement for Lua's require/module that doesn't load into the global environment by default (C modules still get past this)

util.helpers: Add copyright header

tests: Have fake module() set _M to satisfy some modules

s2smanager: Fix access of 'config' global without requiring configmanager

tests: Add tests for new modulemanager load_modules_for_host code

modulemanager: Re-organise module loading to still work when no global modules_enabled is defined in the config (thanks hoelzro for accidentally discovering this one)

util.helpers: Add get_upvalue(function, name) helper

util.dataforms: Incorporate slightly modified patch for list-single type from Florob

mod_vcard: Hide me from the trailing-whitespace police

mod_vcard: Add vcard_compatibility option to handle vcard stanzas routed to the full JID by ejabberd MUC rooms

Merge with 0.5

xmppserver_listener: Fix typo (thanks Jorj)

Merge with 0.5

net.server: Better handling of closing sockets during send

xmppserver_listener: More forcefully close s2s connections (fixes fd leak)

Merge with 0.5

net.dns: Remove sockets from socketset when closing them, fixes a leak

Merge with 0.5

rostermanager: Fixed a traceback on roster save.

modulemanager: Changed api:get_host_items to include items from the global host in its result.

util.dataforms: Small fix to allow generating forms without specifying any input data

util.dataforms: Support for jid-single field type especially for Florob :)

mod_tls: Don't try to start TLS if we can't actually do it (thanks Florob)

componentmanager: Auto-load mod_tls for components #hack

componentmanager: Remove FIXME

componentmanager: Fix oops in pattern for matching subdomain

componentmanager: Use ssl_ctx of 'parent' host (should fix TLS for components)

mod_tls: Catch s2s-stream-features and add starttls feature if possible

mod_dialback: Catch s2s-stream-features and add dialback feature

s2smanager: Make s2s-stream-features a per-host event

util.stanza: Remove silly dependency on util.logger

util.array: Oh no it isn't!

modulemanager: Bump log level of unhandled non-default-namespace elements, and log their full XML

util.stanza: Soften dependency on util.termcolours

util.stanza: Make xml_escape publicly accessible

s2smanager: Don't send version=1.0 in reply to incoming stream tag if they didn't advertise 1.0 (makes happy some old ejabberd versions)

sessionmanager: Mark client streams as opened sooner to avoid wrapping errors in unnecessary stream tags

s2smanager: Improve log message on missing to/from in stream header

mod_console: Add a space before '(encrypted)' in s2s:show()

mod_tls: Mark sessions as not secure when negotiating outward TLS, so they get marked secure later. Fixes missing (encrypted) for outgoing sessions in s2s:show(). Thanks albert, McKael :)

hostmanager: Only initialse SSL contexts if SSL library available

mod_console: Also search piggy-backed, er, multiplexed domains when passing a filter to s2s:show()

Merge with 0.5

util.array: Small logic fix for array:filter()

util.array: Fix for array:filter() (in-place filtering)

mod_console: Add module:list() to help

mod_console: Add module:list() command to show modules loaded on a host

util.array: Per-array methods now always mutate the array, array.* return a mutated copy, and most methods (e.g. sort) now return the array

modulemanager: Add host.modules to contain a table of modules for a host

Merge with 0.5

util.array: Fix for array:filter() (in-place filtering)

mod_console: s2s:show(): Indicate when a connection is encrypted

mod_tls: require_s2s_encryption -> s2s_require_encryption

require_encryption deprecated, use c2s_require_encryption instead

mod_tls: Mark starttls feature as <required/> if require_s2s_encryption is enabled

mod_tls: Mark session as not secure before negotiating TLS

s2smanager: Mark session as secure if it was negotiating TLS and opens a new stream

Merge with 0.5

mod_console: Add module:list() to help

mod_console: Add module:list() command to show modules loaded on a host

util.array: Per-array methods now always mutate the array, array.* return a mutated copy, and most methods (e.g. sort) now return the array

modulemanager: Add host.modules to contain a table of modules for a host

mod_tls: Only advertise TLS if the server told us which host they are connecting to

xmppserver_listener: Lower log-level of debug message to, er, 'debug'

net.adns: Bump log-level of DNS handler errors to, er, 'error'

Merge with 0.5

stanza_router: Reply to IQ requests with missing 'id' attribute with a bad-request error.

rostermanager: Fixed: Roster version was not being properly updated in some edge cases.

rostermanager: Added support for saving rosters of offline users to the save_roster function.

mod_tls: :up() out of the starttls tag in stream:features

Specify XMPP version on response stream to incoming s2s connection.

Minor changes; outgoing TLS works.

hostmanager: Create ssl context for each host (fixes #30 for outgoing s2s connections)

loggingmanager: Whitespace fix

s2smanager: Small comment

s2smanager: Don't wait for stream:features from non-XMPP-1.0 hosts

s2smanager: Send stream:features for incoming s2s connections which support XMPP 1.0

s2smanager: Give outgoing sessions a host field (the local one)

stanza_router: Add COMPAT comment for Pidgin workaround

net.server: Small logging improvements

net.server: Pass current time to timer callbacks

net.server: Increase SSL handshake round-trip limit, and make it configurable

net.server: Call handler's status() to notify it of ssl handshake success

net.server: Provide a way to get sslctx of a client connection

net.server: Provide a way to get sslctx of a server

xmppserver_listener: Add status() function to signal when a connection completes its SSL handshake

xmppserver_listener: Add logger to s2s sessions

xmppserver_listener: Small whitespace fix

xmppserver_listener: Better log messages on invalid XML

mod_dialback: Initiate dialback on incoming stream:features

mod_tls: Advertise and handle TLS for s2s connections

util.stanza: Add __type to metatable

sessionmanager: Use UUID for stream ids to clients, no math.random anymore :)

sessionmanager: Add c2s_timeout option for unauthenticated client connections

util.timer: Pass current_time to timer callbacks

mod_httpserver: Update to use new httpserver.new_from_config syntax

mod_bosh: Update to use new httpserver.new_from_config syntax

net.httpserver: Allow modules registering to provide more than just a default path when using httpserver.new_from_config

Merge with 0.5

util.muc: Fix location of <x> element on error replies

Merge with 0.5

mod_bosh: Fix for 'invalid key to next' error when 2 clients lose connection at the same time

net.server: Fix missing concatenation operator in error message

MUC: Prep given JID when changing affiliation.

Merge with 0.5

Merge

mod_register: Added helpful text to registration error responses.

mod_register: Changed error type for hitting registration rate limit from 'cancel' to 'wait'.

mod_register: Fixed: No error was returned if username failed nodeprep.

util.encodings: Removed a bit of unreachable code.

util.encodings: Included idn-free.h, which explicitly declares the idn_free function.

util.encodings: Fixed: Last change was not ANSI C compatible.

Merge with 0.5

modulemanager: Load modules for components, too

componentmanager: Preserve existing events table (if any) when registering a component

componentmanager: Fire event on component activation

componentmanager: Use create_component for, er, creating components

hostmanager: Only load vhosts, not components

Merge with 0.5

mod_saslauth: Prep username used for authenticating a session

Merge with 0.5

util.encodings: Don't throw an error but return nil when passed nil or a non-string value

Merge with 0.5

util.pposix: Compatibility with Solaris systems (thanks Filip)

util.signal: Change ifdef to allow signal.kill() on Solaris (thanks Filip)

Makefile: Don't combine variable export with assignment for compatibility with other shells (thanks Filip)

Merge with 0.5

Tagging 0.5.2

Merge with trunk

MUC: Added multi-session support to the room-exiting occupant use case.

MUC: Renamed a variable name.

MUC: Refactored to remove some duplicate code.

Merge with 0.5

Merge with waqas 0.5.2

Merge with waqas

mod_legacyauth: Don't allow server-generated resource identifiers, as these are not support by legacy auth.

mod_legacyauth: Undo auth on bind fail. Legacy auth is atomic.

mod_legacyauth: Added node and resource prepping.

Makefile.win: Updated the windows Makefile with more appropriate paths.

util.encodings: Fixed an issue with cross-module memory deallocation (crashes on some windows versions).

core.s2smanager: Always use last record in the DNS cache

net.dns: Even better parsing of nameservers from resolv.conf

Merge with 0.5

net.dns: Remove elements from the cache when expired so as to not leave holes in the array

mod_console: s2s:close: Use session:close() if that exists, otherwise just destroy the session

net.dns: Stricter matching of nameserver entries in resolv.conf

MUC: Added legacy error code to the presence error returned when a banned user attempts to join.

MUC: Added legacy error codes to nickname conflict presence errors.

Merge with trunk

MUC: Added MUC feature to the disco#info replies of rooms.

Merge with 0.5

net.dns: Respect commented nameserver entries in resolv.conf (thanks Remko)

mod_welcome: Change $user to $username in default welcome message (thanks to neustradamus for spotting)

Re-tagging 0.5.2

mod_httpserver: Configurable filesystem path to serve from

Re-tagging 0.5.2

prosody.cfg.lua.dist: Add example of declaring admins for a server

net.dns: (for some reason this commit didn't pull over from 0.5) Remove hard-coded 4.2.2.1 from dns.lua

Merge with 0.5

net.dns: Accidentally committed a hard-coded 4.2.2.1 nameserver

core.s2smanager: Don't recurse CNAMEs infinitely :)

net.server: Fix traceback when closing connections with buffered data get closed during send

Merge with 0.5

Tagging 0.5.2

Merge with 0.5

mod_vcard: Handle vcard requests from local components.

Merge with 0.5

mod_console: Show status and priority of clients

Merge with 0.5

s2smanager: Timeout unauthed s2s connections

util.helpers: It would be a good idea to fire an event when we say we are

Merge with 0.5

s2smanager: Compatibility with domains which use CNAMEs

Merge with 0.5

s2smanager: Pass A-record lookups through adns module

prosody: Add prosody.installed flag to indicate whether Prosody has been installed or is running from checkout

prosody: Add prosody.platform which can be either 'windows', 'posix' or 'unknown'

Merge with 0.5

net.adns: Utilise new net.dns API to handle DNS network errors

net.dns: Multiple internal changes and API extensions to allow for more reliable DNS lookups

net.server: Add checking for nil sockets to prevent traceback

ejabberd2prosody: Fixed a problem with null roster groups.

ejabberd2prosody: Fixed escape code processing when parsing strings.

ejabberd2prosody: Added support for ask='both' in subscriptions.

MUC: Removed some debug logging.

MUC: Added a send() method to the component. Fixes issues with local mod_vcard.

mod_vcard: Handle vcard requests from local components.

MUC: Correct routing of vCard requests to bare JID.

configmanager: Assign a chunk name to config files loaded using the default config loader (fixes issues with some diagnostic tools).

mod_offline: Fixed undefined global access.

ComponentManager: Removed unused variable.

ComponentManager: Removed dependency on core_route_stanza. The default component handler now replies using origin.send().

ComponentManager: Fixed: Default handler sent error replies on result stanzas.

ComponentManager: Fixed a bit of logging.

Merge with 0.5 (no changes!)

mod_httpserver: Backport from trunk more thorough validation of URLs prior to processing

MUC: Preserve stanza attributes for private messages.

MUC: Don't kick on errors in private messages.

MUC: Discard non-persistent rooms as soon as they become empty.

Removed util.muc (replaced by new MUC plugin library)

Removed legacy mod_muc (replaced by new one).

MUC: Removed commented code.

mod_console: c2s:show(): Group listed clients by host

Fix for Makefile hack to install MUC plugin

Updated the Makefile to work with the MUC plugin folder.

Merged with Tobias

Automated merge with http://prosody.im/source/hg

Add NODEprepping to SASL Digest-MD5 authentication handling.

MUC: Fixed traceback on unauthorized access of the room configuration form.

MUC: Added service discovery replies for rooms.

MUC: Fixed an undefined global access.

MUC: Added support for room configuration forms, persistence and hidden rooms.

MUC: Refactored IQ handling to be more easily extensible.

MUC: Added kicking support.

MUC: Fixed a variable scoping bug causing problems with presence routing on affiliation/role change.

MUC: Fixed: Unavailable presence was being sent for all role and affiliation changes. Now sent only for kicked occupants.

MUC: Changed a MUC library method into a function.

MUC: Fixed stanza routing for reloaded rooms.

MUC: Added support for reloading MUC library code.

MUC: Workaround for Miranda sending 'nick' instead of 'jid' when changing affiliation.

MUC: Some fixes for minor bugs in IQ handling.

MUC: Added support for requesting various lists (owner, admin, voice, etc).

MUC: An admin or owner MUST NOT be able to revoke moderation privileges from another admin or owner.

MUC: Owners can now modify roles and affiliations

MUC: Added support for generating unique room names

MUC: Send appropriate error to banned users on join.

MUC: Renamed _participants table to _occupants

MUC: New basic mod_muc based on the new MUC library

MUC: Initial support for roles and affiliations

MUC: Fixed function declarations.

MUC: The MUC lib is now metatable based. Cleaned up code, etc.

MUC: Added initial MUC lib

Merge with 0.5

datamanager: Fixed logging errors on deletion of datastores not owned by a user@host

mod_presence: Fixed: Don't recursively handle inbound presence directed at local host

modulemanager: Fixed: Internally generated stanzas could be missing namespaces, which causes tracebacks in logging (e.g., auto-generated offline presence)

net/dns: Fixed regression causing nameserver initialization to fail on Windows

mod_compression: Fixed: Starting compression only worked before auth

Merge with 0.5

ejabberd2prosody: More intelligent searching for erlparse library

Uncertain merge with 0.5's SASL

util.sasl: Fix 2 global sets (one a tpyo)

Allow ampersands in passwords for SASL PLAIN mechanism and fixing a typo.

Change variable name. The previous choice was too ugly looking.

Use NODEprep for prepping usernames used during SASL logins.

Do SASLprep for SASL PLAIN mechanism to be more conform with RFC 4616.

Don't allow double compression.

Support compression also after SASL.

Merge with waqas

mod_compression: Fixed some undefined global accesses

net.adns: Add some debug logging to help track down traceback

net.server: Add checking for nil sockets to prevent traceback

net.dns: Automatically add nameserver 127.0.0.1 if /etc/resolv.conf missing or empty on a non-Windows system (thanks Louis Mamakos)

Merge waqas with Tobias. Eww.

Removed util/discohelper.lua

Removed core/discomanager.lua

modulemanager: Removed unused variables and reference to core.discomanager

modulemanager: Removed unnecessary code in the unload function

modulemanager: Removed legacy disco#items hook

modulemanager: add_feature and add_identity APIs updated to use only the add_item API

componentmanager: Removed disco#items hook, and reference to core.discomanager

mod_disco: Rearranged some lines, and added a FIXME comment

mod_disco: Removed reference to core.discomanager

mod_disco: Removed legacy IQ hooks

mod_disco: Handle disco#items queries using new APIs

mod_disco: Added identity server/im with name 'Prosody'

mod_disco: Handle disco#info queries using new APIs

modulemanager: Added module API function to get all items for a given host based on a key

modulemanager: Module API functions add_item and add_feature updated to use the add_item API

mod_pep: Added name 'Prosody' to the pubsub/pep identity

modulemanager: Changed the add_identity module API to accept an optional name parameter (the 'name' attribute for the <identity/> element)

Added: functions add_item and remove_item to add and remove items to the module API

componentmanager: Added function to get a list of children for a given hostname

mod_register: Updated to use module:get_option instead of configmanager

mod_posix: Updated to use module:get_option instead of configmanager

mod_legacyauth: Added a FIXME

mod_legacyauth: Refactored a bit

mod_legacyauth: Updated to use module:get_option instead of configmanager

mod_legacyauth: Removed useless 'require' call on every login attempt

core.s2smanager, xmppserver_listener: Move the responsibility of setting session.log from the latter to the former for incoming sessions (outgoing are already like this)

xmppclient_listener: Remove useless comment

core.sessionmanager, xmppclient_listener: Move responsibility for setting session.log to the former from the latter, much more sensible

net.server: Comment all calls to mem_free/collectgarbage... not really suitable for a realtime server, let's trust Lua's GC - it's good.

Shutdown prosody if changing user or group fails.

Make mod_posix not complain about root user, if setuid is set to something different as root.

Add setuid and setgid support.

Remove print which was used for debugging purposes.

Using pcall to make save the rest from zlib fails. Emit errors on those fails.

Forgot to use the configured compression_level. Now it's used.

Add config option handling.

Another unwanted spaces at the end of a line.

Add a TODO for s2s compression support.

Remove space at the end of a line.

Add FIXME to remember TLS compression detection.

Actually inject de- and compression into the reading/writing functions.

Remove unwanted spaces.

Commit initial version of mod_compression.

Removing tabs at the end of a line.

mod_httpserver: Set default file handler (you can now request static files as /*) and restructure code a bit

net.httpserver: Allow overriding default request handler

mod_bosh: Strip BOSH namespace from stanzas to allow for some clients which may send them without the correct xmlns

mod_bosh: Calculate rid difference just once

mod_bosh: Basic handling of rids (more to come)

mod_bosh: Correct reply when closing sessions

net.httpserver: Don't log response bodies!

util.iterators: Add tail() iterator, to return the last n items

util.iterators: Add head() iterator, to return the first n items

Merge with Tobias

Moving realm at the beginning of the digest-md5 message send by the server.

Fixing a SASL issue by always passing the realm from SASL framework init to the handlers.

mod_bosh: Updated to use module:get_option instead of configmanager

mod_watchregistrations: Updated to use module:get_option instead of configmanager

mod_selftests: Mark as global

mod_tls: Updated to use module:get_option instead of configmanager

mod_selftests: Updated to use module:get_option instead of configmanager

mod_welcome: Updated to use module:get_option instead of configmanager

ejabberdsql2prosody: Removed unnecessary stanza reserialization for private storage

ejabberdsql2prosody: Added support for offline messages

ejabberdsql2prosody: Fix access of undefined global

mod_version: Rewritten to use new API. Added reply caching, and fixed some issues.

mod_version: Use the module API to read configuration options instead of configmanager

Merge with albert and waqas

Fixed: Zeros could be stripped from the version string the Makefile extracts from the local hg repository (thanks albert)

Merge with 0.5

Fixed: Outbound subscription requests silently dropped (regression in hg:7f17d0d00fbb)

mod_xmlrpc: Correct stripping of filename/line number prefix in RPC method error results

mod_saslauth: Fix coding style and layout, and use of arg[] for vararg

mod_saslauth: Fix indentation

mod_saslauth: Fix traceback on attempted login for non-existent users

Merge with 0.5

xmppcomponent_listener: Fix to collect component sessions on disconnect

Merge with 0.5

mod_bosh: Fix error reply for host-unknown errors

net.httpserver: Allow response.body to be a non-string

Merge with waqas

ejabberdsql2prosody: Added support for Private XML Storage

ejabberdsql2prosody: Added support for vCards

ejabberdsql2prosody: Added an XML parser

Merge with 0.5

Fixed: Self-references could be added to rosters via presence subscriptions

Fixed: IQ replies are not sent back on publishing a PEP event

Tagging 0.5.1

mod_console: EOT (Ctrl-D) closes the connection.

Merge with 0.5

MUC: Added the MUC child element to conflict errors 0.5.1

Added: Support for PROSODY_SRCDIR and PROSODY_PLUGINDIR environment variables

mod_pep: Added support for pubsub item retraction

Merge with 0.5

xmpp{client,server,component]_listener: Open stream if sending an error and it isn't already open. Fixes #120

mod_console: Finally add in the missing 'help' command \o/

configmanager: Default options appearing before Host "*" to global (fixes potential traceback)

hostmanager: Warn when user puts port configuration under vhost section

core.loggingmanager: Enable timestamps by default for file log sinks

net.server: Much improve SSL/TLS error reporting, do our best to understand and hide OpenSSL's ridiculously unfriendly error messages

ejabberdsql2prosody: Allow for multiple INSERTs to the same table

Merge with 0.5

Fixed: Possible duplicate error replies for unhandled stanzas

net.httpserver: Reduce log level of 'request left open' message

Merge with 0.5

mod_presence: Tag outgoing unavailables generated by a disconnect with a from attribute

xmpp{client,server}_listener: Report contents of packets containing invalid XML

(0) -1000 -480 +480 +1000 tip

mercurial