Evgeniy Khramtsov
23858469b7
Get rid of "jlib.hrl" dependency in some files
2016-07-26 11:29:17 +03:00
Holger Weiss
814b80c644
Preserve PID for offline sessions
...
Don't set the PID to 'undefined' when a session goes offline, as this
looses the information which node created the session table entry.
Fixes #1196 .
2016-07-23 01:08:05 +02:00
Evgeniy Khramtsov
9a8e197d7e
Initial version based on XML generator
2016-07-18 15:01:32 +03:00
Holger Weiss
30e814dd4b
XEP-0198: Add 'h' attribute to <failed/> element
...
If a resume request is rejected because the session timed out, indicate
the number of handled stanzas as per version 1.5 of XEP-0198.
2016-05-24 22:20:58 +02:00
Holger Weiss
d6700bdc5b
Merge remote-tracking branch 'processone/pr/1088'
...
* processone/pr/1088:
Process messages of unknown type consistently
2016-05-05 00:20:15 +02:00
Holger Weiss
6da07d78b5
Merge remote-tracking branch 'processone/pr/1086'
...
* processone/pr/1086:
Return error when blocking message to offline user
2016-05-02 21:08:06 +02:00
Evgeniy Khramtsov
9c369b7a8c
Improve detection of databases supported by modules ( #1092 )
2016-04-27 17:10:50 +03:00
Holger Weiss
45321fa2e2
Process messages of unknown type consistently
...
If an incoming message sent to an unavailable resource has an unknown
type, handle it like messages of type "normal" (as mandated by RFC 6121,
section 5.2.2). The same is already done for messages of unknown type
sent to the bare JID of an offline user.
2016-04-25 01:13:41 +02:00
Holger Weiss
65ad70d7dc
Fix error text for message bounces
2016-04-25 00:53:48 +02:00
Holger Weiss
a37cf33358
Drop headline messages sent to offline resources
...
Don't bounce an error when a message of type "headline" is sent to an
unavailable resource. This is consistent with how headline messages
sent to the bare JID of an offline user are dropped, and it avoids a
presence leak.
2016-04-25 00:02:12 +02:00
Holger Weiss
cebdfb6523
Return error when blocking message to offline user
...
As per XEP-0016 and XEP-0191, return a service-unavailable error when an
incoming message sent to an offline user was blocked by a privacy list.
The same is done for a message sent to an online user, so this avoids a
presence leak.
2016-04-24 22:00:15 +02:00
Evgeniy Khramtsov
1aae8a9fda
Rename odbc to sql everywhere
2016-04-20 13:25:42 +03:00
Evgeniy Khramtsov
fafeeb80c2
Rename ejabberd_sm_odbc -> ejabberd_sm_sql
2016-04-20 09:11:02 +03:00
Paweł Chmielowski
86dfbe6ece
Make sure that ejabberd_sm sid are unique
2016-04-08 10:52:29 +02:00
Evgeniy Khramtsov
fced8dc3d9
Replace some ?ERR_* macros with ?ERRT_*
2016-03-31 11:00:29 +03:00
Evgeniy Khramtsov
b5121a346d
Experimental MIX (XEP-0369) support
2016-03-08 20:04:29 +03:00
Evgeniy Khramtsov
4b0860e7de
Make it possible to define 'sm_db_type' per virtual host
2016-02-19 16:38:43 +03:00
Mickael Remond
dfc29ea03c
Switch to Fast XML module
2016-02-03 19:03:17 +01:00
Paweł Chmielowski
bdeb4a7e32
Add a way to get all ejabberd_commands, not only those that was registered
...
This is part of (TECH-1828).
2016-01-26 10:00:28 +01:00
Badlop
f448ff608a
Update copyright to 2016 ( #901 )
2016-01-13 12:29:14 +01:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Christophe Romain
6aeb9dcb38
cosmetic cleanup
2015-10-07 14:18:38 +02:00
Evgeniy Khramtsov
c7750689e8
Fix force_update_presence
2015-10-02 16:06:47 +02:00
Alexey Shchepin
cf975da8f2
Update several commands for recent ejabberd_commands changes
2015-09-28 15:29:25 +03:00
Evgeniy Khramtsov
fb6267f38e
Add config validation at startup
2015-06-01 15:38:27 +03:00
Evgeniy Khramtsov
3b267eaa61
Do not bounce normal messages sent to unavailable resource
2015-05-19 10:58:36 +03:00
Holger Weiss
1fa73fd33f
Remove unused case clauses to make dialyzer happy
2015-04-03 20:37:42 +02:00
Holger Weiss
1b1878409f
Route headlines sent to bare JIDs to all resources
...
As per RFC 6121, deliver headline messages that were sent to a bare JID
to all resources with a non-negative priority, not just to those with
the highest priority. If no such resource is available, discard them
silently.
2015-03-25 01:17:35 +01:00
Holger Weiss
8f9a2d6df8
Don't route error/groupchat messages to bare JIDs
...
As per RFC 6121, drop error messages that were sent to bare JIDs, and
return an error if a groupchat message was sent to a bare JID.
2015-03-25 00:52:49 +01:00
Holger Weiss
bc008d4041
Update routing for unavailable resources
...
As per RFC 6121, don't reroute non-chat messages sent to unavailable
resources.
2015-03-25 00:13:05 +01:00
Evgeniy Khramtsov
a0fafc383a
Add Redis backend for SM
2015-03-11 14:46:57 +03:00
Evgeniy Khramtsov
72d9b099c6
Make it possible to use SQL as an SM backend
2015-03-09 16:41:13 +03:00
Evgeniy Khramtsov
86e03f3828
Separate db backend from the SM
2015-03-09 14:57:33 +03:00
Holger Weiss
7fd7e53e4a
Fix typo in debug message
2015-02-08 23:49:17 +01:00
Badlop
5a35405cd5
Update copyright dates to 2015 (EJAB-1733)
2015-01-08 17:34:43 +01:00
Matthias Rieber
8184326eb9
Fix kick_user command
2014-11-10 20:53:00 +01:00
Holger Weiss
9121ca14de
Rename disconnect_user/2 command
...
The mod_admin_extra module provides a kick_session/4 command. Rename
the disconnect_user/2 command to kick_user/2 for consistency.
2014-05-12 12:44:40 +02:00
Evgeniy Khramtsov
318b0f2208
Fix previous commit (C2S session close on server shutdown)
2014-05-08 21:47:50 +04:00
Evgeniy Khramtsov
181e7a823e
Fix C2S session close on server shutdown
2014-05-08 21:39:53 +04:00
Holger Weiss
d343447cc9
Merge remote-tracking branch 'processone/master' into xep-0198
...
Conflicts:
doc/guide.tex
src/ejabberd_c2s.erl
2014-05-06 21:41:29 +02:00
Evgeniy Khramtsov
806c0e56e1
Do not crash on version downgrade
2014-05-03 17:55:03 +04:00
Evgeniy Khramtsov
8e2bc8d19e
Check for 'max_user_sessions' option
2014-05-02 17:42:13 +04:00
Holger Weiss
ebbceab93f
Translate disconnect_user/2 string sent to client
2014-04-29 11:56:28 +02:00
Holger Weiss
6d1055abec
New ejabberd command: disconnect_user/2
2014-04-29 00:50:43 +02:00
badlop
37d4109e8a
Merge pull request #161 from weiss/fix-carbons
...
Let mod_carboncopy take care of messages sent to bare/unavailable JIDs
2014-04-22 13:52:11 +02:00
badlop
285c4c17cf
Merge pull request #146 from jamielinux/master
...
Update FSF address
2014-04-11 13:35:46 +02:00
Holger Weiss
9d5426315f
Carbons: Also forward messages sent to bare JIDs
...
Don't ignore messages sent to bare JIDs, but forward them to all
carbon-copy-enabled resources that don't have the highest priority.
2014-04-07 22:10:08 +02:00
Badlop
8b9c49440a
Fix user_resources command, and ejabberd_xmlrpc parsing auth details in call
2014-03-31 16:51:47 +02:00
Holger Weiss
e360c56f87
Support XEP-0198 session resumption
...
Implement the optional session resumption feature described in XEP-0198.
A client that supports this feature may now resume the previous session
(within a configurable number of seconds) if the connection was lost.
During resumption, ejabberd will retransmit any stanzas that hadn't been
acknowledged by the client.
2014-03-19 00:51:33 +01:00
Badlop
633d47f784
Update copyright dates to 2014 (EJAB-1679)
2014-03-13 12:30:57 +01:00
Jamie Nguyen
8538997d61
Update FSF address
2014-02-22 10:27:40 +00:00
Alexey Shchepin
62fb432e3e
Fixed broadcast messages handling
2013-06-17 16:41:02 +03:00
Evgeniy Khramtsov
4d8f770624
Switch to rebar build tool
...
Use dynamic Rebar configuration
Make iconv dependency optional
Disable transient_supervisors compile option
Add hipe compilation support
Only compile ibrowse and lhttpc when needed
Make it possible to generate an OTP application release
Add --enable-debug compile option
Add --enable-all compiler option
Add --enable-tools configure option
Add --with-erlang configure option.
Add --enable-erlang-version-check configure option.
Add lager support
Improve the test suite
2013-06-13 11:11:02 +02:00
Badlop
9deb294328
Accumulated patch to binarize and indent code
2013-03-14 10:33:02 +01:00
Alexey Shchepin
0ae400533c
Update copyright dates
2013-01-24 16:25:13 +02:00
Alexey Shchepin
b1e2538488
Update copyright dates
2012-02-23 17:52:34 +02:00
Badlop
a0f8a2c3a4
New option resource_conflict defines server action (thanks to Lee Boynton)(EJAB-650)
2011-08-17 19:44:39 +02:00
Christophe Romain
fd52f2cb7d
update copyright up to 2011
2011-02-14 13:50:55 +01:00
Badlop
afa0f4d403
Fix for Erlang R12, that doesn't support: true andalso ok
2010-06-15 22:59:53 +02:00
Badlop
6ae1f62469
Don't store blocked messages in offline queue (thanks to Brian Acton)(EJAB-1224)
2010-04-27 13:30:00 +02:00
Badlop
1c00a9713d
Automatic vcard avatar addition in presence (thanks to Igor Goryachev)(EJAB-208)
2010-04-27 12:33:56 +02:00
Badlop
47ee65d101
Rewrite mnesia counter functions to use dirty_update_counter (EJAB-1177)
...
(thanks to Juan Pablo Carlino and Alexey Shchepin)
2010-02-15 23:38:17 +01:00
Badlop
7b76fdcde7
Update year of ProcessOne copyright from 2009 to 2010 (EJAB-1159)
...
SVN Revision: 2891
2010-01-12 16:11:32 +00:00
Badlop
6ce660b9c2
IQ sent to resource not connected, return service-unavailable instead of recipient-unavailable (EJAB-1045)
...
SVN Revision: 2768
2009-12-01 20:00:33 +00:00
Badlop
08a72c1693
Store account number in internal auth of (EJAB-981)(thanks to Juan Pablo Carlino)
...
SVN Revision: 2365
2009-07-17 19:05:55 +00:00
Badlop
a93a3370ef
* src/ejabberd_sm.erl: Partially retract SVN r1976
...
EJAB-300 (EJAB-890). Check default privacy list when account, not
a specific session, receives a presence subscription
stanza (EJAB-300).
* src/ejabberd_c2s.erl: Likewise
SVN Revision: 1998
2009-03-24 16:22:33 +00:00
Badlop
787d225f1e
* src/ejabberd_c2s.erl: Enforce privacy rules also for
...
subscription requests (EJAB-300)
* src/ejabberd_sm.erl: Likewise
SVN Revision: 1976
2009-03-07 08:59:26 +00:00
Badlop
f09509502e
* doc/guide.tex: Update copyright date 2008 to 2009 (EJAB-842)
...
* doc/guide.html: Likewise
* src/*/*.erl: Likewise
* src/*/*.erl: Remove unneeded blankspaces in license text
SVN Revision: 1804
2009-01-12 14:44:42 +00:00
Badlop
3bfe585364
* src/ejabberd_sm.erl: Update from ctl to commands (EJAB-694)
...
* src/ejabberd_s2s.erl: Likewise
SVN Revision: 1639
2008-10-12 12:04:10 +00:00
Badlop
c3bda4aaee
* doc/guide.tex: Update Process-one name to ProcessOne (EJAB-708)
...
* doc/guide.html: Likewise
* doc/api/overview.edoc: Likewise
* src/*/*.erl: Likewise
* src/*/*.hrl: Likewise
* src/*/*.c: Likewise
* src/odbc/*.sql: Likewise
SVN Revision: 1499
2008-07-31 11:18:49 +00:00
Christophe Romain
e0e7797e99
Rolled back the previous IP getting patch, and Report connection's IP address in ejabberd_http_poll
...
SVN Revision: 1450
2008-07-16 12:55:29 +00:00
Christophe Romain
35d25d3420
PubSub improvements, and solves (EJAB-453) (EJAB-608)
...
SVN Revision: 1408
2008-07-03 09:56:31 +00:00
Christophe Romain
b2bd9759c8
Rewrite io:format calls to loglevel macros (EJAB-555)
...
SVN Revision: 1239
2008-03-21 14:44:16 +00:00
Christophe Romain
04d688c1ba
Retreive connection type in sm_register_connection_hook
...
SVN Revision: 1194
2008-02-15 16:35:32 +00:00
Badlop
2d2fcc8210
* doc/guide.tex: Updated copyright dates to 2008
...
* src/*: Likewise
SVN Revision: 1153
2008-01-15 17:02:57 +00:00
Mickaël Rémond
56fe3579bb
* Applied copyright update patch 1.
...
SVN Revision: 1110
2007-12-24 11:41:41 +00:00
Christophe Romain
02eaf9eaec
several pubsub/pep bugfix
...
SVN Revision: 1096
2007-12-22 00:04:05 +00:00
Alexey Shchepin
d788bd1a27
* src/ejabberd_sm.erl: Bugfix
...
SVN Revision: 1050
2007-12-07 20:57:44 +00:00
Badlop
6342c258a7
* src/cyrsasl.erl: Fix compilation warnings: Part 1 (EJAB-290)
...
* src/ejabberd_auth_odbc.erl: Likewise
* src/ejabberd_config.erl: Likewise
* src/ejabberd_hooks.erl: Likewise
* src/ejabberd_s2s_out.erl: Likewise
* src/ejabberd_sm.erl: Likewise
* src/idna.erl: Likewise
* src/jd2ejd.erl: Likewise
SVN Revision: 1045
2007-12-06 23:15:04 +00:00
Alexey Shchepin
c3c782d882
* src/mod_caps.erl: CAPS support (thanks to Magnus Henoch)
...
* src/ejabberd_local.erl: Support for IQ responses
* src/jlib.erl: Added iq_query_or_response_info/1 function
* src/jlib.hrl: Added NS_PUBSUB_ERRORS and NS_CAPS
* src/mod_pubsub/Makefile.in: New pubsub+pep implementation
(thanks to Christophe Romain and Magnus Henoch)
* src/ejabberd_sm.erl: Added get_session_pid/3 function
* src/ejabberd_c2s.erl: Added get_subscribed_and_online/1 function
SVN Revision: 1004
2007-12-01 05:16:30 +00:00
Alexey Shchepin
65a7bb7d2a
* src/ejabberd_sm.erl: Optimized check_max_sessions (thanks to
...
Christophe Romain)
SVN Revision: 975
2007-11-25 15:35:20 +00:00
Alexey Shchepin
38ad132ba2
* src/ejabberd_sm.erl: Removed check which denies resource to
...
receive its own presence
SVN Revision: 885
2007-08-24 03:54:42 +00:00
Alexey Shchepin
9a6e8e3c55
* src/ejabberd_sm.erl: Updated the session table to store
...
additional session info
* src/ejabberd_c2s.erl: Report IP address to ejabberd_sm (thanks
to Christophe Romain)
SVN Revision: 772
2007-05-21 03:21:34 +00:00
Alexey Shchepin
372944df6c
* src/ejabberd_sm.erl: Added set_presence_hook
...
* src/ejabberd_c2s.erl: Likewise
SVN Revision: 761
2007-05-03 15:45:24 +00:00
Alexey Shchepin
ab0d7b9151
* src/ejabberd_sm.erl: Added set_presence_hook
...
SVN Revision: 760
2007-05-03 07:41:16 +00:00
Alexey Shchepin
2ae5d13ab8
* src/ejabberd_sm.erl: Added check for existence of incoming
...
subscription destination
SVN Revision: 759
2007-05-03 05:15:12 +00:00
Alexey Shchepin
c65e1e7ae0
* src/ejabberd_sm.erl: Minor optimisation
...
* src/ejabberd_system_monitor.erl: Experimental watchdog
* src/ejabberd_sup.erl: Likewise
* src/ejabberd_config.erl: Likewise
SVN Revision: 750
2007-04-12 05:31:53 +00:00
Alexey Shchepin
661a34ccfc
* src/eldap/eldap.erl: Bugfix (thanks to Evgeniy Khramtsov)
...
* src/ejabberd_sm.erl: The max_user_sessions option is now
configured via access rule
* src/ejabberd.cfg.example: Likewise
SVN Revision: 680
2006-11-23 06:34:05 +00:00
Mickaël Rémond
9b8dcac5a7
* src/ejabberd_c2s.erl: Bugfix: added a missing catch and fixed
...
the error code used on unknown namespace.
* src/ejabberd_s2s_out.erl: Improved s2s connection negociation
(dialback namespace usage) when using tls.
* src/ejabberd_sm.erl: Fixed the error code used on unknown
namespace.
* src/mod_register.erl: ejabberd now sends iq result and stream
end on user remove.
SVN Revision: 590
2006-07-28 16:18:50 +00:00
Alexey Shchepin
c737ce1b8c
* src/odbc/pg.sql: Updated
...
* src/mod_shared_roster.erl: Updated
* src/ejabberd_sm.erl: Bugfix
* src/mod_roster.erl: Bugfix
* src/mod_roster_odbc.erl: Likewise
SVN Revision: 570
2006-05-26 00:00:32 +00:00
Mickaël Rémond
42cdf80cd4
* src/mod_roster.erl: The subscribe request are now resend at
...
login as long as they have not been answered. mod_roster do no more
depends on mod_offline.
* src/ejabberd_sm.erl: Likewise.
* src/ejabberd_c2s.erl: Likewise.
* src/mod_roster_odbc.erl: Likewise (The ODBC/relational support
has not yet been tested).
* src/mod_roster.hrl: Likewise.
* src/mod_offline.erl: Likewise.
* src/mod_offline_odbc.erl: Likewise.
* odbc/pg.sql: Likewise.
* odbc/mysql.sql: Likewise.
SVN Revision: 569
2006-05-23 20:19:37 +00:00
Mickaël Rémond
753e768090
* src/ejabberd_sm.erl: The max_user_sessions has been moved to
...
host configuration.
* src/ejabberd.cfg.example: Likewise.
* doc/guide.tex: Likewise.
SVN Revision: 568
2006-05-22 10:17:22 +00:00
Mickaël Rémond
043c2ccf51
* src/ejabberd_sm.erl: An option to limit the number of opened sessions
...
for a given user have been added. As a default, a given user can only
log in 10 times with different resources. After that, new connections
replace the older ones.
* src/ejabberd.cfg.example: Likewise.
* doc/guide.tex: Likewise.
SVN Revision: 567
2006-05-21 16:34:32 +00:00
Mickaël Rémond
c86275ce9d
* src/ejabberd_sm.erl: Now delivering messages to all resources with
...
max equal priority when this priority is non-negative.
SVN Revision: 541
2006-04-23 09:31:54 +00:00
Alexey Shchepin
9a44fdffab
* src/ejabberd_sm.erl: SASL Anonymous + Anonymous login support
...
(thanks to Mickael Remond and Magnus Henoch)
* src/ejabberd_c2s.erl: Likewise
* src/ejabberd_auth.erl: Likewise
* src/ejabberd_auth_anonymous.erl: Likewise
* src/cyrsasl.erl: Likewise
* src/cyrsasl_anonymous.erl: Likewise
* src/ejabberd.cfg.example: Likewise
SVN Revision: 527
2006-04-07 00:39:24 +00:00
Mickaël Rémond
eabf8d1c6c
* src/ejabberd_sm.erl: Remove unnecessary use delete_object,
...
which can, in some context break indexes, when used on non bag table.
SVN Revision: 519
2006-03-16 09:59:45 +00:00
Alexey Shchepin
80181dc618
* src/ejabberd_ctl.erl: Added API for virtual host specific
...
commands, removed registered-users command
* src/ejabberd_auth.erl: Added processing of registered-users
command
* src/ejabberd_auth_internal.erl: Likewise
* src/ejabberd_auth_ldap.erl: Likewise
* src/ejabberd_auth_odbc.erl: Likewise
* src/ejabberd_app.erl: Added inititalization of ejabberd_ctl
* src/ejabberd_sm.erl: Minor update
SVN Revision: 510
2006-02-20 04:07:42 +00:00
Alexey Shchepin
0234b83be4
* src/mod_service_log.erl: Bugfix (thanks to Badlop)
...
* src/jd2ejd.erl: Use mod_vcard_odbc if it is loaded (thanks to
Tomasz Sterna)
* src/ejabberd_sm.erl: Added a few ejabberdctl commands
* src/ejabberd_ctl.erl: New interface for command registration
SVN Revision: 507
2006-02-15 04:15:54 +00:00
Alexey Shchepin
50f44530d2
* src/odbc/pg.sql: Fixed syntax error
...
* src/ejabberd_router.erl: Updated to use gen_server behaviour
* src/ejabberd_sm.erl: Likewise
* src/ejabberd_s2s.erl: Likewise
* src/gen_iq_handler.erl: Likewise
* src/ejabberd_sup.erl: Added supervisor for ejabberd_receiver
* src/ejabberd_receiver.erl: Updated
SVN Revision: 495
2006-01-29 04:38:31 +00:00
Alexey Shchepin
a4caafeb72
* src/ejabberd_sm.erl: Partially rewritten to work more
...
efficiently and avoid race conditions
* src/ejabberd_c2s.erl: Likewise
* src/mod_irc/mod_irc_connection.erl: Cleanup
SVN Revision: 488
2006-01-23 23:13:06 +00:00