Commit graph

96 commits

Author SHA1 Message Date
wiz
1e9caac440 *: update email for fhajny 2018-12-15 21:12:18 +00:00
fhajny
4cefc4c8d8 chat/ejabberd: Update to 18.06.
Admin
- Stop ejabberd initialization on invalid/unknown options
- Add new options for OOM watchdog: oom_watermark and oom_queue
- Add ability to modify version string
- Add option ext_api_headers to define REST API custom headers
- Fix Erlang limits in ejabberdctl.cfg.example to reflect current
  situation
- Make trusted_proxied ejabberd_http option accept ip masks
- Teach acl ip matching about ipv4 mapped ipv6 addresses
- Removed watchdog_admins option from config, as has no effect anymore
- Improve logging of external authentication failures
- ejabberd_auth: Don't use cache if the option is disabled
- Make connected_users_info and user_sessions_info DB-agnostic

Core
- Support SASL PLAIN by xmpp_stream_out
- Add Resource Binding support to xmpp_stream_out
- Improve robustness of external authentication backends
- Don't use 'unsupported-version' inside SM element
- Generate SASL failures on unencrypted connections only for s2s
- Fix reset_stream in websocket using pre-rfc protocol
- Don't crash in bosh when we receive request with RID < prev_rid
- Get rid of all calls to jlib.erl module
- Support IPv6 connections for PostgreSQL, MySQL and LDAP
- Fix authentication for usernames containing uppercase characters
- Optimize HTTP requests memory usage
- PKIX: Just warn instead of ignore a certificate containing no domain
  names
- PKIX: Don't replace valid certificates with invalid ones

Modules
- Log modules startup
- mod_disco: Advertise disco#info and disco#items features
- mod_irc: is moved away from ejabberd repo to ejabberd-contrib
- mod_mam: Don't replace existing stanza ID
- HTTP upload: Generate HTTP Upload form using xdata codec
- HTTP upload: Improve error formatting
- HTTP upload: Return detailed error if HTTP upload is too large

MUC
- Always display room's xdata in disco#info
- Display muc#roomconfig_changesubject in room's disco#info
- Render roomname, allowinvites and allowpm in room disco#info
- Support for roomconfig_lang/roominfo_lang
- mod_muc_sql: Fix export to SQL

Push
- Omit summary for outgoing messages
- Further improve handling of carbons
- Also include sender/body for carbons
- Include a static body text by default
- keepalive: Increase default timeout to 3 days
- SQL: Check 'max_user_sessions' limit
2018-07-20 09:58:26 +00:00
fhajny
c5f23eb0fa chat/ejabberd: Update to 18.04.
- Don't produce a crash dump during intentional exit
- ejabberdctl: fix parameter parsing
- New hook 'component_send_packet' for sending packet from component
- gen_mod: Carefully validate options list
- gen_mod: Support global module processes
- gen_mod: Remove frontend process support
- gen_mod: Don't crash on invalid module's sub-options
- config: move section about direct-tls for c2s just under regular c2s
  config
- fast_tls: Clear cache on configuration reload
- http: Add support for PATCH http method
- mod_client_state: Add 'csi_activity' hook
- mod_http_upload: Accept characters of any script
- mod_http_upload: Add MIME type for M4A files
- mod_mam: Add commands for cleaning up archives for a given user
- mod_muc: Let a MUC room to route presences from its bare JID
- mod_muc: Introduce new mod_muc option: access_register
- mod_muc_room: Add stubs for affiliation-specific backend callbacks
- mod_muc_log: Fix Code format when logging a MUC room kick/ban
- mod_multicast: Improved
- mod_push: New options include_sender and include_body
- mod_push: Don't notify on stream errors
- mod_push_keepalive: Reset timeout on messages only
- mod_roster: Use 'lserver' for configuration lookup
- mod_vcard_ldap: Fix returning value from mod_vcard_ldap's search()
  callback
- mod_pubsub: Fix notification payload generated by pubsub
- mod_pubsub: Improve pubsub#itemreply implementation
- mod_pubsub: PubSub purge_node must use a transaction
- Utils: Use httpc directly instead of using p1_http wrapper
- Rest: Add flexibility on rest url config
- SystemMonitors: Get rid of useless memory/disk usage warnings
- WebSocket: Pass access option from websocket to c2s
2018-05-17 13:40:38 +00:00
fhajny
505a9dca83 chat/ejabberd: Update to 18.03.
Admin
- Avoid logging IP addresses in mod_register when it's not desired
- Command 'reload-config' allows to reload certificates
- Get rid of 'fs' package dependency
- Improve log message when module startup has failed
- mod_muc_admin: New command get_room_affiliation
- prosody2ejabberd: Report meaningful error when luerl is not
  available

Configure
- Accept atoms in api_permission command lists and commands with
  numbers in them
- Validate additional listen opts: inet, inet6, backlog
- Remove 'iqdisc' option
- New option –enable-group=xxx
- New option 'negotiation_timeout'
- New option 'new_sql_schema'
- New option 'validate_stream'
- ejabberd_service: New option 'global_routes' for
- mod_avatar: New 'rate_limit' option
- mod_block_strangers: New 'access' option
- mod_block_strangers: New 'captcha' option
- mod_pubsub: New option 'force_node_config'

Miscelanea
- Simplify ejabberd_sup code
- New gen_mod mod_options/1 callback to provide known options and
  defaults
