Christophe Romain
2ddbd032ee
Add error handling to send_stanza
2016-01-19 16:16:04 +01:00
Holger Weiss
5e4ed4266d
mod_mam: Strip existing JID tags from MUC messages
...
Strip any pre-existing <x/> tags which have an <item/> child with a
'jid' attribute from MUC MAM messages. This way, if such a tag exists,
clients can be sure it was added by mod_mam.
2016-01-19 00:39:10 +01:00
Alexey Shchepin
a150bf8fdc
Make C2S session establishment optional (ECS-11)
2016-01-18 16:33:57 +03:00
Holger Weiss
bd383fb8c1
mod_mam: Remove unused code
...
This mod_mam version doesn't store groupchat messages in user archives,
and it also doesn't support the "store_body_only" option.
2016-01-18 13:27:29 +01:00
Holger Weiss
63777f830d
Use maps instead of dicts in HTTP upload modules
...
ejabberd currently depends on Erlang/OTP 17.1 or higher, so we can now
use maps.
2016-01-16 01:30:22 +01:00
badlop
6ac839dd76
Merge pull request #906 from hamano/stats_processes
...
add stats processes command
2016-01-15 19:26:23 +01:00
Evgeniy Khramtsov
a83c5a8f3a
Do not redefine records
2016-01-15 15:44:50 +03:00
Evgeniy Khramtsov
1d452c98c1
Describe option type of 'domain_balancing'
2016-01-15 14:32:10 +03:00
Holger Weiss
ddaa409ee2
XEP-0198: Let MAM take care of pending messages
...
If a stream management session times out for a user who appears to be
using MAM, drop any unacknowledged messages rather than resending or
bouncing them. This avoids duplicates or bogus error messages.
However, this is only done if the new mod_mam option "assume_mam_usage"
is set to 'if_enabled' or 'on_request'. In the former case, a user is
assumed to be using MAM if archiving is enabled for his account. In the
latter case, MAM usage is assumed only if archiving was explicitly
requested by the client, or if archiving was enabled by means of
mod_mam's "request_activates_archiving" option.
2016-01-15 01:08:22 +01:00
HAMANO Tsukasa
6cb1905f7c
add stats processes command
2016-01-15 00:27:15 +09:00
Holger Weiss
db04cdf2ca
mod_mam: Sort messages returned by Mnesia
...
Sort the messages retrieved from an Mnesia archive before selecting the
subset limited by the <max/> value. This makes sure the desired subset
of messages is sent to the client.
2016-01-14 02:27:02 +01:00
Holger Weiss
58c8fc5770
mod_mam: Limit result set page size
...
If the client doesn't specify a maximum number of messages to retrieve
per page, set a limit of 50 messages. If the client specifies a limit
larger than 250, cap the number to 250 messages.
These limits aren't enforced for MAM v0.2 requests though, as that
version of the XEP doesn't require clients to support RSM. The newer
revisions say that "a server MAY place a reasonable limit on how many
stanzas may be pushed to a client in one request. Whether or not the
client query included a <set/> element, the server MAY simply return its
limited results, modifying the <set/> element it returns appropriately."
2016-01-14 02:12:28 +01:00
Holger Weiss
35ec0d58a4
mod_mam: Reject <index/>-based paging
...
If an <index/> is specified in the MAM request, reject the request
rather than ignoring the desired index and returning wrong results.
XEP-0059 says that the server "MAY return a <feature-not-implemented/>
error."
2016-01-14 01:39:19 +01:00
Holger Weiss
11afa45646
mod_mam: Remove unused variable
2016-01-14 01:15:11 +01:00
Holger Weiss
89f63a4fdf
mod_mam: Check whether MUC message is desired
2016-01-14 01:13:16 +01:00
Holger Weiss
85f4f90b45
mod_mam: Support XEP-0313 v0.2 MUC archive queries
2016-01-14 00:58:48 +01:00
Holger Weiss
8117092e6a
mod_mam: Respond to form requests
...
If the client requests a data form with the supported filters, return it
as per XEP-0313 v0.3 and newer.
2016-01-13 23:56:05 +01:00
Holger Weiss
89b1700279
mod_mam: Add 'from' attribute to <delay/> tag
2016-01-13 23:17:23 +01:00
Holger Weiss
9cd048c442
mod_mam: Improve binary comparison of message UIDs
...
Make sure the binary comparison performed when clients use message UIDs
to page through Mnesia archives yields correct results even if the
specified UIDs don't have the same number of digits as the UIDs of the
stored messages. This way, MAM will continue to work as expected after
migrating from mod_mam_mnesia to mod_mam.
2016-01-13 23:01:51 +01:00
Holger Weiss
3dccc20d8b
mod_mam: Add "delete_old_mam_messages" command
...
The new "delete_old_mam_messages" command allows for purging all MAM
messages of the specified type older than the specified number of days.
(Currently only implemented for Mnesia archives.)
2016-01-13 22:46:30 +01:00
Holger Weiss
a61b0c303d
mod_mam: Add "request_activates_archiving" option
...
Enabling "request_activates_archiving" tells mod_mam not to store any
messages for a user until his client issued a MAM request, regardless of
mod_mam's "default" option. Once a MAM request is issued, messages are
archived as usual.
2016-01-13 21:38:08 +01:00
Holger Weiss
0183b2487e
Advertise MUC MAM v0.4.1 in room JID's disco#info
2016-01-13 20:30:44 +01:00
Badlop
f448ff608a
Update copyright to 2016 ( #901 )
2016-01-13 12:29:14 +01:00
Evgeniy Khramtsov
fd3e3a99c5
Log failed SQL requests
2016-01-13 14:13:32 +03:00
Evgeniy Khramtsov
776fe8b32a
Fix MAM MUC for v0.4.1
2016-01-13 11:45:08 +03:00
Holger Wei
64d96778b4
Don't return error for blocked MUC messages
...
If a message stanza is blocked as per XEP-0016 or XEP-0191, return an
error only if the type of the blocked message is "normal" or "chat".
This makes sure users won't be kicked from MUC rooms when blocking other
participants.
Closes #897 .
2016-01-12 10:20:35 +01:00
Holger Weiss
3e1425b905
Merge remote-tracking branch 'processone/pr/899'
...
* processone/pr/899:
mod_http_upload: Use application/octet-stream instead of text/html for security reasons
2016-01-11 12:38:51 +01:00
Evgeniy Khramtsov
65e6dfb9dd
Do not fail on incorrect data coming from SQL (898)
2016-01-11 14:35:11 +03:00
Evgeniy Khramtsov
c7931b4a4f
CVE-2016-1232: Add Dialback Key Generation and Validation support (XEP-0185)
2016-01-11 14:22:17 +03:00
Matthias Rieber
0ad0fd2187
mod_http_upload: Use application/octet-stream instead of text/html for security reasons
2016-01-11 12:13:19 +01:00
Badlop
c7b67ff00b
Clarify a little more room error string (thanks to Genghis Khan)
2016-01-08 13:14:40 +01:00
Holger Weiss
e1539a11be
mod_http_upload: Use full PUT URL for process name
...
Don't just use the "put_url" domain name, but also any path components
of the specified URL, to generate a mod_http_upload process name. This
way, a single domain name can be used for multiple virtual hosts by
specifying a "put_url" such as "https://example.com/@HOST@/ ".
2016-01-06 00:12:36 +01:00
Holger Weiss
3f5a20c90a
mod_http_upload: Rename variable for clarity
2016-01-05 22:06:34 +01:00
Badlop
c01e3f24a5
Error converting times in mod_fail2ban ( #889 )
2016-01-05 12:29:21 +01:00
Paweł Chmielowski
da45a064a8
Fix handling of some options in old style configs
...
This fixes issue #893 .
2016-01-04 22:06:19 +01:00
Alexey Shchepin
fb8a511365
Use crypto:rand_uniform instead of random:uniform
2016-01-04 13:59:37 +03:00
Holger Weiss
94c620cc27
mod_http_upload: Fix logging of file size mismatch
2016-01-04 01:01:14 +01:00
Holger Weiss
5deb6a91f7
mod_admin_extra: Replace deprecated function calls
2016-01-02 21:27:48 +01:00
Holger Weiss
b73678992b
mod_muc_admin: Allow for setting MAM option
...
Fixes #890 .
2016-01-02 20:57:01 +01:00
Badlop
91d205715e
New send_stanza command (ejabberd_contrib#142)
2015-12-30 12:53:40 +01:00
Holger Weiss
1d2dc6cdc1
mod_muc_room: Replace deprecated function call
2015-12-29 11:11:50 +01:00
Holger Weiss
4cdb30d59e
mod_mam: Use <stanza-id/> tags for deduplication
...
Use <stanza-id/> elements instead of <delay/> tags to check for messages
resent by the stream management code. The <stanza-id/> element is
preferable, as it is added by mod_mam itself.
2015-12-29 09:54:48 +01:00
Badlop
0df6d7ae39
Improve explanation in registration page ( #876 )
2015-12-28 15:08:59 +01:00
Paweł Chmielowski
a18a3dfbb1
Add commands for generating html or markdown documentation for commands
2015-12-28 12:20:06 +01:00
Evgeniy Khramtsov
babb484cfc
Restrict access to MAM archives for members-only rooms
2015-12-24 15:04:06 +03:00
Badlop
c42e026f9c
Degenderise room error message ( #747 )
2015-12-23 19:34:23 +01:00
Holger Weiss
8cf0d31ee9
Revert "mod_mam: Keep 'to' attribute for MUC MAM messages"
...
This reverts commit 0e330da2a6
. XEP-0313
says: "When sending out the archives to a requesting client, the 'to' of
the forwarded stanza MUST be empty".
2015-12-22 13:20:23 +01:00
Paweł Chmielowski
cfe0aea219
Use built-in nif for integer_to_binary/binary_to_integer
2015-12-22 11:49:12 +01:00
Badlop
88c9991f90
Adding WEBIRC, custom realname & ident, ISO-8859-15 (thanks to iwalkalone69)( #877 )
2015-12-21 16:20:20 +01:00
Alexey Shchepin
d88d5d6807
Support presence_broadcast in default_room_options mod_muc option
2015-12-21 02:25:31 +03:00
Holger Weiss
2d22507636
ejabberd_http: Cope with large POST/PUT requests
...
gen_tcp returns 'enomem' if we try to receive more than 64 MiB.
2015-12-20 23:30:11 +01:00
Holger Weiss
d039b9b72b
ejabberd_http: Log debug message on receive errors
2015-12-20 23:26:57 +01:00
Christophe Romain
bb5a8a42c3
Fix pubsub virtual nodetree plugin
2015-12-17 10:16:17 +01:00
Christophe Romain
6957e892dd
Fix last item message type as message attribute
2015-12-16 17:04:45 +01:00
Christophe Romain
c8986ffa5e
Use correct notification_type for last items ( #827 )
2015-12-16 16:19:35 +01:00
Alexey Shchepin
c6798fc515
Add accept_interval option in ejabberd_listener
2015-12-16 17:26:44 +03:00
Christophe Romain
08b0530164
Don't read pubsub options when plugin does not use them
...
This also revert commit 6052f7b
2015-12-16 12:56:06 +01:00
Holger Weiss
5fd1aa0d04
Advertise MAM in disco info for account/room JID
...
As per XEP-0313 version 0.2 and newer, advertise the MAM feature in the
service discovery information for the bare account (or MUC room) JID.
Some clients check the server's discovery information instead, so we'll
continue to advertise the feature there as well.
2015-12-16 00:08:23 +01:00
Holger Weiss
11ad96fced
Use MUC domain for 'by' attribute of <stanza-id/>
...
Let mod_mam specify only the domain part of the room JID in the 'by'
attribute of <stanza-id/> tags.
2015-12-15 21:37:41 +01:00
Holger Weiss
0e330da2a6
mod_mam: Keep 'to' attribute for MUC MAM messages
2015-12-15 21:05:04 +01:00
Christophe Romain
6efdf78ce3
PubSub plugin for online users only
2015-12-15 16:23:04 +01:00
Christophe Romain
3b69d26368
Fix pubsub headers
2015-12-15 16:12:20 +01:00
Paweł Chmielowski
6052f7bfa8
Fix pubsub test error
2015-12-14 10:21:23 +01:00
Christophe Romain
e3005f68e7
Remove undefined macro injected in 3bdd5d0d
2015-12-11 15:33:22 +01:00
Christophe Romain
8ee5f9fb6f
Remove http supervisors
2015-12-11 14:13:24 +01:00
Christophe Romain
3bdd5d0d25
Remove receiver's supervisor
2015-12-11 14:11:44 +01:00
Christophe Romain
1a32f20c07
Disable use of multi-subscribe and subscription-option on standard plugins
2015-12-11 12:46:49 +01:00
Christophe Romain
6357ea1d5d
Limit number of subscriptions per node and allow custom default node configuration
2015-12-11 12:46:44 +01:00
Christophe Romain
86a8606fd1
Virtual nodetree is not attached to any backend
2015-12-11 12:46:40 +01:00
Christophe Romain
c4943cffe8
Follow pubsub configuration when using virtual nodetree
2015-12-11 12:46:35 +01:00
Christophe Romain
10c920ef13
Don't force max_items_node to MAXITEMS if not defined
2015-12-11 12:30:16 +01:00
Holger Weiss
469e93f37b
mod_mam: Don't store resent messages
...
Make sure messages that were resent by the stream management code aren't
stored in MAM.
2015-12-09 22:44:45 +01:00
Holger Weiss
e09afe367f
Document XEP-0334 support
2015-12-09 22:28:44 +01:00
Evgeniy Khramtsov
4c47ee63f2
Do not forget to include xmlns in mam prefs response ( #859 )
2015-12-09 12:53:02 +03:00
Paweł Chmielowski
be4d687a86
Fix problem with handling of old db entries in mod_mam
2015-12-09 09:47:03 +01:00
Holger Weiss
07baf2d973
Don't let "reopen_log" rotate files (EJAB-1243)
...
Make sure the "reopen_log" command really just reopens log files without
also rotating them. For rotating log files, the new "rotate_log"
command can be used.
2015-12-08 22:48:04 +01:00
Holger Weiss
325c17f277
mod_mam: Update record field type
2015-12-08 22:21:39 +01:00
Holger Weiss
14609dbfa2
mod_mam: Remove unused code
2015-12-08 22:15:55 +01:00
Holger Weiss
59ba09826b
mod_offline: Fix outdated comments
2015-12-08 21:58:54 +01:00
Holger Weiss
90fd7f3780
mod_offline: Honor <store/> hint
...
Ignore the "store_empty_body" option for messages that have a <store/>
hint as described in XEP-0334, version 0.2.
2015-12-08 21:46:36 +01:00
Alexey Shchepin
c2f6bf0343
Improve muc#roomconfig_presencebroadcast support
2015-12-08 21:53:42 +03:00
Paweł Chmielowski
67f93b0d60
Don't keep 10 sec timeout that i used for testing...
2015-12-08 11:28:03 +01:00
Paweł Chmielowski
7a69dab596
Add ability to disable timeout for ejabberdctl command
2015-12-08 11:25:26 +01:00
Holger Weiss
5ce0b062ff
mod_mam: Honor Message Processing Hints (XEP-0334)
2015-12-08 00:10:00 +01:00
Badlop
3e57850da7
If mod_register access_from is 'none', then don't advertise IBR ( #857 )
2015-12-07 18:30:52 +01:00
Paweł Chmielowski
95a9100623
Fix more places where random:seed is used
2015-12-07 16:48:29 +01:00
Paweł Chmielowski
d0df7be722
Fix randoms.erl on R17 that don't have random:seed(integer())
2015-12-07 16:37:40 +01:00
Paweł Chmielowski
5ac10d6555
Remove now() in pubsub code
2015-12-07 16:16:11 +01:00
Paweł Chmielowski
29db302808
More now() replacements
2015-12-07 16:09:48 +01:00
Paweł Chmielowski
b9f751e099
Fix bug in last commit
2015-12-07 10:26:51 +01:00
Paweł Chmielowski
0a846d03bf
More now() removal
2015-12-06 15:58:46 +01:00
Paweł Chmielowski
5c329a7699
Remove now() - part 1
2015-12-04 15:08:43 +01:00
Badlop
daad71bc7e
trusted_proxies option not parsed correctly ( #860 )
2015-12-04 13:14:39 +01:00
Holger Weiss
ba916c3162
XEP-0198: Fix stanza counting corner case issue
...
Don't forget to count outgoing stanzas that are processed while the
ejabberd_c2s process is already waiting for stream resumption.
2015-12-02 19:25:10 +01:00
Badlop
f9e12d900c
No need for a top menu link as there's a top page link
2015-12-02 17:10:23 +01:00
Badlop
e412438aba
When user joins logged room, he must be warned (EJAB-726)
2015-12-02 12:07:29 +01:00
Badlop
086fbc6a50
Only filter rooms in Service Disco when more than 100 (EJAB-343)
2015-12-02 02:32:25 +01:00
Badlop
ff22782752
List in Service Disco non-empty rooms and provide Node for empty (EJAB-343)
2015-12-02 01:51:39 +01:00
Mickael Remond
e5ae35c66b
Update cache_tab app name
2015-12-01 19:17:51 +01:00
Evgeny Khramtsov
3397a9be5e
Merge pull request #849 from weiss/discard-chat-states
...
mod_offline: Support discarding chat state notifications
2015-12-01 14:57:49 +03:00
Evgeniy Khramtsov
f1ecbf80fb
Fix archive preference retreiving ( #848 )
2015-12-01 14:06:23 +03:00
Christophe Romain
9eeee67da7
Webadmin console visual refresh (thanks to Marek Foss) (EJAB-1142)
2015-11-30 11:35:53 +01:00
Evgeniy Khramtsov
9cc5a5d467
Simplify external components configuration
2015-11-28 17:38:34 +03:00
Holger Weiss
44f5e411c5
mod_offline: Support discarding chat states
...
XEP-0160 says that standalone chat state notifications should not be
stored offline. By default, mod_offline discards them now.
Closes #842 .
2015-11-26 08:35:49 +01:00
Holger Weiss
fee2530b1c
Always use occupant JID as 'from' for room subject
...
When sending the room subject to a new participant, always use the
occupant JID that corresponds to the subject author as the 'from'
address. It was already done this way when the subject was sent as part
of the room history.
2015-11-25 00:05:24 +01:00
Evgeniy Khramtsov
87fb5132be
Make JID related functions from jlib.erl deprecated
2015-11-24 20:31:26 +03:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Christophe Romain
16881597c9
Remove useless export_all flag
2015-11-23 12:03:08 +01:00
Christophe Romain
f3ff660eae
Export content_type/3 needed by mod_http_upload
2015-11-23 11:53:36 +01:00
Christophe Romain
4480749a52
Merge branch 'cluster_fix'
2015-11-20 14:52:36 +01:00
Christophe Romain
b4ae1b63bc
Allow longer command execution time
2015-11-20 10:39:32 +01:00
Christophe Romain
67a70b9107
Integrate join/leave cluster as ejabberd command
2015-11-20 10:39:27 +01:00
Evgeny Khramtsov
0e29307ad5
Merge pull request #840 from cenobites/mod_ping
...
Adding ping_ack_timeout in mod_opt_type configuration
2015-11-18 16:35:49 +03:00
Badlop
2659e2c4a0
Explain that reload_config only affects to ACL and Access
2015-11-18 13:25:19 +01:00
Nycholas de Oliveira e Oliveira
49a8de7c56
Adding ping_ack_timeout in mod_opt_type configuration
...
Avoid the error output
```
2015-11-18 12:02:40.297 [error] <0.37.0>@gen_mod:validate_opts:250 unknown option 'ping_ack_timeout' for module 'mod_ping' will be likely ignored, available options are: 'iqdisc', 'ping_interval', 'send_pings', 'timeout_action'
2015-11-18 12:02:40.334 [error] <0.37.0>@gen_mod:validate_opts:250 unknown option 'ping_ack_timeout' for module 'mod_ping' will be likely ignored, available options are: 'iqdisc', 'ping_interval', 'send_pings', 'timeout_action'
```
In setting mod_opt_type default, ping_ack_timeout parameter was added.
2015-11-18 10:25:01 -02:00
Holger Weiss
43626f5c97
mod_http_upload: Return error atoms, not strings
...
Don't convert error atoms to strings before actually logging them. This
avoids a bogus error message when a user who has no uploaded files is
removed.
2015-11-17 00:12:20 +01:00
Badlop
53d72bd85a
Disable vJUD by default also in mod_vcard_ldap source code
2015-11-13 19:33:23 +01:00
Badlop
f6d8f47451
Disable vJUD search in the default config and when not specified
2015-11-13 19:30:11 +01:00
Alexey Shchepin
aa5caa30e2
Support for muc#roomconfig_presencebroadcast option
2015-11-12 19:53:10 +03:00
Paweł Chmielowski
3ee5195b7a
Fix problem with pipelined http requests arriving in single packet
...
This fixes github issue ejabberd#835
2015-11-12 17:23:59 +01:00
Holger Weiss
55a92c2983
mod_http_upload: Log message if URL looks wrong
...
Log an [info] message if a PUT request looks like the specified
"put_url" contains a path component that doesn't match the
"request_handlers" path, as in the following configuration:
listen:
-
module: ejabberd_http
port: 5444
request_handlers:
"/": mod_http_upload
modules:
mod_http_upload:
put_url: "http://example.com/path/ "
2015-11-11 22:51:40 +01:00
Holger Weiss
415a75c25a
mod_http_upload_quota: Don't track all users
...
Don't track the disk usage of accounts that have an unlimited quota.
2015-11-10 22:08:16 +01:00
Holger Weiss
20709f9880
mod_http_upload: Make case indentation consistent
...
Use four spaces (or the corresponding amount of tab characters) for case
indentation everywhere in mod_http_upload and mod_http_upload_quota.
2015-11-09 19:23:52 +01:00
Holger Weiss
113c315857
mod_http_upload: Apply cosmetic changes
2015-11-09 19:12:08 +01:00
Holger Weiss
842db2ca15
mod_http_upload: Don't flatten command strings
2015-11-09 18:50:45 +01:00
Holger Weiss
9c80cb2b26
mod_http_upload: Don't let identify/1 return error
...
Let identify/1 return 'pass' when it failed to identify the file type,
as this doesn't (necessarily) indicate an error condition. This also
makes it consistent with the return value of convert/2.
2015-11-09 18:41:31 +01:00
Paweł Chmielowski
58c1bc4276
Use xml_stream:reset() when possible
2015-11-09 16:05:09 +01:00
Christophe Romain
341be9b682
Remove supervisor option, disable it for c2s and muc
2015-11-04 16:24:35 +01:00
Holger Weiss
fec7e47169
Add copyright and license to HTTP upload modules
2015-11-04 01:22:39 +01:00
Holger Weiss
46bf190fd0
mod_client_state: Add my email address to header
2015-11-04 01:19:19 +01:00
Paweł Chmielowski
e54e543a66
Faster string_to_jid/1 implementation
...
This version is about 10-15% faster than old one
2015-11-03 14:41:01 +01:00
Holger Weiss
ff46738218
mod_http_upload_quota: Omit info message
...
The mod_http_upload_quota module attempts to delete a directory whenever
it removes a file from that directory. However, if thumbnail creation
is enabled, directories will often contain two files. Therefore, don't
log an info (but only a debug) message if directory removal fails.
2015-11-03 00:00:44 +01:00
Holger Weiss
4566325241
mod_http_upload: Don't complain during shutdown
...
Ignore the case where, for some reason, no process is found to be
stopped.
Closes #810 .
2015-11-02 23:46:58 +01:00
Holger Weiss
1b368a86b7
mod_http_upload: Use binary strings in most places
...
Switch to binary strings to fix a type issue, and for consistency.
Closes #808 .
2015-11-02 23:46:31 +01:00
Holger Weiss
9d2f1d5f0d
mod_http_upload: Check availability of ImageMagick
...
Log an error message during startup if the thumbnail option is enabled
but ImageMagick is not installed.
2015-11-02 01:12:10 +01:00
Holger Weiss
eeb705fc2f
mod_http_upload: Suppress error on non-image files
...
Don't log an error (but only a debug) message if ImageMagick fails to
indentify the file type for thumbnail creation. The image might be
encrypted, or it could be a non-image file.
Closes #809 .
2015-11-01 23:29:22 +01:00
Evgeniy Khramtsov
8bff06bea9
Merge branch 'master' of github.com:processone/ejabberd
2015-10-30 17:20:50 +03:00
Evgeniy Khramtsov
99f506135b
Fix ipv6 configuration processing ( #803 )
2015-10-30 17:20:32 +03:00
Holger Weiss
915383e150
mod_http_upload: Add missing trailing dot
...
(Thanks to Matthias Rieber.)
2015-10-29 10:09:55 +01:00
Holger Weiss
43e7814714
mod_mam: Update supported XEP version
2015-10-28 23:53:53 +01:00
Holger Weiss
32fe74c923
mod_http_upload: Document protocol support
2015-10-28 23:52:33 +01:00
Holger Weiss
62ea763089
mod_http_upload: Fix string()/binary() type issue
2015-10-26 22:32:12 +01:00
Holger Weiss
3e7ee6af6d
mod_http_upload: Add/fix function specifications
2015-10-26 22:30:58 +01:00
Holger Weiss
b5a09f8b15
mod_http_upload: Strip newline from command output
...
The list_to_integer/1 function doesn't cope with trailing newline
characters.
2015-10-26 22:10:32 +01:00
Holger Weiss
5dfd95e5a7
Support user quotas for HTTP File Upload
...
mod_http_upload_quota implements two features:
- When a "hard quota" is exceeded during a file upload, old files are
removed until the disk usage equals or falls below the "soft quota".
- Once a day, all uploaded files (and directories) older than a
configurable number of days are deleted.
2015-10-26 13:10:10 +01:00
Evgeniy Khramtsov
6f2e178de1
Rename badly entitled record field
2015-10-26 15:05:28 +03:00
Evgeniy Khramtsov
137a4ee087
Add HTTP File Upload support (XEP-0363)
2015-10-26 14:10:55 +03:00
Evgeniy Khramtsov
b2eb9f197a
Don't crash on certificates without extensions (EJAB-1724)
2015-10-23 18:41:35 +03:00
Christophe Romain
2a115a83d2
Let modules_update_specs report failures ( #756 )
2015-10-23 17:21:19 +02:00
colm
d048d1e619
mod_ping: allowed the ping ack timeout (the length of time taken to deem that a ping has not being responded to) configurable. it still defaults to 32 seconds as per the constant IQ_TIMEOUT (in ejabberd_local.erl) this just makes it optionally configurable (in my case I needed to be more trigger happy than 32 seconds)
2015-10-22 13:48:40 +01:00
Christophe Romain
efdf5636be
Add simple metrics module for use with grapherl
2015-10-22 14:02:26 +02:00
colm
92b9fb30e0
Don't send full JID in 'from' of Roster Push (RFC 6121 section 2.1.6). This is a patch by @badlop in the comments of github issue #367
2015-10-21 23:22:53 +01:00
Badlop
c62bd0c911
Use homogeneous s2s connections stats ( #761 )
2015-10-21 12:51:22 +02:00
Alexey Shchepin
8a2fa62cac
Remove access_commands 'unrestricted' option, use [] instead. Fix unauthenticated calls to commands with policy=user.
2015-10-20 17:20:13 +03:00
Alexey Shchepin
7c1e7e5b5f
Improve access_commands option backward compatibility
2015-10-19 20:16:04 +03:00
Alexey Shchepin
1f2b7e8f20
Fix access_commands option handling
2015-10-19 18:50:44 +03:00
Holger Weiss
28e28e926a
ejabberd_listener: Fix ETS update on port reuse
2015-10-18 01:14:48 +02:00
Holger Weiss
5e467b96a1
ejabberd_c2s: Let stop/1 close XEP-0198 sessions
...
The stop/1 function now terminates stream management sessions
immediately, just as it does for other sessions. The new
ejabberd_c2s:close/1 function can be used to close the socket without
terminating the stream management session, like stop/1 did before.
2015-10-17 23:15:31 +02:00
Holger Weiss
53bd0ee818
ejabberd_c2s: Close socket when waiting for resume
...
Make sure the socket is closed when mod_ping calls ejabberd_c2s:stop/1
for an XEP-0198 session.
2015-10-17 22:07:29 +02:00
Paweł Chmielowski
7d99484859
Make KEEPALIVE_QUERY list as this is what sql_query/3 expects
2015-10-15 10:07:24 +02:00
Alexey Shchepin
4fce1a17d7
Fix cyrsasl_oauth:mech_new call
2015-10-12 20:53:52 +03:00
Evgeniy Khramtsov
87273619a6
Advertise MAM (XEP-0313) v0.4 support in room disco
2015-10-11 19:43:24 +03:00
Paweł Chmielowski
b5ac0db895
Be able to merge old style configs with {listen,...}
2015-10-08 13:07:00 +02:00
Paweł Chmielowski
6d25db6600
Handler module shouldn't be used for differentiating listeners when merging configs
2015-10-07 16:45:07 +02:00
Christophe Romain
880114a909
Enforce get_allowed_items_call
2015-10-07 16:40:37 +02:00
Christophe Romain
653105a44f
Fix acl issue from cleanup
2015-10-07 15:12:15 +02:00
Christophe Romain
f938c2a5e2
Revert "Avoid crypto:hmac/3 call for R15B compatibility"
...
This reverts commit 31e356c126
.
2015-10-07 14:18:56 +02:00
Christophe Romain
6a23cad454
Revert "Fix compilation on Erlang R15B"
...
This reverts commit a5d6044448
.
2015-10-07 14:18:47 +02:00
Christophe Romain
6aeb9dcb38
cosmetic cleanup
2015-10-07 14:18:38 +02:00
Evgeniy Khramtsov
6378c673df
Avoid MAM dups when routing to multiple resources
2015-10-02 16:09:55 +02:00
Evgeniy Khramtsov
c7750689e8
Fix force_update_presence
2015-10-02 16:06:47 +02:00
Paweł Chmielowski
24fa95fd60
Fix problem with --auth in ejabberd_ctl:process2/2
2015-10-01 21:09:03 +02:00
Paweł Chmielowski
67d3b50598
Switch macros resolving in config files to be global instead of per file
2015-10-01 14:34:48 +02:00
Alexey Shchepin
cf975da8f2
Update several commands for recent ejabberd_commands changes
2015-09-28 15:29:25 +03:00
Alexey Shchepin
88a206400a
Add oauth_access option
2015-09-25 19:48:53 +03:00
Badlop
1781a58929
Strip Nick element in message stanzas sent to a room ( #686 )
2015-09-25 17:00:00 +02:00
Christophe Romain
a1129dc96b
Add OAuth support (thanks to Aleksey)
2015-09-25 15:49:07 +02:00
Badlop
ee456cc2af
Fix regression introduced when code was binarized (EJAB-641)
2015-09-24 17:21:14 +02:00
Holger Weiss
484fd1f51f
Log TLS errors as [debug] messages only
...
Closes #652 and closes #679 .
2015-09-24 12:00:59 +02:00
Evgeniy Khramtsov
89b3471742
Add <stanza-id/> (XEP-0359) to archived messages
2015-09-22 21:15:34 +03:00
Paweł Chmielowski
e289344972
Nameprep host name passed to http-bind before using in (EJAB-1658)
2015-09-22 15:42:57 +02:00
Christophe Romain
23a1aceac0
Improve external module configuration management (EJAB-1746)
2015-09-22 12:49:55 +02:00
Evgeniy Khramtsov
70b1dc479c
Add MAM (XEP-0313) v0.4 support
2015-09-22 12:23:36 +03:00
Jerome Sautret
df3862cf84
Add set_loglevel command (EJABS-2524)
2015-09-21 17:07:44 +02:00
Christophe Romain
497cbb3ec2
Merge branch 'master' of github.com:processone/ejabberd
2015-09-18 09:06:51 +02:00
Christophe Romain
ec1969ddca
Remove unused functions from old get_items api
2015-09-17 18:00:17 +02:00
Paweł Chmielowski
f6b892b366
Guard against passing undefined C2SPid to xml parser before become_controller gets called
...
Our new nif xml parser don't handle this gracefully, so we better don't
call it that way.
This is only triggered on old style ssl sockets, where ssl layer must
be activated early, before association between socket and c2s is
established
2015-09-17 11:37:01 +02:00
Holger Weiss
4a4065c9c6
Let BOSH/WebSocket support "max_resume_timeout"
...
Allow for specifying the "max_resume_timeout" option in an ejabberd_http
listener for ejabberd_http_bind and/or ejabberd_http_ws.
2015-09-17 00:33:08 +02:00
Quan Zhuo
ae51277316
Comment unused type, unused term
2015-09-16 22:52:36 +08:00
Paweł Chmielowski
5593ebbbca
Properly handle define_macros in merged config files
2015-09-16 12:20:07 +02:00
Holger Weiss
59321ac56e
XEP-0198: Improve handling of non-message stanzas
...
When an XEP-0198 session times out, always return an error for
unacknowledged IQ stanzas, and always drop presence stanzas. That is,
the "resend_on_timeout" option no longer applies to those stanzas types,
but only to messages.
2015-09-15 22:42:22 +02:00
Evgeniy Khramtsov
fc7d3a44b8
Simplify MSSQL configuration
2015-09-13 18:34:10 +03:00
Evgeniy Khramtsov
25791cfde8
Fix MSSQL support
2015-09-13 18:31:49 +03:00
Christophe Romain
48c5e73321
ext_mod must be started before ejabberd_config
2015-09-11 15:14:12 +02:00
Badlop
a50f00f9e8
Include ext_mod modules when checking accepted options (ejabberd-contrib#116)
2015-09-10 20:11:02 +02:00
Paweł Chmielowski
f56a9e400d
Pass stream management options defined in http listener to http-bind and websocket
2015-09-04 12:42:53 +02:00
Holger Weiss
5095fdb6b0
New XEP-0198 option: "max_resume_timeout"
...
In the past, the "resume_timeout" option defined both the default resume
timeout and the maximum resume timeout clients are permitted to request.
Admins might want to allow clients to request a timeout value that's
larger than the default, though. This can now be done by specifying the
"max_resume_timeout" option.
2015-09-03 21:20:15 +02:00
Badlop
8d1ea87e02
Use hide_sensitive_log_data in eldap.erl
2015-09-03 16:28:21 +02:00
Evgeniy Khramtsov
6740b1f0e1
Rename idna.erl to ejabberd_idna.erl ( #702 )
2015-09-02 16:02:46 +03:00
Badlop
1bc2c8cbb1
Add verification of hide_sensitive_log_data global option
2015-09-02 13:46:03 +02:00
Evgeniy Khramtsov
eebd4bbd8f
Remove unused function now_to_iso/1
2015-09-02 14:13:23 +03:00
Evgeniy Khramtsov
14ddbce3a9
Do not forget to set from/to when fetching from MUC history
2015-09-01 12:35:51 +03:00
Paweł Chmielowski
e24bfe7b62
Fix problem with merging same port, different ip listeners in config files
...
Also switch to function used by ejabberd_listener to extract that
information instead of rolling our own code for that.
2015-09-01 10:57:48 +02:00
Evgeniy Khramtsov
190f76c676
Fetch MUC MAM messages from room history directly if it's not enabled in room configuration
2015-09-01 11:52:08 +03:00
oxpa
3d5d1ecbe4
get_room_options will not crash in case of query for a non-existent room
2015-08-28 03:34:51 -08:00
Evgeniy Khramtsov
832f6d39f9
Always include RSM in final message
2015-08-24 13:29:15 +03:00
Evgeniy Khramtsov
94444c87e8
Remove MAM archives on MUC room destroy
2015-08-24 13:28:58 +03:00
Badlop
247bd9eae5
More eye-candy mod_http_bind help page (thanks to Marek Foss)
2015-08-21 15:23:15 +02:00
Evgeniy Khramtsov
6177ae3ffb
Improve S2S certificate checks
2015-08-20 01:04:56 +03:00
Evgeniy Khramtsov
b570070834
Fix case clause during S2S certificate checks
2015-08-19 23:47:45 +03:00
Evgeniy Khramtsov
775cf2d459
Change namespace from muc#admin to muc#user
2015-08-19 15:31:35 +03:00
Paweł Chmielowski
6f0ee83317
Don't overwrite listeners for different transports in config merging
...
Before this having listeners on same port for both tcp and udp would after
config merging step left only one of them.
Many thanks to Holger Weiß for noticing this.
2015-08-19 10:14:39 +02:00
Paweł Chmielowski
f89db30d77
Catch errors when calling inet:peername in ejabberd_http
2015-08-17 15:50:35 +02:00
Badlop
ac6b436dcf
Prettify copyright links (thanks to GreenLunar)( #692 )
2015-08-13 12:22:14 +02:00
Badlop
994602c97d
Store and retrieve "mam" value in room configuration
2015-08-12 20:28:23 +02:00
Badlop
279d4b00ac
Fix and document create_rooms_file and destroy_
2015-08-12 17:18:41 +02:00
Badlop
8c9c556f1f
Changed API of some mod_muc_admin command arguments
...
With this commit, arguments change in two commands:
* destroy_room: does not require Host argument
* send_direct_invitation: instead of Room, now requires Name and Service
2015-08-12 13:26:24 +02:00
Badlop
ab0f488dda
Room response to disco#info node muc#traffic should be an error (EJAB-741)
2015-08-12 12:40:51 +02:00
Evgeniy Khramtsov
40feed723d
Add support for MUC MAM
2015-08-08 22:15:36 +03:00
Paweł Chmielowski
c71d57a05d
Handle merging of append_host_config as is done for host_config
2015-08-06 17:53:18 +02:00
Paweł Chmielowski
5a1ac4faf1
Add ability to override main config file options with data from included files
2015-08-06 17:12:15 +02:00
Christophe Romain
45a312a0eb
Remove obsolete pubsub migration command
2015-08-06 16:57:04 +02:00
Matthias Rieber
f5e857a5bd
typo
2015-08-06 08:44:15 +02:00
Alexey Shchepin
4125dfd166
mod_multicast changes:
...
- catch exceptions
- do ets:give_away for multicastp table on init
- don't send multicasts to itself
- don't check user@server for multicast support
- handle empty disco items
- ignore cdata in <addresses/>
- properly check for subdomains
2015-08-05 19:21:28 +03:00
Paweł Chmielowski
3a5dd51b42
Use websocket pings also on old style connections
2015-08-05 16:09:23 +02:00
Christophe Romain
dc0934bff7
Update FSF address
2015-08-05 09:52:54 +02:00
Holger Weiss
c0497d46af
mod_client_state: Throttle stanzas by default
...
Enable the mod_client_state options "drop_chat_states" and
"queue_presence" by default. These features are now well-tested in
practice.
2015-08-05 00:05:11 +02:00
Holger Weiss
13f7be682d
Rename muc_filter_packet to muc_filter_message
...
The hook is just triggered on groupchat messages, not on other types of
stanzas.
2015-08-04 21:16:45 +02:00
Holger Weiss
3d4e8ffac6
New hook: muc_filter_presence
...
Add a hook that allows for modifying or dropping presence stanzas sent
to MUC rooms.
2015-08-04 20:13:00 +02:00
Mickael Remond
e3b7d43b76
Add split_jid/1
...
This is a convenience reverse of make_jid/1. It allows extracting the jid parts
without relying on using the jid record structure, to abstract details.
2015-08-04 09:48:59 +02:00
Evgeniy Khramtsov
f377992232
Do not crash SIP authentication on SCRAMed passwords
2015-08-02 14:47:45 +03:00
wcy123
3e49bf0e83
bug fix: ejabberd:start_app need to pass Type to application:start
2015-07-30 18:57:59 +08:00
Holger Weiss
04094b3dcf
Don't copy messages of type "normal" without body
...
Don't carbon-copy messages of type "normal" that don't have a body
element as an immediate subtag. Those messages are usually generated by
clients or servers (as opposed to messages written by humans). This
includes MAM messages, for example.
2015-07-28 21:34:02 +02:00
Holger Weiss
8fe930c3d1
Also check for <no-storage/> hint
...
Check for the <no-storage/> and <no-permanent-storage/> hints in
addition to <no-store/> and <no-permanent-store/>. XEP-0334 (0.1)
mentions both variants, and unfortunately, both of them are in use.
2015-07-28 21:08:33 +02:00
Holger Weiss
1048e21643
XEP-0198: Don't add <delay/> tags to IQ stanzas
2015-07-28 21:00:12 +02:00
Badlop
d03d08539b
Reuse some strings in WebAdmin's Listening Ports
2015-07-27 11:40:56 +02:00
Paweł Chmielowski
76104cd117
Fix problem with merging values from multiple config files
2015-07-24 15:46:08 +02:00
Christophe Romain
e211bf7131
Ensure config snippet is loaded at module installation (EJAB-1741)
2015-07-24 15:09:57 +02:00
Christophe Romain
32fc586c08
Allow contribution to include .yml or .yaml config file
2015-07-24 14:30:31 +02:00
Christophe Romain
8fedc945bf
Allow migration of old pubsub items with xmlelement in body ( #479 )
2015-07-24 13:44:01 +02:00
Christophe Romain
d481017746
Merge pull request #642 from weiss/pep-on-caps-update
...
Also send PEP notifications when local contact updates CAPS
2015-07-24 12:07:22 +02:00
Badlop
19aad464da
Provide command for ODBC's convert_to_scram
2015-07-23 13:16:15 +02:00
Paweł Chmielowski
8df134e025
Don't crash web admin when displaying info about websocket using users
2015-07-22 11:54:11 +02:00
Christophe Romain
9091fcb1a1
Let nodetree call default flat plugin now
...
this fix mistake from previous commit 311fedaa
2015-07-22 11:20:06 +02:00
Christophe Romain
9aa2d92d90
Allow include of simple dependencies (EJAB-1737)( #391 )
...
Either contributed module include dependencies this way
deps/
dep1/
src/
include/
dep1/
src/
include/
Or includes rebar.config or rebar.config.script:
In this case, only git is supported (if git command available)
and ext_mod checkout code in deps directory.
In both case, only basic built procedure is supported. ext_mod
does not do more than bare compilation like this:
erlc -I include src/*erl
2015-07-22 10:48:44 +02:00
Christophe Romain
311fedaa12
Let flat be default plugin ( #609 )
2015-07-22 10:37:26 +02:00
Christophe Romain
9c36a9df78
Do not init nodes from mod_pubsub ( #609 )
...
Let each plugin do its own initialisation in init_plugins
init_nodes was an old function to be removed.
2015-07-22 08:03:27 +02:00
Christophe Romain
b47a27f3ac
Merge pull request #608 from weiss/bare-jid-subscription
...
PubSub: Check for node subscription of bare JID
2015-07-22 07:58:34 +02:00
Evgeny Khramtsov
531638e946
Merge pull request #632 from weiss/increase-max-ack-queue
...
XEP-0198: Increase default value of "max_ack_queue" option
2015-07-21 12:36:01 +03:00
Evgeny Khramtsov
a724893887
Merge pull request #618 from weiss/muc-message-hook
...
New hook: muc_filter_packet
2015-07-21 12:35:27 +03:00
Evgeniy Khramtsov
7f4c74dec9
Print content types more gracefully
2015-07-17 14:29:11 +03:00
Badlop
7395cc910e
Set direction of resource and connection ( #650 )
2015-07-15 21:39:13 +02:00
Badlop
c53d764119
If local guide.html file not found, redirect to the online guide
2015-07-15 20:45:55 +02:00
Badlop
3eb0b161b2
Update links to Guide in WebAdmin
2015-07-15 20:40:13 +02:00
Badlop
65551afcba
Support RTL page direction in WebAdmin for Hebrew ( #650 )
2015-07-15 19:01:32 +02:00
Badlop
f4376671ac
Set LTR direction to Raw links ( #650 )
2015-07-15 18:51:31 +02:00
Badlop
c012d7555b
Add links in WebAdmin to ejabberd and ProcessOne ( #661 )
2015-07-15 13:10:12 +02:00
Badlop
9ede414f01
Support more mod_muc_admin translation strings ( #659 )
2015-07-15 11:54:35 +02:00
Evgeniy Khramtsov
a53191fed5
Add "complete" attribute to MAM final response (EJABS-2484)
2015-07-10 14:05:47 +03:00
Evgeniy Khramtsov
8e27decdfd
Fix mod_mam compatibility with RSM for other backends
2015-07-10 13:59:33 +03:00
Evgeniy Khramtsov
0dfc8ade68
Fix tests related to MAM
2015-07-10 13:57:27 +03:00
Jerome Sautret
1db65e3614
Fix mod_mam compatibility with RSM (only with odbc backend).
2015-07-10 13:56:33 +03:00
Evgeniy Khramtsov
a168340838
During halt only shutdown MUC rooms on local node
2015-07-08 15:35:26 +03:00
Jerome Sautret
2598375051
Changed mam iq get to set as specified by XEP-0313 v0.3
2015-07-08 13:15:14 +03:00
Holger Weiss
0f96414279
Trigger PEP notifications on CAPS updates
...
Let mod_pubsub send last items whenever a contact updates the entity
capabilities. This was already done for remote contacts and is now also
done for local contacts.
2015-07-07 09:33:00 +02:00
Holger Weiss
edb18deb8f
mod_pubsub: Explain caps_update usage in a comment
...
The reason to use the caps_update hook for sending last items to remote
contacts is probably not obvious.
2015-07-06 23:45:25 +02:00
Mickael Remond
0770252e9b
Fix dialyzer warning
...
The function is call with binary format from ejabberd_c2s.
2015-07-05 13:33:34 +02:00
Holger Weiss
b7d7dc5201
XEP-0198: Increase timeout during resumption
...
Give gen_fsm:sync_send_all_state_event/3 a little more time to transfer
the (possibly somewhat large) c2s #state during session resumption.
2015-07-03 11:35:22 +02:00
Holger Weiss
5856f6d06a
XEP-0198: Increase default "max_ack_queue" value
...
During login, clients might receive a relatively large number of stanzas
in one go. For some users, the default value of the "max_ack_queue"
option turned out to be too small in that situation.
2015-07-03 11:35:22 +02:00
Holger Weiss
a25051fead
New hook: muc_filter_packet
...
Add a hook that allows for modifying or dropping MUC room messages.
Closes #491 .
2015-07-03 11:34:44 +02:00
Holger Weiss
4045c848c4
Send notifications on MUC configuration changes
...
Notify clients when the room configuration changes, as mandated by
XEP-0045, #10.2.1.
Closes #623 .
2015-07-02 00:36:16 +02:00
Evgeniy Khramtsov
3c12d1a960
Do not rely on behaviour info when doing config validation
2015-06-29 22:50:34 +03:00
Holger Weiss
7c7e51b6e8
Omit warning message regarding non-anonymous room
...
Previous versions of XEP-0045 suggested sending a warning message to new
occupants of a non-anonymous MUC room. The current revision (1.25) says
that a status code of "100" must be returned with the user's initial
presence, instead. We already do this (in addition to generating the
warning message).
Receiving the warning message each time the client joins the room can
become annoying, especially when reconnections occur frequently (e.g.,
on mobile devices). So, we omit it, now.
2015-06-28 14:05:55 +02:00
Badlop
4ae1b4db03
When passwords are scrammed, report check_password_hash cannot work ( #559 )
2015-06-25 13:39:45 +02:00
Badlop
72f35a6dc6
Add xep definition to mod_mam
2015-06-24 11:58:37 +02:00
Evgeniy Khramtsov
83cce468a5
Add MAM (XEP-0313) support
2015-06-22 16:56:08 +03:00
Badlop
6631078884
Document a few more supported protocols
2015-06-22 13:11:37 +02:00
Holger Weiss
fc0754c609
Add s2s_dhfile to list of known options
2015-06-20 00:14:54 +02:00
Holger Weiss
73a0fb418c
Update comment that explains how to set up node_mb
...
Specify settings that make sense with current ejabberd versions, and use
the YAML configuration format. Also, specify the "urn:xmpp:microblog:0"
namespace, as that's the microblogging node name currently defined by
XEP-0277.
2015-06-19 23:13:36 +02:00
Holger Weiss
04038c01f7
PubSub: Check for node subscription of bare JID
...
Don't just check whether the full JID is subscribed when a node
subscription is required to list or publish items. If the bare JID is
subscribed, these requests are now also accepted.
2015-06-19 00:50:08 +02:00
Badlop
36a96ae3f5
change_room_option misses handling some room options #604
2015-06-18 13:13:49 +02:00
Christophe Romain
d528457ba5
Don't force persistence if cache enabled (fix previous commit)
2015-06-18 12:54:46 +02:00
Christophe Romain
e5a98b100d
Fix max_items and don't let PEP depends on item cache
2015-06-18 12:06:29 +02:00
Badlop
1cf2dfe63a
New hide_sensitive_log_data option to hide client IP in log ( #452 #471 )
2015-06-17 11:32:42 +02:00
Holger Weiss
e608274243
Add s2s_dhfile option to configuration validator
2015-06-16 15:18:34 +02:00
Alexey Shchepin
2110b929bc
Merge pull request #581 from weiss/dh-param-file
...
New options: dhfile and s2s_dhfile
2015-06-16 11:59:06 +03:00
Paweł Chmielowski
dcf5aefea0
Add option to set net_ticktime (EJAB-1742)
2015-06-15 14:57:07 +02:00
Badlop
357ff6c8f7
Fix bug introduced in commit b88fa6f617
2015-06-04 15:47:02 +02:00
Badlop
fe10c6f6f2
Pick first local multicast service, otherwise remote (ejabberd-contrib#105)
2015-06-04 12:13:10 +02:00
Holger Weiss
6c712b6caa
Don't add body element to MUC subject messages
2015-06-04 09:55:38 +02:00
jpegger
6f48f22c71
Authmodule using old style XML:get_attr_s()
2015-06-03 18:11:35 +02:00
Evgeniy Khramtsov
9a9633dbc5
Do not ignore unknown options so far
2015-06-03 16:21:22 +03:00
Evgeniy Khramtsov
c1119b1f39
Remove unused validation code
2015-06-03 16:05:17 +03:00
Evgeniy Khramtsov
ab196b4b02
Move opt_type/1 function out of if-else block
2015-06-03 15:52:19 +03:00
Evgeniy Khramtsov
730fd55ec9
Fix typo
2015-06-03 15:45:15 +03:00
Evgeniy Khramtsov
0ae9ef2b41
Add missing options of ejabberd_logger to validator
2015-06-03 15:25:20 +03:00
Evgeniy Khramtsov
83faff37e5
Add missing options of mod_muc to validator
2015-06-03 15:18:09 +03:00
Badlop
4ed6a3d78f
Fix commands export2odbc, connected_users_vhost and push_alltoall ( #586 )
2015-06-02 12:52:15 +02:00
badlop
0de7864880
Merge pull request #585 from CorCornelisse/master
...
push_roster* not updated on binarification
2015-06-02 12:24:46 +02:00
Evgeniy Khramtsov
157ff4d093
Merge branch 'master' of github.com:processone/ejabberd
2015-06-01 15:38:37 +03:00
Evgeniy Khramtsov
fb6267f38e
Add config validation at startup
2015-06-01 15:38:27 +03:00
Badlop
9a802185ad
Fix anonymous user login, it wasn't stored in anonymous mnesia table
2015-06-01 14:34:49 +02:00
Evgeniy Khramtsov
a9f7d9481f
Do not try to fetch module options via eldap_utils
2015-06-01 15:22:31 +03:00
Evgeniy Khramtsov
ea7de2097f
Reorganize get_opt() code in some modules
2015-06-01 15:20:49 +03:00
Evgeniy Khramtsov
48213b09ce
Get rid of some fuzzy macros as it makes syntax tools getting mad
2015-06-01 15:19:56 +03:00
Cor Cornelisse
22d9011c0c
These arguments should be binary instead of strings, otherwise it won't work properly
2015-06-01 13:30:26 +02:00
Badlop
100827ec6e
In xmlrpc use process_unicode_codepoints instead of list_to_binary
2015-05-29 15:49:12 +02:00
Evgeniy Khramtsov
a291e7d4e6
Fix MUC room options vaildation
2015-05-29 12:08:36 +03:00
Evgeniy Khramtsov
e8ffbbb0b4
Validate MUC room options from the configuration file
2015-05-28 11:42:17 +03:00
Badlop
d0443bb714
An auth external module requires ext_mod to be started first ( #578 )
2015-05-27 13:10:15 +02:00
Holger Weiss
5585fb1ecf
New options: dhfile and s2s_dhfile
...
Let admins specify a file that contains custom parameters for
Diffie-Hellman key exchange.
2015-05-26 21:06:04 +02:00
Christophe Romain
b83c07251c
Fix pubsub/odbc crash on remote user unsubscribe (EJAB-1483)
2015-05-26 19:19:57 +02:00
Alexey Shchepin
b2f98099bb
Merge pull request #569 from weiss/send-element-error-checking
...
Update send_element error checking (EJAB-1739)
2015-05-26 15:59:50 +03:00
Mickael Remond
9574e71e8d
Include session record from header file instead of duplicating it
2015-05-26 10:08:46 +02:00
Paweł Chmielowski
3af507cc43
Fix merging of not yaml config files
2015-05-25 15:37:46 +02:00
Christophe Romain
e54e556e01
Fix use of publish_only affiliation with odbc backend
2015-05-22 18:47:17 +02:00
Badlop
b07cb1ed84
Use namespace definitions when possible
2015-05-21 17:04:14 +02:00
Badlop
0c725b5fac
Document protocol support (EJABS-1620)
2015-05-21 17:04:05 +02:00
badlop
b04f3a4c93
Merge pull request #573 from sezuan/fix_odbc
...
Fix some string/binary issues with non-native ODBC drivers
2015-05-21 11:31:47 +02:00
Holger Weiss
889459b45c
Fix function specification
2015-05-20 12:13:15 +02:00
Evgeniy Khramtsov
3b267eaa61
Do not bounce normal messages sent to unavailable resource
2015-05-19 10:58:36 +03:00
Holger Weiss
fba13a0b93
Simplify XEP-0203 (Delayed Delivery) code a bit
...
Now that XEP-0091 support is removed, the XEP-0203 code can be
simplified a little further. This doesn't change the behavior.
2015-05-18 21:26:51 +02:00
Christophe Romain
8bb994dbca
Call integer_to_binary using jlib ( #554 )
2015-05-18 17:30:25 +02:00
Badlop
2af659b737
Remove deprecated XEP-0090 Entity Time and 91 Delayed Delivery (EJAB-849)
2015-05-18 12:38:25 +02:00
Matthias Rieber
16532dd643
Fixed some string()/binary() issues in ejabberd_odbc
2015-05-18 12:14:56 +02:00
Matthias Rieber
f5c9dfbc93
fixed erl_prettypr in encode_term
2015-05-17 19:37:49 +02:00
Badlop
084d0c4efe
New command get_room_options ( #567 )
2015-05-15 17:47:10 +02:00
Holger Weiss
61afd668c2
Fix indentation
2015-05-15 15:50:43 +02:00
Paweł Chmielowski
de7ff536b2
Load config snippets for modules installed with ext_mod (EJAB-1741)
2015-05-15 12:30:15 +02:00
Paweł Chmielowski
5dbe7a3c6c
Export modules_dir/0
2015-05-15 12:27:59 +02:00
Holger Weiss
6efce7f706
Cosmetic change: Simplify error checking
...
Let send_stanza_and_ack_req/2 update the #state instead of propagating
the value returned by send_element/2. This doesn't change the behavior.
2015-05-14 01:04:23 +02:00
Holger Weiss
42c7205739
Don't assume send_element/2 returns ok or error
...
Let send_text/2 and (therefore) send_element/2 return {error, Reason}
instead of error for consistency, and let send_stanza_and_ack_req/2
interpret any non-ok value as an error. (EJAB-1739)
2015-05-14 00:58:36 +02:00
Badlop
d885435552
Fix setting 'description' with change_room_option command ( #567 )
2015-05-12 17:37:39 +02:00
Badlop
f817762cc4
New max_users_presence mod_muc option (thanks to anhcoi123)( #562 )
2015-05-08 13:09:25 +02:00
Badlop
25beb46391
Fix check_password_hash argument parsing ( #559 )
2015-05-08 12:04:04 +02:00
Badlop
7ab6c4b4fd
Try to support access_commands in YAML (ejabberd-contrib#45)
2015-05-07 18:34:05 +02:00
Badlop
b0b004b26e
Revert "Add private and roster local handlers (EJAB-682)" due to #556
...
This reverts commit 2e194bd997
.
2015-05-07 17:07:49 +02:00
Badlop
f7d9bb7ce4
Don't announce register feature once user is authenticated ( #41 )
2015-05-07 11:41:59 +02:00
Ben Langfeld
917d48f30b
Use SASL PLAIN authzid as client identity if auth module permits it
...
This allows the authentication modules to perform SASL proxy authentication. It puts the onus on them to authorize the authcid to masquerade as the authzid. Doesn't currently implement such functionality in existing auth modules, since they cannot currently codify a relationship between the two identities. Does not permit the authzid to use a domain differently from the one of the connection.
Note: digest might not work, but I have no interest in it, being deprecated.
2015-05-06 14:12:15 -03:00
Ben Langfeld
d9814709e2
Remove commented code
2015-05-06 12:55:35 -03:00
Holger Weiss
7297b23508
Tag private MUC messages with muc#user namespace
...
Make it possible for clients to identify private MUC messages. One use
case would be to filter out undesired carbon copies of those.
2015-05-05 22:00:05 +02:00
Badlop
fa99519f8b
Simplify internal code of get_last and set_last commands
2015-05-05 12:54:20 +02:00
Badlop
96c62acb1b
Improve get_last command to provide also last activity status
2015-05-05 12:46:21 +02:00
Badlop
77e57afae1
Fix set_last command to work with recent ejabberd ( #555 )
2015-05-05 12:45:53 +02:00
Evgeniy Khramtsov
60fe008268
Remove duplicated code
2015-04-29 14:51:45 +03:00
Christophe Romain
6987e85602
Improve module install code, allows better error checking
2015-04-29 13:30:03 +02:00
Badlop
7492ecae52
New command get_user_rooms
2015-04-29 13:22:49 +02:00
Christophe Romain
4440b03b89
Fix fetching from git@github url and allow compilation from ejabberd sources
2015-04-29 10:19:15 +02:00
badlop
6f99775115
Merge pull request #547 from weiss/fix-account-jid-disco
...
Fix service discovery handling for account JIDs
2015-04-27 19:39:32 +02:00
Badlop
987e337c66
Rely on core routine for handling affiliation changes (thanks to Ben Langfeld)
...
This ensures that all of the usual stanzas and such go out
2015-04-27 17:00:22 +02:00
Holger Weiss
dc449687a0
mod_disco: Apply minor readability improvements
2015-04-26 16:36:17 +02:00
Holger Weiss
0edba763fb
mod_disco: Omit 'roster_get' call if possible
...
As a small optimization, avoid running the 'roster_get' hook in the
(common) case where a client requests service discovery information for
its own bare JID.
2015-04-26 16:32:03 +02:00
Holger Weiss
50f35f1b07
Fix service disco handling for bare account JIDs
...
Don't swap the sending and receiving JIDs while checking whether the
client that requested service discovery information for a bare account
JID is a subscribed contact.
2015-04-26 16:22:09 +02:00
Evgeniy Khramtsov
9c85cb5f25
Fix validating function for iqdisc
2015-04-23 14:59:18 +03:00
Christophe Romain
38dd44e18f
Improve purge_offline filter and speed ( #543 )
2015-04-22 18:11:39 +02:00
Badlop
2e194bd997
Add private and roster local handlers to get listed in disco#info (EJAB-682)
2015-04-22 13:27:25 +02:00
Badlop
e280de8452
Allow to modify host when registering account in web ( #291 )
2015-04-22 11:01:47 +02:00
Christophe Romain
6e4d6caebf
Add support for publish-only ( #30 )
2015-04-21 17:23:59 +02:00
Christophe Romain
cf37f3977a
Fix typo, oups...
2015-04-21 16:13:23 +02:00
Christophe Romain
61f80396da
remove deferred Collection shim header
2015-04-21 16:11:00 +02:00
Christophe Romain
cbd45974e2
Owner can subscribe to its node ( #454 )
2015-04-21 15:24:31 +02:00
Christophe Romain
747d25b4ad
Fixed node type (thanks to saczawap) ( #435 )
2015-04-21 15:24:24 +02:00
Christophe Romain
e0563e3918
PubSub improvements
...
This commit contains
- code cleanup
- use of db_type instead of old mod_pubsub_odbc
- some minor optimizations
- some minor bugfixes
2015-04-21 15:24:16 +02:00
Christophe Romain
28090a3958
Merge pull request #540 from weiss/queue-error-stanza
...
Add privacy error stanza to XEP-0198 queue
2015-04-21 11:19:49 +02:00
Evgeniy Khramtsov
ed79a61752
Fix LDAP substrings filter (EJAB-1715)
2015-04-21 11:49:41 +03:00
Holger Weiss
94936b261e
Add privacy error stanza to XEP-0198 queue
2015-04-20 22:03:18 +02:00
Alexey Shchepin
fd54181435
Fixed error replying on blocked messages
2015-04-20 17:19:09 +03:00
Badlop
c2e6ce0f04
Remove load_config command because is superseded by reload_config ( #532 )
2015-04-20 15:57:44 +02:00
Evgeny Khramtsov
837706e9d9
Merge pull request #536 from weiss/fail2ban-whitelist
...
Add mod_fail2ban option to whitelist IP addresses
2015-04-18 12:28:36 +03:00
Holger Weiss
aa36742a40
mod_fail2ban: Add 'access' option for whitelisting
...
Closes #535 .
2015-04-18 11:08:05 +02:00
Holger Weiss
c01940f33c
cyrsasl_scram: Return user name with error message
...
Let ejabberd_c2s run the 'c2s_auth_result' hook (which needs the user
name) on SCRAM authentication failure.
2015-04-17 20:21:11 +02:00
Holger Weiss
afdc269825
ejabberd_s2s_out: Remove Erlang/OTP version check
...
The version check won't work for Erlang/OTP >= 17; and it's no longer
needed, as we don't support versions older than R16 anyway.
2015-04-16 23:51:16 +02:00
Badlop
d624753410
Update get_password_s description with SCRAM return values
2015-04-15 11:51:34 +02:00
Badlop
a5adaf5798
Revert "Hook on group message"
...
This reverts commit b81250d667
.
2015-04-15 11:51:29 +02:00
badlop
31c5775025
Merge pull request #426 from hairyhum/master
...
Migration of scram passwords with piefxis (riak and internal only)
2015-04-15 11:04:29 +02:00
Paweł Chmielowski
ba69c469b5
Remove http_poll module
...
For couple years browsers did limit ability to change cookies from js
for different domains, this made http_poll connections practically not
usuable. I don't think this module is used at all so it's time to put it
to rest.
2015-04-15 10:47:10 +02:00
Holger Weiss
e408276283
Don't forget gen_tcp:listen/2 options
...
Fixes #530 .
2015-04-14 20:22:34 +02:00
Badlop
b67af5e036
Fix nick logging in mod_muc_log plaintext ( #522 )
2015-04-14 15:46:59 +02:00
Badlop
25449a076f
Clean multicast routing code detected by xref
2015-04-10 16:02:45 +02:00
Paweł Chmielowski
8732817c3c
Fix problem with pushing bufferend #xmlel-s to receiver in websocket code
2015-04-09 13:35:37 +02:00
Badlop
f129c6530c
Fix bug when sorting the list of rooms in WebAdmin
2015-04-08 15:34:08 +02:00
Evgeniy Khramtsov
32b60d4250
Remove hack with binary to integer conversion
2015-04-08 16:11:06 +03:00
Evgeniy Khramtsov
7a89dda816
Merge branch 'master' of github.com:processone/ejabberd
2015-04-08 15:31:41 +03:00
Evgeniy Khramtsov
9b4942890d
Add virtual host support for SQLite
2015-04-08 15:31:28 +03:00
Badlop
0cf8d1fa6e
Copy multicast code from ejabberd-contrib to provide XEP-0033 ( #521 )
2015-04-08 14:01:16 +02:00
Evgeniy Khramtsov
675c428f21
Disable awkward trap_exit flag
2015-04-08 14:40:28 +03:00
Evgeniy Khramtsov
bdedcf8d8a
Enable FOREIGN KEYS by default
2015-04-08 14:39:47 +03:00
Evgeniy Khramtsov
2a3a2d9804
Make sure SQLite always returns binaries
2015-04-08 14:38:04 +03:00
Evgeny Khramtsov
5a820aca40
Merge pull request #486 from saa/sqlite_support
...
Add SQLite support
2015-04-08 14:34:56 +03:00
Jerome Sautret
c3280e9dad
Add mod_muc_admin contrib.
2015-04-07 17:05:43 +02:00
Holger Weiss
0fd4984c23
ejabberd_listener: Remove Erlang/OTP version check
...
We don't support Erlang/OTP versions older than R16 anyway.
2015-04-07 09:47:05 +02:00
Evgeny Khramtsov
b81b0d0be9
Merge pull request #518 from liudanking/master
...
fix otp version check in ejabberd_listener.erl listen_tcp/5
2015-04-07 10:34:18 +03:00
Mickael Remond
c140f98276
Explicitly start crypto with start
...
This is to please Elixir / Phoenix enviroment
2015-04-07 09:03:37 +02:00
liudan
f981a53f9a
fix otp version check in listen_tcp/5
2015-04-07 09:28:35 +08:00
Holger Weiss
2a94c68724
Don't call send_element/2 if previous call failed
...
Be sure not to try sending data over a TCP socket that is no longer
usable.
2015-04-06 22:34:48 +02:00
Paweł Chmielowski
81b0643036
Fix problem with c2s buffering on old style websocket connections
...
Old style websocket do use binaries for transferring data to C2S, so when
we buffer that data we need to handle it different than list of #xml structs
used by new style connections.
This fixes github issue #515 .
2015-04-06 17:54:45 +02:00
Paweł Chmielowski
64978b3d9c
Merge pull request #513 from weiss/ignore-header-case
...
ejabberd_websocket: Ignore case of HTTP header values
2015-04-06 17:49:51 +02:00
Mickael Remond
34f8f6d868
Explicitely start crypto module
...
Without explicit start, it causes issue when embedding ejabberd into other apps.
2015-04-06 13:46:09 +02:00
Evgeniy Khramtsov
69bff82301
Fix type spec
2015-04-06 12:38:54 +03:00
Mickael Remond
47537aa901
Make sure Mnesia dir environment and log file are list, not binary
...
This is useful for Elixir configuration, as binary is the more natural data type.
Closes #514
2015-04-06 11:36:16 +02:00
Holger Weiss
0cd77ab942
ejabberd_websocket: Ignore case of header values
...
RFC 6455 says that the client's opening handshake includes an Upgrade
header field "containing the value 'websocket', treated as an ASCII
case-insensitive value."
Closes #510 .
2015-04-05 14:48:08 +02:00
Mickael Remond
ea8db9967f
ejabberd can be embedded in an Elixir application
2015-04-04 17:42:12 +02:00
Badlop
7d3b2cad26
Replace crypto calls that will be removed in a future release
2015-04-04 14:09:58 +02:00
Badlop
cf40daf663
Replace undefined value with empty one ( processone/ejabberd-contrib#92 )
2015-04-04 13:48:17 +02:00
Holger Weiss
1fa73fd33f
Remove unused case clauses to make dialyzer happy
2015-04-03 20:37:42 +02:00
Badlop
94761ff31e
Improve srg_get_info result format ( processone/ejabberd-contrib#92 )
2015-04-03 12:16:11 +02:00
Paweł Chmielowski
088c5c4672
Fix output formatting in srg_get_info commend from mod_admin_extra
2015-04-02 16:55:51 +02:00
Paweł Chmielowski
b580da3547
Fix problems with get_vcard* functions from mod_admin_extra
2015-04-01 16:32:34 +02:00
Paweł Chmielowski
cf3b4dbc7b
Drop exmpp usage from mod_admin_extra
2015-04-01 15:44:49 +02:00
Evgeny Khramtsov
305b281c15
Merge pull request #493 from weiss/rfc-6121-routing
...
Update ejabberd_sm's routing rules as per RFC 6121
2015-04-01 11:41:05 +03:00
Evgeniy Khramtsov
821039b7d5
Swap 'mnesia' and 'internal' types correctly
2015-03-30 12:25:25 +03:00
Evgeniy Khramtsov
fb1fd50df5
The 'default_db' option should impact ejabberd_auth as well
2015-03-30 12:18:18 +03:00
Evgeniy Khramtsov
4af15df546
Add new 'default_db' option
2015-03-30 12:15:29 +03:00
Sergey Abramyan
15af88a09a
Fix lite.sql and convert binary to integer
2015-03-27 22:14:29 +03:00
Badlop
176114d28e
Try to fix more Dialyzer warnings
2015-03-27 15:55:57 +01:00
Badlop
9c96d30719
Ensure set_presence changes are kept in state (thanks to Davide Colombo)(EJAB-1184)
2015-03-27 15:03:14 +01:00
Badlop
30dc82a98a
Fix even more dialyzer warnings
2015-03-27 12:28:24 +01:00
Badlop
8707c0b045
Fix set_presence command (ejabberd-contrib#61)
2015-03-27 11:43:56 +01:00
Badlop
10dfd182f6
Fix more mod_admin_extra commands
2015-03-26 20:41:16 +01:00
Badlop
9b3dda105d
Fix problems in process_rosteritems command
2015-03-26 16:18:39 +01:00
Badlop
fbb6b65192
Detect correctly when vCard does not exist ( #21 )
2015-03-26 14:00:58 +01:00
Badlop
0c30beb93d
Fix return error when requesting non-existing vcard value ( #21 )
2015-03-26 14:00:54 +01:00
Mickaël Rémond
c9393bc4f4
Ignore errors when retrieving status if the users just got offline
...
Fix possible race condition.
2015-03-26 14:00:50 +01:00
Holger Weiss
5103ed1c3b
mod_admin_extra: Let send_message omit subject
...
Let the send_message command omit the subject if the user either
specified an empty subject or a message type of "chat".
2015-03-26 14:00:48 +01:00
Badlop
88cd8c7b12
Update FSF address (solves #73 )
2015-03-26 14:00:46 +01:00
HAMANO Tsukasa
00fe68ed06
fix connected_users_info in mod_admin_extra
2015-03-26 14:00:44 +01:00
Holger Weiss
09dd288ac0
mod_admin_extra: Fix private_get/private_set types
2015-03-26 14:00:42 +01:00
Badlop
2186c03a9c
Support TEL XXX in set and get_vcard commands
2015-03-26 14:00:40 +01:00
colm
441d48f080
Changed signature of user_sessions_info to take binaries rather than strings as it doesn't match anything in mnesia if it searches it by string
2015-03-26 14:00:38 +01:00
Badlop
c3afc3c7c0
Join three send_message_* commands in one (PR #68 )
2015-03-26 14:00:36 +01:00
HAMANO Tsukasa
9a64bfe605
add send_message_normal command
2015-03-26 14:00:34 +01:00
HAMANO Tsukasa
ca25d44c8b
fix mod_admin_extra stats command
2015-03-26 14:00:32 +01:00
Holger Weiss
4e9b4cbc11
mod_admin_extra: Fix stats(_host) argument types
2015-03-26 14:00:30 +01:00
Badlop
46b33b51b4
Update kick_session to work with ejabberd master
2015-03-26 14:00:28 +01:00
Sonny Scroggin
3eebf100f9
Binary conversions
2015-03-26 14:00:24 +01:00
Sonny Scroggin
5c0a1dde1c
More binary conversions
2015-03-26 14:00:21 +01:00
Badlop
949705b04a
Update add_roster_item and get_roster to ejabberd 13
2015-03-26 14:00:18 +01:00
Badlop
f682dfe3a6
Fix get_vcard and set_vcard when using option module_resource (issue #21 )
2015-03-26 14:00:16 +01:00
Sonny Scroggin
14a3662ca4
Fix add_rosteritem, delete_rosteritem, and get_roster
2015-03-26 14:00:14 +01:00
Badlop
ffea2bf350
Update get_vcard and set_vcard to ejabberd 13 (fixes issue #21 )
2015-03-26 14:00:12 +01:00
Rahul Gautam
f314da7b1f
mod_admin_extra: for support in ejabberd-v13.x changed args from string to binary : all changes tested with ejabberdv13.12
2015-03-26 14:00:10 +01:00
Badlop
d72c739630
Fix command change_password ( fixes #16 )
2015-03-26 14:00:08 +01:00
Badlop
57035b383c
Handle error when requesting information of a non-existing shared roster ( fixes #14 )
2015-03-26 14:00:06 +01:00
Badlop
2746e358b3
Fixes srg_* commands ( fixes #147 )
2015-03-26 14:00:04 +01:00
Badlop
d66f40d94f
Fix srg_create when calling ejabberd_regexp (fixes issue #12 )
2015-03-26 14:00:01 +01:00
Badlop
e6a9c5ccee
Add get_last to ejabberdctl for last user activity (thanks to lehrblogger)
...
The logic for determining the response is borrowed from here:
6d811f5178/src/web/ejabberd_web_admin.erl (L1583-L1601)
2015-03-26 13:59:59 +01:00
Badlop
f0cf90c11e
Initial import from ejabberd-modules SVN
2015-03-26 13:59:57 +01:00
Paweł Chmielowski
de26af3fdb
Make sure that we send each time <close> before closing websocket connection
2015-03-25 17:10:08 +01:00
Badlop
d9ad26b4ec
If command crashes, return restuple with error and explanation (ejabberd-contrib #21 )
2015-03-25 13:57:08 +01:00
Holger Weiss
f40e6a0421
Don't bother with filtering out PEP error messages
...
Now that ejabberd_sm won't deliver error messages that were sent to bare
JIDs anymore, PEP error messages should no longer arrive.
2015-03-25 02:02:08 +01: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
Holger Weiss
33c9f21171
Return error when incoming message is blocked
...
As per XEP-0016 and XEP-0191, return a service-unavailable error when an
incoming message was blocked by a privacy list. This lets the user
appear offline to the contact.
2015-03-24 23:10:47 +01:00
Holger Weiss
27a4d783a5
Fix "IP address not available" error message
2015-03-24 17:32:57 +01:00
Alexey Shchepin
736710cc9c
Add support for ciphers and protocol_options in ejabberd_http
2015-03-24 18:14:47 +03:00
Holger Weiss
31e356c126
Avoid crypto:hmac/3 call for R15B compatibility
2015-03-21 22:56:23 +01:00
Holger Weiss
a5d6044448
Fix compilation on Erlang R15B
2015-03-21 22:06:38 +01:00
Christophe Romain
8b23727cc6
Start ext_mod before module as it's setup contrib path
2015-03-20 15:06:02 +01:00
Alexey Shchepin
5135e30633
Removed deprecated calls to crypto:sha_mac in scram.erl
2015-03-20 14:09:38 +03:00
Alexey Shchepin
f6db84282b
Add ejabberd_auth_odbc:convert_to_scram/1
2015-03-20 13:46:17 +03:00
Alexey Shchepin
e575c87ea2
Add SCRAM support to ejabberd_auth_odbc
2015-03-20 13:45:24 +03:00
Jerome Sautret
6b67a66a1b
Added MySQL support for delete_old_messages (offline) command.
2015-03-20 10:40:19 +01:00
Evgeniy Khramtsov
4d2924a3ef
Fix mod_offline termination
2015-03-20 10:40:13 +01:00
Alexey Shchepin
b7726ee392
Explicitly set standard_conforming_strings to off with PostreSQL
2015-03-20 10:39:29 +01:00
Evgeniy Khramtsov
51508a9fc3
Report TLS errors
2015-03-20 10:39:14 +01:00
Sergey Abramyan
5ae01e8bb4
Add SQLite support
2015-03-20 01:10:47 +03:00
Christophe Romain
aa1250a3dd
Add missing list_to_binary call
2015-03-13 17:59:19 +01:00
Christophe Romain
5b9635cc07
Add contributed modules code path on start
2015-03-13 12:20:25 +01:00
Christophe Romain
588f98fc3a
Rename module function to keep them grouped on help
2015-03-13 11:54:32 +01:00
Evgeniy Khramtsov
f72799b3cc
Improve module structure
2015-03-13 13:05:16 +03:00
Evgeniy Khramtsov
bbe5c6b74e
Do not fail on badly formed SQL results
2015-03-13 12:59:16 +03:00
Evgeniy Khramtsov
c7dc56c314
Fix unblock all when Riak is used as a backend
2015-03-13 12:47:08 +03:00
Paweł Chmielowski
bf5c7198fc
Update sockmod() type after adding websocket support
2015-03-12 13:15:31 +01:00
Christophe Romain
7209954a5f
Remove unused clause
2015-03-12 13:15:07 +01:00
Paweł Chmielowski
e855791f16
Update types to fix dialyzer warnings
2015-03-12 10:34:34 +01:00
Holger Weiss
b045bd806a
mod_offline: Remove a few superfluous newlines
2015-03-11 20:38:22 +01:00
Holger Weiss
0bfde19ebd
Don't crash in mod_offline:export/1
...
(Thanks to Christophe Romain.)
2015-03-11 20:35:08 +01:00
Christophe Romain
2d53f7f83e
start ext_mod in later stage at init
2015-03-11 17:39:07 +01:00
Christophe Romain
a1a46f7df5
Remove unused code
2015-03-11 17:15:42 +01:00
Christophe Romain
c9b82ff1e5
Compile contributed module with lager if enabled in ejabberd
2015-03-11 14:35:01 +01:00
Christophe Romain
f77622067b
Add packaging support for contributed modules
...
This is a preliminary version that is tested to work with the packaging
branch of ejabberd-modules repository
This version lacks automatic configuration include at runtime
2015-03-11 14:14:28 +01:00
Evgeniy Khramtsov
a0fafc383a
Add Redis backend for SM
2015-03-11 14:46:57 +03:00
Holger Weiss
d991b92a49
Always specify room JID for MUC <delay/> elements
...
As per version 1.25 of XEP-0045, use the room JID as the 'from' address
for <delay/> elements also when the room is non-anonymous, and specify
the original JID of the sender as an XEP-0033-style tag instead.
Closes #465 .
2015-03-10 00:02:32 +01:00
badlop
0a88255ef6
Merge pull request #467 from hamano/mod_offline_restart
...
change mod_offline restart type
2015-03-09 19:26:19 +01:00
Evgeniy Khramtsov
c0540e1377
Fix R15B compilation
2015-03-09 17:50:14 +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
HAMANO Tsukasa
f55de94314
change mod_offline restart type
2015-03-09 20:28:55 +09:00
Mickaël Rémond
8fef3d1f3f
Reorganize / clean ejabberd_hooks header
2015-03-08 19:03:02 +01:00
Mickaël Rémond
a339df2d6a
More ejabberd_hooks refactor
2015-03-08 18:44:43 +01:00
Mickaël Rémond
fd91ee5169
ejabberd_hooks refactor and better types
2015-03-08 18:23:22 +01:00
Mickaël Rémond
750fefcd6d
Add Elixir test on ejabberd hooks
...
This is to prepare ejabberd_hooks module refactoring.
I also expanded API to help with testing.
2015-03-08 17:06:43 +01:00
Badlop
f18ce9564c
Fix: default_host is forgotten between consecutive HTTP requests ( #416 )
2015-03-06 12:40:48 +01:00
Badlop
e0228e9b7a
Access list editing broken in web_admin ( #252 )
2015-03-05 11:34:25 +01:00
Badlop
e575f401cd
Accept configuration file with .yaml extension ( #290 )
2015-03-04 17:18:57 +01:00
Mickaël Rémond
8a99287374
Merge branch 'master' of github.com:processone/ejabberd
2015-03-03 22:20:08 +01:00
Mickaël Rémond
f0f8301b5e
Fix typo on state reuse
...
It should help with the crash on #453
2015-03-03 22:19:51 +01:00
Christophe Romain
a265ea53f9
Merge pull request #384 from weiss/fix-last-item-type
...
Use correct message type when sending last published PEP/PubSub items
2015-02-27 11:40:12 +01:00
badlop
e10d5af303
Merge pull request #443 from mojolingo/feature/muc_admin/affiliation-change-propogate-xmpp
...
Permit modifying affiliations via an event
2015-02-26 11:48:17 +01:00
Ben Langfeld
a6c5a3593f
Permit modifying affiliations via an event
...
Allows us to implement mod_muc_admin:set_room_addiliation properly
2015-02-25 12:31:27 -03:00
Badlop
5bd8724801
Update FSF address
2015-02-25 15:19:33 +01:00
Paweł Chmielowski
ab3d38c9fc
Fix processing POST messages after changes from adding websocket handling
2015-02-25 14:36:48 +01:00
Paweł Chmielowski
8e33f31f50
Try not to use c2s:send_text, it causes problem with websocket
2015-02-25 13:57:03 +01:00
Paweł Chmielowski
b42b171613
Add support for websocket connections
2015-02-25 13:57:02 +01:00
Feotov Daniil
b81250d667
Hook on group message
2015-02-24 11:06:41 +03:00
Christophe Romain
0c0947a241
Add compatibility macros for deprecated types (thanks to Alexey)
2015-02-23 09:58:00 +01:00
Holger Weiss
e87d332394
mod_carboncopy: Apply small code simplification
2015-02-12 00:14:57 +01:00
Holger Weiss
bc7f93ad1e
Check availability before carbon copying
...
Before generating a carbon copy for a resource, make sure it's actually
available. This handles the case where, for some reason, the
'unset_presence_hook' wasn't called during logout of a resource. Carbon
copies sent to that resource would otherwise be re-routed to another
resource (which might've received a copy of that message already).
2015-02-11 16:12:08 +01:00
Holger Weiss
9f822dd2b8
Don't crash if 'request_path' has unexpected type
2015-02-11 15:38:55 +01:00
Holger Weiss
834c680f97
Remove unused function clause in mod_carboncopy
2015-02-11 00:52:47 +01:00
Mickaël Rémond
01e1f677c7
Add Elixir support to ejabberd
2015-02-10 17:56:44 +01:00
Holger Weiss
d00f0fb1f4
Don't convert configuration values to strings
2015-02-09 01:08:01 +01:00
Holger Weiss
7fd7e53e4a
Fix typo in debug message
2015-02-08 23:49:17 +01:00
Feotov Daniil
eb52c118d0
Migration of scram passwords with piefxis (riak and internal only)
2015-02-05 18:44:08 +03:00
Badlop
87d2eb5f9a
Support for "> ." in YAML configuration files
2015-01-28 17:16:10 +01:00
Holger Weiss
0a047d790f
Fix a few function specifications
2015-01-23 00:42:18 +01:00
Christophe Romain
c4d17d939d
Fix integer parameter which can be set to 0
2015-01-22 12:40:27 +01:00
Evgeny Khramtsov
561025ba32
Merge pull request #413 from weiss/fix-timestamp-overflow
...
Fix timestamp formatting
2015-01-22 11:00:41 +03:00
Badlop
15e77e9c0f
New command to reload config (EJAB-1140)
2015-01-21 15:18:46 +01:00
Christophe Romain
120e581865
Fix missing copyright dates to 2015 (EJAB-1733)
2015-01-21 14:52:37 +01:00
Holger Weiss
528aabf49c
Increment number of seconds on timestamp overflow
...
Increment the number of seconds and set the fractional part to zero if
the latter is too large.
2015-01-21 11:20:26 +01:00
Holger Weiss
18d9f18642
Don't match integer() against float() value
2015-01-21 11:06:06 +01:00
Nathan Bruning
a983df4848
Fix overflow in XEP-0203 delay: if microseconds exceeded 999499, *** was put in the formatted timestamp
2015-01-21 01:10:41 +01:00
Evgeny Khramtsov
104009b3a9
Merge pull request #409 from hamano/scram-stringprep-checking
...
Scram stringprep checking(correct fix)
2015-01-19 15:23:47 +03:00
HAMANO Tsukasa
e01eb734b4
correct fix for #396
2015-01-19 16:00:18 +09:00
HAMANO Tsukasa
cb57cfa1a6
correct fix for #396
2015-01-19 15:25:58 +09:00
Badlop
2c4647a980
Fix binaries when ejabberd_ctl passes auth details
2015-01-15 20:00:06 +01:00
Badlop
7690320f0f
Fix access_commands option in ejabberd_xmlrpc, now it works
2015-01-15 17:39:12 +01:00
Evgeniy Khramtsov
4575649e10
Get rid of asn1rt calls
2015-01-15 14:51:20 +03:00
Taufan Aditya
f650fc83ae
Fix spec comment and remove useless case block
2015-01-09 22:19:46 +07:00
Taufan Aditya
864e113256
Fix unused vars warning
2015-01-09 01:00:26 +07:00
Badlop
5a35405cd5
Update copyright dates to 2015 (EJAB-1733)
2015-01-08 17:34:43 +01:00
Evgeny Khramtsov
4ef2d08456
Merge pull request #396 from hamano/scram-stringprep-checking
...
checking stringprep in scram authentication
2015-01-08 11:02:23 +03:00
HAMANO Tsukasa
ede5a353e8
checking stringprep in scram authentication
2015-01-08 14:12:05 +09:00
Badlop
b88fa6f617
Fix missing presences when adding shared groups (Github PR#99, thanks to Bokner)
2015-01-07 13:11:53 +01:00
Badlop
3882c4d514
Fix binaries in command ejabberdctl stop_kindly
2015-01-07 11:44:04 +01:00
badlop
d24dc4e9c8
Merge pull request #383 from weiss/fix-shutdown
...
Give temporary processes a little time to stop cleanly
2015-01-07 11:42:22 +01:00
Holger Weiss
9dc9d75502
Fix ejabberd_captcha's listener parsing
...
If the "captcha_host" is specified without "http://" or "https://"
prefix, ejabberd_captcha tries to figure out the protocol automatically.
Fix the code that parses the listener configuration in order to do that.
2014-12-24 00:35:22 +01:00
Holger Weiss
06db65e108
Give temporary processes time to stop cleanly
...
Allow temporary processes to perform some final actions when shutting
down. For example, moc_muc_room:terminate/3 fails to send 'unavailable'
presence to the room participants when killed immediately.
2014-12-21 21:03:22 +01:00
Holger Weiss
d734f6beca
Use correct message type for last published items
...
When sending last published PubSub/PEP items, set the message type
that was used for broadcasting those items originally.
2014-12-21 20:11:05 +01:00
Holger Weiss
e5428c5500
Improve add_message_type/2 function
...
Let add_message_type/2 accept the type as an atom, and let the function
handle the 'normal' message type. This doesn't change the behavior, but
avoids some code duplication.
2014-12-21 18:44:53 +01:00
Jerome Sautret
cc958f7787
Fix upgrade of PubSub mnesia tables from older ejabberd version.
2014-12-18 11:51:28 +01:00
Evgeny Khramtsov
df88d9f2e5
Merge pull request #377 from weiss/new-timestamps
...
Add timestamps to stanzas resent from stream management queue
2014-12-13 09:42:30 +03:00
Holger Weiss
466278fde1
Let jlib use "B" instead of "w" to format integers
...
As a small optimization, use io:format's "B" control sequence to format
integers. We don't need to let Erlang figure out the data type if we
already know it.
2014-12-12 23:50:03 +01:00
Holger Weiss
0a19dac4fd
Add fractions of seconds to <delay/> timestamps
...
Include fractions of a second with XEP-0203 <delay/> timestamps, as
specified in XEP-0082.
Old timestamp: 2014-05-19T11:55:00Z
New timestamp: 2014-05-19T11:55:00.123Z
2014-12-11 23:11:35 +01:00
Holger Weiss
455039ae69
mod_muc_log: Fix configuration parsing
...
Fix mod_muc_log's parsing of the "file_permissions" option.
Resolves #373 .
2014-12-08 15:51:06 +01:00
Holger Weiss
a78a0a65fe
Let CSI code add timestamp at later point in time
...
As a small optimization, make sure we won't add timestamps to presence
stanzas which end up being thrown away by the CSI code.
2014-12-07 16:27:51 +01:00
Holger Weiss
ba8f38e2eb
XEP-0198: Add timestamp to resent stanzas
...
When an unacknowledged stanza is resent from the Stream Management
queue, add a timestamp so that the receiving client can display the time
at which the stanza was originally sent.
2014-12-07 16:12:06 +01:00
Holger Weiss
9899935e42
Improve interface for adding timestamps
...
Provide a simpler interface for adding <delay/> and <x/> timestamps to
stanzas. This also makes sure that only one <delay/> tag and one <x/>
tag is added to a given stanza.
2014-12-07 15:55:18 +01:00
Holger Weiss
2cb16bc509
Remove unused field from c2s #state
2014-11-26 00:15:19 +01:00
Evgeny Khramtsov
00dfcc1e10
Merge pull request #350 from flygoast/master
...
Used current working home as base directory to config relative path.
2014-11-25 14:24:37 +03:00
Evgeny Khramtsov
4163626844
Merge pull request #365 from weiss/csi-config
...
Fix mod_client_state's configuration parsing
2014-11-25 14:21:18 +03:00
Evgeny Khramtsov
f60c721f84
Merge pull request #364 from weiss/copy-normal-messages
...
Also carbon-copy messages of type "normal"
2014-11-25 14:21:06 +03:00
Evgeny Khramtsov
e97e56d776
Merge pull request #363 from weiss/drop-pep-errors
...
Don't route PEP error messages to clients
2014-11-25 14:20:11 +03:00
Evgeny Khramtsov
6b916e7a04
Merge pull request #354 from weiss/pep-privacy
...
Respect privacy lists for incoming PEP messages
2014-11-25 14:20:01 +03:00
Evgeny Khramtsov
6279c3fd8d
Merge pull request #352 from weiss/no-last-pep-duplicates
...
Don't duplicate last published PEP items
2014-11-25 14:19:53 +03:00
Holger Weiss
6900a41e7d
Fix mod_client_state's configuration parsing
...
Don't log an "invalid value" message when "queue_presence" or
"drop_chat_states" is set to "false".
2014-11-25 12:05:09 +01:00
Holger Weiss
a456482e2f
Also carbon-copy messages of type "normal"
...
It makes no sense to restrict carbon-copying to "chat" messages.
XEP-0280 is expected to be updated accordingly.
2014-11-24 22:37:14 +01:00
Holger Weiss
30687c40ef
Don't route PEP error messages to clients
2014-11-24 21:19:32 +01:00
Holger Weiss
16311b73c8
Add new hook: c2s_filter_packet_in
...
The c2s_filter_packet_in hook can be used to modify or drop incoming
packets before they are transmitted to the client.
2014-11-24 20:55:18 +01:00
Evgeny Khramtsov
946b64e166
Merge pull request #361 from weiss/parse-ldap-dn-filter
...
Fix parsing of "ldap_dn_filter" option
2014-11-22 10:36:21 +03:00
Holger Weiss
46d035c142
Fix parsing of "ldap_dn_filter" option
2014-11-22 01:33:23 +01:00
Leif Bredgaard Honore
5afa1f6ade
Fix for ejabbed bug #359 - now strings are formatted correctly.
2014-11-20 14:21:51 +04:00
Holger Weiss
c566b1d01e
Respect privacy lists for incoming PEP messages
2014-11-18 01:25:12 +01:00
Holger Weiss
84c227e6ae
Don't duplicate last published PEP items
...
When a contact becomes available, usually both the 'caps_update' hook
and the 'presence_probe_hook' are called. For remote contacts, both
hooks triggered PEP notifications, so each item was sent twice. Fix
this by ignoring the 'presence_probe_hook' for remote contacts.
2014-11-18 01:13:22 +01:00
Holger Weiss
3b96525550
Support floating point message/presence intervals
...
Let mod_muc support floating point values for "min_message_interval" and
"min_presence_interval", as documented in the guide.
2014-11-15 22:35:56 +01:00
Gu Feng
62ccf1cf0e
Used current working home as base directory to config relative path.
...
When a config relative path specified, get_absolute_path would not
return an absolute path. The patch fixed it using current working
home as base directory.
Signed-off-by: Gu Feng <flygoast@126.com>
2014-11-16 00:09:52 +08:00
Evgeny Khramtsov
d5ecd32cec
Merge pull request #345 from weiss/last-pep-items
...
Fix sending of last published PEP items to newly-available resources
2014-11-14 21:27:24 +03:00
Holger Weiss
2446b66016
Use correct type for initial c2s #state.user value
2014-11-14 15:32:48 +01:00
Holger Weiss
f69d1ca282
Send last PEP items to remote subscribers
...
When a remote subscriber becomes available, send him the last published
PEP items, as we do for local subscribers.
However, the current implementation depends on a running ejabberd_c2s
process of the publisher to send items to remote subscribers. So, for
those, the behavior is always like it is for local subscribers when
"ignore_pep_from_offline" is set to "true".
2014-11-14 01:33:11 +01:00
Holger Weiss
830fdccd21
Don't broadcast last published PEP items
...
When a client becomes available, don't send the last published PEP items
of all his peers to all his other peers, but only to that client.
2014-11-14 01:03:26 +01:00
Holger Weiss
5cc30c3977
Move routing of last PEP items into new function
...
This doesn't change the behavior, but avoids some code duplication.
2014-11-14 00:16:13 +01:00
Holger Weiss
8efae1f05b
ODBC: Sync last item notifications with mod_pubsub
...
A while back, mod_pubsub was modified to address EJAB-1456. However,
the change was only partially applied to mod_pubsub_odbc. This commit
adds the remaining part.
2014-11-14 00:02:59 +01:00
Matthias Rieber
8184326eb9
Fix kick_user command
2014-11-10 20:53:00 +01:00
Evgeny Khramtsov
f47a59de2f
Merge pull request #340 from weiss/disable-mechanisms
...
New option: disable_sasl_mechanisms
2014-11-10 11:47:10 +03:00
Holger Weiss
ee0ecd2419
New option: disable_sasl_mechanisms
...
The new "disable_sasl_mechanisms" option allows for restricting the list
of SASL mechanisms offered to the client.
Closes #339 .
2014-11-10 01:10:04 +01:00
Holger Weiss
41dc1efde4
Avoid duplicates of carbon copies
...
When multiple resources have the same (highest) priority, the session
manager routes messages sent to their bare JID to each of these
resources. When another resource has a lower priority but receives
carbon copies, make sure it won't receive multiple copies of such
messages.
2014-11-05 19:04:02 +01:00
Evgeny Khramtsov
56dab7ddbe
Merge pull request #328 from flygoast/master
...
Return an empty <vCard/> element in an IQ-result when no vCard exists.
2014-10-29 16:43:49 +03:00
Evgeniy Khramtsov
74b67fa0dc
Add new option: store_empty_body
2014-10-27 14:18:09 +03:00
Evgeniy Khramtsov
067958d705
Merge branch 'master' of github.com:processone/ejabberd
2014-10-27 13:44:59 +03:00
Evgeniy Khramtsov
dec1e1f67f
Revert "fix mod_offline to store only chat messages with body xml element"
...
This reverts commit 436f0832c1
.
2014-10-27 13:44:46 +03:00
Holger Weiss
2399aba67d
Accept trailing whitespace in Base64 strings
2014-10-25 02:05:02 +02:00
Gu Feng
94cdcd7b34
Return an empty <vCard/> element in an IQ-result when no vCard exists.
...
According to XEP-0054, if no vCard exists, the server MUST return a stanza
error (which SHOULD be <item-not-found/>) or an IQ-result containing an
empty <vCard/> element.
Signed-off-by: Gu Feng <flygoast@126.com>
2014-10-25 00:55:49 +08:00
Holger Weiss
2d748115ee
Don't advertise auth mechanisms too early
...
If "starttls_required: true" is specified for c2s connections,
authentication mechanisms shouldn't be offered before negotiating the
TLS connection.
2014-10-23 10:04:14 +02:00
Evgeny Khramtsov
0b22277b11
Merge pull request #321 from weiss/fix-http-request-record
...
Use 'request' record definition from header file
2014-10-21 12:12:55 +04:00
liudan
d2edcf1288
fix odbc keepalive interval bug
2014-10-21 10:05:44 +08:00
Holger Weiss
0c24e18b5e
XEP-0198: Abort immediately on queue overflow
...
Terminate the ejabberd_c2s process immediately once stanza queue
overflow is detected. This makes sure the FSM won't process additional
stanzas before terminating if the recipient is flooded.
2014-10-17 01:35:30 +02:00
Holger Weiss
96d6aacede
Use 'request' record definition from header file
...
This fixes a 'badrecord' crash in mod_http_fileserver.
2014-10-16 13:51:13 +02:00
Holger Weiss
1ccc0d8bcb
XEP-0198: Set #state.conn field on session resume
2014-10-12 19:44:35 +02:00
Holger Weiss
7bdc1151b1
Make sure "starttls_required" can't be bypassed
...
Don't allow clients to circumvent the "starttls_required" option by
enabling XMPP stream compression.
2014-10-12 02:08:08 +02:00
Evgeniy Khramtsov
4bbf16b21a
Fix list unblocking when Riak is used as a backend
2014-10-10 11:38:13 +04:00
Evgeniy Khramtsov
d87ca9fb7b
Fix format of an XML-RPC response
2014-10-04 12:55:59 +04:00
Evgeniy Khramtsov
7b3209cc7f
Switch to P1 implementation of XML-RPC
2014-10-04 12:49:33 +04:00
Evgeniy Khramtsov
1d782db84f
Process XML-RPC requests via p1_xml and ejabberd_http
2014-10-04 12:49:12 +04:00
Evgeniy Khramtsov
e109f352e3
Make directory creation more robust
2014-10-02 14:21:27 +04:00
Holger Weiss
277e1dc3ff
Offer CSI stream feature only if configured
...
Don't offer the CSI stream feature when mod_client_state isn't actually
configured to filter stanzas. This makes sure clients won't send CSI
tags that end up being ignored.
2014-09-25 18:28:20 +02:00
Holger Weiss
56175fef1b
Add new hook: c2s_post_auth_features
...
The c2s_post_auth_features hook can be used to extend the list of stream
features offered after authentication.
2014-09-25 18:15:33 +02:00
Holger Weiss
7aec0337e1
Remove invisible presence fields from c2s #state
...
Invisible presence isn't supported anymore, so the corresponding
ejabberd_c2s #state fields were unused.
2014-09-25 00:08:56 +02:00
Holger Weiss
61c8836740
Rename deref_aliases back to ldap_deref_aliases
...
The "ldap_deref_aliases" option has accidentally been renamed to
"deref_aliases". Revert that change (but accept both names for a
while), so that the option name now matches the documentation again.
2014-09-23 11:31:44 +02:00
Holger Weiss
0a9212583d
XEP-0198: Support "resend_on_timeout: if_offline"
...
If "resend_on_timeout" is set to "if_offline", resend unacknowledged
stanzas only if no other resource is online when the session times out.
In other words, allow for sending them to offline storage, but nowhere
else.
2014-09-16 22:42:34 +02:00
Holger Weiss
b8c98232b8
Support XEP-0352: Client State Indication
2014-09-11 17:44:29 +02:00
Evgeny Khramtsov
7a48e30523
Merge pull request #296 from weiss/remove-unused-clause
...
XEP-0198: Remove unused function clause
2014-09-07 07:27:17 +04:00
Holger Weiss
2ca563e328
XEP-0198: Remove unused function clause
...
In the 'wait_for_resume' state, #state.mgmt_pending_since is always
initialized. fsm_next_state/2 takes care of that.
2014-09-06 20:39:38 +02:00
Holger Weiss
2e169167d4
XEP-0198: Change state on gen_tcp:send/2 failure
...
When Stream Management is enabled and a gen_tcp:send/2 call fails, go
into the 'wait_for_resume' state immediately. This makes sure that
gen_tcp:send/2 won't be called again, which might avoid an Erlang issue
where gen_tcp:send/2 apparently hangs despite 'send_timeout' (and
'send_timeout_close') being set.
2014-09-06 20:34:32 +02:00
Holger Weiss
11b2921971
XEP-0198: Let fsm_next_state/2 check timeout value
...
Don't force the fsm_next_state/2 caller to check for 'mgmt_timeout = 0'.
2014-09-06 20:29:02 +02:00
Evgeniy Khramtsov
ac2ba399a9
Make sure x:data form possesses 'type' attribute
2014-09-03 21:28:55 +04:00
Evgeniy Khramtsov
fda73c3d16
Fix privacy checks of presence probes
2014-09-01 16:39:02 +04:00
Evgeniy Khramtsov
a1ce33ebf8
Automatically remove IPs from ban, add the documentation
2014-08-27 13:25:49 +04:00
Evgeniy Khramtsov
9be9949dab
Remove useless -include()
2014-08-27 13:18:29 +04:00
Evgeniy Khramtsov
0f1d95a074
Ban the IP if there are too many failed authentications
2014-08-27 13:18:22 +04:00
Evgeniy Khramtsov
2430e6691b
Add mod_fail2ban
2014-08-27 13:17:56 +04:00
Holger Weiss
f1ad6f017b
Fix a comment in ejabberd_hooks
2014-08-26 01:04:15 +02:00
vesvalo
01a3c1c2e1
Fix return value of mod_shared_roster:delete_group. Current one is not compatible with mod_admin_extra.
2014-08-21 15:13:43 +04:00
vesvalo
c48b7f272b
fix 404 on pep first publishing with odbc
2014-08-21 11:23:58 +04:00
Holger Weiss
2802b6cee2
Allow for "max_ack_queue: infinity", as documented
2014-08-20 12:53:26 +02:00
Holger Weiss
7274dafe10
Store persistent MUC room during creation
...
Make sure persistent rooms are stored to the database. Without this
change, a room got lost if the 'persistent' flag was handed over to
mod_muc:create_room/5 and the server was then restartet before any
activity took place in that room.
2014-08-19 11:12:51 +02:00
Evgeny Khramtsov
bc2e26fecd
Merge pull request #277 from weiss/xep-0198
...
XEP-0198: Create shorter session resume IDs
2014-08-15 19:15:32 +04:00
Holger Weiss
2d4c39cd54
XEP-0198: Create shorter resume IDs
...
Omit the user and server name from the 'previd' value.
2014-08-15 10:56:59 +02:00
Evgeny Khramtsov
9484b11383
Merge pull request #276 from weiss/xep-0198
...
XEP-0198: Don't crash if the resume ID is incorrect
2014-08-15 10:49:59 +04:00
Holger Weiss
848e1497d1
XEP-0198: Gracefully handle broken 'previd'
...
Produce a proper error message instead of crashing when the 'previd'
value of a <resume/> request has an unexpected format.
2014-08-15 01:54:41 +02:00
Holger Weiss
2daf95e93f
XEP-0198: Gracefully handle wrong credentials
...
Produce a proper error message instead of crashing when the JID encoded
in the 'previd' value of a <resume/> request is different from the
authenticated JID.
2014-08-15 01:53:47 +02:00
Evgeny Khramtsov
1b1d9b5a73
Merge pull request #269 from Iperity/master
...
Fix migration of pubsub nodes. Was deleting and re-creating all nodes on...
2014-08-15 03:20:36 +04:00
Evgeny Khramtsov
5836eb5bc2
Merge pull request #268 from benlangfeld/fix/ldap_filter_dnattributes_new_ejabberd
...
Set dnAttributes on when it's requested by a filter
2014-08-15 03:19:18 +04:00
Evgeniy Khramtsov
5c88f6423a
Fix the deprecation warning to reflect YAML format
2014-08-12 14:26:15 +04:00
Evgeny Khramtsov
0917209711
Merge pull request #273 from gamenet/master
...
odb_queries patch return value of functions update and update_t in case of sql insert
2014-08-08 16:03:03 +04:00
vesvalo
436f0832c1
fix mod_offline to store only chat messages with body xml element
2014-08-08 13:57:27 +04:00
vesvalo
92f89e3d45
Fix odbc update_t and update insert case return value
2014-08-08 13:26:16 +04:00
Holger Weiss
38c016a041
Log auth method for incoming s2s connections
...
Generate an [info] message that logs whether an incoming s2s connection
is authenticated using the SASL EXTERNAL mechanism or via Server
Dialback. While at it, also mention whether TLS is enabled.
2014-08-05 14:10:32 +02:00
Nathan Bruning
4f63cb21c2
Fix migration of pubsub nodes. Was deleting and re-creating all nodes on each startup.
2014-08-03 21:03:16 +02:00
Alexey Shchepin
f00725dffb
mod_offline now uses gen_server
2014-07-31 14:26:09 +04:00
Christophe Romain
4205108f30
typo fix on roster subscription (EJAB-1711)
2014-07-31 11:50:22 +02:00
Ben Langfeld
651de2ca8e
Set dnAttributes on when it's requested by a filter
2014-07-29 15:22:54 -03:00
Evgeniy Khramtsov
3d3a4f7543
Fix events broadcasting via C2S
2014-07-22 19:42:49 +04:00
Christophe Romain
320abee110
apply pull request #250 to pubsub_odbc as well
2014-07-21 17:14:59 +02:00
Christophe Romain
0579fc80ec
Merge pull request #250 from Iperity/master
...
Fix configuraton with custom nodetree plugin
2014-07-21 17:11:29 +02:00
Evgeniy Khramtsov
014d61955c
Move some namespaces definitions into header file
2014-07-21 08:32:26 +04:00
Evgeniy Khramtsov
1f4e0c8aea
Fix Record-Route signing
2014-07-17 20:30:36 +04:00
Paweł Chmielowski
e0c9242dcf
treap.erl was moved to p1_utils
2014-07-17 11:57:23 +02:00
Paweł Chmielowski
0456b78d87
Use p1_utils
2014-07-17 10:52:31 +02:00
Evgeniy Khramtsov
568068c79f
Get rid of p1_mnesia file
2014-07-17 08:32:13 +04:00
Evgeniy Khramtsov
b5c4fe6626
Change return type to reflect recent changes in p1_sip
2014-07-16 15:28:36 +04:00
Evgeniy Khramtsov
64205426bf
Fix returned types
2014-07-16 10:33:49 +04:00
Evgeniy Khramtsov
89025eea39
Fix blocklist get
2014-07-16 07:43:24 +04:00
Evgeniy Khramtsov
4ef0dd6997
Better Riak usage detection
2014-07-15 20:26:45 +04:00
Evgeniy Khramtsov
b5f1b17926
Fix broken hooked functions
2014-07-15 19:22:33 +04:00
Nathan Bruning
99c28ab4d6
Fix configuraton with custom nodetree plugin
2014-07-15 12:04:06 +02:00
Evgeniy Khramtsov
792b5a24df
Serialize records to proplists before storing then in Riak
2014-07-14 08:24:44 +04:00
Evgeniy Khramtsov
a5987633e0
Fix compile errors introduced by previous cherry picks
2014-07-10 14:16:33 +04:00
Evgeniy Khramtsov
2fe8e0dea5
Make it possible to check Riak connection status
2014-07-10 13:55:24 +04:00
Evgeniy Khramtsov
6a73b96459
Fix roster versioning support when Riak backend is enabled
2014-07-10 13:54:06 +04:00
Evgeniy Khramtsov
538d4ffbd0
Fix case clause
2014-07-10 13:53:57 +04:00
Evgeniy Khramtsov
c15dc01cff
Improve Riak pool management
2014-07-10 13:52:29 +04:00
Evgeniy Khramtsov
e82219185b
Add SQL to Riak converter
2014-07-10 13:29:01 +04:00
Evgeniy Khramtsov
0490c2f139
Improve Riak support
2014-07-10 13:26:37 +04:00
Alexey Shchepin
a4b02c38db
Updated riak support
2014-07-10 13:15:15 +04:00
Alexey Shchepin
47763c10e3
Preliminary Riak support
2014-07-10 13:04:39 +04:00
Evgeniy Khramtsov
fc692ea512
Add start_module/2
2014-07-08 20:58:03 +04:00
Evgeniy Khramtsov
2b8c4acd57
Rename options
2014-07-07 09:40:08 +04:00
Evgeniy Khramtsov
ee40c0e9a7
Add new option support: always_record_route
2014-07-07 09:40:01 +04:00
Matwey V. Kornilov
50a73d1188
Use -include_lib instead of -include for esip and p1_xml
...
-include_lib is used in order to find deps. Rebar include magic is not required anymore.
Rebar uses deps as library directory.
2014-07-05 17:57:35 +04:00
Evgeniy Khramtsov
76ebebf2a0
Revert "Fix IQ XML generation."
...
This reverts commit 26a4d91297
.
2014-07-05 17:53:45 +04:00
Jerome Sautret
aba7150af1
Return MySQL error messages as binary.
2014-07-04 17:39:28 +02:00
Jerome Sautret
26a4d91297
Fix IQ XML generation.
2014-07-04 15:21:40 +02:00
Christophe Romain
9265720f92
add ability to rotate logs on given date condition
2014-07-02 23:46:54 +02:00
Evgeniy Khramtsov
273631c242
New option support: log_rotate_count
2014-07-02 14:59:05 +02:00
Evgeniy Khramtsov
bb8a0f71e6
Support new options: log_rotate_size and log_rate_limit
2014-07-02 14:58:58 +02:00
Evgeniy Khramtsov
ffdb39d269
Disable SASL error logger if lager is enabled
2014-07-02 14:58:46 +02:00
Badlop
8fae4748a1
mod_caps doesn't provide Mnesia export feature
2014-06-27 13:49:17 +02:00
Evgeny Khramtsov
31440a586c
Merge pull request #238 from weiss/log-node-mismatch
...
Check for Mnesia node name mismatches on startup
2014-06-12 13:23:17 +04:00
Holger Weiss
1ef2dd45f3
Check for Mnesia node name mismatches
...
Log a proper error message if the node running ejabberd doesn't own the
Mnesia database.
2014-06-12 11:00:22 +02:00
Evgeniy Khramtsov
b29615561c
Change default flow timeout as recommended per the RFC
2014-06-12 09:30:10 +04:00
Evgeniy Khramtsov
7892b72bcb
Don't forget to close socket of timed out flow
2014-06-12 09:30:04 +04:00
Holger Weiss
c20acbf4d8
Mention configuration file path in error messages
...
If reading or parsing a YAML configuration fails, log the full path to
the configuration file (as we do for old-style ".cfg" files).
2014-06-11 15:03:33 +02:00
Evgeny Khramtsov
e66899e68e
Merge pull request #231 from hamano/case_clause_error_at_node_hometree_odbc
...
case_clause_error_at_node_hometree_odbc
2014-06-09 23:50:43 +04:00
Evgeniy Khramtsov
87f8c2ecd8
Don't stop roster table conversion on broken askmessage
2014-06-09 10:55:05 +04:00
Evgeniy Khramtsov
62be3bc111
Fix previous commit
2014-06-09 10:40:52 +04:00
Evgeniy Khramtsov
c485aea48b
Don't stop irc table conversion on broken JIDs
2014-06-09 10:36:42 +04:00
Evgeniy Khramtsov
6f4b4ad087
Ignore malformed parameters for mod_irc module
2014-06-07 07:45:36 +04:00
Evgeniy Khramtsov
3e8a0af6d1
Fix data convertion
2014-06-07 07:05:24 +04:00
Evgeniy Khramtsov
12ab5a749f
Clean up all timers gracefully
2014-06-06 22:29:50 +04:00
Evgeniy Khramtsov
ddfbca5830
Use a different timer for flow control
2014-06-06 13:53:13 +04:00
Evgeniy Khramtsov
9e72529544
SIP Outbound (RFC 5626) support
2014-06-06 09:36:45 +04:00
Christophe Romain
11aa51373a
add missing format handler
2014-06-05 16:23:17 +02:00
Holger Weiss
e0e74a9d5e
Don't "forget" listener options
...
If a listener is started or stopped via ejabberd_listener:add_listener/3
or ejabberd_listener:delete_listener/3, the configuration for all
listener modules is updated using the Module:transform_listen_option/2
function for each listener module that exports such a function.
However, for listener modules that don't provide that function (such as
ejabberd_stun), all but one option was dropped. This is now fixed.
The issue could be triggered e.g. by enabling mod_proxy65 in the modules
section.
2014-06-04 20:54:26 +02:00
HAMANO Tsukasa
cc228db337
e_clause error at node_hometree_odbc:get_items/3
2014-06-04 18:53:37 +09:00
Evgeniy Khramtsov
c546ce2439
Reply to pings
2014-06-03 21:18:30 +04:00
Evgeniy Khramtsov
6441c284e0
Don't add 'rport' paramater to 'Via' header
2014-06-02 20:46:29 +04:00
Evgeniy Khramtsov
0aea9c74bd
Rename option 'route' to 'record_route' and add new option 'routes'
2014-06-02 10:16:34 +04:00
Evgeniy Khramtsov
9a0d77571d
Add global static shared_key option
2014-06-01 14:20:09 +04:00
Evgeniy Khramtsov
f446e7fc0b
Sign 'Record-Route' in order to proxy unauthorized ACKs
2014-06-01 13:35:14 +04:00
Evgeniy Khramtsov
b75b5ebeb2
Fix 'via' option lookup
2014-05-31 14:22:39 +04:00
Evgeniy Khramtsov
d19903877d
Add new option: route
2014-05-31 14:22:31 +04:00
Evgeny Khramtsov
f271ea6eef
Merge pull request #229 from weiss/no-carbons-to-sender
...
XEP-0280: Don't send v1 carbon copies back to the sender
2014-05-31 12:53:18 +04:00
Evgeniy Khramtsov
c76201b6b4
Don't add 'Record-Route' header for mid-dialog requests
2014-05-31 10:00:51 +04:00
Evgeniy Khramtsov
86f2af6fdc
Process bindings from multiple UACs correctly
2014-05-31 09:06:53 +04:00
Evgeniy Khramtsov
da22da23cd
Don't substitute URI in ACK
2014-05-31 07:50:16 +04:00
Holger Weiss
f45654a16a
Simplify mod_carboncopy:check_and_forward/4
...
Use the existing is_carbon_copy/1 function, and combine multiple case
clauses into a single one.
2014-05-30 23:44:19 +02:00
Holger Weiss
bb952f9ecc
Let is_carbon_copy/1 recognize <received/> carbons
...
The mod_carboncopy:is_carbon_copy/1 function now returns true not only
for <sent/>, but also for <received/> carbon copies.
2014-05-30 23:36:02 +02:00
Holger Weiss
ad2d3964ef
Don't send XEP-0280 v1 copies back to sender
...
An earlier version of XEP-0280 specified the <received/> and <sent/>
tags to be siblings of the <forwarded/> element, whereas the current
version mandates them to be parents of <forwarded/>. The mod_carboncopy
module supports both variants. However, the check that makes sure
clients won't receive a copy of the messages they sent didn't work for
the old-style schema. This is now fixed.
2014-05-30 23:32:18 +02:00
Evgeniy Khramtsov
2cd17c7988
Fix previous commit
2014-05-30 23:49:50 +04:00
Evgeniy Khramtsov
32998f7e18
Process 'Contact' headers more accurately (as per RFC3261)
2014-05-30 23:14:52 +04:00
Holger Weiss
8fb1bb1f5f
Log just one [info] message on Carbons negotiation
...
Log one instead of three [info] messages when XEP-0280 (Message Carbons)
support is enabled or disabled successfully. On failure, log an
additional [warning].
2014-05-29 15:21:11 +02:00
Holger Weiss
0cb9ea3643
XEP-0198: Cosmetic change: Reuse event handler
...
On stanza queue overflow, pass a message to self() using the exclamation
mark operator instead of send_all_state_event/2. This allows for
reusing the existing handler for 'kick' events.
2014-05-28 11:24:38 +02:00
Holger Weiss
99ca8281fa
XEP-0198: Terminate session on queue overflow
...
On queue overflow, terminate the c2s session instead of just dropping
items from the queue. This makes sure all stanzas are either delivered
or bounced.
2014-05-27 22:56:33 +02:00
Evgeny Khramtsov
3a27b1dd0c
Merge pull request #226 from weiss/simplify-state-change
...
XEP-0198: Cosmetic change: Simplify state change
2014-05-27 23:30:30 +04:00
Holger Weiss
50a4c5a6ab
XEP-0198: Cosmetic change: Simplify state change
...
When the FSM goes into the 'wait_for_resume' state, let fsm_next_state/2
take care of updating #state.mgmt_state and of writing the log line.
This doesn't change the behavior, but simplifies the code.
2014-05-27 21:14:49 +02:00
Holger Weiss
ed0c89f876
Let ejabberd_c2s always use fsm_next_state/2
...
Make sure any logic implemented in ejabberd_c2s:fsm_next_state/2 is
always applied.
2014-05-27 21:07:53 +02:00
Evgeny Khramtsov
702cddd4ff
Merge pull request #220 from weiss/handle-send-failure
...
XEP-0198: Don't exit on socket send failure
2014-05-27 15:44:04 +04:00
Evgeny Khramtsov
4d1332c30f
Merge pull request #222 from weiss/keep-session-on-failed-resume
...
XEP-0198: Don't drop session on failed resume
2014-05-27 15:38:26 +04:00
Evgeny Khramtsov
402fb9665d
Merge pull request #221 from weiss/omit-redundant-guard
...
XEP-0198: Cosmetic change: Omit redundant guard
2014-05-27 15:34:34 +04:00
Evgeny Khramtsov
b2e84405c1
Merge pull request #218 from weiss/omit-iq-xmlns
...
Omit XML namespace declaration for <iq/> stanzas
2014-05-27 15:32:02 +04:00
Evgeniy Khramtsov
52221127cc
Fix odbc_port option processing
2014-05-27 15:27:42 +04:00
Evgeniy Khramtsov
dceab3689d
Don't forget to include 'Contact' header field in 2xx registrar responses
2014-05-26 21:34:23 +04:00
Holger Weiss
59f6efeaf7
XEP-0198: Don't drop session on failed resume
...
The 'previd' value provided by the client during a session resume
request includes the client's JID and ejabberd's session ID. If there
is a session for the requested JID but with a different session ID,
resumption should fail, but that session shouldn't be closed. This
commit makes sure the latter won't happen.
In practice, this will only make a difference in odd corner cases.
2014-05-23 23:38:04 +02:00
Holger Weiss
737b0ae5dc
XEP-0198: Cosmetic change: Omit redundant guard
...
The stream management state is never 'pending' when the c2s FSM is in
the 'session_established' state.
2014-05-23 20:46:17 +02:00
Evgeniy Khramtsov
8925975c86
Fix proxying of ACK requests for 2xx responses
2014-05-23 20:14:53 +04:00
Holger Weiss
ab9667f917
XEP-0198: Don't exit on socket send failure
...
If stream management is enabled, don't exit the c2s process when
ejabberd_socket:send/2 fails, but close the socket instead. This gives
the client a chance to resume the session.
Thanks go to Matthias Rieber for reporting the issue, providing detailed
logs, and testing the fix.
2014-05-23 11:38:54 +02:00
Badlop
735bd95659
Merge branch 'check-packet-type' of git://github.com/weiss/ejabberd into weiss-check-packet-type
...
Conflicts:
src/ejabberd_c2s.erl
2014-05-21 18:45:28 +02:00
badlop
69abb48c90
Merge pull request #217 from weiss/fix-extauth-cache-usage
...
Don't use cached passwords if "extauth_cache: 0"
2014-05-21 17:35:54 +02:00
badlop
419a98d45a
Merge pull request #216 from lavrin/p1-c2s
...
Cleanup some pieces of ejabberd_c2s
2014-05-21 17:35:24 +02:00
badlop
5d855f3723
Merge pull request #207 from weiss/xep-0334
...
Honor XEP-0334: Message Processing Hints
2014-05-21 17:31:22 +02:00
Holger Weiss
6b996061a2
Omit XML namespace declaration for <iq/> stanzas
...
Only the child elements of <iq/> stanzas are qualified by the namespaces
in question, not the <iq/> stanzas themselves.
This change just clarifies the code. It doesn't alter the behaviour, as
those <iq/> stanzas are handed over to jlib:iq_to_xml/1, and that
function ignores the 'xmlns' attribute anyway.
2014-05-21 00:07:57 +02:00
Holger Weiss
fca640f50f
Don't use cached passwords if "extauth_cache: 0"
...
Regarding "extauth_cache", the guide says: "The integer 0 (zero) enables
caching for statistics, but doesn't use that cached information to
authenticate users." Make sure the cached password isn't used even if
the user is currently logged in with another resource.
2014-05-20 23:00:28 +02:00
Badlop
5010cea1a4
If log uses file:write, no need to double escape ~ in messages (EJAB-1696)
2014-05-20 14:49:52 +02:00
Radosław Szymczyszyn
5726636053
Fix check_from/2 formatting
2014-05-20 12:31:28 +01:00
Radosław Szymczyszyn
b7a542e074
Sanitize copy-pasted get_statustag/1
2014-05-20 12:28:14 +01:00
Radosław Szymczyszyn
9c37450fe4
Fix formatting
2014-05-20 12:26:33 +01:00
Radosław Szymczyszyn
c39ce133de
Build proceed/compressed elements in a sane way
2014-05-20 11:52:02 +01:00
Badlop
6d06f22f64
MUC messages with ~ were not logged (EJAB-1696)
2014-05-19 19:07:46 +02:00
Badlop
a6ddab1e9d
Fix bug when joining empty path
2014-05-14 13:28:39 +02:00
Holger Weiss
6e8dd5bdff
Don't miss incoming presence updates
2014-05-14 01:04:38 +02:00
Holger Weiss
f6da708b02
XEP-0198: Check whether routed packets are stanzas
...
Only stanzas are subject to stream management, so when XEP-0198 support
is enabled, we must distinguish them from non-stanza elements. This
commit adds a send_packet/2 function that can be used in place of
send_stanza/2 or send_element/2 whenever a packet is delivered that
might or might not be a stanza.
2014-05-12 19:20:25 +02: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
Holger Weiss
47efe4e6a9
Don't log MUC messages with <no-store/> hint
...
Honor the <no-store/> and <no-permanent-store/> hints defined in
XEP-0334.
2014-05-12 00:27:20 +02:00
Holger Weiss
03fd88e4ec
Don't store messages with <no-store/> hint
...
Honor the <no-store/> hint defined in XEP-0334.
2014-05-12 00:00:34 +02:00
Holger Weiss
9b16d09261
Don't carbon copy messages with <no-copy/> hint
...
Honor the <no-copy/> hint defined in XEP-0334.
2014-05-11 23:52:20 +02:00
Evgeny Khramtsov
5d22159e9a
Merge pull request #205 from weiss/xep-0198
...
XEP-0198: Improve handling of incorrect stanza counts reported by client
2014-05-10 00:05:17 +04:00
Evgeniy Khramtsov
003fd321ee
Do not try to retreive vCards via local SM for foreign JIDs
2014-05-09 21:26:55 +04:00
Holger Weiss
6d5bfcfe9b
XEP-0198: Improve handling of too large 'h' values
...
If the client says that it handled more stanzas than we sent (due to a
bug in the client's or in our code), increase our outgoing stanza count
accordingly. There's no point in sticking to the old value even if it
was correct, as the client surely won't fix its count during the current
session.
2014-05-09 18:28:14 +02:00
Holger Weiss
15369ff9d7
XEP-0198: Reject <resume/> with negative 'h' value
...
Make sure the 'h' attribute sent with a <resume/> request is
nonnegative, as mandated by XEP-0198.
We already have this check for <a/> elements.
2014-05-09 18:01:31 +02:00
Holger Weiss
a60fda7df4
XEP-0198: Don't warn on invalid ACK elements
...
Do not log a warning (but only a debug message) if the client sends an
invalid </a> packet. Some clients do that occasionally, and there's
nothing server admininistrators could do about that.
2014-05-09 17:54:12 +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
Evgeniy Khramtsov
90a5c054d4
TURN support (EJAB-1017)
2014-05-08 16:14:21 +04:00
Evgeny Khramtsov
115da54557
Merge pull request #203 from hamano/added_get_random_pid_error_handling
...
improve error handling when sql calling with (empty|unknown) host.
2014-05-08 10:02:27 +04:00
Badlop
79a49b1175
Webadmin with extauth requires internal to run at least once (issue #201 )
2014-05-07 17:13:51 +02:00
HAMANO Tsukasa
d3ed12d4ba
fix mod_offline:count_offline_messages/2
2014-05-07 15:38:18 +09: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
Christophe Romain
cc1f93d7a0
Fix PEP broadcasting issue on ODBC (EJAB-1680)
2014-05-06 13:29:35 +02:00
Christophe Romain
58717923eb
Fix PEP broadcasting issue (EJAB-1680)
2014-05-06 12:37:44 +02:00
Holger Weiss
8b1f92575a
XEP-0198: Use "mgmt_" prefix for all #state fields
...
Prefix all ejabberd_c2s #state fields that are used for stream
management with "mgmt_".
2014-05-06 07:27:10 +02:00
Christophe Romain
a6244275b7
remove compilation warnings
2014-05-05 18:16:48 +02:00
Christophe Romain
4bdf1bc7a6
avoid sending duplicated events
2014-05-05 17:53:50 +02:00
Christophe Romain
faa6ad26a0
avoid sending empty events
2014-05-05 17:53:44 +02:00
Christophe Romain
530ac43758
store item when persist_item=false and cache_last_item=false but need last_item
2014-05-05 17:40:42 +02:00
Nathan Bruning
f3aa74a043
Fix small bug in presence_based_delivery implementation
2014-05-05 14:14:03 +02:00
Badlop
872cc12dd8
Temporary room not destroyed when the last participant is expulsed (EJAB-520)
2014-05-05 13:50:52 +02:00
Badlop
70f00a1b1f
extauth_cache can have value 0
2014-05-05 13:13:35 +02:00
Holger Weiss
3b3f3b9131
XEP-0198: Don't log protocol issues
...
There are corner cases where certain clients acknowledge more stanzas
than they received. Nothing really bad will happen in those cases, and
server administrators can't do anything about such issues anyway.
2014-05-05 01:11:14 +02:00
Holger Weiss
32abcbca6c
XEP-0198: Accept stream elements in pending state
...
Due to timing issues, ejabberd_c2s might receive stream elements from
the client while the session is waiting for stream resumption. Those
elements are now accepted.
2014-05-05 00:02:55 +02:00
Holger Weiss
a0917a8e9b
XEP-0198: Log message when waiting for resumption
...
Log an informational message when a session goes into the pending state
(waiting for resumption) after the connection was lost. Administrators
may well be interested in this state change when looking into issues.
2014-05-04 23:08:42 +02:00
Evgeniy Khramtsov
fafec77e56
Make it possible to get/set vCards for MUC rooms
2014-05-04 23:23:17 +04:00
Evgeniy Khramtsov
806c0e56e1
Do not crash on version downgrade
2014-05-03 17:55:03 +04:00
Evgeniy Khramtsov
d0ffcb7fd4
Assume udp_recv/5 now returns new options
2014-05-03 17:48:26 +04:00
Evgeniy Khramtsov
955487391d
Assume tcp_init/2 and udp_init/2 now return new options
2014-05-03 17:48:17 +04:00
Evgeniy Khramtsov
47a39ce738
Remove unused function
2014-05-02 17:43:23 +04:00
Evgeniy Khramtsov
ebd760b7c9
Forking support
2014-05-02 17:43:17 +04:00
Evgeniy Khramtsov
f8417f7c1f
Remove empty line
2014-05-02 17:43:09 +04:00
Evgeniy Khramtsov
3c98de69dc
Some cleanup
2014-05-02 17:43:03 +04:00
Evgeniy Khramtsov
ab6774d93d
Fix CSeq comparison
2014-05-02 17:42:57 +04:00
Evgeniy Khramtsov
58aa200297
Optimize request processing
2014-05-02 17:42:51 +04:00
Evgeniy Khramtsov
a1337cb73f
Do not proxy stray responses statelessly (as per RFC 6026)
2014-05-02 17:42:45 +04:00
Evgeniy Khramtsov
e7e4055cbb
Don't use erlang:integer_to_binary/1
2014-05-02 17:42:37 +04:00
Evgeniy Khramtsov
1d771fe646
Rewrite 'Contact' headers in REGISTER requests
2014-05-02 17:42:31 +04:00
Evgeniy Khramtsov
8e2bc8d19e
Check for 'max_user_sessions' option
2014-05-02 17:42:13 +04:00
Evgeniy Khramtsov
0117787317
Process gen_server timeouts correctly
2014-05-02 17:40:25 +04:00
Evgeniy Khramtsov
16e5d66572
Move some code in a separate function
2014-05-02 17:38:47 +04:00
Evgeniy Khramtsov
6a95422af8
Multiple REGISTER bindings support
2014-05-02 17:38:28 +04:00
Evgeniy Khramtsov
35faffe7da
Locate sessions by proxy processes directly
2014-05-02 17:31:17 +04:00
HAMANO Tsukasa
d83368d73d
fix ejabberd_system_monitor:s2s_out_info/1 error
2014-05-01 15:12:04 +09:00
Evgeny Khramtsov
c545b3de6d
Merge pull request #178 from hamano/devel
...
undefined ejabberd_socket:get_conn_type/1
2014-04-30 21:49:54 +04:00
Evgeniy Khramtsov
02e0649d18
SIP support
...
Conflicts:
configure
configure.ac
doc/guide.tex
2014-04-30 19:38:15 +04:00
HAMANO Tsukasa
0904b8b8ff
improve error handling when sql calling with (empty|unknown) host.
...
see #191
2014-05-01 00:20:58 +09:00
Badlop
ec6c58a21c
Fix error reporting in previous commit
2014-04-30 16:02:20 +02:00
Badlop
b3714a1b2e
Fix formatting string argument (thanks to Locojay)(github #129 )
2014-04-30 15:59:44 +02:00
Evgeny Khramtsov
81a906af01
Merge pull request #191 from hamano/added_get_random_pid_error_handling
...
fix error handling when sql calling with unknown host.
2014-04-30 17:02:39 +04:00
badlop
65519cf262
Merge pull request #190 from hamano/mod_register_web_response_404
...
mod_register_web should response 404 instead of process crash.
2014-04-30 12:42:43 +02:00
badlop
a1b8c54c16
Merge pull request #187 from weiss/fix-ejabberdctl-output
...
Let ejabberdctl accept binary string arguments
2014-04-30 12:41:12 +02:00
HAMANO Tsukasa
a6408e9281
fix error handling when sql calling with unknown host.
2014-04-30 15:32:07 +09:00
HAMANO Tsukasa
0e0bd3329d
mod_register_web should response 404 instead of process crash.
2014-04-30 13:39:17 +09:00
Evgeny Khramtsov
9563b0228f
Merge pull request #177 from weiss/log-tls-sasl-external
...
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-30 00:38:18 +04:00
Evgeny Khramtsov
8419322884
Merge pull request #181 from weiss/check-tls-before-auth
...
Check TLS state before requesting SASL EXTERNAL for outgoing s2s connections
2014-04-30 00:36:08 +04:00
Evgeny Khramtsov
c37aa1b46d
Merge pull request #185 from weiss/verify-cert-for-s2s-out
...
Support certificate verification for outgoing s2s connections
2014-04-30 00:08:24 +04:00
Evgeny Khramtsov
599fdb9ac2
Merge pull request #186 from weiss/add-disconnect-command
...
New ejabberd command: disconnect_user/2
2014-04-29 15:41:41 +04:00
Holger Weiss
ebbceab93f
Translate disconnect_user/2 string sent to client
2014-04-29 11:56:28 +02:00
Holger Weiss
bb2c8b59f8
Avoid #state.lang type errors in corner cases
...
If #state.lang is used before being initialized to some binary string,
the translation code would crash.
2014-04-29 11:41:24 +02:00
Evgeny Khramtsov
4073394e7a
Merge pull request #182 from hamano/register_account_acl
...
fix checking acl in mod_register_web
2014-04-29 13:06:53 +04:00
Evgeny Khramtsov
29aead19d9
Merge pull request #179 from hamano/added_get_random_pid_error_handling
...
added get_random_pid/1 error handling
2014-04-29 13:05:58 +04:00
Holger Weiss
d09c268b20
Let ejabberdctl accept binary string arguments
...
Don't print the following message if an ejabberd command expects binary
string arguments: "This command cannot be executed using ejabberdctl.
Try ejabberd_xmlrpc."
2014-04-29 01:11:08 +02:00
Holger Weiss
6d1055abec
New ejabberd command: disconnect_user/2
2014-04-29 00:50:43 +02:00
Holger Weiss
49bdbf2895
Support certificate verification for outgoing s2s
...
Handle "s2s_use_starttls: required_trusted" the same way for outgoing
s2s connections as for incoming connections. That is, check the remote
server's certificate (including the host name) and abort the connection
if verification fails.
2014-04-28 01:42:02 +02:00
Holger Weiss
a21d2298af
XEP-0198: Turn some warnings into info messages
...
Don't log warnings on events that will happen during normal operation.
2014-04-28 01:01:30 +02:00
Holger Weiss
1aa4ed3f35
Don't mess with s2s out when aborting s2s in
...
Don't try to look up and close outgoing connections to a given server
when aborting incoming connections from that server due to certificate
verification errors. The ejabberd_s2s:find_connection/2 call actually
created one or more *new* connections if less than 'max_s2s_connections'
connections were found. Then, no more than one of those possibly new
connections were stopped by the ejabberd_s2s_out:stop_connection/1 call.
It's not really necessary to bother with outgoing connections at all,
here.
2014-04-28 00:17:05 +02:00
Holger Weiss
eabca82765
Send stream trailer before closing s2s connection
...
When aborting an incoming s2s connection due to certificate verification
errors, send a stream trailer before closing the socket.
2014-04-27 00:28:42 +02:00
HAMANO Tsukasa
71dba66330
fix checking acl in mod_register_web
2014-04-24 18:15:39 +09:00
Holger Weiss
d805d198ac
Check TLS state before requesting SASL EXTERNAL
...
Make sure a remote server can't circumvent "s2s_use_starttls: required"
by offering SASL EXTERNAL authentication over a non-TLS connection.
2014-04-24 11:04:10 +02:00
HAMANO Tsukasa
ffe9f3c192
added get_random_pid/1 error handling
2014-04-24 15:34:41 +09:00
HAMANO Tsukasa
219f9276d1
undefined ejabberd_socket:get_conn_type/1
2014-04-24 12:42:22 +09:00
Holger Weiss
f988aad940
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-23 23:28:13 +02:00
HAMANO Tsukasa
9ec014c184
added error handling in mod_pubsub_odbc.
2014-04-23 23:35:34 +09:00
Holger Weiss
86e17c379c
Verify host name before offering SASL EXTERNAL
...
Prior to this commit, ejabberd handled certificate authentication for
incoming s2s connections like this:
1. Verify the certificate without checking the host name. On failure,
behave according to 's2s_use_starttls'. On success:
2. Offer SASL EXTERNAL.
3. If the remote server chooses SASL EXTERNAL, compare the authorization
identity against the certificate host name(s). On failure, abort the
connection unconditionally.
ejabberd now does this instead:
1. Verify the certificate and compare the certificate host name(s)
against the 'from' attribute of the stream header. On failure,
behave according to 's2s_use_starttls'. On success:
2. Offer SASL EXTERNAL.
3. If the remote server chooses SASL EXTERNAL, ignore the authorization
identity (if any) and consider the peer authenticated.
The old behavior was suggested by previous versions of XEP-0178, the new
behavior is suggested by the current version 1.1.
2014-04-23 11:45:17 +02:00
Holger Weiss
4bc8b6bc9f
Fix extraction of host names from certificates
2014-04-22 22:12:04 +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
Holger Weiss
d350cc6361
Accept "extauth_cache: false"
...
Don't log a "configuration problem" message if "extauth_cache: false" is
explicitly specified, as that's a valid configuration setting as per the
documentation.
2014-04-16 14:15:14 +02:00
Paweł Chmielowski
7af7b7d3f0
Fix compilation on pre-R17
2014-04-15 17:05:25 +02:00
Paweł Chmielowski
d97b4fd9ca
Fix loading translation files on R17
2014-04-15 17:05:22 +02:00
Alexey Shchepin
f93758a3cd
Merge pull request #160 from runcom/protocol_options
...
Add option to specify openssl options
2014-04-15 19:01:21 +04:00
badlop
285c4c17cf
Merge pull request #146 from jamielinux/master
...
Update FSF address
2014-04-11 13:35:46 +02:00
Evgeniy Khramtsov
a21edc2f3a
Pretty print accepted transport address
2014-04-11 12:30:58 +02:00
Holger Weiss
b3b12effbc
Carbons: Handle unavailable resource like bare JID
...
As the session manager handles messages sent to unavailable resources
just like messages sent to bare JIDs, mod_carboncopy must do that, too.
That is, forward them only to those carbon-copy-enabled resources that
don't have a top priority, in order to avoid duplicates.
2014-04-08 23:32:30 +02:00
Antonio Murdaca
fbf71f86f3
Add option to specify openssl options
2014-04-08 18:46:52 +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
Holger Weiss
c114eb3736
XEP-0198: Don't bounce/resend forwarded messages
...
On connection timeout, drop any messages that were forwarded by some
encapsulating protocol, such as XEP-0280 carbon copies or XEP-0313
archive messages. Bouncing or resending them could easily lead to
unexpected results.
2014-04-07 21:21:11 +02:00
badlop
766ab1eb46
Merge pull request #158 from weiss/fix-lang-type
...
Fix a type error
2014-04-07 13:28:41 +02:00
badlop
76fb7d284a
Merge pull request #157 from weiss/fix-mod-update
...
Fix badarg issue on module update web site
2014-04-07 13:27:31 +02:00
Holger Weiss
37f409d254
Fix a type error
2014-04-06 00:39:51 +02:00
Holger Weiss
e02a4913d2
Fix badarg issue on module update web site
2014-04-05 23:23:44 +02:00
HAMANO Tsukasa
1250ee5d77
mod_register_web: check same acl as mod_register.
2014-04-04 04:07:29 +09:00
Badlop
8b9c49440a
Fix user_resources command, and ejabberd_xmlrpc parsing auth details in call
2014-03-31 16:51:47 +02:00
Badlop
a5a065290b
Small change in ejabberd_ctl output format to support bash completion
2014-03-26 16:43:53 +01:00
Badlop
ac0e199d36
Provide meaningful text to user when admin kicks session (EJAB-1455)
2014-03-26 16:01:37 +01:00
Holger Weiss
a97c716352
XEP-0198: Bounce unacked stanzas by default
...
If the new "resend_on_timeout" option is set to false (which it is by
default), bounce any unacknowledged stanzas instead of re-routing them.
2014-03-25 23:23:38 +01:00
Evgeniy Khramtsov
2150b10901
Fix service_info options processing
2014-03-25 09:52:57 +04:00
Evgeniy Khramtsov
5c36c44689
Remove annyoing warnings
2014-03-25 09:42:12 +04:00
Badlop
d5f90965d7
Fix ACLs syntax change (thanks to jokker23)(issue #140 )
2014-03-24 19:40:55 +01:00
Holger Weiss
2da6933bb7
Remove "fun" element from c2s #state
...
Memory consumption wise, local "fun" references are quite expensive.
2014-03-22 20:25:43 +01: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
2b527f5e9a
Merge pull request #149 from iulianlaz/carboncopy-fix-msg-back-to-original-sender
...
#148 Carbon copy sends message back to original sender solved
2014-03-16 20:59:49 +01:00
Holger Weiss
88a200e100
Remove some commented out code
...
The code that had been commented out at some earlier point in time would
now break XEP-0198.
2014-03-16 00:12:47 +01:00
Badlop
633d47f784
Update copyright dates to 2014 (EJAB-1679)
2014-03-13 12:30:57 +01:00
Holger Weiss
7d594086c3
Add initial XEP-0198 support (EJAB-532)
...
Implement partial support for XEP-0198: Stream Management. After
successful negotiation of this feature, the server requests an ACK for
each stanza transmitted to the client and responds to ACK requests
issued by the client. On session termination, the server re-routes any
unacknowledged stanzas. The length of the pending queue can be limited
by setting the "max_ack_queue" option to some integer value (default:
500). XEP-0198 support can be disabled entirely by setting the
"stream_management" option to false (default: true).
So far, stream management is implemented only for c2s connections, and
the optional stream resumption feature also described in XEP-0198 is not
(yet) supported.
This addition was originally based on a patch provided by Magnus Henoch
and updated by Grzegorz Grasza. Their code implements an early draft of
XEP-0198 for some previous version of ejabberd. It has since been
rewritten almost entirely.
2014-03-12 23:34:14 +01:00
iulianlaz
9ef1ad0b6e
#148 Carbon copy sends message back to original sender solved
2014-03-06 08:40:38 +00:00
Badlop
e211bf522e
Support XEP-0321: Remote Roster Management (EJAB-1381)
2014-02-26 18:02:37 +01:00
Badlop
46b2d91105
Convert DB details to string when calling odbc:connect/2 (EJAB-1681)
2014-02-26 17:26:46 +01:00
Badlop
c29ba14dbf
Don't provide current password in webinterface (github issue #137 )
2014-02-26 17:19:07 +01:00
Jamie Nguyen
8538997d61
Update FSF address
2014-02-22 10:27:40 +00:00
Holger Weiss
e82a79efd5
Add missing parenthesis
2014-02-21 23:33:13 +01:00
Badlop
63a7011c38
When occupant changes nick, include status 110 in stanzas sent to him
2014-02-14 16:22:14 +01:00
Badlop
4c8b6fe16b
Fixing mod_carboncopy sends carbons of carbons ( fixes #107 )
2014-01-23 17:29:24 +01:00