Change log:
v1.0.17 -- 23 Aug 2016
----------------------
Note: This release is not binary compatible with previous releases.
It is source compatible.
- MingW compile fixes (thanks to Florian Niebel)
- properly use winsock2 (thanks to Kau)
- a few fixes for uclibc++ compatibility (thanks to Erik Horemans)
- Message: removed bogus hard-coded namespace to fix component use
v1.0.16 -- 16 Jul 2016
----------------------
- PubSubManager: properly include publish options (thanks to Iban Ulov)
- PubSubManager: properly parse subscriptions in ctor (thanks to Joe Best)
- Resource: fixed high memory usage when receiving presence stanzas
(#259) (thanks to Manuel)
v1.0.15 -- 25 Apr 2016
----------------------
- Error: fix copy ctor (thanks to Olivier Tchilinguirian)
- ClientBase: properly fix handling of MUC invitation declines
(wrong in 1.0.14) (thanks to Martin Hillmeier and Matias Snellingen)
(#248)
- MUCRoom: handle SendRoomConfig (thanks to Matias Snellingen) (#253)
- soversion bump, missed that for 1.0.14 (thanks to Vincent Cheng)
- TLSGNUTLSClient: fixed off-by-one error in certificate verification
- IPv6 fixes
v1.0.14 -- 11 Aug 2015
----------------------
Note: This release is not binary compatible with previous releases.
It is source compatible.
- IOData: make it possible to pass more than one element as in/out/error data
- Client: fix resetting of presence status text
- TLSSChannel: fix memory leak (thanks to Alexander Weisner)
- Error: added setAppError() to set application-specific error message
- PubSub::Item: added setPayload(), setID()
- Adhoc: return clone of plugin
- PubSub::Manager: fix finding of subscription type (thanks to BillHoo)
- ChatStateFilter: fix enable logic (thanks to Ivan Shmakov)
- MessageEvent: added parsing of <id/> (thanks to Ivan Shmakov)
- MessageEvent: added id() (thanks to Ivan Shmakov)
- ClientBase: handle MUC invitation declines properly (thanks to
Matias Snellingen)
- DNS: IPv6 fix (thanks to garimacoe) (#249)
- DelayedDelivery: propagate internal state properly (#251)
- PubSub::Manager: fix GetSubscriberList and GetAffiliateList
2.12.1 (2016-05-01)
add lua plugin
change desktop file to open urls in existing instance on Unix
misc chanopt fixes
misc identd fixes
misc challengeauth fixes
re-add support for old versions of libnotify
update network list
2.12.0 (2016-03-12)
add support for IRCv3.2
add support for twitch.tv/membership cap
add support for SNI (Server Name Indication)
add ability to do DnD reordering in some settings dialogs
add option to disable middle-click closing tabs
rewrite sysinfo plugin
rewrite identd plugin
rewrite update plugin
rewrite checksum plugin
remove DH-{AES,BLOWFISH} mechanisms (insecure)
remove IRC encoding, replaced with UTF-8
remove System Default encoding, replaced with UTF-8
remove configure option to disable ipv6
remove msproxy and socks5 library support (unused)
change tab-complete to favor other user nicks over own
change url detection to support unicode
change decoding to not attempt ISO-8859-1 fixing corruption
change pluginpref to escape values
minor changes to icons
fix numerous crashes (but not #600)
fix poor performance with nick indent enabled
fix UTF-8 text in winamp plugin
fix fishlim plugin handling networks with server-time
fix logging hostname of users in new queries
fix Key Press event sending non-UTF-8 text to plugins
fix get_info( win_ptr ) from python
fix running portable-mode from another directory
fix duplicate timestamps on selection
fix cfgdir argument
fix mode-button text being cut off
fix scrollback timestamps with server-time
fix url handler accepting quoted paths with spaces
fix using correct encoding when jumping networks
improve DCC handling large files
improve python detection in configure
improve scrollback file handling (corruption, line endings)
improve building in cygwin
improve build options on unix to be more secure
update translations
update network list
2.10.2 (2014-11-25)
verify hostnames of certificates
use more secure openssl options (No SSLv2/3)
detect utf8 urls in chat
fix using multiple client certs at the same time
fix checking for Perl on some distros
fix friends list not properly updating
fix building with format-security
fix opening utf8 urls on Windows and OSX
update deps on Windows
update translations
Changes:
v0.8.19 2016-03-23 The Irssi team <staff@irssi.org>
- Fixed regression when joining and parting channels on IRCnet (#435)
- Fixed SASL EXTERNAL (#432)
- Fixed regression when not using SASL (#438)
- Fixed incorrect SSL disconnects when using SSL from modules/scripts
(#439)
- Fixed regression where proxy_string could not be configured or
certain file transfers could not be accepted (#445)
- Fixed storing layout of !channels (#183)
- Fixed restoration of bracketed paste mode on quit (#449)
- Make the usage of meta-O for cursor keys configurable with
/set term_appkey_mode off
v0.8.18 2016-02-13 The Irssi team <staff@irssi.org>
* Modules will now require to define a
void MODULENAME ## _abicheck(int *version)
method to ensure that they are compiled against the correct Irssi
version.
* The signature of "message private" has been changed to
5: server, message, nick, address, target
in order to support "self messages". Module authors should
implement this change if they are using this signal.
* Removing networks will now remove all attached servers and channels
(#45).
* The proxy module now has an /irssiproxy command.
* sb_search has been moved to scripts.irssi.org
* WIN32 has been completely removed (it had not been working and is
lacking a maintainer.)
* Garbage Collection support has been removed. This will hardly have any
effect for anyone given that it has been unsupported for several years.
+ CAP SASL PLAIN login is now supported natively.
+ Paste bracket markers can be requested from terminal with
/set paste_use_bracketed_mode on
+ "Self messages" generated by some bouncers can now be received in the
proper window.
+ Try to split long lines on spaces to avoid words being splitted. Adds
a new option: 'split_line_on_space' which defaults to on.
+ Add setting hilight_nick_matches_everywhere (#56).
+ The config parser is more robust and prints out better diagnostics on
incorrect config files.
+ Ctrl+^ (FS#721) and Ctrl+J can now be bound.
+ Command history can be cleared with /window history -clear
+ /hilight -mask -line is now supported (FS#275).
+ CHANTYPES are now supported.
+ Improved reload speed of ignores.
+ Add -date feature to /lastlog
+ irssiproxy can be more easily enabled and disabled.
+ Expando for hostname (FS#829).
+ UNIX sockets can now also be specified in the config file.
+ Disable SSLv3 due to the POODLE vulnerability.
+ SSL ciphers can now be specified per server.
+ Added SNI support for SSL.
- /ignore now respects -pattern on merge (#78).
- irssiproxy (BNC) module now uses correct line endings.
- Fix missing lines on large pastes (FS#905).
- Correctly preserve STATUSMSG prefixes (#291).
- Fix infinite recursion in key bindings (FS#817).
- Fix incomplete awaylog caused by buffering.
- Fix calculation of UTF-8 string length display in some cases.
- Fix some Perl warnings related to @ISA.
- EXEC windowitems now get proper references on the Perl side.
- Incremental help file improvements.
- ANSI attributes are now properly reset.
- Fixed regression where text would blink when terminal lacks color
support.
- Permit the usage of Freenode extban syntax in /ban (#150)
- Fixed regression in scriptassist on unload of scripts.
- Fixed regression in -actcolor %n
ejabberd 16.08
MUC
- New MUC/Sub support
- Add 'allow_subscription' room configuration option for MUC/Sub
OAuth and ReST API
- Add OAUTH SQL backend
- New special scope: ejabberd:admin and ejabberd:user, to more
easily grant group of privileges
- Add DB backend support for ejabberd_oauth
- Added ejabberdctl commands to manage OAuth tokens:
oauth_issue_token, oauth_list_tokens, oauth_list_scopes,
oauth_revoke_token
- Simplified OAuth form: username and password merged into JID
field
- User configurable validity duration for tokens on OAuth token
generation form
- Add support for sending back missing scope error to API ReST
command calls
- Oauth: several minor fixes
- Support oauth password grant type, to generate token
programmatically
Elixir support
- Update supported Elixir version to 1.2 and 1.3.
- Support installation of Elixir contributions with external
module command line tool.
PubSub
- Fix use of like parameter in sql pubsub's requests
- Fix node configuration change with sql backends
- Fix send_last_items duplication with multi-plugin setup
MAM
- Always limit result set page size
- Use hooks instead of direct calls
API
- Add support for checking access rules conformance for commands
- Add support for rich error reporting for API
- Add support for sending back missing scope error to API ReST
command calls
- Fix handling of complex values as arguments in http_api
- Improve error handling
Other improvements
- External Component Connection Hooks
- Fix compilation issues on R19
- Support for OpenSSL 1.1
- Make access rules in ejabberd_web_admin configurable
- Make modules loading in a dependent order (#1191)
- Make s2s stats commands more robust
- Preserve PID for offline sessions
- Several quoting fixes for PostgreSQL
- Switch supervised workers from temporary to transient
ejabberd 16.06
Config
- New ACL infrastructure
- Add shorter version of some common access rules definitions
- Allow @ inside acl rules user, user_glob or user_regexp to pass
both user and server in single string
- Add acl rule access_rules_validator and shaper_rules_validator
for use in mod_opt_type and opt_type callback functions.
- Allow using shapers defined by name like in s2s_shaper: fast
- Allow mod_opt_type and opt_type to transform values passed to
it, and support better error reporting
- Do not call transform_terms multiple times in configuration
processing when merging them
- Don't halt program when include_config_file is missing/can't be
read
- Allow again multiple fqdn values in configuration
Commands
- Allow passing username and ip to ejabberd_commands, and use it
in mod_http_api
- Fix path to epmd in ejabberdctl
- push_roster: must convert read strings to binaries
- set_presence: Fix command API
- Fix for modules_update_specs command
- Add ejabberdctl commands to manage oauth tokens.
Core
- Bounce messages sent to server JID
- Fix C2S session leak in rare cases
- Fix handling of queued stanzas on session timeout
- Give more time to stop and kill epmd
- When stopping ejabberd, stop modules after broadcasting c2s
shutdown
- XEP-0198: Use different error message for bounces
- XEP-0198: Add 'h' attribute to element
- XEP-0198: Also count stanzas when socket is closed
Databases
- Fix pgsql compatibility on delete_old_messages command
- Handle Redis connection in a separate module
- Report in SQL when scram is enabled but the stored password
isn't
- Update SQL escaping
- Use MEDIUMTEXT type for muc_room.opts in MySQL schema
MAM
- Send unique stanza id and archived tag also in the message
carbons
- Fix "assume_mam_usage: if_enabled"
- Fix typo in mod_mam:select()
- Updated support of XEP-0313 from version 0.4 to 0.5.1
- Mnesia: Avoid cleanup on bag when disc_only, switch in memory
- Mnesia: Don't exceed table size limit
- Mnesia: Use transactions when writing
Client State Indication
- Fix handling of chat states
- Simplify check for carbon-copied chat states
- Simplify handling of PEP stanzas
- Pass chat states of other resources
- Unwrap carbon copies when checking for chat states
- Add queue_pep option
- Queue chat state notifications
- Move CSI queue handling code from ejabberd_c2s
- When stopping, delete only the configured hooks
Other modules
- ext_mod: Set HTTP/1.0 so Github accepts the request
- gen_mod: Compile early to remove undefined behaviour warning
- mod_http_upload: Let client retry HTTP upload on file size
mismatch
- mod_last: Produce mod_last entry on account creation
- mod_muc_room: Notify on affiliation changes
- mod_register: Check password with jid:resourceprep when
registering account
- mod_roster: respect roster item changes introduced with
roster_process_item hooks upon pushing
- PubSub: Fix PubSub RSM on get_items
- PubSub: Add support for PubSub publishing options
- PEP: Fix sender in case of explicit pep subscriptions
- ejabberd_xmlrpc: Report error when conversion of argument type
fails
Not enough to make this build with current boost, but at least it
gets further, now fails with:
In file included from work/.buildlink/include/boost/optional/optional.hpp:35:0,
from work/.buildlink/include/boost/optional.hpp:15,
from Swiften/Parser/AttributeMap.cpp:10:
work/.buildlink/include/boost/type_traits/type_with_alignment.hpp:42:17: error: 'int128_type' in namespace 'boost' does not name a type
boost::int128_type i128;
^
Note: there is a change in the numbering scheme, the third digit will
only be used for patches/bug fixes in the future.
Note: websockets support isn't available in pkgsrc (yet. the required
library still needs packaged.)
hanges:
* Check for C99 support in compiler
* Count RIO bytes and check against max stanza size
* Gracefully drop unhandled HTTP connections
* wss:// (WebSocket over SSL) support in c2s
* Allow BareJID S10N packets
* Fallback to connecting S2S using local.ip when none of the origin.ip
works
* Removed explicit SQLite transactions
* SQLite postconnect SQL support
* SQLite DB setup script improvements
* Many Coverity Scan and cppcheck detected issues fixed
* Properly lowercase SASL mechanisms in c2s
* Support out-of-source build
for all pkgsrc dir/file ownership rules. Fixes unprivileged
user/group names from leaking into binary packages, manifest as
non-fatal chown/chgrp failure messages at pkg_add time.
Bump respective packages' PKGREVISION.
Main new features:
- add support of functions in API function "hook_process"
- move of nick coloring options from irc plugin to core
- move irc bar item "away" to core
- add pointer in callbacks used in scripting API
- add option irc.network.sasl_fail_unavailable
- add Portuguese translations
Bugs fixed:
- core: fix nick coloring when stop chars and a forced color are used: first
remove chars then look for forced color
- core: check that pointers received in arguments are not NULL in buffers and
windows functions
- core: fix truncation of buffer names in hotlist (issue #668)
- core: fix update of window title under Tmux (issue #685)
- core: fix detection of Python shared libraries (issue #676)
- api: fix number of arguments returned by function string_split() when
keep_eol is 2 and the string ends with separators
- irc: fix first message displayed in raw buffer when the message is modified
by a modifier (issue #719)
- irc: add missing completion "*" for target in command /msg
- irc: fix /msg command with multiple targets including "*"
- lua: fix crash when a lua function doesn’t return a value and a string was
expected (issue #718)
- relay: do not execute any command received in a PRIVMSG message from an irc
relay client (issue #699)
- relay: fix the max number of clients connected on a port, allow value 0 for
"no limit" (issue #669)
- relay: fix decoding of multiple frames in a single websocket message, send
PONG on PING received in a websocket frame (issue #675)
- relay: fix command "input" received from clients with only spaces in content
of message (weechat protocol) (issue #663)
- script: force refresh of scripts buffer after download of scripts list
- xfer: fix DCC file received when the terminal is resized
API Commands
- Add API versionning
- Changed error handling, based on exception
- ejabberd Command bugfixes
- Accept commands: add_commands syntax (along commands: –
add_commands)
- Fix mod_muc_admin:get_room_options and set_room_affiliation
- mod_http_api: support 'open' ejabberd commands
Databases
- Split modules DB specific code into separate modules
- Rename "odbc" to "sql" everywhere
- Rename "internal" auth to "mnesia"
- Improve detection of databases supported by modules
- Switch to varchar(64) in mysql user.server/salt as text can't
have default values
- 'serverkey' and 'salt' should have empty string as default
XMPP
- Drop headline messages sent to offline resources
- Don't omit bounces for messages of type "result"
- Match namespace when checking for chat states
- Fix check for standalone chat state notifications
- Disable TLS compression for s2s by default
- Make sure that ejabberd_sm sid are unique
- Send stream trailer at the very end of the processing
- Generate shorted jid for anonymous connections
- Fix anonymous SASL auth
ejabberdctl
- Add option to migration script to delete data from a table after
they have been successfully moved to SQL database: ejabberdctl
delete_mnesia example.org
- Remove useless variable and quote EPMD and SPOOL_DIR
- Fix node ping command
- Use UUID for ctl node name
- Remove --auth in ejabberd_ctl.erl as it's useless, still
useful for mod_rest
- Force ERL_PATH for Elixir console
Pubsub
- Fix use of pubsub node plugin when configured with
default_node_config
- Set default value for pubsub#itemreply option
- Add subscribe/unsubscribe hooks
Internal
- Add mod_mam header file
- Replace ?ERR_* macros with ?ERRT_*
- change mod_ping Timers using maps instead of dict
Dependencies
- Update p1_utils to 1.0.4: Adds p1_time_compat:unique_timestamp()
- Update fast_tls to 1.0.3: Prevent buffer overflows and
allocation failures
- Update stringprep to 1.0.3: Fix compilation on Windows and error
message
- Update stun to 1.0.3: Use fast_tls 1.0.3
- Update esip to 1.0.4: Use fast_tls 1.0.3
16.03
=====
Protocols
- mod_mix: Experimental support for MIX (XEP-0369)
- mod_http_upload: Add support for XEP-0363 v0.2
Core
- Use SASL PLAIN authzid as client identity if auth module permits
it
- Make auto generated resources shorter
- Start ezlib only if required, as it's optional
- Make it possible to get virtual host of a registered route
LDAP improvements
- Fix issue getting shared roster
- Do not call to deprected/undefined functions from
mod_shared_roster_ldap
- Proper naming for LDAP test function for shared roster
SQL databases support
- New parse transform for SQL queries, use prepare/execute calls
with Postgres
- Support for run-time SQL queries selection depending on DBMS
version
- In SQL files create Users table with SCRAM support by default
- Do not auto append IP suffix to usernames
- Fix some LIMIT related problems with MSSQL
- Update Microsoft SQL Server schema
Riak
- Add support for Riak authentication
- Fix is_connected/0 function
- Keep alive Riak connections by default
API and Commands
- Add support for ReST admin commands that are only restricted by
source IP. This is key for easy integration with other backend
using ReST API.
- Fix add_commands and remove_commands options
- Pass noauth when auth isn't provided
- Improve ban_account command to work with other DBs than Mnesia
- Escape quoting node name for ejabberdctl ping
- Bare JID in 'from' of Roster Push (RFC 6121 section 2.1.6) in
mod_admin_extra
- Fix result type of "connected_users_info" command
- New command delete_mnesia deletes all tables that can be
exported. This is useful after you have migrated to another
backend, like SQL.
PubSub
- Unregister route at the very end
- Define PubSub node configuration per route/host explicitly
- Fix config fetch and pubsub disco after host/serverhost cleanup
Admin and build chain
- Update OTP release to use R17.5 and drop release 17.1
- Compile ejabberd_config early to stop undefined behaviour
warnings
- Fix start via systemd
- Fixed type specifications for 'rebar doc'
- Specify lacking nodename in ejabberdctl
Dependencies
- Update p1_pgsql to 1.1.0: This add support for prepared
statements.
- Uptate fast_yaml to 1.0.3: This improves the error reporting on
syntax errors in Yaml configuration file.
- Use the v0.2 release of luerl instead of a commit.
Test framework
- Add Coveralls support
- Add ability to run the ejabberd test suite in a modular way. You
can now run the test suite, even if you only have a a single
backend locally.
Other
- mod_mam: Don't store watchdog notifications in MAM archives
- mod_multicast: Fix Addresses element which lacked others local
destinations
- mod_offline: Mark get_queue_length obsolete, and use
count_offline_messages
- Update Gallician translation
16.02
=====
New XMPP Extensions support
- New Flexible Offline Message Retrieval (XEP-0013) support
Admin
- New migration script from Prosody to ejabberd
- Fix --disable-debug compilation flag
- don't escape ERL_OPTIONS
- Two new global timeouts configurable: c2s_hibernate,
receiver_hibernate
- Make it possible to define sm_db_type per virtual host
- configuration checker: Describe option type in code for
domain_balancing option
- Log failed SQL requests
- Include mod_muc.hrl and fix records
- mod_http_upload: Expand docroot before using it, also expand
@HOST@
Commands
- New import_prosody command
- Start documenting arguments in mod_admin_extra commands
- We added a way to get all ejabberd_commands, not only those that
was registered
- Allow to pass \n in argument to ejabberdctl
- Add error handling to send_stanza command
- Fix format_result so get_room_options command works again after
commit reference aa5caa3
Dependencies
- lager is the default (and only) logging module and we removed
p1_logger
- Handle spaces in vsn attribute of app file when installing deps
- Renamed dependencies and modules for consistency but also to
reflect huge performance gains:
. p1_iconv -> iconv
. p1_stringprep -> stringprep
. p1_stun -> stun
. p1_tls -> fast_tls
. p1_yaml -> fast_yaml
. p1_zlib -> ezlib
Message Archive Management
- Advertise MUC MAM v0.4.1 in room JID's disco#info
- Add "delete_old_mam_messages" admin command
- Add 'from' attribute to tag
- Add "request_activates_archiving" option
- Respond to form requests
- Support XEP-0313 v0.2 MUC archive queries
- Check whether MUC message is desired
- Reject -based paging
- Limit result set page size
- Sort messages returned by Mnesia
- Strip existing JID tags from MUC messages
- Expose MUC occupant JID in more cases
- Don't let outcasts access MUC archive
- Send new preferences when they are set
- Stream management (XEP-0198): Let MAM take care of pending
messages
GroupChat
- Send presence with code 170 in initial presence from MUC
- Add most status codes only to initial MUC presence
- mod_muc_room: Don't expose JIDs in anonymous rooms
- mod_muc_room: Let members see admin/owner JIDs
PubSub
- Fix presence-based delivery
- Make caps warning less confusing
- Fix host/serverhost usage
- Add support of pubsub#itemreply=publisher
Other
- Accept stream compression request after SASL
- Make C2S session establishment optional to better conform to
XMPP specifications and still be friendly with older clients.
- MUC: new regexp_room_id option to limit possible room names.
- ODBC: Set utf8mb4 charset on MySQL connection to support emoji
storage as default.
- LDAP: Improve LDAP shared roster support.
- mod_register_web: Allow setting host when deleting account or
changing password.
- Rename timestamp_to_iso functions in jlib.
- Stream management (XEP-0198): Fix session timeout corner case.
- Several improvements in Elixir support.
- Updated many translations.
- Improve web admin stylesheet to fix rendering issues in some
browsers.
farstream 0.2.8 (March 10, 2016)
==================================
- Add "require-encryption" parameter to ignore unencrypted packets
- Enable building static GStreamer and transmitter plugins
- Make OPUS plugin work and select it as default codec
- Bug fixes
This is a security release addressing CVE-2016-2851.
- Fix an integer overflow bug that can cause a heap buffer overflow (and
from there remote code execution) on 64-bit platforms
- Fix possible free() of an uninitialized pointer
- Be stricter about parsing v3 fragments
- Add a testsuite ("make check" to run it), but only on Linux for now,
since it uses Linux-specific features such as epoll
- Fix a memory leak when reading a malformed instance tag file
- Protocol documentation clarifications
we are pleased to announce the availability of Swift 3.0, an XMPP client
focused on usability and security.
It is our first release for 3 years and includes bug fixes and new features
like:
- File-transfer using Jingle File Transfer
- Simple continuation of 1-to-1 chats in group chats
- Keyword highlighting ( http://swift.im/blog/keyword-highlighting )
- Simple blocking of contacts using Blocking Command
- Compact roster setting that hides avatars and status messages
- Quick contact search filter in roster
- and more.
For the full changelog see https://swift.im/docs/changelog-3-0.html .
* 2.3.5 to 2.3.6 upgrade:
What changed:
- Support WebSocket fragmented packets
- Fixed delivering directed presence (to self)
- Reset in-sess 'from' to FullJID on non-Presence packets
This is mainly a bugfix release.
The main change is that WebSocket connections work stable now.
https://github.com/jabberd2/jabberd2/commits/jabberd-2.3.6
Telegram is a cloud-based instant messaging service. Telegram clients exist for
both mobile (Android, iOS, Windows Phone, Ubuntu Touch) and desktop systems
(Windows, OS X, Linux). Users can send messages and exchange photos, videos,
stickers and files of any type up to 1.5 GB in size. Telegram also provides
optional end-to-end encrypted messaging with self-destruct timers.
This package contains a libpurple protocol plugin that adds support for the
Telegram messenger.
* Fix PR pkg/50358 partially using dynamic python library.
However if your system has python in /usr/bin and your current
working directory is not your home directory, your weechat
reads its library files and dies.
Changelog:
Among the new features:
- add a parent name in options, display inherited values if null in /set output
- add option weechat.look.paste_auto_add_newline
- add /fifo command
- track real names using extended-join and WHO (IRC)
- add support of SNI (Server Name Indication) in SSL connection to IRC server
- add support of IRC "cap-notify" capability
- add IRC command /cap
- add hex dump of messages in raw buffer when debug is enabled for irc plugin
- add option relay.irc.backlog_since_last_message
- add option script.scripts.download_timeout
- add scripts to build Debian packages
- many bugs fixed.
move requirement for cppunit to debug option
add db-update.pgsql, README.md
Updated to version 2.3.5
This file contains news, important changes
and upgrade instructions between different versions of jabberd2.
* 2.3.4 to 2.3.5 upgrade:
What changed:
- Module to verify users using e-mail
- Reordered MIO backends priority
- Skip non-existing blowfish i386 assembler code
- Use CSPRNG for dialback keys
- Allow presence probing own connections
- Use OpenSSL functions for base64 en/decoding when available
- Option to dump packet-filter matched packets to file
mod_verify requires CREATE TABLE "verify" in DB. Make sure you
created it before enabling the module in sm.xml.
MIO backends are prioritized from best to worst now, so if you
do not enforce a backend with ./configure it may change
in new build.
jabberd2 is now leaning strongly against OpenSSL. It is still
possible to use without, but not advisable.
Security
- mod_dialback: Adopt key generation algorithm from XEP-0185,
to prevent impersonation attacks (CVE-2016-0756)
Fixes and improvements
- Startup: Open /dev/urandom read-only, to fix a failure to start
on some systems (fixes#585)
- Networking: Improve handling of the 'select' network backend
running out of file descriptors
Minor changes
- Networking: Increase default internal read size to prevent
connections stalling with LuaEvent (see #583)
- DNS: Discard queries that failed to send due to connection
errors (fixes#598)
- c2s, s2s: Lower priority of shutdown handler, so that modules
such as MUC can always send shutdown notifications to (remote)
users (fixes#601)
Security fixes:
- Fix path traversal vulnerability in mod_http_files (CVE-2016-1231)
- Fix use of weak PRNG in generation of dialback secrets (CVE-2016-1232)
Bugs:
- Improve handling of CNAME records in DNS
- Fix traceback when deleting a user in some configurations
- MUC: restrict_room_creation could prevent users from joining rooms
- MUC: fix occasional dropping of iq stanzas sent privately between
occupants
- Fix a potential memory leak in mod_pep
Additions:
- Add http:list() command to telnet to view active HTTP services
- Simplify IPv4/v6 address selection code for outgoing s2s
- Add support for importing SCRAM hashes from ejabberd
Security
- Improve Dialback Key Generation and Validation support (XEP-0185)
- More generally, improve random number generator to avoid timing /
guessing attacks on any random value.
Database
- Use BLOB instead of TEXT on mysql in stanza storage
- Use UTF8MB4 character set in MySQL tables
- Make Riak working on Erlang R18
MAM
- Use stanza-id tags for deduplication
- Advertise MAM in disco info for account/room JID
- Improve MUC support
- Don't store resent messages
- Do not forget to include xmlns in mam prefs response (#859)
- Honor Message Processing Hints (XEP-0334)
MUC
- Add support for muc#roomconfig_presencebroadcast option
- Only filter rooms in Service Disco when more than 100 (EJAB-343)
- List in Service Disco non-empty rooms and provide Node for empty (EJAB-343)
- When user joins logged room, he must be warned (EJAB-726)
Pubsub
- Fix pubsub virtual nodetree plugin
- Use correct notification_type for last items (#827)
- PubSub plugin for online users only
- Disable use of multi-subscribe and subscription-option on standard
plugins
- Limit number of subscriptions per node and allow custom default node
configuration
- Don't force max_items_node to MAXITEMS if not defined
- Don't read pubsub options when plugin does not use them
Elixir
- Upgrade Elixir to v1.1.0
Admin
- Add plugin for passing extra erl_opts flags to deps, and use it
for hipe
- Add --enable-latest-deps to configure
- Remove "--enable-nif" flag
- New send_stanza command
- ejabberdctl: new --no-timout flag
- ejabberdctl: Don't let "reopen_log" rotate files (EJAB-1243)
- ejabberdctl: Improve escaping of arguments passed to ejabberdctl
- OpenSSL minimum required version: raised from 0.9.8 to 1.0.0
Config
- New option accept_interval in ejabberd_listener
- Webadmin console visual refresh (EJAB-1142)
- If mod_register access_from is 'none', then don't advertise IBR (#857)
- Fix handling of some options in old style configs
- Fix parsing option trusted_proxies
- Fix ipv6 configuration processing (#803)
- ejabberd_service: simplify configuration: no need for 'hosts', just
provide 'password'
Cleanup and optimisations
- Faster string_to_jid/1 implementation
- Move JID related functions from jlib.erl to jid.erl (#847)
- Remove usage of erlang's now()
- Update dependency name from p1_cache_tab to cache_tab
- Use crypto:rand_uniform instead of random:uniform
- Fix randoms.erl on R17 that don't have random:seed(integer())
- Faster and more memory efficient XML parsing.
- Faster stringprep library.
Other changes
- ejabberd_http: Cope with large POST/PUT requests
- ejabberd_http: Log debug message on receive errors
- mod_offline: Discard chat states notifications
- mod_offline: Honor store hint
- mod_http_upload: various fixes
- XEP-0198: Fix stanza counting corner case issue
- Adding WEBIRC, custom realname & ident, ISO-8859-15
- Update hebrew translation
gstreamer is not an option any longer.
version 2.10.12 (MM/DD/YY):
Windows-Specific Changes:
* Updates to dependencies:
* Cyrus SASL 2.1.26
* libxml2 2.9.2
* NSS 3.17.3 and NSPR 4.10.7
* Perl 5.20.1
* SILC 1.1.12
* Remove support for Tcl plugins
Gadu-Gadu:
* Updated internal libgadu to version 1.12.1.
This is a major feature release with a bit of bugfixes.
With this release jabberd2 joins HTTP realm with WebSocket client
connections handling built in C2S module! :-)
Changes:
* Rewrite TLS ephemeral key + cipher handling
* Recover Berkeley DB before opening it
* bcrypt support for PostgreSQL
* Option to set authreg module per realm
* AuthReg ANONYMOUS does not offer password check
* Answer to disco#info queries to user JID
* WebSocket C2S SX plugin
Note: websockets are not available, as the required http-parser module
is not (yet) in pkgsrc.
o fix a program hang upon invalid utf-8 sequences
o /set log and /window log no longer double the output
o /lastlog no longer adds trailing ^Os to log files
this also fixes an assert() in /server.
New features
- core: add completion "colors" (issue #481)
- core: start/stop search in buffer at current scroll position by default, add
key Ctrl+q to stop search and reset scroll (issue #76, issue #393)
- core: add option weechat.look.key_grab_delay to set the default delay when
grabbing a key with Alt+k
- core: add option weechat.look.confirm_upgrade (issue #463)
- core: allow Ctrl+c to exit WeeChat when the passphrase is asked on startup
(issue #452)
- core: allow pointer as list name in evaluation of hdata (issue #450)
- core: add signal "signal_sighup"
- api: add support of evaluated sub-strings and current date/time in function
string_eval_expression() and command /eval
- api: add function string_eval_path_home()
- alias: add options "add", "addcompletion" and "del" in command /alias, remove
command /unalias (issue #458)
- irc: add option irc.network.channel_encode (issue #218, issue #482)
- irc: add option irc.color.topic_current (issue #475)
- irc: evaluate content of server option "nicks"
- logger: evaluate content of option logger.file.path (issue #388)
- relay: display value of HTTP header "X-Real-IP" for websocket connections
(issue #440)
- script: rename option script.scripts.dir to script.scripts.path, evaluate
content of option (issue #388)
- xfer: evaluate content of options xfer.file.download_path and
xfer.file.upload_path (issue #388)
Bugs fixed
- core: flush stdout/stderr after sending text directly on them (fix corrupted
data sent to hook_process() callback) (issue #442)
- core: allow execution of command "/input return" on a buffer which is not
displayed in a window
- core: allow jump from current to previous buffer with default keys Alt+j, NN
(issue #466)
- core: fix crash if a file descriptor used in hook_fd() is too high (> 1024 on
Linux/BSD) (issue #465)
- core: fix display of invalid UTF-8 chars in bars
- core: fix bar item "scroll" after /buffer clear (issue #448)
- core: fix display of time in bare display when option
weechat.look.buffer_time_format is set to empty string (issue #441)
- api: add missing function infolist_search_var() in script API (issue #484)
- api: add missing function hook_completion_get_string() in script API (issue #484)
- api: fix type of value returned by functions strcasestr, utf8_prev_char,
utf8_next_char, utf8_add_offset and util_get_time_string
- api: fix type of value returned by function strcasestr
- fifo: fix send error on Cygwin when something is received in the pipe (issue #436)
- irc: fix update of lag item when the server lag changes
- irc: do not allow command /query with a channel name (issue #459)
- irc: decode/encode only text in IRC messages and not the headers (bug #29886,
issue #218, issue #451)
- irc: fix crash with commands /allchan, /allpv and /allserv if the executed
command closes buffers (issue #445)
- irc: do not open auto-joined channels buffers when option "-nojoin" is used
in command /connect (even if the option irc.look.buffer_open_before_autojoin
is on)
- irc: fix errors displayed on WHOX messages received (issue #376)
- lua: add detection of Lua 5.3
- ruby: add detection of Ruby 2.2
- xfer: fix crash if the DCC file socket number is too high (> 1024 on
Linux/BSD) (issue #465)
- xfer: fix parsing of DCC chat messages (handle "\r\n" at the end of messages)
(issue #425, issue #426)
- doc: replace PREFIX with CMAKE_INSTALL_PREFIX in cmake instructions (issue #354)
Only call CodecsUpdated() when config params have changed and the other side should be notified
Run dispose from the main thread always
Add a block-ready property to TfStream
This allows the application to block the calling of the Ready() dbus method
until some pre-condition as been accomplished. If this property is set to
TRUE during the "stream-created" signal, then Ready() will not be called
before it is unset.
Remove set-but-unused variable
Set the rtp header extension preferences before the codec prefs
The RTP header extension preferences are only taken into account when the
codec preferences are changed.
Set Farsight2's default header extensions and codecs
stream-get-codec-config signal does not have details, removing hint
Set the local RTP header extensions
Set remote RTP Header extensions
Set local Feedback Messages
Implement setting remote feedback messages
Ensure there is a stop call before a start call always
Don't free codecs borrowed from the GstMessage
Implement StartNamedTelephoneEvent
Return TRUE when messages are handled, a few were missing
Add StartSoundTelephonyEvent and StartNamedTelephonyEvent
The sound variant has an implementation since its trivial
python: Don't link to libpython
Some distributions (Debian) link libpython statically into the python
interpreter
async_method_callback_optional: also ignore NotImplemented errors (#35791)
async_method_callback_optional: use g_error_matches()
Also use early returns to make things easier to read.
Don't leak the tpcodecs if we do Supported then Update
pkgsrc changes:
- Remove obsolete and broken MESSAGE files.
- Find zlib correctly when enabled.
- Add SMF manifest.
- Update patch files and add comments where necessary.
Upstream changes:
- This release fixes a SASL Denial of Service issue
Patch provided by Marco Wessel in joyent/pkgsrc#306.
The find-prefix infrastructure was required in a pkgviews world where
packages installed from pkgsrc could have different installation
prefixes, and this was a way for a dependency prefix to be determined.
Now that pkgviews has been removed there is no longer any need for the
overhead of this infrastructure. Instead we use BUILDLINK_PREFIX.pkg
for dependencies pulled in via buildlink, or LOCALBASE/PREFIX where the
dependency is coming from pkgsrc.
Provides a reasonable performance win due to the reduction of `pkg_info
-qp` calls, some of which were redundant anyway as they were duplicating
the same information provided by BUILDLINK_PREFIX.pkg.
plugin for it doesn't build there; deploy a PLIST_VAR to account for
this.
No PKGREVISION bump as no package created (even without PKG_DEVELOPER)
is different now.
Switch dependencies to use standalone packages for Erlang modules.
Core
- c2s: Let stop/1 close XEP-0198 sessions
- c2s: Close socket when waiting for resume
- s2s: Don't crash on certificates without extensions
- xml: Optimizations in memory allocator
- OAuth: Fix cyrsasl_oauth:mech_new call
Modules
- mod_http_upload: New HTTP File Upload module (XEP-0363)
- mod_http_upload_quota: New module to support user quotas
- mod_metrics: New simple metrics module for use with grapherl
- mod_mam: Advertise XEP-0313 v0.4 support in room disco
- mod_mam: Avoid MAM dups when routing to multiple resources
Compilation
- Make: Pass {C,CPP,LD}FLAGS used in main ./configure to deps
- Use OTP directory structure for `make install`
- mix.lock should be commited to ensure consistent builds
- Code cosmetic cleanup
Commands
- Let modules_update_specs report failures
- Fix problem with -auth
- Fix unauthenticated calls to commands with policy=user
- Improve access_commands option backward compatibility
Configuration
- ejabberdctl.cfg: New CONTRIB_MODULES_CONF_DIR
- Be able to merge old style configs with {listen,...}
- Fix support for macros
- mod_ping: New option ping_ack_timeout
Problems found with existing distfiles:
distfiles/icb-5.0.9.tar.gz
distfiles/icb.2.1.4.tar.Z
distfiles/zenicb-19981202.tar.gz
No changes made to these /distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Note: This release is not binary compatible with previous releases. It is source compatible.
- added IO Data (XEP-0244)
- serialise access to compressionZlib::cleanup for thread safety (thanks to Stephen Hilliard)
- prevent infinite loop in Tag::setCData() (thanks to Stephen Hilliard)
- TLSOpenSSL: memory leak on every client connection attempt (thanks to Stephen Hilliard)
- TLSOpenSSLClient/Server: disabled SSLv3, Google & co. finally support TLS
- fixed Debian bug #746857, worked around #758899
- fixed memory leak (#240)
- fixed compatibility with recent GnuTLS versions, fixed GnuTLS check (thanks to Andreas Metzler) (#231)
### Major changes
- Added OAuth delegation framework
- Preliminary OAuth and HTTP based ejabberd API
- X-AUTH2 authentication mechanism,
- MAM now can store MUC room
- MSSQL: improved schema, simplified config, and fixed support
*Note: ejabberd now requires erlang 17.1 or higher*
### Core improvements
- New `set_loglevel` admin command to ease changing loglevel.
- Configuration: allow to override main config file options with data
from included files
- Improve S2S certificate checks
- Log TLS errors as debug messages only
- XEP-0198: new option "max_resume_timeout"
- XEP-0198: Improve handling of non-message stanzas
- ext_mod: Check external modules configuration on load
- ext_mod: Don't override custom configuration on module upgrade
- Several Elixir fixes
- Updated most translation languages
### Modules improvements
- Carbon Copy: Don't copy messages of type "normal" without body
- HTTP-Bind: More eye-candy mod_http_bind help page
- HTTP-Bind: Nameprep host name passed to http-bind before using in
- HTTP-Bind: Set disable caching headers in http-bind responses
- HTTP: pass stream management options defined in http listener to
http-bind and websocket
- MAM: Add XEP-0359 to archived messages
- MAM: Add XEP-0313 v0.4 support
- MUC commands: Changed argument names in two commands
- MUC commands: Fix and document create_rooms_file and destroy_rooms_file
- MUC hooks: added muc_filter_presence
- MUC hooks: renamed muc_filter_packet to muc_filter_message
- MUC logging: check for hint
- Multicast: many improvements in the source code
- SIP: Do not crash SIP authentication on SCRAMed passwords
### Packaging
- Remove bashisms in join_cluster leave_cluster and postinstall scripts
- Allow root to run join_cluster and leave_cluster
- Allow building an ejabberd release with mix and elixir release manager
- Allow installing as root
- Fix Debian/Ubuntu package
- Rename idna to ejabberd_idna
- Improve 'make install' to remove useless failure cases
Drop all local patches for old GCC fixes and tuning the program itself.
Upstream changelog
==================
[Changes 1.2.1]
* Prefer <fcntl.h> over <sys/fcntl.h> (reported by ncopa). (caf)
* Fix overflow in say() when handling a maximum-length client message. (caf)
* Remove WANT_CHAN_NICK_SERV define and include network services commands
by default. (caf)
* Pass through externally-provided CPPFLAGS (reported by cpet). (caf)
* Don't set the mode on new channels until synched - this speeds up joining
lots of channels at connect time if one of them is new, and reduces the
chance of being flooded off the server. (caf)
* Correctly handle channel sync across multi-server. (caf)
* Fixes and improvements for channel logging. (caf)
* Use correct (MODECHAN and MODEUSER) display level for channel and user
modes. (caf)
* Allow %- status format to handle max-length topics (reported by oxy). (caf)
* Add /FSET WOHIS_LOGGEDIN for services login info on hybrid, ratbox and
ircu. (caf)
* Add sanity checking of incoming nicknames. (caf)
* /MV (massvoice) shouldn't send +v for already-voiced users. (caf)
* Fix lag check on recent 32 bit OpenBSD / NetBSD (reported by DJ). (caf)
* Fix key bindings that terminate with ^. (caf)
* Fix the $timer() scripting function. (caf)
* Fix the /TKB (timed kickban) command. (caf)
* Rewrite termcap/terminfo detection logic in configure and include term.h
in term.c for the system definition of tparm(). This fixes a crash on
NetBSD x86-64 (reported by jeezy), and should also ensure that terminfo
is used in preference to termcap on NetBSD. (caf)
* Fix output when built against termcap. (caf)
* Fix STATUS_NOTIFY so that it appears in the right window. (caf)
* Improve robustness of status formats handling. (caf)
* Use system setenv() in preference to compat bsd_setenv(). (caf)
* Allow selection of alternate hashing methods with $crypt(). (caf)
* Improve the initial seeding of the randm() fallback RNG. (caf)
* Strengthen the cookie generation algorithm for /detach. (caf)
* RANDOM_SOURCE now only affects the rand() scripting function. (caf)
* Make RANDOM_LOCAL_PORTS actually random. (caf)
* Show same message on local terminal as used in emergency exit QUIT. (caf)
* Remove unused XLINK CTCP reply handler. (caf)
* Ensure add_socketread() doesn't leak file descriptors. (caf)
* Fix listing bans on local channels (/BANS &channel). (flashback)
* Fix unbanning by number (/UNBAN #channel #number). (caf)
* Improve the list_channels() function. (caf)
* Use socklen_t instead of plain int where available. (flashback)
* Use <termios.h> in preference to <sys/termios.h> where it's available. (caf)
* Skip malformed abots.sav entries in read_abot(), avoiding null
dereferences found by Coverity. (flashback)
* Ensure proper handling of % when /FSET DCC is used. (caf)
* Improve robustness of CDCC save file loading. (caf)
* Fix open file leak in /LASTLOG found by Coverity. (caf)
* Fix file descriptor leak on SOCKS4 connection failure found by
Coverity. (caf)
* Fix out-of-bounds error in cryptit() found by Coverity. (flashback)
* Cleanup save_formats(). (caf)
* Fix off-by-one error in add_socketread() and set_socketwrite() found
by Coverity. (caf)
* Fix longstanding bug with ordering of rfc1459[] array. (caf)
* Fix crash after /SETAR -, reported by riderplus. (caf)
* Remove special handling of 484 numeric, which is no longer needed and
was buggy (making BitchX think that usermode +G was set). (caf)
* Add /OBITS command, shows obituaries for some BitchX friends. (caf)
* Fix abuses of the RESIZE macro. Reported by nenolod. (caf)
* Clears up a crash and some build warnings in the acro plugin. (caf)
* Applied patches from jdhore to clean up the plugin building
and installing process. (caf)
* Fix building on newer Cygwin (reported by VICODAN). (caf)
* Fix building plugins on FreeBSD-10 (reported by cpet). (caf)
* Messages sent to channels should use lastlog level PUBLIC, not MSG. (caf)
* panasync OK'd releasing tcl.c, so here it is. (caf)
* Fix QUIT messages with SSL connections. (flashback)
* Rename include/bitchx to include/options.h, fixes building on
case-insensitive platforms. (caf)
* Use AI_ADDRCONFIG flag to improve server address selection when client
is built for IPv6 but we don't have an IPv6 address. (caf)
* Enable SSL support by default, if OpenSSL is present at build time. (caf)
* Fix leak and potential crash in lame_resolv() using IPv6. (caf, snadge)
* Apply patch from snadge defining BIND_4_COMPAT on OpenBSD, to allow
/nslookup to build. (caf)
* Fix problem connecting to IPv4 when IPv6 enabled on FreeBSD and enable
IPv6 on all supporting platforms. Thanks to brabes, snadge and packet. (caf)
* Improve connect() error handling. (caf)
* Remove obsolete .spec files. (caf)
* configure - only create sig.inc if it's actually needed. (caf)
* configure - use the right dependencies when checking for net/if.h, i
arpa/inet.h and resolv.h. Reported by flashback. (caf)
* Fix plugin Makefiles for out-of-tree building, reported by nyet. (caf)
* Add DESTDIR support to build system, to ease rpm and deb packaging.
Reported separately by nyet and VICODAN. (caf)
* Fix /detach and wserv with IPv6 enabled. (caf, snadge, packet)
* Make default for NICK_COMPLETION_CHAR explicit. (caf)
* Reduce footprint when starting up disconnected. (caf)
* Fix /nslookup command (including fixing compilation on cygwin). (caf)
* Improve /detach error handling and remove bogus F_SETOWN use, reported
by madsage. (caf)
* Add /FSET WHOIS_SECURE for SSL connection info on ratbox, unreal and
freenode. (caf)
* Add /FSET CHANNEL_URL for services channel URL numeric. (caf)
* Fix crash bug in $mircansi() scripting function. (caf)
* Add half-op support to /topic and /untopic. (caf)
* Tidy up the URL grabber, fixing a memory leak. (caf)
* Cleanup the /BHELP code, fixing a potential crash. Apply updates to
BitchX.help from t3gah. (caf)
* [1.1s01] Sanity check color codes, fixes a potential crash. (caf)
* Add /FSET USERMODE_OTHER to correctly format user mode changes where the
source isn't the same as the target, reported by gauze. (caf)
* Improve country() and add several new TLDs, suggested by gauze. (caf)
* Apply fixes from darkfires removing non-standard use of arithmetic on
void * values, to allow building on Irix. (caf)
* Apply fix from darkfires to allow building with ICC. (caf)
* Show correct message when a socket connection is closed cleanly. (caf)
* Add /FSET WHOIS_CALLERID for +g mode notification on hybrid & ratbox. (caf)
* Build script fix to allow plugins to build on x86-64. (caf)
* Correct count in /CLONES (reported by t3gah), and format output nicely
using an /fset. (caf)
* Add definition of BIND_8_COMPAT to fix build problem on Mac OS X. (caf)
* Ensure that SHOW_AWAY_ONCE doesn't hide away status in /whois output. (caf)
* Fix the the -z command line option for specifying username. (flashback)
* Fix up /WILN, /WILC and /WILCR. (caf)
* Backport changes from epic5 to make recv_nick, sent_nick and sent_body
per-server, and apply new version of do_oops from flashback. This means
that /oops, "/query .", "/query ,", "/msg ." and "/msg ," are per-server,
along with the $. $, and $B aliases. (caf)
* Handle error return from getcwd() in /cd. (caf)
* Fix alloca warnings on freebsd. (caf)
* Fix memory leak in banlist.c. (caf)
* Apply a fix contributed by cpet for the configure script on
FreeBSD 9. (caf)
* Fix a refcounting issue in the whowas list handling, which should make
the listing of users that left in a netsplit right again. (caf)
* Improve argument-handling in /hostname command - now supports doing
/hostname 2 to switch to second vhost. (caf)
* Change the display of server stats so that the averages (eg. users per
channel) are correctly rounded. (caf)
* Reinstate RPL_WHOISACTUALLY / RPL_WHOISHOST numerics - things seem to have
stabilised in the ircd world on this. (caf)
* Fixed two cases where the client was incorrectly deciding that a numeric
originated from a remote server rather than the local server - this caused
BitchX to falsely report channel desynch and incorrectly hide some
numerics. (caf)
* Fixed $servernum() scripting function, it was returning the wrong server
reference in most cases. (caf)
* [1.1s01] Fixed .cmsg crash reported by zimzum. (caf)
* Changed the defaults for JOIN_NEW_WINDOW_TYPE and QUERY_NEW_WINDOW_TYPE
so that they work out of the box. (caf)
* Some cleanups in quit message handling, fixed a bug where a quit from an
unexpected source could crash the client. (caf)
* Cleaned up the handling of channel mode changes a little, including fixing
buggy handling of certain key and limit mode changes. (caf)
* Fix bug where you got disconnected if the server sent a 464 numeric
(bad password) that the client wasn't expecting. (caf)
* Add /HOP and /DEHOP commands for halfop. (caf)
* Removed "scan" plugin, this functionality is now covered by /SCAN -stat.
(caf)
* Change NICKSORT_OP to NICKSORT_STAT (sorts nicks by channel status -
chanop first, then halops, voices and others). Added /SCAN -stat
to sort nicks using NICKSORT_OP. Removed NICKSORT_VOICE - it was broken
anyway. (caf)
* Add halfop nick prefix to default status line, and change the voice prefix
so it appears whether or not you're opped. (caf)
* Add halfop support to $channel() scripting function. (caf)
* Rework /SCAN and /NAMES formatting. This removes the /FSETs NAMES_BOTCOLOR,
NAMES_FRIENDCOLOR, NAMES_NICKCOLOR, NAMES_OPCOLOR, NAMES_SHITCOLOR and
NAMES_VOICECOLOR and replaces them with new /FSETs. (caf)
* Add $ishalfop(<nick> <channel) scripting function, just like the
existing function in EPIC. (caf)
* Fix four bugs in the /FE scripting function. (caf)
* Fix incompatibility with 64-bit platforms. (caf)
* Fix module load version check logic. (caf)
* [1.1s01] Cleanups to allow compiling with new gcc releases. (caf)
* [1.1s01] Fix configure check for termcap.h. (caf)
* [1.1s01] Re-implement code to find available vhost addresses
(CVE-2007-5839). (caf)
* [1.1s01] Fix test for GCC >= 2.7 - fixes compiling on S390 platform. (caf)
* [1.1s01] Improve buffer handling in convert_output_format_raw
(CVE-2007-4584). (caf)
* [1.1s01] Handle negative numerics correctly (CVE-2007-3360). (caf)
o ircII now uses the final column of the display
o contrib/noansi.c is a program to remove ANSI C colours
o fix irc "realname" handling
o fix SWITCH_CHANNELS binding
o revert to old window size change handling for now
Message Archive Management (XEP-0313)
- Add "complete" attribute to MAM final response
- Fix mod_mam compatibility with RSM
- Changed mam iq get to set as specified by XEP-0313 v0.3
Modules management
- Ensure config snippet is loaded at module installation
- Allow contribution to include .yml or .yaml config file
- Allow include of simple dependencies
Multi User Chat
- New API hook: muc_filter_packet
- Send notifications on MUC configuration changes
- Omit warning message regarding non-anonymous room
- During halt only shutdown MUC rooms on local node
Pubsub
- Allow migration of old pubsub items with old xmlelement structure in body
- Trigger PEP notifications on CAPS updates
- Check for node subscription of bare JID
- Flat is now the default plugin
Stream Management (XEP-0198)
- Increase timeout during resumption
- Increase default "max_ack_queue" value
ejabberd Client connection
- API change: user_send_packet is now a run_fold hook and pass the c2s State
as a parameter. It was already the case in ejabberd 15.06, but it was not
mentioned in the changelog, by mistake. So, now, you know :)
Admin
- Do not rely on behaviour info when doing config validation, so that it
can work with ejabberd binary installers
- When passwords are scrammed, report check_password_hash cannot work
- Fix problem with merging values from multiple config files
- If local guide.html file not found, redirect to the online guide
- Support RTL page direction in WebAdmin for Hebrew
- configure.ac: add AC_CONFIG_MACRO_DIR and static AC_INIT
WebAdmin
- Don't crash web admin when displaying info about websocket using users
Installers
Version 3.4.1:
- msn:
* Upgraded protocol to MSNP21, works again (dx)
* Contact list management, groupchats and skype username logins won't work.
Next release!
- jabber:
* Add "hipchat" protocol, for smoother login. Takes the same username as
the official client. Note that unlike the 'hip-cat' branch, this doesn't
preload channels. https://wiki.bitlbee.org/HowtoHipchat for details (dx)
* Fixed a bug when receiving topics set by people who left the channel (dx)
* Create fake users instead of showing "unknown participant" errors (dx)
* Gmail mail notifications support (Artem Savkov)
* Lowering xmpp presence priority on away (Artem Savkov)
- twitter:
* Show quoted tweets/RTs with comment inline (wilmer)
* Added "url" command, can be used to quote tweets (wilmer)
* Make replies to self work (wilmer)
- Building documentation is now done with a python script (both 2.x/3.x work)
Asciidoc/xsltproc/xmlto are no longer build dependencies (dx)
Finished 16 Jun 2015
Version 3.4:
- First release pretty much fully prepared by dx instead of Wilmer. Just look
at the tightly structured changelog!
- Main repository migrated from bzr to git
- Some API/ABI changes. Recompiling third party plugins is required!
- Important bugfixes:
* Fix memory leak when calling word_wrap() on groupchat messages (dx)
* Fix segfault after a file transfer is complete (dx)
* Fix bug where NSS would refuse to work in forkdaemon mode (dx)
* Fix several bugs with UTF8 nicks (dx)
* Fix some nasty deadlocks that appared mostly with libpurple (dx)
- General changes:
* Add a 'pattern' parameter to the blist command, to filter it (tribut)
* Implemented /kick support, only supported by purple for now (jgeboski)
* Add a "special" state to show_users (mapped to the % prefix) (jgeboski)
* Improved support for cygwin, openbsd and darwin (jcopenha)
* Create temporary users instead of showing "Message from unknown
participant" (jgeboski)
- purple:
* Local contact lists for gadugadu and whatsapp (dx)
* Add topic and name_hint to groupchats (seirl)
* Support for 'input' requests (such as telegram auth codes) (seirl)
Note that telegram-purple itself is rather unstable ATM, it may crash.
- jabber:
* Handle compressed DNS responses in SRV lookup (jcopenha)
* Fix case sensitivity issues with JIDs (GRMrGecko, dx)
* Implement XEP-0203 style message timestamps (dx)
* Fix "Server claims your JID is X instead of Y" warnings (dx)
* Account-wide display_name setting, mostly for hipchat (dx)
- twitter:
* Filter channels. Search by keyword/hashtag or a list of users (jgeboski)
* Fix bug in "reply" command which removed the first quote character (dx)
* Add "rawreply" command, like reply but bitlbee won't add @mention (WillP)
* Add support for The United States of America (favorite/fav aliases) (dx)
* Default show_old_mentions to 0 (dx)
* Start stream from last tweet on connect/reconnect (roger)
- msn:
* Disabled module by default. The protocol we used (MSNP18) stopped working
last week. This is being worked on, but it's far from ready for release.
- And lots of small bugfixes, too many to list here.
Finished 25 Mar 2015
- Update MASTER_SITES
- Add LICENSE as 2-clause-bsd
(upstream)
- Update 1.8 to 1.9, From: http://www.benzedrine.ch/icbirc.html
-----------------
1.9: Aug 20, 2015
When receiving an IRC PING, additionally send an ICB NOOP, to detect a
stalled server connection. Patch from Sebastien Marie <semarie@openbsd.org>.