- Replace ?MYLANG with connection's language wherever possible
- sql/*: Add username to peer indexes
- cyrsasl: Simplify code for splitting auth string in cyrsasl
- ejabberd_auth: Cache 'isuser' queries to external auth program
- ejabberd_web_admin: Hardcode required ACL rules
- mod_admin_extra: Command check_password_hash supports all hash
  methods
- mod_admin_extra: Fix srg_get_info command with @all@ and @online@
- mod_avatar: Fulfill all requirements of XEP-0398 v0.2.0
- mod_avatar: Improve validation of 'convert' option
- mod_block_strangers: Bounce groupchat to bare JID
- mod_block_strangers: Fix a typo in call to create_captcha()
- mod_caps: Only store CAPS if contact is subscribed
- mod_carboncopy: Copy outgoing MUC PMs
- mod_mam: Really run use_cache/1 and cache_nodes/1 callbacks
- mod_pubsub: Remove items of unregistered user
- mod_push_keepalive: Preserve timeout on resumption
- mod_shared_roster: Try to fix ejabberd_c2s:process_info: got
  unexpected info
- mod_shared_roster_ldap: Fix processing of ldap_memberattr_format_re
  option
- mod_stream_mgmt: Abort connection on count error
- mod_stream_mgmt: Clean up on timed out resumption
2018-03-28 21:51:09 +00:00
fhajny
b42f3a63e0 Update chat/ejabberd to 18.01.
- Fix TLS driver memory management
- Fix privacy_set command
- Report 'fs' support as unavailable on SunOS
- Let mod_block_strangers bounce an error when a message is rejected
2018-01-16 12:28:56 +00:00
fhajny
eeea54c843 Remove comment no longer relevant 2018-01-03 22:53:51 +00:00
fhajny
e08ae3349b Update chat/ejabberd to 17.12.
pkgsrc
- Change installation home for Erlang libs to prevent build conflicts
  with previous versions that may be present on the system, as
  encountered by @gdt.

Core
- Rewrite ejabberd system monitor for efficiency
- Fix incoming XMPP processing order
- Use xmpp:try_subtag/2 wherever possible
- Better process subtag decoding errors
- Only allow compression after SASL as per XEP-0170
- Don't crash on unexpected XML events
- Fix session mnesia table cleanup
- Don't let privacy list prevent local roster update

Encryption
- Rely on Server Name Indication for incoming Direct-TLS connections
- Speedup certificate chains creation and validation
- Log warning on empty wildcard paths
- Don't call pkix_is_self_signed/1 too frequently
- Eat less memory during building certificates graph
- Avoid infinite loop between self-signed certs
- Fix function clause on filelib:wildcard/1
- Use ejabberd_pkix API in mod_sip
- Move 'certfile' based options in a single place

Groupchat
- Don't crash on malformed IQ
- Include x tag in presence errors related to nick change
- Include 110 status on shutdown
- Improve muc#roominfo and muc#roomconfig forms
- mod_mam: Never store MUC messages in user archives

PubSub
- Fix num_subscribers on node metadata
- Fix send last items on initial presence
- Send last PEP items to owner on initial presence
- Support pubsub#publish-options PRECONDITIONs
- Add pubsub#multi-items to features list (Support XEP-0060 v1.14)
- Add missing Nidx building records from sql result
- Don't force RSM in get_items when max_items is not provided

Admin
- Introduce option 'ca_file'
- Set executable permission on mac_listener when installing
- Use /bin/sh as the explicit shell when using su in ejabberdctl.
- Windows does not have /tmp, fallback to $HOME/conf for ODBC
  configuration files

Logging
- Change loglevel of TLS failures
- Log a warning when a disk is almost full
- Disable default alarm handler
- Handle also process_memory_high_watermark alarm
- Kill and restart lager when it's overloaded
- Avoid excessive logging of SQL failures

Commands
- New muc_online_room_by_regex command
- Fix race between join_cluster and ejabberd_mnesia
- Fix commands rooms_unused_list and _destroy
- send_direct_invitations accepts only user jids
- ejabberd_sm: Fix get_session_sid/3

SQL
- Add missing server_host column in pg.new.sql
- Add new schema for MySQL and Sqlite
- Fix SQL serialization

Installer
- MacOS installer is signed. You can now easily install ejabberd on
  your Mac.

Build
- Compile sql_pt early
- Binary installer uses OTP 20.2
2018-01-03 22:51:30 +00:00
gdt
e2642bda6e ejabberd: Add comment explaining a build failure
When 17.09 is installed, the build of 17.11 fails.  But, with no
ejabberd installd package, it builds fine.  Include link to issue
filed upstream.
2017-12-29 16:16:47 +00:00
fhajny
7be9ddff31 Update chat/ejabberd to 17.11.
New features
- ACME Support
- Introduce 'certfiles' global option
- Use new API for IQ routing

Admin
- Omit "ProtectSystem" option from systemd unit
- Log warnings for c2s/s2s certfile option
- Log a message when a user gets registered
- ejabberdctl: Fix 'read' syntax for non-bash shells
- Fix renew_certificates ejabberdctl command
- Unregister commands when stopping node only if it's last one
- Halt ejabberd if the top supervisor fails to start

Build
- Avoid badarg error when running get-deps before ./configure has
  created src/ejabberd.app
- Fix sed invocation that was incompatible with FreeBSD's sed
- Makefile.in: Fix "make clean && make"
- Improve --enable-system-deps
- Install binaries with 755 permissions
- Install eimp binary with +x attribute
- Remove find-outdated-deps script, we have better replacement for it

Databases
- Allow export command regardless of the configured db_type
- Add SQL_INSERT macro and update SQL queries to use server_host field
- Update SQL archive index to match mysql.sql
- mod_muc: Use correct table field name in sql query

MAM
- Always strip stanza IDs
- Announce support for stanza IDs
- Don't store from 'sm_receive_packet' hook
- Fix mod_mam reloading
- Ignore non-message stanzas earlier
- Improve handling of forked messages
- Make sure a stanza ID is always added
- Make sure archived message isn't bounced
- Prepare version 0.6.1 of XEP-0313 (MAM) support

MUC
- Properly store subject element
- Resend presences and history if presence possesses x MUC element
- Send presence-unavailable when expulsing a participant
- Add mucsub event for subscribers list changes
- Optimize muc subscriptions handling
- Show real jid in mucsub subscription change events

PubSub
- Add basic PubSub meta-data support
- Rewrite pubsub export to sql
- Cleanup tree requests, rename pubsub_node.type to pubsub_node.plugin
- Fix select_type race on plugin_init
- Implement parentnodes seek for hometree
- Delete cached item on node removal
- Fix delete item from unregistered user
- Cleanup pubsub subscriptions quering, fix pep case
- PEP services must send notifications to the account owner

Push
- Avoid notification duplicates
- Add support for SQL storage
- Add export from Mnesia database to SQL file
- Don't store xdata() in Mnesia table
- Simplify backend interface
2017-12-14 21:12:21 +00:00
fhajny
f9166c6910 Update chat/ejabberd to 17.09.
Admin
- Harden ejabberdctl
- Fix ejabberdctl quoting when using iex
- Call earlier deps configure scripts during compilation
- Fix iexdebug and iexlive commands
- Quote $PEER in ping command to avoid hostnames containing "-" being
  interpreted as arithmetic
- Docker: Sync containers from rroemhild and add instructions in
  README
- Use eimp instead of ImageMagick calls for thumbnails creation
- Add forgotten caching options to the validator
- Fix 'make install' to work with new output from rebar list-deps
- Rewrite muc_register_nick and muc_unregister_nick to be DB
  independent
- WebAdmin: Fix deletion of multiple offline messages

Encryption
- Add support for XEP-0368 in outgoing s2s: SRV records for XMPP over
  TLS
- Deprecate s2s_use_starttls: required_trusted
- Don't attempt to access(2) a certificate file
- Let 'domain_certfile' take higher precedence instead of s2s_certfile
  or c2s_certfile

Databases
- mysql.sql: Use multi-column index on username/ID
- Use forked repo of Riak Erlang client to support OTP20

Modules
- mod_avatar: New module with support for legacy and modern clients
- mod_block_strangers: Introduce option 'allow_transports'
- mod_block_strangers: Block messages from strangers before
  mod_mam/mod_offline processing
- mod_http_upload: Don't ignore 'custom_headers'
- mod_muc: Improve presence-error and unavailable of multi-session
  occupants
- mod_multicast: Fix start and reading of configured limits
- mod_mam: Simplify check for anon MUC JID filtering
- mod_mam: Refuse filtering anon MUC queries by JID
- mod_privacy: Explicitly match against
- mod_register: Introduce 'redirect_url' option
- mod_stream_mgmt: Delete 'c2s_init' hook
- mod_vcard_xupdate: Also replace vcard-x-update in direct presences

PubSub
- Fix get_items/get_item calls
- Add correct order when requesting all items
- Implement '6.5.7 Requesting the Most Recent Items'
- Fix RSM support on SQL
- Add RSM support on mnesia
- Fix node_options: default options only apply on first plugin
- Broadcast updated node configuration
- Enforce controls on publish and delete items

Miscelanea
- Preserve correct order of deserialized XML elements
- Suppress push notifications for online clients
- Extract strings and prepare translation files works again
2017-10-17 14:55:36 +00:00
fhajny
40396eff79 Remove the CONFLICT on jabberd, it doesn't make any sense. 2017-09-06 12:26:32 +00:00
fhajny
cbe6c9a6f4 Update chat/ejabberd to 17.08.
Core
- Erlang/OTP 17.5 or higher is required, and 20 is now supported
- Make ejabberd_cluster modular
- Replace gen_fsm with p1_fsm to avoid warnings in OTP20+
- Fix clustering table reg_users_counter
- ext_mod: Update spec from custom and allow modules dependencies
- extauth.py: Fix to support : in passwords
- Set high water mark in lager for all backends
- Fix old route record in mnesia’s route table haven’t been remove
  when restarting in some cases
- ejabberd_cluster*.erl: Add copyright and fix description
- Add support of rfc6120 section 4.9.3.16 on node shutdown

Configuration
- ejabberd_c2s: Fix priority of ‘certfile’ option
- Introduce ‘hosts’ modules option
- Fix ERLANG_OPTS, INET_DIST_INTERFACE and FIREWALL_WINDOW option
- Remove unused ‘managers’ option, related to the deferred XEP-0321

Commands
- Fix errors when running ejabberdctl as root
- Fix set_presence command to work in recent ejabberd
- Rename stop_all_connections to stop_s2s_connections for consistency
- Change policy of user_resources command, from user to admin
- Remove old command calling interface
- Describe more command arguments and results

Modules
- mod_http_api: Use hide_sensitive_log_data option when registering
  users
- mod_http_fileserver: Request basic auth dialog from browser
- mod_muc: Fix nick bug with MUC on riak
- mod_muc: new hooks
- mod_push: Support XEP-0357: Push Notifications
- mod_push_keepalive: New module

PubSub/PEP
- Keep disco#info on PEP compatible with XEP-0060
- Preliminary export PubSub data from Mnesia tables to SQL file
- Fix PubSub send last published items
- Fix PEP node removal
- Fix PEP node identity
- Fix disco#items on PEP service
- Fix getting cached last item
- Add import of PEP from prosody
2017-08-20 12:58:04 +00:00
wiz
8733ee0040 Follow some http -> https redirects. 2017-08-01 14:58:51 +00:00
fhajny
c72efc13ab Update chat/ejabberd to 17.07.
Version 17.07
=============

Core
- Close accepted socket if sockname/peername has failed.


Version 17.06
=============

New features
- The new cache system is also a new component that allows fine tuning
  of ejabberd performance for either small systems or large scale
  servers.
- Certificate Manager is a feature that has been requested by many
  organisations, allowing administrators to manage their certificate
  more easily
- Riak support for several modules

API
- Deprecate misc:encode_base64/1 and misc:decode_base64/1
- Rename is_user_exists function to user_exists
- Allow api access on both ipv4 and 6 loopback addresses
- Fix invalid argument in get_messages_susbset

Admin
- Refactor ejabberdctl
- Improve ejabberdctl parameters parsing
- Quote all paths to allow spaces in directory names
- update-deps-releases.pl: Show operations to perform before asking to
  apply them
- Fix Salt import from prosody SCRAMmed password

Configuration
- Validate module options on start_module/2
- Validate new options before module reloading
- Validate second-level options
- Introduce iqdisc global option
- stream_management listen option deprecated, use mod_stream_mgmt
- Check presence of some files during option validation
- Speedup configuration options lookup
- Validate all certfiles on startup
- Only validate certfiles if public_key:short_name_hash/1 is available
- Introduce Certficate Manager

Commands
- Add clear_cache admin command
- Parse correctly presence_broadcast option in change_room_option
  command
- Describe command arguments and results in mod_muc_admin
- Improve export2sql explanation; remove obsolete and duplicated
  command
- Fix and document push_roster_all command
- Fix mod_muc_admin command set_room_affiliation
- Fix invalid {args,result}_examples in mod_muc_admin
- Fix srg_user_add/del for non-Mnesia database backends
- Make ext_mod api return rescode

Compilation
- Erlang 17.5 or higher is required
- Add --enable-system-deps configure option
- Add --enable-stun and --enable-sip configure options

Core
- Speedup Mnesia tables initialization
- Improve Mnesia tables creation and transformation
- Improve ejabberd_c2s:close()
- ejabberd_c2s: Don’t close session on stream resume
- Speedup loading of translation files
- Fix ejabberd_router:is_my_route/1
- Don’t let a receiver crash if a controller is unavailable
- Fix OTP-17.5 support
- websocket: Catch exception that may happen when sending data over
  websocket

Databases
- New sql_connect_timeout option
- New sql_query_timeout option
- Get rid of sql_queries.erl
- Use round-robin algorithm when selecting worker from DB pool
- Add Riak as BOSH RAM backend
- Add Riak as mod_proxy65 RAM backend
- Add Riak as mod_carboncopy RAM backend
- Add Riak as router RAM backend
- Add Riak as session manager RAM backend
- Fix cleaning of Riak route table
- Add pubsub import from prosody/metronome
- Fix username in mam export
- Fix Salt import from prosody SCRAMmed password
- In offline export to SQL, first write all DELETE, later all INSERT

Cache
- Implement cache for mod_announce
- Implement cache for mod_private
- Implement cache for mod_privacy/mod_blocking
- Implement cache for mod_last
- Implement cache for mod_vcard and mod_vcard_xupdate
- Implement cache for roster
- Add cache options to the validator
- Use cache for authentication backends
- Use new cache API in mod_shared_roster_ldap
- Use new cache API in ejabberd_oauth
- Use new cache API in mod_mam
- Use new cache API in mod_caps
- Use cache in front of Redis/SQL RAM backends

Modules
- mod_http_upload: Add support for HTTP File Upload 0.3.0
- mod_mam: Added export function
- mod_metrics: Don’t leak with UDP sockets
- mod_metrics: New options ip and port
- mod_muc: Allow a room admin to un/subscribe another JID
- mod_offline: Don’t store messages via a single process
- mod_offline: Make sure only jabberevent tag is present in offline
  event
- mod_register: New option ‘access_remove’ ACL
- mod_stream_mgmt: Preserve stanza count on timeout
- mod_vcard_ldap: Parse ldap_uids like in eldap_utils
- mod_client_state: Reset state on session resume
- mod_metrics: Fix IP address parsing
- mod_pubsub: Avoid useless calls on simples subscriptions
- mod_block_strangers: Add allow_local_users option

Elixir
- Update elixir to v1.4.4
2017-07-07 10:08:39 +00:00
fhajny
40464d1b4c Update chat/ejabberd to 17.04.
Make the Redis support unconditional (no extra dependencies).

Changes in 17.04:

Admin
- Add more examples on config template
- Generate ejabberd lib dir when not available in code server
- Set default prefix to /usr/local
- Start supervisors after ext_mod
- Don't log warning on successful ping reply
- New muc_register_nick command

Core
- Deprecate jlib.erl in favor of misc.erl
- Add support for file-based queues
- ejabberd_sm: Fix routing of headline and groupchat messages
- Fix c2s connection close on demand
- Improve overloaded S2S queue processing

Databases
- Improve Redis related code
- Add Redis pool support
- Improve logging of Redis errors
- Add Redis and SQL as mod_proxy65 RAM backends
- Add Redis and SQL as mod_carboncopy RAM backends
- Add Redis and SQL as mod_bosh RAM backends
- Add Redis and SQL as router RAM backends
- Add SQL as mod_muc RAM backend
- Remove obsolete Pubsub mnesia migration calls

Miscellany
- ejabberd_http: Expand @VERSION@ in custom headers
- ejabberd_http: Add "custom_headers" option
- mod_client_state: Queue stanzas of each full JID
- mod_http_upload: Don't add "Server" header line
- Pubsub: Refactor pubsub's get_last_items
- Pubsub: Fix PEP issues
2017-04-13 19:04:53 +00:00
fhajny
a788d0b39c Update chat/ejabberd to 17.03.
Major improvements
- New modular code allows to develop modules for a wide scope of
  functionalities without patching the core code such as C2S, S2S and
  router
- Now 'From' and 'To' arguments must be omitted in functions and
  structures related to routing
- Ejabberd used to store all in-memory shared data such as ACLs,
  proxy65, sessions, routes, clustering, etc in internal Mnesia
  database and this used to be hardcoded. With new API it's now possible
  to store such data in any database. However, currently only Mnesia
  backend is supported.
- Dynamic configuration reload allows to reload modules, database
  connections, listeners, ACLs and global options without restarting
  ejabberd
- Spam protection allows to block packets from non-subscribers
- S2S dialback is now an optional module

Developer
- tools/hook_deps.sh: checks hook dependencies
- tools/find-outdated-deps.pl: checks which dependences need update
- Mark as deprecated add/get_local/global_option config functions
- Change routing API

Core
- Fix some corner cases while re-reading RFC6120
- Attach IP metadata to every stanza received from stream
- Apply SASLprep before storing/converting passwords
- Send compressed in correct order
- Reset XML stream before sending SASL success
- Speedup features list when a lot of virtual hosts configured
- Fix s2s_dns_timeout issues
- Better handling of IPv6 domains
- Rename mod_sm -> mod_stream_mgmt
- Don't count resent stanzas
- Improve startup procedure, and log startup time
- Add more processes to supervision
- sm_sql: Avoid PID collisions

Admin
- Add 'supervisor' listening option
- Accept "add_commands: admin" in commands section
- Make sure that api_permissions always have "console commands"
  section
- Change name of pam dep from p1_pam to epam
- Improve compilation with rebar3
- Add TLS support for external components
- Specify "ExecReload" command in systemd unit
- Don't attempt to resolve _jabber._tcp SRV record
- Improve error reporting for forbidden servers
- mod_block_strangers: New module to block packets from
  non-subscribers
- mod_register: Report password change in the log
- Remove relict mod_service_log
- Remove unused mod_ip_blacklist
- Remove ejabberd_frontend_socket
- WebAdmin: improve formatting when showing erlang terms
- Import from Prosody: Fix import of SCRAM passwords, offline

API & Commands
- get_last now always returns tuple with UTC XEP-0082 and status
- Protect users from delete_old_users command using a fixed access
  rule
- Separate list of strings with \n for srg_get_info in mod_http_api
- Support non-JID lines in command create_rooms_file
- stop_all_connections now stops all s2s connections via supervisor
  calls
- Support scrammed passwords in ejabberdctl import_prosody

Configuration
- Provide example mod_http_api configuration with couple commands
- Clarify new modules usage in the example config
- Don't crash on malformed IP addresses
- Fix parsing of acl/access rules inside oauth sections of
  api_permissions

Config reload improvements
- Start/stop auth modules when host is added/deleted
- Improve modules start/stop procedures
- Check result of gen_mod:start/2 callback
- Improve reload_config admin command
- Invalidate access permissions on configuration reload
- Start/stop virtual hosts when reloading configuration file
- Reload modules when reloading configuration file
- Restart listeners on configuration reload
- Make sure all hooks are called with proper host

Databases
- Add missing NOT NULL restrictions in schemas
- Move archive tables into lite.sql for better comparison with other
  schemas
- Implement database backend interface for mod_proxy65
- Implement database backend interface for MUC, BOSH and auth_anonyous
- Implement database backend interface for ejabberd_router
- Propagate the TRANSACTION_TIMEOUT to pgsql driver

New XMPP stream behavior
- Reflect cyrsasl API changes in remaining code
- Improve return values in cyrsasl API
- More refactoring on session management
- Add xmpp_stream_out behavior and rewrite s2s/SM code
- Rewrite ejabberd_service to use new XMPP stream API

MAM & offline storage
- Make a message is not bounced if it's archived
- Archive message before delivering it to offline storage
- Include stanza ID with archived offline messages
- Add stanza-id to every archived message

PubSub
- Avoid orphan_item leak on affiliation/subscription removal
- Fix pubsub SQL schemas, add NOT NULL restrictions
- Fix last item cache for multiple hosts

Server to server
- Several improvements of S2S errors logging
- Resolve all addresses from SRV lookup
- Add s2s work-around for gmail.com
2017-03-30 14:50:05 +00:00
fhajny
31163d54a1 Update chat/ejabberd to 17.01
Most relevant changes:

Admin
- Add example api_permissions: definition to config template
- Allow old-stype mod_vcard_ldap in the config
- Fix migration of old pubsub database (migrating from 2.1.x)
- Get nodes from ejabberd_cluster instead of mnesia
- mod_configure: Fix configuration commands

Core
- Fix case clauses when using compression
- Set from/to in every routed packet
- Correctly process errors from new cyrsasl API
- Improve return values in cyrsasl API

Modules
- mod_http_bind: remove and migration code to mod_bosh
- mod_muc: Allow a subscriber to create room, then set
  allow_subscription=true
- mod_muc: Support legacy muc#roomconfig values
- mod_offline: Decode message before checking for expiration

Mnesia
- Let ejabberd_mnesia handles copy_type
- Fix index processing
- Speedup table setup, no i/o if EJABBERD_SCHEMA_PATH not set

SQL
- Add SSL support for SQL connections with PostgreSQL 1.1.2+
- Cope with malformed values in 'rosterusers' SQL table
- Improve tag insertion, avoid duplication
2017-01-21 20:20:33 +00:00
fhajny
2ddd48b24a Update chat/ejabberd to 16.12.
API / integration
- New API permissions framework

Commands
- Add configurable weight for ejabberd commands
- add_rosteritem: Support several groups separated by ;
- create_rooms_file: Fix reading room jids from file
- delete_old_messages: Fix command for SQL backends
- send_message: Don't duplicate the message
- Remove obsolete remove_node command (use leave_cluster)
- Fix reload_config
- Cleanup mod_admin_extra, add few functions
- Expose unregister API command

Core XMPP
- New BOSH module
- Use fxml_gen XML generator
- Use our new stand-alone XMPP library instead of jlib.erl
- Don't let MAM messages go into offline storage
- Add xdata generator for XMPP data form
- Get rid of excessive (io)list_to_binary/1 calls

HTTP
- Add authentication support to mod_http_fileserver
- ejabberd_http: Handle missing POST data gracefully
- Use inets instead of lhttpc in http_p1
- Add http_p1.erl, rest.erl, and oauth2 ReST backend for OAuth2 tokens

MUC
- Create room on configuration request as per XEP-0045, 10.1.3
- Ensure that presence_broadcast room option is stored
- Fix conference disco#items when running multiple virtual hosts
- Fix Result Set Management (RSM) for conference disco#items
- Introduce muc_invite hook
- Make the constant MAX_ROOMS_DISCOITEMS configurable
- mod_carboncopy: Don't copy MUC private messages

MUC/Sub
- Store the flag "Allow Subscription" room option in database
- When getting list of subscribed rooms, also check temporary ones
- Add password support in muc_subscribe
- When unsubscribes, check if room should get closed

Pubsub
- Enforce pubsub node removal
- Relational databases support
- Append ; to privacy_list_data exporting lines
- Improve relational database import

Build
- Make build system compatible with rebar3
- Produce ejabberd.service and fix for systemd usage
- Cleanup ext_mod and fix compilation path
- Fix compilation of external module with new xmpp lib
2017-01-03 18:52:33 +00:00
fhajny
cad46ddf54 Update chat/ejabberd to 16.09.
New XMPP Extension support
- Support for XEP-0355 - Namespace Delegation
- Support for XEP-0356 - Privileged Entity

Elixir support
- Support for Elixir-based configuration files

MUC/Sub
- Add a new request to list MUC room subscribers
- Link MUC subscription to bare JID
- New commands unsubscribe_room and unsubscribe_room for MUC
  subscriptions management through API
- Fix nick-to-jid mapping for MUC subscribers
- Fix subscribed rooms list retrieval
- Fix message routing from subscribers
- Do not update muc_online_users table on MUC/Sub operations

MUC
- Support multiple JIDs in room invitations
- Create room on configuration request as per XEP-0045, 10.1.3

PubSub
- Add SQL support for microblogging node plugin
- Fix publish with subscriber publish model and SQL backend
- node_mb: Call node_pep instead of node_hometree

Stream Management
- New Stream Management option: ack_timeout
- Fix Stream Management feature for the websocket connections
- Cancel timer when waiting for resumption

MAM and Offline
- Don't store messages of type "headline"
- Simplify "assume_mam_usage" option
- Honor hint for any non-"error" message
- Store announcements for offline users

Database
- Session backend: fix clean Redis table
- mod_shared_roster: Support SQL backend

ejabberdctcl admin tool
- ejabberdctl: do not force access rules check on register command
- ejabberdctl: do not force command line to pass a credential
- New commands unsubscribe_room and unsubscribe_room for MUC
  subscriptions management
- New command create_room_with_opts to create room with custom
  config

ejabberd API
- New commands unsubscribe_room and unsubscribe_room for MUC
  subscriptions management
- New command create_room_with_opts to create room with custom
  config
- Add X-Admin and basic auth header to CORS allowed headers in
  http_api
- Properly process OPTIONS header in http_api for all paths
- Expand parsing of JSON input to be able to handle update_roster
  command
- Provide proper args_desc in oauth_issue_token command

Developer features: ejabberd Hooks
- Add hooks c2s_session_pending, c2s_session_resumed,
  store_offline_message, store_mam_message
- Add CSI user's JID argument to csi_filter_stanza and
  csi_flush_queue hooks
- Add functions to get/set some c2s #state elements from external
  modules
- mod_client_state: Let other modules filter stanzas
- rework c2s API to simplify push modules integration
2016-10-02 12:17:40 +00:00
fhajny
a5f91ac2fd Update chat/ejabberd to 16.08.
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
2016-08-12 10:27:27 +00:00
jperkin
36e6903fd8 Remove the stability entity, it has no meaning outside of an official context. 2016-06-08 10:16:50 +00:00
jperkin
13a8dd759b Change the service_bundle name to "export" to reduce diffs between the
original manifest.xml file and the output from "svccfg export".
2016-06-08 10:02:24 +00:00
fhajny
9a7d622e2e Use REAL_ROOT_USER/REAL_ROOT_GROUP instead of ROOT_USER/ROOT_GROUP
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.
2016-05-17 10:32:06 +00:00
fhajny
f08dc6752b Update chat/ejabberd to 16.04.
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
2016-04-29 19:05:22 +00:00
fhajny
93c07240f5 Update chat/ejabberd to 16.03.
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.
2016-04-25 20:24:14 +00:00
fhajny
d9943ce04f Fix Bash interpreter path in one more script. PKGREVISION++ 2016-01-18 10:23:18 +00:00
fhajny
dad7130151 Update chat/ejabberd to 16.01
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
2016-01-16 19:28:01 +00:00
fhajny
303b5c082d Update chat/ejabberd to 15.11.
- Integrate join/leave cluster as ejabberd command.
- Allow longer command execution time.
2015-11-23 15:30:26 +00:00
fhajny
92785d6c3f Update ejabberd to 15.10.
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
2015-11-05 12:23:50 +00:00
agc
b35b0abbb4 Add SHA512 digests for distfiles for chat category
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.
2015-11-03 01:20:17 +00:00
ryoon
b141232e29 Recursive revbump from textproc/icu 2015-10-10 01:57:50 +00:00
fhajny
2e19cd5030 Update chat/ejabberd to 15.09.
### 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
2015-10-01 14:48:14 +00:00
fhajny
1caf14e9f8 Update chat/ejabberd to 15.07.
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
2015-09-01 11:36:59 +00:00
fhajny
b888531d20 Fix build for Erlang 17 and 18 by adding patches from FreeBSD ports.
Bump PKGREVISION.
2015-07-17 14:25:42 +00:00
fhajny
10f880ea79 Update chat/ejabberd to 15.06.
Message archiving
- Add support for message archiving in Mnesia or relational databases.

Protocol
- Document protocol support and version inside each module and use that
  info in documentation
- Remove deprecated XEP-0090 Entity Time and XEP-0091 Delayed Delivery
- Don't add body element to MUC subject messages
- Do not bounce normal messages sent to unavailable resource

Admin command-line tool
- Fixed several ejabberd commands
- Allow password with ';' passed in ejabberdctl
- Improve ejabberdctl external module install code, allows better
  error checking
- New ping ejabberdctl command to check if the node is up and running
- New commands for Multi-User chat management: get_room_options and
  get_user_rooms

Configuration
- Add config validation at startup
- Fix include of non yaml config files
- New option hide_sensitive_log_data to hide client IP address in log
- New option net_ticktime, to fine tune Erlang cluster networking
- New option max_users_presence in mod_muc, to avoid broadcasting
  presence packet from users after a chat room has reached a given size

Elixir
- Add correct package version for mix

Security
- New options to configure your own custom Diffie-Helman parameters:
  dhfile and s2s_dhfile

PubSub
- Enforce definition of pubsub node max_items
- Fix pubsub/odbc crash on remote user unsubscribe
- Fix use of publish_only affiliation with odbc backend

Multicast
- Pick first local multicast service, otherwise remote

Databases
- Fix anonymous user login, it wasn't stored in anonymous mnesia table
- Fixed some string/binary issues in ejabberd_odbc
- PostgreSQL storage: added missing sm (session manager) table

Packaging
- Microsoft Windows 64 bits installer
- Provide RPM and DEB binary packages for linux 64 bits.

Clean up
- Remove obsolete doc and win32 files
2015-06-29 21:44:10 +00:00
fhajny
e6680267a3 Stop pretending the helper scripts are not Bash scripts. Fix PLIST handling
for the non-default sqlite option. Help libiconv linking on some platforms.
Bump PKGREVISION.
2015-05-04 14:40:38 +00:00
fhajny
761678c9be Update chat/ejabberd to 15.04. Add sqlite option.
Upstream changes:
- R16B03-1 is now the minimal required Erlang/OTP version
- SQLite support
- Default db_type can be specified with global default_db option
- Included mod_muc_admin, mod_admin_extra and mod_multicast modules
- Removed ejabberd_http_poll
- Pubsub improvements
- Better RFC compliance
- Several other bugfixes
2015-04-29 10:03:58 +00:00
ryoon
22bee7a3c3 Recursive revbump from databases/unixodbc. 2015-04-26 11:52:18 +00:00
fhajny
29f2e96b86 Update ejabberd to 15.03. Take on maintainership.
- Add support for WebSocket
- Flexible session management with multiple backends: Mnesia/SQL/Redis or
  custom backend for session manager
- Security improvement with SCRAM based password encryption in SQL
  authentication backends.
- Package management for ejabberd contributed modules
- Improved Elixir experience
- Automatic clustering scripts
- Added missing index on database
- Important updates on the documentation, with the launch of a new
  documentation site: docs.ejabberd.im
- Several other bugfixes

More information on release at

  https://www.ejabberd.im/node/24818
2015-04-09 06:35:53 +00:00
fhajny
d6ab122540 Helps to not drop the main erlang bl3 when updating. Fixes build. 2015-02-21 11:03:53 +00:00
fhajny
fe00c6b7a3 Update ejabberd to 15.02.
Enable odbc, mysql and pgsql support unconditionally (no dependency cost).

Changes in 15.02:
- Add Elixir support, allows to write plugins in Elixir (not enabled in
  this pkgsrc package)
- New command to reload configuration without restart
- Support old style erlang expressions in YAML configuration
- Improved captcha listener parsing when protocol not specified
- Fix upgrade of old unbinarized pubsub table from 2.1
- Minor updates in the documentation
- Other bugfixes
2015-02-20 21:06:52 +00:00
fhajny
e7fbf254bf Update ejabberd to 14.12.
ejabberd Community 14.12 includes many bugfixes, and a few new features:
- New module mod_client_state implements XEP-0352: Client State Indication
- New module mod_fail2ban to ban IPs that show malicious signs
- New option store_empty_body in mod_offline
- New option disable_sasl_mechanisms
- Improve option resend_on_timeout to support if_offline
- More robust offline server
- Better charset support in XMLRPC
- Some PEP issues fixed
2015-01-02 09:14:16 +00:00
fhajny
b4eb3326bc Backport upstream commit to fix CVE-2014-8760. Bump PKGREVISION. 2014-11-13 09:45:47 +00:00
fhajny
faad3c0d90 Cache remote deps. This should help offline builds and prevent PLIST
changes if upstream updates one of the dependencies. Clean up and
reorder Makefile for better readability.
2014-10-16 12:47:59 +00:00
joerg
92d5a64360 Sync PLIST with installation. Bump revision. 2014-10-15 22:05:40 +00:00
tron
390e1d82ab Use a complete set of command line options for executing "flock" to make
"ejabberctl" work with NetBSD 7.0's flock(1) as well.
2014-08-21 19:32:27 +00:00
fhajny
417f782520 Control script relies on $HOME, so 'su -m' will not cut it. Changed to just
su in the rc.d script and adjusted the SMF manifest similarly.

Bump PKGREVISION. Fixes pkg/49052.
2014-07-31 10:31:51 +00:00
fhajny
d85224ba3c Update ejabberd to 14.07.
* SIP
  - SIP Outbound (RFC 5626) support
  - New option always_record_route
  - New options record_route and routes

* Carbon Copy (XEP-0280)
  - Don't log MUC messages with hint
  - Don't carbon copy messages with hint
  - Let is_carbon_copy/1 recognize carbons
  - Don't send XEP-0280 v1 copies back to sender

* Stream Management (XEP-0198)
  - XEP-0198: Terminate session if stanza queue becomes too large
  - XEP-0198: Don't exit on socket send failure
  - XEP-0198: Don't drop session on failed resume
  - XEP-0198: Check whether routed packets are stanzas

* Riak
  - Riak support

* Install and config
  - New options log_rotate_count, log_rotate_size and log_rate_limit
  - html guide is now generated when building source tarball
  - Use p1_utils, and move treap.erl to p1_utils
  - Get rid of p1_mnesia file
  - old release notes are not installed anymore
  - Don't "forget" listener options
  - Always enable STUN at compile time
  - Do not check for Erlang apps at configure time
  - Add --enable-riak configure flag

* Tests
  - Add tests for stream management
  - Add tests for mod_carboncopy
  - Add tests for mod_caps
  - Improve MUC test cases
  - Travis CI: Enable Riak tests
  - Add Riak backend to the testing suit
  - The test suite no longer fails without --enable-transient_supervisors.

* MUC
  - MUC messages with ~ were not logged (EJAB-1696).
2014-07-30 09:45:38 +00:00
fhajny
f90a2b4559 Update ejabberd to 14.05.
Changelog since 13.12:

ejabberd now includes support for:
- XEP-0198: Stream Management (EJAB-532)
- XEP-0321: Remote Roster Management (EJAB-1381)
- RFC-3261: SIP proxy/registrar
- RFC-5766: TURN: Traversal Using Relays around NAT (EJAB-1017)

There are several improvements regarding encryption:
- Add option to specify openssl options
- Fix extraction of host names from certificates
- Fix certificate authentication for incoming s2s connections
- Fix handling of certificate verification errors for incoming s2s
- Handle “s2s_use_starttls: required_trusted” the same way for outgoing
- Support certificate verification for outgoing s2s connections
- Check TLS state before requesting SASL EXTERNAL
- Log TLS status for outgoing s2s with SASL EXTERNAL
- Verify host name before offering SASL EXTERNAL

Just to mention other improvements:
- New ejabberd command: disconnect_user/2
- New Bash completion script for ejabberdctl, experimental (EJAB-1042)
- Don’t provide current password in webinterface
- mod_register_web: check same acl as mod_register.
- Document and enable mod_carboncopy (XEP-0280) by default
- Make it possible to get/set vCards for MUC rooms
- Add Travis CI configuration file
2014-05-14 08:32:02 +00:00
jperkin
9e7a1ba4b9 Set USE_GCC_RUNTIME=yes for packages which build shared libraries but do
not use libtool to do so.  This is required to correctly depend upon a
gcc runtime package (e.g. gcc47-libs) when using USE_PKGSRC_GCC_RUNTIME.
2014-03-13 11:08:49 +00:00