Evgeniy Khramtsov
da310a5173
Rewrite mod_adhoc and mod_announce to use XML generator
2016-07-26 09:52:29 +03:00
Alexey Shchepin
839490b0d9
Add DB backend support for ejabberd_oauth
2016-07-25 20:08:30 +03:00
Mickael Remond
c183092aa4
Simplify code for command policy group expansion
2016-07-25 18:28:05 +02:00
Badlop
5d4f8bcf0d
Export acl:parse_ip_netmask/1 for mod_rest (ejabberd-contrib#175)
2016-07-25 16:57:05 +02:00
Evgeniy Khramtsov
179fcd9521
Rewrite mod_mam and mod_muc to use XML generator
2016-07-25 13:50:30 +03:00
Mickael Remond
d7ad99f147
Initial attempt on access on commands
...
May change and will require more work / test / refactor
2016-07-25 11:43:49 +02:00
Holger Weiss
4b0d71d402
Don't return error for blocked MUC PMs
...
If a message stanza is blocked as per XEP-0016 or XEP-0191 and the
stanza is marked as a private MUC message, don't return an error. This
makes sure users won't be kicked from MUC rooms when blocking other
participants.
2016-07-24 20:55:11 +02:00
Mickael Remond
b4a430541d
Return more user friendly, human readable error description
2016-07-24 14:10:12 +02:00
Mickael Remond
bfa61eaa46
Make default OAuth token TTL values more user friendly
2016-07-23 18:57:57 +02:00
Mickael Remond
68555ff466
Add support for checking access rules conformance for commands
2016-07-23 18:21:45 +02:00
Mickael Remond
1485b56211
Move any access rules check to ACL module
2016-07-23 18:21:45 +02:00
Mickael Remond
2c70c572c8
Clean-up of error codes and format json structure
2016-07-23 18:21:45 +02:00
Holger Weiss
d4d1941133
XEP-0198: Log debug message when dropping stanza
...
Log a debug message when an unacknowledged message is neither resent nor
bounced because it's archived.
2016-07-23 01:23:24 +02:00
Holger Weiss
814b80c644
Preserve PID for offline sessions
...
Don't set the PID to 'undefined' when a session goes offline, as this
looses the information which node created the session table entry.
Fixes #1196 .
2016-07-23 01:08:05 +02:00
Pablo Polvorin
4332dddbc4
Support oauth password grant type
...
As in https://tools.ietf.org/html/rfc6749#section-4.3
2016-07-22 19:17:12 -03:00
Pablo Polvorin
caf7b54305
oauth: single jid field instead of username/password fields
2016-07-22 15:37:48 -03:00
Badlop
c5d9d35e7b
Convert password provided by web form to UTF8 before passing it ( #375 )
2016-07-22 16:52:13 +02:00
Jerome Sautret
ffbe97d988
Quote postgresql database name ( #1136 )
2016-07-22 16:33:40 +02:00
Paweł Chmielowski
bdfef09c0f
Fix handling of complex values as arguments in http_api
2016-07-22 15:26:27 +02:00
Evgeny Khramtsov
dd38bef8b1
Merge pull request #1201 from xmppjingle/master
...
External Component Connection Hooks
2016-07-22 00:35:43 +04:00
xmppjingle
6983dfa21f
External Component Hook
...
Changed Hook Trigger Event and included a Reason upon
component_disconnected/2 Hook
2016-07-21 14:03:01 -03:00
Pablo Polvorin
cbfab687e8
Oauth callback must pass expires_in as ttl instead of epoch
2016-07-20 14:47:11 -03:00
Pablo Polvorin
b5a90be3cb
Merge branch 'master' of github.com:processone/ejabberd
2016-07-19 20:19:17 -03:00
Pablo Polvorin
1d317e8068
Let user choose the desired oauth token TTL
2016-07-19 20:18:07 -03:00
Holger Weiss
8f8c499cfa
mod_mam: Fix handling of result set page limit
...
Restore function clause for handling a client-specified result set page
limit that doesn't exceed mod_mam's upper threshold.
2016-07-19 21:23:30 +02:00
Holger Weiss
9fcb81dea9
mod_mam: Always limit result set page size
...
Limit the number of messages returned for a given MAM request even if
the client didn't specify an RSM set (not just if the client specified
an RSM set without a limit).
This is still not done for MAM v0.2 requests though, as that version of
the XEP doesn't require clients to support RSM.
2016-07-19 21:08:13 +02:00
Evgeniy Khramtsov
5d90292849
Fix hooks de-registration
2016-07-19 15:33:17 +03:00
Paweł Chmielowski
655cbf6055
Make access rules in ejabberd_web_admin configurable
2016-07-19 11:27:45 +02:00
Evgeniy Khramtsov
bc802a4049
Rewrite mod_blocking to use XML generator
2016-07-19 10:07:04 +03:00
Evgeniy Khramtsov
a4a9dd7f03
Rewrite mod_offline to use XML generator
2016-07-19 07:56:14 +03:00
Pablo Polvorin
483ef09263
Fix command argument formatting
2016-07-19 00:51:04 -03:00
Pablo Polvorin
33e0283f0d
Add 'ejabberd:user' and 'ejabberd:admin' oauth scopes
...
'ejabberd:user' includes all commands defined with policy "user".
'ejabberd:admin' includes commands defined with policy "admin".
2016-07-19 00:24:06 -03:00
Pablo Polvorin
673a654c47
Fix ce0d1704c6
...
Original request was to allow ejabberd sysadmin to generate
tokens for specific users. JIDs must not be passed as argument
when requesting the tokens.
2016-07-18 20:25:23 -03:00
xmppjingle
48c88b61b6
Merge remote-tracking branch 'processone/master'
2016-07-18 17:55:31 -03:00
xmppjingle
fca2f24231
External Component Connection Hooks
2016-07-18 17:55:10 -03:00
Holger Weiss
8bc3dc9c49
jlib: Don't try to keep just one <delay/> tag
...
It seems unclear whether XEP-0203 really mandates that stanzas may not
have multiple <delay/> tags. Editing/removing existing tags doesn't
seem worth the effort, especially as we'd have to take more care which
tag to keep if the stanza already has more than one.
2016-07-18 22:31:08 +02:00
Evgeniy Khramtsov
9a8e197d7e
Initial version based on XML generator
2016-07-18 15:01:32 +03:00
Holger Weiss
749033598d
Omit [info] message with number of queued stanzas
...
Just log a debug message if a stream management session times out and
some stanzas weren't acknowledged.
2016-07-10 22:21:57 +02:00
Evgeniy Khramtsov
f6e960d326
Fix compilation error
2016-07-10 08:45:24 +03:00
Evgeniy Khramtsov
786bd4f26c
Use hooks instead of direct calls to mod_mam
2016-07-09 12:43:01 +03:00
Holger Weiss
5f48d2641b
mod_http_upload_quota: Depend on mod_http_upload
...
mod_http_upload_quota uses mod_http_upload's "docroot" option, so the
mod_http_upload configuration must be parsed, first. Fixes #1025 .
2016-07-08 20:47:02 +02:00
Christophe Romain
6b38d19085
Do send last items only for subscription on current plugin type
2016-07-08 15:18:39 +02:00
Evgeniy Khramtsov
661b041302
Rename MUC/Sub's namespace
2016-07-08 15:07:26 +03:00
Evgeniy Khramtsov
368b202144
Handle MUC/Sub subscriptions list request
2016-07-08 15:07:10 +03:00
Evgeniy Khramtsov
caaf02eaa0
Advertise MUC/Sub support in MUC service disco#info
2016-07-08 15:06:08 +03:00
Evgeniy Khramtsov
32de9a56a5
Experimental MUC/Sub support
2016-07-08 15:05:50 +03:00
Evgeniy Khramtsov
71f27ee7d4
Get rid of warnings
2016-07-07 12:17:38 +03:00
Evgeniy Khramtsov
c718cbbd9f
Warn on cyclic modules dependencies
2016-07-07 11:34:17 +03:00
Badlop
12c0d888b1
Revert "Recover fix of 907e239
lost in 9deb294
(thanks to Alexey Shchepin)" ( #1183 )
...
This reverts commit 53f3a45803
.
2016-07-06 17:54:37 +02:00
Evgeniy Khramtsov
4220a2b98c
Make modules loading in a dependent order ( #1191 )
2016-07-06 14:58:48 +03:00
Christophe Romain
de9f80f2ce
Add missing '/' for jid matching from commit e300f80
2016-07-06 10:06:17 +02:00
Alexey Shchepin
be3a4acb55
Fix missed escaping in node_flat_sql.erl
2016-07-05 17:45:37 +03:00
Christophe Romain
3820aaa421
Quote reserver 'type' keyword for pgsql to fix e300f80
2016-07-05 16:16:40 +02:00
Christophe Romain
e300f8095d
Fix use of like parameter in sql pubsub's requests
2016-07-05 15:43:59 +02:00
gabrielgatu
b31c0d9e2e
Support elixir module installer
2016-07-05 12:36:49 +02:00
Holger Weiss
8e04a7ef4d
mod_configure: Fix editing of access rules
2016-07-03 22:58:54 +02:00
Paweł Chmielowski
0737958b45
Fix compilation issues on R19
2016-07-01 21:20:10 +02:00
Holger Weiss
8be1d49961
mod_mam_mnesia: Force garbage collection
...
The VM fails to collect the garbage generated during MAM lookups
automatically, so mod_mam_mnesia's memory usage easily goes up to
several gigabytes if we don't force garbage collection.
2016-06-29 22:32:59 +02:00
Holger Weiss
10d4c16a97
mod_client_state: Throttle PEP stanzas by default
2016-06-29 22:22:49 +02:00
Pablo Polvorin
ce0d1704c6
Allow generation of oauth tokens from command line
...
Oauth tokens can be generated for commands (scopes) having admin|user|open
policy. Restricted commands are not available as those are only usable
from ejabberdctl command line.
Four new commands are available:
$ejabberdctl oauth_issue_token "stats;get_roster"
Generates a token authorized to call both stats and get_roster
commands. Note scopes must be separated by semicolon.
$ejabberdctl oauth_list_tokens
List tokens generated from the command line, with their scope
and expirity time.
$ejabberdctl oauth_list_scopes
List scopes available
$ejabberdctl oauth_revoke_token "Lbs7qdJfdKXOWzVrArgyckY055tE1xnt"
Revokes the given token
2016-06-29 00:22:28 -03:00
Paweł Chmielowski
3446aba753
Include correct version in stream:stream when reporting errors
...
This fixes issue #1174
2016-06-27 16:40:57 +02:00
Paweł Chmielowski
f56cff925c
acl: ACLName rule should match if any part of ACLName matches
2016-06-24 15:09:51 +02:00
Holger Weiss
1794dd19d0
mod_pubsub: Fix matching of set_node/1 result
...
nodetree_tree_sql:set_node/1 returns {result, NodeIdx} on success, not
{ok, NodeIdx}. Thanks to Christophe Romain for spotting this.
2016-06-23 14:23:24 +02:00
Paweł Chmielowski
1b5c50a384
When convertion of xmlrpc argument to type fails, report it as error
2016-06-23 10:41:16 +02:00
Holger Weiss
065f5272e6
mod_blocking_sql: Handle default list corner case
...
Handle the situation where a list of the name "Blocked contacts" was
created by an XEP-0016 client, but no default list exists.
2016-06-22 22:36:27 +02:00
Christophe Romain
cd0244eb71
Merge pull request #1120 from anagromataf/feature/archive-id-in-message-carbons
...
Send unique stanza id and archived tag also in the message carbons
2016-06-22 15:47:27 +02:00
Christophe Romain
f029488260
Restore get_items conditions when not using RSM ( #1147 )
2016-06-22 13:12:40 +02:00
Badlop
eeeb190680
Set HTTP/1.0 so github accepts the request ( #1157 )
2016-06-22 12:43:24 +02:00
Christophe Romain
95ff94b054
Fix PubSub RSM on get_items ( #1147 )
2016-06-22 12:25:41 +02:00
Christophe Romain
7744339347
Update supported xep version
2016-06-22 11:24:01 +02:00
Christophe Romain
2efa8677c9
Fix pgsql compatibility on delete_old_messages ( #1137 )
2016-06-22 11:21:11 +02:00
Holger Weiss
c928956d73
XEP-0198: Apply cosmetic changes
2016-06-21 23:17:17 +02:00
Holger Weiss
7ddeac38b6
XEP-0198: Also count stanzas when socket is closed
...
Don't forget to count stanzas received from the stream management client
that are processed right after the connection was lost.
2016-06-21 22:54:41 +02:00
Paweł Chmielowski
3a8da27d86
Use {access,shaper}_rules_validator in other places where access rules are used
2016-06-21 13:18:24 +02:00
Paweł Chmielowski
52d45604ba
Use new access_rules_validator in couple places
2016-06-21 12:28:53 +02:00
Paweł Chmielowski
804190e4a8
Add acl:{access,shaper}_rules_validator for use in {mod_}opt_type()
2016-06-21 12:26:31 +02:00
Paweł Chmielowski
4b9613e8fe
Allow {mod_}opt_type to transform values passed to it, and for better error reporting
2016-06-21 12:25:29 +02:00
Christophe Romain
b2f53fb962
Avoid cleanup on bag when disc_only, switch in memory ( #1161 )
2016-06-21 10:43:19 +02:00
Holger Weiss
c91c5aa352
Fix handling of queued stanzas on session timeout
...
Don't fail to resend or bounce unacknowledged stanzas if the stream
management session timed out.
Closes #1160 .
2016-06-19 23:32:15 +02:00
Paweł Chmielowski
1fb1e8721b
Allow using shaper defined by name like in in s2s_shaper: fast
2016-06-16 11:04:01 +02:00
Paweł Chmielowski
0a09f27373
Typo in option name
2016-06-16 11:00:38 +02:00
Paweł Chmielowski
7b308e0d41
Add shorter version of some common access rules definitions
...
This add conversion of
- allow
to
- allow: all
and
- allow: acl_name
to
- allow:
- acl: acl_name
(this works also for deny, and number in shapers)
2016-06-15 19:23:55 +02:00
Badlop
9004608181
Check password with jid:resourceprep when registering account ( #996 )
2016-06-14 23:35:47 +02:00
Holger Weiss
26bce5dee3
mod_mam: Fix "assume_mam_usage: if_enabled"
2016-06-14 16:40:46 +02:00
Badlop
34cf693231
Recover ec6c58a
which was reverted in 100827e
(thanks to Alexey Shchepin)
2016-06-10 13:18:32 +02:00
Badlop
4ccc40bce5
push_roster must convert read strings to binaries ( #1075 )
2016-06-08 21:16:30 +02:00
Badlop
53f3a45803
Recover fix of 907e239
lost in 9deb294
(thanks to Alexey Shchepin)
2016-06-08 19:34:05 +02:00
Badlop
858d880675
Allow again multiple fqdn values in configuration (EJAB-1578)
2016-06-08 19:28:17 +02:00
badlop
a4f213837e
Merge pull request #1125 from vthriller/roster-push
...
mod_roster should probably respect roster item changes introduced with roster_process_item hooks upon pushing
2016-06-08 13:57:52 +02:00
Badlop
5173de503c
Produce mod_last entry on account creation ( processone/ejabberd-contrib#62 )
2016-06-08 13:02:20 +02:00
Badlop
8a7b31ca63
When stopping ejabberd, stop modules after broadcasting c2s shutdown ( #1144 )
2016-06-07 18:41:38 +02:00
Holger Weiss
78d4200f05
mod_pubsub: Fix node configuration changes for SQL
...
nodetree_tree_sql:set_node/1 returns {ok, NodeIdx} rather than 'ok' on
success.
2016-06-06 00:18:24 +02:00
Holger Weiss
60803f5780
Simplify check for carbon-copied chat states
...
Let jlib:is_standalone_chat_state/1 unwrap carbon copies rather than
leaving this to the caller. We still export jlib:unwrap_carbon/1, as
this function might also be useful for other purposes.
2016-06-05 22:36:56 +02:00
Holger Weiss
5c3074c0fb
mod_client_state: Fix handling of chat states
...
Fix the check for chat states sent from other resources of the same
user.
2016-06-05 22:04:38 +02:00
Holger Weiss
4789ddf1ee
mod_client_state: Simplify handling of PEP stanzas
...
Let mod_client_state simply queue the most recent item of a given PEP
node (from a given contact) instead of also taking the payload namespace
into account.
2016-06-05 21:48:03 +02:00
Holger Weiss
8305cc293b
XEP-0352: Pass chat states of other resources
...
Don't hold back (carbon copies of) chat states from other resources, as
they might be used to sync the state of conversations across clients.
E.g., if one client becomes active, another one might want to remove a
notification (immediately).
2016-06-03 21:52:11 +02:00
Holger Weiss
4d5eab6662
Unwrap carbon copies when checking for chat states
...
Detect standalone chat states that were carbon-copied.
2016-06-03 20:28:48 +02:00
Holger Weiss
3a1fc6fb66
Ignore <delay/> when checking for chat states
...
Ignore XEP-0203 elements when checking whether a message stanza is a
standalone chat state.
2016-06-03 19:02:26 +02:00
Holger Weiss
5c1db176a9
Fix "unused variable" warning
2016-06-03 12:58:20 +02:00
Badlop
0503d899cf
Fix problem in dfee843
when non-occupant admin kicks an occupant ( #1135 )
2016-06-03 00:10:25 +02:00
Alexey Shchepin
d201f013b2
Stronger tests in the test suite, SQL updates and fixes
2016-06-02 18:09:58 +03:00
Badlop
5352037680
Report in SQL when scram is enabled but the stored password isn't ( #1096 )
2016-06-01 20:48:52 +02:00
Holger Weiss
bbb90b9928
Ignore offline sessions
...
Let mod_admin_extra and mod_configure ignore offline sessions when
querying the session table.
2016-06-01 01:01:54 +02:00
Christophe Romain
e7843bf92b
Fix set_presence API
2016-05-31 11:47:08 +02:00
Paweł Chmielowski
fc2b7018cc
More strict check for commands with policy user
2016-05-30 23:06:29 +02:00
Paweł Chmielowski
e81302dc79
Allow @ inside acl user{,_glob,_regexp} to pass both user and server in single string
2016-05-30 12:30:44 +02:00
Paweł Chmielowski
1981e13326
Allow passing username and ip to ejabberd_comamnds, and use it in mod_http_api
2016-05-26 11:08:53 +02:00
Paweł Chmielowski
fffae97940
Use acl:access_matches in c2s
2016-05-26 11:08:53 +02:00
Paweł Chmielowski
49658e1655
New ACL infrastructure
2016-05-26 11:08:53 +02:00
Paweł Chmielowski
c55319c81e
Do not call transform_terms multiple times on configs when merging them
2016-05-26 11:08:53 +02:00
Badlop
ca329826cb
Retrieve parenthesis for easy reading, lost in old commit 9deb294
2016-05-25 12:44:05 +02:00
Evgeny Khramtsov
14b53fbcb0
Merge pull request #1131 from weiss/failed-resume-h
...
XEP-0198: Indicate number of handled stanzas if resumption fails
2016-05-25 11:56:47 +04:00
Evgeny Khramtsov
b055c2a13a
Merge pull request #1126 from weiss/muc-send-affiliation
...
Notify on MUC affiliation changes of non-occupants
2016-05-25 11:55:06 +04:00
Holger Weiss
c958fa2f06
Add support for PubSub publishing options
...
Add code necessary to support publishing options as described in
XEP-0060, #7.1.5. A node plugin that expects publishing options must
add <<"publish-options">> to the features/0 list and then handle the
publishing options handed over to the publish_item/7 call.
Signed-off-by: Christian Ulrich <christian@rechenwerk.net>
2016-05-25 08:40:12 +02:00
Holger Weiss
30e814dd4b
XEP-0198: Add 'h' attribute to <failed/> element
...
If a resume request is rejected because the session timed out, indicate
the number of handled stanzas as per version 1.5 of XEP-0198.
2016-05-24 22:20:58 +02:00
Holger Weiss
8c16fdf59f
mod_mam_mnesia: Clarify error message
2016-05-24 07:58:07 +02:00
Holger Weiss
a2f0e157bc
ejabberd_auth*: Fix indentation
2016-05-24 00:40:25 +02:00
Holger Weiss
2a9dd548b5
mod_mam_mnesia: Don't exceed table size limit
...
Don't write MAM messages into an Mnesia archive if the size of the table
comes close to the 2 GB limit for tables with disc-only copies. That
way, the table is at least not corrupted when the limit is reached.
2016-05-24 00:25:52 +02:00
Holger Weiss
3f3ecad981
mod_mam_mnesia: Use transactions when writing
...
Let mod_mam_mnesia use transactions when storing or deleting messages.
If old messages of a user are to be removed, delete the user's archive
and rewrite it from scratch, as that seems to be much faster than
removing individual records with delete_object/1.
Closes #1065 .
2016-05-24 00:08:23 +02:00
Holger Weiss
70452ba25a
mod_register: Only set timeout on success
...
Don't set the registration timeout if the password was rejected for
being too weak.
2016-05-23 23:27:42 +02:00
Holger Weiss
9d87a4a6d4
mod_muc_room: Notify on affiliation changes
...
Notify the current room occupants if the affiliation of a non-occupant
is changed as per example 195 of XEP-0045. In anonymous rooms, only
moderators are notified, though.
2016-05-20 01:28:16 +02:00
vthriller
f6ba91ff97
mod_roster should probably respect roster item changes introduced with roster_process_item hooks upon pushing
2016-05-19 13:45:42 +03:00
Holger Weiss
420ae65590
mod_client_state: Add function specifications
...
Add function specifications and apply cosmetic changes to
mod_client_state.
2016-05-18 21:30:38 +02:00
Holger Weiss
8f72c27b88
mod_client_state: Add "queue_pep" option
...
If the new "queue_pep" option is enabled and the client is inactive, PEP
notifications are throttled in a similar way to presence stanzas and
chat states. Only the most recent notification of a given node and
payload type will be queued from a given contact.
2016-05-17 22:12:04 +02:00
Holger Weiss
4f009e64fc
mod_client_state: Queue chat state notifications
...
Queue standalone chat states instead of simply dropping them when the
client is inactive. Only the most recent chat state of a given client
is queued.
2016-05-17 20:55:45 +02:00
Holger Weiss
ba74c1c367
Move CSI queue handling into mod_client_state
...
Let mod_client_state handle the queueing of stanzas, not just their
classification. This simplifies the ejabberd_c2s code and gives
(custom) CSI modules more flexibility.
2016-05-17 19:27:18 +02:00
Badlop
ba2680df61
Delete duplicated command export_sql, use export2sql instead ( #1118 )
2016-05-16 17:57:57 +02:00
Tobias Kräntzer
2529acc36c
Send unique stanza id and archived tag also in the message carbons
...
- Change order of the hooks in mod_mam for sending and receiving packets. Messages are archived before a carbon copy is send to the other recourcces.
- Add archived tag and unique stanza id to the outgoing packet to have message carbons with the archive information.
- Add additional hook (in mod_mam) to strip the archive tag for outgoing packets after message carbons have been send.
2016-05-15 20:13:25 +02:00
Holger Weiss
ff199a323d
Fix jid:from_string/1 function specification
2016-05-15 16:19:13 +02:00
Alexey Shchepin
792f47b4bd
Update SQL escaping
2016-05-13 17:56:48 +03:00
Evgeniy Khramtsov
be2a9e35ae
Fix C2S session data leak ( #1078 )
2016-05-09 14:18:47 +03:00
Evgeniy Khramtsov
068db1a2d9
Handle Redis connection in a separate module
2016-05-09 08:36:30 +03:00
Holger Weiss
4717d64d7a
mod_client_state: Delete only the configured hooks
2016-05-08 16:45:31 +02:00
Holger Weiss
f7f40cf9a6
Let client retry HTTP upload on file size mismatch
...
Let the main mod_http_upload process look at the size of an HTTP upload
rather than performing this check in the ejabberd_http handler. This
way, the upload slot won't be invalidated if the size of the uploaded
file doesn't match the size requested for the slot. The PUT request is
still rejected, but the client now has a chance to retry the upload.
2016-05-08 15:36:51 +02:00
Holger Weiss
ff4a0e1808
XEP-0198: Use different error message for bounces
...
When stanzas are bounced from the stream management queue (because the
session timed out or was closed for some other reason), use a different
error message so that this situation can be distinguished from other
cases.
2016-05-06 14:12:22 +02:00
Holger Weiss
51238bff83
Bounce messages sent to server JID
...
If a message is sent to the server JID (without node part), generate an
error message rather than dropping the message silently.
2016-05-06 13:59:21 +02:00
Alexey Shchepin
b2ffa1db96
Add missed jlib:term_to_expr and jlib:expr_to_term functions
2016-05-05 16:42:48 +03:00
Alexey Shchepin
0ea0ba3004
Update more SQL queries
2016-05-05 15:51:58 +03:00
Holger Weiss
d6700bdc5b
Merge remote-tracking branch 'processone/pr/1088'
...
* processone/pr/1088:
Process messages of unknown type consistently
2016-05-05 00:20:15 +02:00
Christophe Romain
13c6430341
Add missing odbc->sql in comment from commit 1aae8a9f
2016-05-04 09:11:18 +02:00
Holger Weiss
12a8d915cd
Merge remote-tracking branch 'processone/pr/1087'
...
* processone/pr/1087:
Return error when blocking last activity request
2016-05-04 00:16:56 +02:00
Holger Weiß
6cb60aaff5
Cosmetic change: Make variable names consistent
...
Use the same variable names in both mod_mam:select/8 clauses to avoid
confusion.
2016-05-03 19:12:57 +02:00
Holger Weiss
6da07d78b5
Merge remote-tracking branch 'processone/pr/1086'
...
* processone/pr/1086:
Return error when blocking message to offline user
2016-05-02 21:08:06 +02:00
Christophe Romain
8a6c51290a
Pass noauth when auth isn't provided
2016-05-02 15:07:00 +02:00
Christophe Romain
07196b6c62
Fix sender in case of explicit pep subscriptions
2016-05-02 15:04:14 +02:00
Paweł Chmielowski
53e1100cc4
Don't halt program when include_config_file is missing/can't be read
2016-05-02 14:52:23 +02:00
Evgeniy Khramtsov
47050db6b8
Don't forget to import mod_opt_type/1 in mod_metrics
2016-05-02 12:18:18 +03:00
Holger Weiss
d54f211514
Add mod_opt_type/1 callback to gen_mod behaviour
2016-05-01 22:09:40 +02:00
Holger Weiss
b46ed7044a
Cope with modules that don't export mod_opt_type/1
2016-05-01 22:06:15 +02:00
Evgeniy Khramtsov
82082f1799
Add behaviour to mod_vcard_xupdate DB modules
2016-05-01 11:03:20 +03:00
Evgeniy Khramtsov
3493a87469
Fix typo in mod_mam:select() ( #1098 )
2016-04-30 21:37:18 +03:00
Christophe Romain
6a10916dda
Let shaper cope with low resolution system clock
...
We no longer rely on getting unique values from clock source, so we need
to handle cope with systems which does not have a microsecond resolution
on system clock (such as MS Windows)
2016-04-29 10:57:34 +02:00
Christophe Romain
639c2fb640
Add pubsub subscribe/unsubscribe hook
2016-04-28 15:57:55 +02:00
Evgeniy Khramtsov
c585f74730
Better formatting of configuration problem log message
2016-04-28 09:03:05 +03:00
Evgeniy Khramtsov
9c369b7a8c
Improve detection of databases supported by modules ( #1092 )
2016-04-27 17:10:50 +03:00
Evgeniy Khramtsov
52fde758b3
Get rid of "internal" DB type. This also fixes #1092
2016-04-27 09:44:32 +03:00
Christophe Romain
ef90a389c1
Fix use of pubsub node plugin when configured with default_node_config
2016-04-25 09:44:46 +02:00
Holger Weiss
36164d9446
Return error when blocking last activity request
...
As per XEP-0016 and XEP-0191, return a service-unavailable error when an
incoming last activity query was blocked by a privacy list (just as we
do for other IQ requests).
2016-04-25 09:33:47 +02:00
Holger Weiss
45321fa2e2
Process messages of unknown type consistently
...
If an incoming message sent to an unavailable resource has an unknown
type, handle it like messages of type "normal" (as mandated by RFC 6121,
section 5.2.2). The same is already done for messages of unknown type
sent to the bare JID of an offline user.
2016-04-25 01:13:41 +02:00
Holger Weiss
65ad70d7dc
Fix error text for message bounces
2016-04-25 00:53:48 +02:00
Holger Weiss
a37cf33358
Drop headline messages sent to offline resources
...
Don't bounce an error when a message of type "headline" is sent to an
unavailable resource. This is consistent with how headline messages
sent to the bare JID of an offline user are dropped, and it avoids a
presence leak.
2016-04-25 00:02:12 +02:00
Holger Weiss
58478e52bf
Don't omit bounces for messages of type "result"
2016-04-24 22:47:53 +02:00
Holger Weiss
cebdfb6523
Return error when blocking message to offline user
...
As per XEP-0016 and XEP-0191, return a service-unavailable error when an
incoming message sent to an offline user was blocked by a privacy list.
The same is done for a message sent to an online user, so this avoids a
presence leak.
2016-04-24 22:00:15 +02:00
Holger Weiss
b79f09d0eb
Match namespace when checking for chat states
...
When checking for standalone chat states, match the namespace rather
than the names of the elements defined in the current XEP-0085 revision.
2016-04-24 17:16:28 +02:00
Holger Weiss
beeb1c82d9
Fix check for standalone chat state notifications
...
Ignore whitespace (and other XML CDATA) when checking whether a message
stanza is a standalone chat state notification.
2016-04-24 17:09:56 +02:00
badlop
2660dcabba
Merge pull request #931 from cclam0827/dev/mod_ping
...
change mod_ping Timers using maps instead of dict
2016-04-22 13:07:03 +02:00
Holger Weiss
f0e6def3ed
Set default value for pubsub#itemreply option
2016-04-21 23:47:07 +02:00
Paweł Chmielowski
97e3a33077
Accept commands: add_commands syntax (along commands: - add_commands)
2016-04-21 11:16:36 +02:00
Evgeniy Khramtsov
1aae8a9fda
Rename odbc to sql everywhere
2016-04-20 13:25:42 +03:00
Evgeniy Khramtsov
fafeeb80c2
Rename ejabberd_sm_odbc -> ejabberd_sm_sql
2016-04-20 09:11:02 +03:00
Christophe Romain
655c22021b
Fix hometree root check ( #1070 )
2016-04-19 15:18:32 +02:00
Holger Weiss
382c6ce1fb
Specify type of second terminate/2 parameter
2016-04-19 09:15:09 +02:00
Badlop
e5e4f39c01
Remove --auth in ejabberd_ctl.erl as it's useless, still useful for mod_rest
2016-04-15 15:35:57 +02:00
Evgeniy Khramtsov
222572bd56
Clean mod_carboncopy.erl from DB specific code
2016-04-15 15:48:56 +03:00
Evgeniy Khramtsov
fb0ecf3361
Merge branch 'move-db-code'
2016-04-15 15:12:12 +03:00
Evgeniy Khramtsov
52571e8624
Clean mod_mam.erl from DB specific code
2016-04-15 15:11:31 +03:00
Evgeniy Khramtsov
901d2e0aed
Clean mod_offline.erl from DB specific code
2016-04-15 13:44:33 +03:00
Evgeniy Khramtsov
860db2ddca
Clean mod_blocking.erl from DB specific code
2016-04-14 14:17:20 +03:00
Evgeniy Khramtsov
c8c4a41b66
Clean mod_privacy.erl from DB specific code
2016-04-14 14:16:32 +03:00
Evgeniy Khramtsov
79d64e0d71
Clean mod_irc.erl from DB specific code
2016-04-14 12:18:04 +03:00
Evgeniy Khramtsov
f8e3560ad2
Clean mod_shared_roster.erl from DB specific code
2016-04-14 11:45:43 +03:00
Evgeniy Khramtsov
398f1de5ae
Clean mod_roster.erl from DB specific code
2016-04-14 10:58:32 +03:00
Evgeniy Khramtsov
0b439a7d5b
Clean mod_muc.erl from DB specific code
2016-04-13 21:07:32 +03:00
Evgeniy Khramtsov
ae69f09257
Clean mod_vcard.erl from DB specific code
2016-04-13 17:37:52 +03:00
Evgeniy Khramtsov
ef70ce65ab
Clean mod_private.erl from DB specific code
2016-04-13 14:09:34 +03:00
Evgeniy Khramtsov
b5d1ce795f
Clean mod_announce.erl from DB specific code
2016-04-13 13:04:04 +03:00
Evgeniy Khramtsov
cd094bc903
Clean mod_caps.erl from DB specific code
2016-04-13 11:41:04 +03:00
Evgeniy Khramtsov
2d7e03f5e1
Clean mod_vcard_xupdate.erl from DB specific code
2016-04-13 11:06:59 +03:00
Evgeniy Khramtsov
7fd4808cde
Clean mod_last.erl from DB specific code
2016-04-13 09:59:39 +03:00
Evgeniy Khramtsov
5eef8a8bcf
Make it possible to get DB backend of a module
2016-04-13 09:56:10 +03:00
Mickael Remond
cd2e2b1a88
Synchronizing master changes
2016-04-12 10:34:24 +02:00
Mickael Remond
5958a91428
Fix typo in error message
2016-04-12 10:27:43 +02:00
Holger Weiss
15d184a909
Disable TLS compression for s2s by default
...
TLS compression is not recommended, and it's already disabled by default
for c2s connections and for ejabberd_http.
2016-04-11 22:50:11 +02:00
Badlop
8c8a6869be
process2/2 is needed by mod_rest to provide its own AccessCommands
...
See processone/ejabberd-contrib#161
2016-04-11 17:21:44 +02:00
Matthias Rieber
b67dc00db2
Fix check_password
2016-04-10 15:37:36 +02:00
Mickael Remond
127342449e
Allow testing user pattern directly in access rules
2016-04-08 19:45:25 +02:00
Paweł Chmielowski
86dfbe6ece
Make sure that ejabberd_sm sid are unique
2016-04-08 10:52:29 +02:00
Evgeniy Khramtsov
b83ec483e9
Send stream trailer at the very end
2016-04-08 11:49:50 +03:00
Paweł Chmielowski
afd3accf75
Generate shorted jid for anonymous connections
2016-04-07 16:47:30 +02:00
Paweł Chmielowski
d5c29360fb
Fix anonymous auth
2016-04-07 10:02:37 +02:00
Mickael Remond
47039aed15
Allow clearing all ACL and access rules
2016-04-06 18:13:08 +02:00
Mickael Remond
5ad8c790c7
Export add_access/3 to allow setting ACL outside of yaml config file
2016-04-06 18:13:08 +02:00
Badlop
27b4217a9d
Tweak srg_get_info result formatting ( #1048 )
2016-04-06 17:55:19 +02:00
Mickael Remond
abf768274a
Fix error message paramater formatting
2016-04-06 15:05:19 +02:00
badlop
d9f1061b8a
Merge pull request #1051 from genric/patch-1
...
Fix mod_muc_admin:set_room_affiliation options persistence
2016-04-06 13:44:12 +02:00
badlop
dd654fa794
Merge pull request #1052 from genric/patch-2
...
Fix mod_muc_admin:get_room_options
2016-04-06 13:25:46 +02:00
Mickael Remond
67b9b82261
We need to set hosts in options to be able to retrieve 'MYHOSTS'
2016-04-06 12:59:27 +02:00
genric
be7f65da05
Fix mod_muc_admin:get_room_options
...
Fix mod_muc_admin:get_room_options to match the ejabberd_commands result spec.
2016-04-05 14:13:28 +02:00
Evgeniy Khramtsov
232915184c
Merge branch 'add-error-reason'
2016-04-05 13:10:09 +03:00
Evgeniy Khramtsov
9ac6e4edf7
Replace more ?ERR_* macros with ?ERRT_*
2016-04-05 13:09:44 +03:00
genric
490aa2c6a6
Fix mod_muc_admin:set_room_affiliation
...
Add missing options so they are stored when set_room_affiliation is invoked, instead of being ignored and set to default values after muc restart.
2016-04-04 14:02:34 +02:00
Mickael Remond
e24da5789e
Apply fixes and remove tests for missing methods
2016-04-01 13:05:41 +02:00
Mickael Remond
47266de6d7
Do not use underscore variable
2016-04-01 12:24:49 +02:00
Mickael Remond
f243c30847
Rollback mod_admin_extra
2016-04-01 12:24:00 +02:00
Mickael Remond
b5f1479763
Fix tests, they are now running fine locally
2016-04-01 11:13:48 +02:00
Mickael Remond
ef2e2e45b3
Fix failing tests
2016-03-31 17:34:58 +02:00
Mickael Remond
7988e2e350
Merge lastest commits from master
2016-03-31 15:37:21 +02:00
Alexey Shchepin
3dc55c6d47
Commands refactor, first pass.
...
- add API versionning
- changed error handling, based on exception
- commands moved/merged from mod_admin_p1 to mod_admin_extra
- command bufixes
- add some elixir unit test cases
Squashed commit of the following:
commit dd59855b3486f78a9349756e4f102e79b3accff8
Merge: 14e8ffc 506e08e
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Oct 30 11:43:18 2015 +0100
Merge branch '3.2.x' into api
commit 14e8ffce78cbea6c8605371d1fc50a0c1d1e012c
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Oct 27 16:35:17 2015 +0100
Added OAuth tests to ejabberd_commands
commit f81c550c14628edfe4861c228576cb767924366a
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Oct 27 16:34:55 2015 +0100
Added some mod_http_api tests
commit 6a64578d5b2ba532a2feb6503ed98561e56d5d53
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Mon Oct 26 15:29:36 2015 +0100
Fix get_last command test
Previous version won't work with dst.
commit 27e0cde9e9c1f001effe68f8424a365ad947c068
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Oct 23 17:59:34 2015 +0200
Add tests on admin command policy
commit 19dad8d54f54c9fabd454280483cccfb06c8e78a
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Oct 23 16:49:36 2015 +0200
Added command related tests (http api & user policy)
commit e0e596ab4a3f3a70aba5f374f028939ab794de33
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Oct 23 16:49:16 2015 +0200
Fix command call.
commit 128cd7d1ede3c47a34f8ec3a750c980ccad2c61d
Merge: 60c4c4c 447313c
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Thu Oct 22 14:48:39 2015 +0200
Merge branch '3.2.x' into api
commit 60c4c4c0751302524c14219c6bc8c56a6069a689
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Thu Oct 22 14:45:57 2015 +0200
Fix ejabberd_commands spec.
commit 8e145c28c5da762c2b93ee32327eff1db94ebfed
Merge: 397273a f13dc94
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Wed Oct 21 18:26:07 2015 +0200
Merge branch '3.2.x' into api
commit 397273a23ed415feac87aed33da6452229793387
Merge: c30e89b f289e27
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Wed Oct 21 15:27:45 2015 +0200
Merge branch '3.2.x' into api
commit c30e89bb8a0013bff37e61e4c6953350c9c1f313
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Wed Oct 21 12:47:02 2015 +0200
Merge mod_http_api
commit 7b0db22b4acd48ff6fabce41c1b2525e6580a3c5
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Oct 16 11:55:48 2015 +0200
Fix exunit tests to run with common_test suites
commit d8b1a89800ac7379a57a7eb4a09c3c93c3e1e5eb
Merge: 2879ae8 63455b3
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Thu Oct 15 11:39:45 2015 +0200
Merge branch '3.2.x' into api
commit 2879ae87ff3eee369ef3d780136b96ecff5285d1
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Wed Oct 14 14:53:44 2015 +0200
Fix update_roster command.
commit a1d453dd7a3afda9861a8d747494a45057ad574b
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Oct 13 16:14:28 2015 +0200
API commands refactor
Moving and/or merging commands from mod_admin_p1 to mod_admin_extra
commit b709ed26b0fc0ca4f3bdd5a59fa58ec7e3db97fa
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Wed Oct 7 15:10:01 2015 +0200
Add tests on commands
commit 6711687bee9c672cb3d5aed0744e13420ecf6dbd
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Sep 29 15:58:16 2015 +0200
Add ejabberd_commands tests
commit df8682f419cf3877e77e36a19bca0fc55dc991f8
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Mon Sep 28 14:54:39 2015 +0200
Added API versioning for ejabberdctl and rest commands
commit cd017b0e3aac431bc3ee807ceb7f8641e1523ef5
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Fri Sep 18 11:21:45 2015 +0200
Better error handling of HTTP API commands.
commit ca5cb6acd8e4643f9d6c484d2277b0d7e88471e5
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Sep 15 15:03:05 2015 +0200
add commands to mod_admin_extra:
- get_offline_count
- get_presence
- change_password
commit 7f583fa099e30ac2b0915669fd8f102ac565b833
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Tue Sep 15 15:02:16 2015 +0200
Improve REST API error handling
commit 14753b1c02cdce434a786b7f80f6c09f0d210075
Author: Jerome Sautret <jerome.sautret@process-one.net>
Date: Mon Sep 14 10:51:17 2015 +0200
Change REST API return codes for integer type.
2016-03-31 14:53:31 +03:00
Mickaël Rémond
7c2998a55d
Merge pull request #1044 from processone/http-api
...
Add ability to call open ejabberd commands through ReST API
2016-03-31 11:37:14 +02:00
Evgeniy Khramtsov
fced8dc3d9
Replace some ?ERR_* macros with ?ERRT_*
2016-03-31 11:00:29 +03:00
Mickael Remond
3c480a5b0b
Fix Dialyzer inconsistency
2016-03-30 16:47:40 +02:00
Paweł Chmielowski
b160bd7ac1
Provide authzid in scream response
2016-03-30 16:08:04 +02:00
Mickael Remond
809057678b
Better error report when command is not exposed through API
2016-03-30 15:59:29 +02:00
Mickael Remond
36ac1cd6c7
Returns unauthorized error when we do not have correct credentials
2016-03-30 14:49:19 +02:00
Mickael Remond
ead83b008c
HTTP ReST API now supports 'open' ejabberd commands
2016-03-30 14:23:09 +02:00
Mickael Remond
82cf7f7ca8
Adds support for option admin_ip_access on mod_http_api
...
This allows granting access to admin commands to backend, by using IP address restrictions.
(Pawel Chmielowski)
2016-03-29 19:40:20 +02:00
Badlop
78a44d8099
Move start and stop_modules/0 from ejabberd_app to gen_mod ( #1039 )
2016-03-29 15:26:34 +02:00
Mickael Remond
b49a615e21
Fix commands api option
2016-03-29 13:19:16 +02:00
Mickael Remond
3b2d0fd24a
Fix commands access check.
...
Fixes ECS-20
2016-03-29 13:06:13 +02:00
Mickael Remond
aa15148898
Fix commands access check.
2016-03-29 13:05:12 +02:00
Badlop
3809b898aa
Pass noauth when auth isn't provided, reverts a1129dc
( processone/ejabberd-contrib#159 )
2016-03-29 12:51:26 +02:00
Mickael Remond
221d8e0e5d
Merge branch 'master' of github.com:processone/ejabberd
2016-03-29 11:21:58 +02:00
Mickael Remond
53d12caa56
Fix log printout
...
Log is not only called for admin commands. It is call for all commands call.
2016-03-29 11:21:53 +02:00
Evgeniy Khramtsov
7a9e93839a
Fix some LIMIT related problems with MSSQL
2016-03-29 11:34:00 +03:00
Mickaël Rémond
4afe0b195c
Merge pull request #1036 from processone/shared-roster-ldap
...
Fix issue getting shared roster
2016-03-25 19:36:10 +01:00
Evgeny Khramtsov
915ccbbdfb
Merge pull request #684 from wcy123/master
...
bug fix: ejabberd:start_app need to pass Type to application:start
2016-03-25 21:00:35 +04:00
Mickael Remond
381065397f
Fix issue getting shared roster
...
I rollbacked to correct version and slightly refactored the code
2016-03-25 17:44:12 +01:00
Evgeniy Khramtsov
46568fb959
Merge commit 'refs/pull/524/head' of github.com:processone/ejabberd into sasl-api-change
2016-03-25 18:16:50 +03:00
Mickael Remond
a3a33bd5fc
Allow running test groups independently
...
We need to be able to run only a few test groups, even if we do not have all
database backends installed and configured locally.
ejabberd test suite configures a specific host per backend. I changed ejabberd
to allow ignoring some hosts from config file on start, by providing the exact
list of hosts we want to start.
This is done by setting an ejabberd app Erlang environment variable 'hosts' and
passing the list of hosts we want to actually define.
When doing so, the backend specific hosts defined in ejabberd test configuration file
are simply ignored. As a result, we do not try to connect to unavailable backends.
I linked that part to CT run test by defining the hosts list based on environment variable
CT_BACKENDS. This variable is expected to be a comma separated list of available backends.
When Erlang Common Tests are run with that environment variable set, only the host matching
the name of the backend will be set, plus the default "localhost", common to many tests.
This can be combined with rebar ct groups list.
Example commands to run tests:
CT_BACKENDS=riak,mnesia rebar ct suites=ejabberd
CT_BACKENDS=mnesia rebar ct suites=ejabberd groups=mnesia
2016-03-24 10:02:13 +01:00
Evgeniy Khramtsov
cb27a3540e
Fix is_connected/0 function
2016-03-22 20:01:23 +03:00
Evgeniy Khramtsov
61e914a83f
Keep alive Riak connections by default
2016-03-22 19:32:30 +03:00
Evgeniy Khramtsov
57f7b34b90
Do not auto append IP suffix to usernames ( #1008 )
2016-03-22 13:25:34 +03:00
Badlop
e7ef65a22d
Improve ban_account command to work with other DBs than Mnesia ( #977 )
2016-03-21 18:30:05 +01:00
Badlop
107569a17d
New command delete_mnesia deletes all tables that can be exported
2016-03-21 16:19:06 +01:00
Mickael Remond
31c194a682
Add simple Elixir unit test on jid:from_string
2016-03-21 09:44:23 +01:00
HAMANO Tsukasa
2d103b4ae1
support riak authentication
2016-03-19 01:41:14 +09:00
Paweł Chmielowski
ef02053a9d
Fix issue #1015
2016-03-17 18:41:39 +01:00
Paweł Chmielowski
7b72247b2c
Don't use jlib:jid_remove_resource
2016-03-16 13:32:19 +01:00
Paweł Chmielowski
34bc698526
Merge pull request #1011 from oxoWrk/master
...
Bare JID in 'from' of Roster Push (RFC 6121 section 2.1.6) in mod_adm…
2016-03-16 11:37:25 +01:00
Paweł Chmielowski
efbaba5d04
Make auto generated resources shorter
2016-03-16 11:30:45 +01:00
Badlop
c985a2bd3d
Start ezlib only if required, as it's optional ( #1006 )
2016-03-16 11:11:43 +01:00
root
058b3d96bf
Bare JID in 'from' of Roster Push (RFC 6121 section 2.1.6) in mod_admin_extra
2016-03-15 10:57:56 +05:00
Evgeny Khramtsov
dcefb6bbe3
Merge pull request #980 from sharewax/EJAB-1480
...
EJAB-1480: fix issue with retreiving user roster
2016-03-14 17:49:01 +03:00
Badlop
5351e8236d
Fix Addresses element which lacked others local destinations
...
When sending single packet, in addresses include all other group
destinations, not only oneself
2016-03-14 12:53:14 +01:00
Holger Weiss
b871fbba1b
Fix result type of "connected_users_info" command
...
Closes #1002 .
2016-03-14 00:51:12 +01:00
Holger Weiss
91573a8e82
Don't store watchdog notifications in MAM archives
2016-03-14 00:05:50 +01:00
Evgeniy Khramtsov
55c567ff00
Unregister route at the very end
2016-03-13 17:37:39 +03:00
Evgeniy Khramtsov
5a4b7817df
Add ODBC backend for MIX
2016-03-13 15:38:50 +03:00
Evgeniy Khramtsov
5045fb584d
Define pubsub node configuration per route/host explicitly
2016-03-13 13:16:43 +03:00
Evgeniy Khramtsov
357e48fb6b
Make it possible to get virtual host of a registered route
2016-03-13 11:38:40 +03:00
Christophe Romain
9297782868
Fix config fetch after host/serverhost cleanup
2016-03-11 17:25:46 +01:00
Elias Rohrer
8b03c0a385
Minimal auth_method ordering fix
2016-03-10 17:52:55 +01:00
Mickael Remond
92a0181932
Lager to Elixir Logger bridge is now compliant with ejabberd loglevel set / get
...
This should fix #966
2016-03-09 22:30:46 +01:00
Mickael Remond
035c63fd2a
Fix call to lager_util:is_loggable/3
2016-03-09 21:03:06 +01:00
Mickael Remond
9e6efaf9bc
Use p1_time_compat util for generating timestamp
2016-03-09 20:57:01 +01:00
Mickael Remond
f4ee8a2505
Add Elixir Logger Backend to bridge logs from lager
...
We will need to support loglevel bridging.
It should help with #966
2016-03-09 19:12:56 +01:00
Evgeniy Khramtsov
e31799a3b1
Define mod_opt_type/1 callback
2016-03-09 11:19:15 +03:00
Evgeniy Khramtsov
1860801e36
Unregister hooks and iq handlers on terminate
2016-03-09 11:14:45 +03:00
Holger Weiss
ae4fa22180
mod_http_upload: Add XEP-0363 v0.2 support
...
Include the maximum file size in the service discovery information, as
specified by XEP-0363, version 0.2.
2016-03-09 00:27:06 +01:00
Evgeniy Khramtsov
b5121a346d
Experimental MIX (XEP-0369) support
2016-03-08 20:04:29 +03:00
badlop
6e40573c13
Merge pull request #989 from galambalazs/patch-1
...
fix syntax highlighting by keeping "~s" together
2016-03-07 19:06:59 +01:00
badlop
eb0890284a
Merge pull request #988 from tnull/edoc_fix
...
Fixed type specifications for 'rebar doc'
2016-03-07 18:44:05 +01:00
Badlop
16c1b9a5c2
Fix format_result also in xmlrpc, after aa5caa3
( #982 )
2016-03-07 17:34:08 +01:00
Balázs Galambosi
83accedded
fix syntax highlighting by keeping "~s" together
2016-03-07 16:06:18 +01:00
Elias Rohrer
8e6a301026
Fixed type specifications for 'rebar doc'
...
- Fixed type @specs and -specs to remove 'rebar doc' errors
- Removed a lot of wrong and deprecated documentation in ejabberd_piefxis.erl
2016-03-07 15:06:19 +01:00
Anton Samets
4013629e5d
EJAB-1480: fix issue with retreiving user roster
2016-03-04 15:52:38 +03:00
Paweł Chmielowski
6e14a47316
Define opt_type required be ejabberd_config behaviour.
2016-03-04 11:45:18 +01:00
Badlop
9c3d57e63e
Mark get_queue_length obsolete, and use count_offline_messages ( #970 )
2016-03-04 11:09:14 +01:00
Christophe Romain
44978ce978
ext_mod: switch to fast_xml and remove old p1_logger reference
2016-03-03 15:46:15 +01:00
Christophe Romain
10d6c330a5
Fix pubsub disco after host/serverhost cleanup
2016-03-03 14:52:03 +01:00
Evgeniy Khramtsov
e95cf420a2
Enable flexible offline on disco#info as well
2016-03-03 14:10:40 +03:00
Alexey Shchepin
79853ad44f
Missed a few calls in previous commits
2016-03-02 02:00:02 +03:00
Alexey Shchepin
9a049442ff
Raise an error when there are no fields to set in ?SQL_UPSERT
2016-03-02 00:12:49 +03:00
Alexey Shchepin
e21f25f5b9
Update more SQL queries
2016-03-02 00:12:49 +03:00
Alexey Shchepin
1f9fd25ff8
Update more SQL queries
2016-03-02 00:12:49 +03:00
Alexey Shchepin
d8fbe8a289
Update more SQL queries
2016-03-02 00:12:49 +03:00
Alexey Shchepin
6d7ce0237a
Update mod_last SQL queries to the new API
2016-03-02 00:12:49 +03:00
Alexey Shchepin
2d042f078e
New parse transform for ?SQL_UPSERT and ?SQL_UPSERT_T
2016-03-02 00:12:49 +03:00
Alexey Shchepin
3d8219d8f9
Update mod_roster and ejabberd_auth_odbc SQL queries to the new API
2016-03-02 00:12:49 +03:00
Alexey Shchepin
7f3bffe821
Allow balanced expressions inside @(...) in ejabberd_sql_pt
2016-03-02 00:12:49 +03:00
Alexey Shchepin
99255631dd
Updated some mod_offline SQL queries to the new API
2016-03-02 00:12:11 +03:00
Alexey Shchepin
ba35c1ed9d
Use 'any' to match any DBMS in sql_query
2016-03-01 22:50:20 +03:00
Alexey Shchepin
437e768e4a
Better error handling in ejabberd_sql_pt
2016-03-01 22:50:07 +03:00
Alexey Shchepin
c58a4be6ee
Support for run-time SQL queries selection depending on DBMS version
2016-03-01 22:49:56 +03:00
Alexey Shchepin
6374ef4866
New parse transform for SQL queries, use prepare/execute calls with Postgres
2016-03-01 22:48:30 +03:00
Evgeniy Khramtsov
382c7c21ad
Do not call to deprected/undefined functions from mod_shared_roster_ldap
2016-02-29 16:35:45 +03:00
Holger Weiss
6d8c7232d8
mod_register_web: Choose the right error messages
2016-02-29 00:39:57 +01:00
Evgeniy Khramtsov
6b126171da
Improve LDAP shared roster support (EJAB-1480)
2016-02-26 17:27:12 +03:00
Christophe Romain
56523784e1
Implementation of pubsub#itemreply (EJAB-1347)( #928 )
2016-02-26 10:32:03 +01:00
Christophe Romain
1c6d20924b
Fix host/serverhost usage ( #902 )
2016-02-26 09:33:07 +01:00
Marek Foss
ebaf750a9b
Fix for #935
2016-02-25 18:56:43 +01:00
Paweł Chmielowski
a9de13c5d9
Don't include empty line after java example
2016-02-25 12:14:17 +01:00
Christophe Romain
576c10ee3a
Make caps warning less confusing ( #955 )
2016-02-23 14:14:24 +01:00
Holger Weiss
44f581c3b5
mod_http_upload: Also expand @HOST@ in 'docroot'
...
In some environments, it might be desirable to use separate document
roots for each virtual host.
2016-02-20 20:13:30 +01:00
Holger Weiss
b971449f12
mod_http_upload: Expand 'docroot' before using it
...
Expand the @HOME@ keyword within the 'docroot' value before setting the
permissions of the document root directory.
2016-02-20 18:21:38 +01:00
Holger Weiss
5b4aefbacd
Accept stream compression request after SASL
...
This is an updated version of the patch submitted to EJAB-1382 by
Alexey (thanks!).
2016-02-19 18:53:28 +01:00
Evgeniy Khramtsov
4b0860e7de
Make it possible to define 'sm_db_type' per virtual host
2016-02-19 16:38:43 +03:00
Badlop
eece6e69cb
Fix format_result so get_room_options command works again after aa5caa3
2016-02-17 20:43:35 +01:00
badlop
c9c59f00ad
Merge pull request #953 from cdroege/fix_css
...
Fix the color of links in tables in web admin
2016-02-15 12:52:54 +01:00
Paweł Chmielowski
47a67c7320
Allow to pass \n in argument to ejabberdctl
2016-02-12 23:38:39 +01:00
Christian Dröge
c579313821
Fix the color of links in tables in web admin
2016-02-12 18:45:45 +01:00
Holger Weiss
eaaab45c14
mod_muc_room: Let members see admin/owner JIDs
...
Let members retrieve all affiliation lists in non-anonymous rooms, not
just the list of members.
2016-02-11 22:52:27 +01:00
Holger Weiss
041e886b87
mod_muc_room: Don't expose JIDs in anonymous rooms
...
Don't let room members retrieve the member list unless the room is
non-anonymous.
2016-02-11 22:24:14 +01:00
Holger Weiss
17be70339c
mod_mam: Send new preferences when they are set
...
If a client updates the archiving preferences, include the new
preferences with the IQ result (as mandated by XEP-0313).
2016-02-10 23:06:31 +01:00
Badlop
02a519a11e
Mention new XEP support
2016-02-08 21:35:46 +01:00
Badlop
1de085ec23
Prepare room JID in create_room command
2016-02-08 21:35:26 +01:00
Paweł Chmielowski
217b6da5fd
Fix example value for rescode return type
2016-02-09 16:44:57 +01:00
Paweł Chmielowski
d5b3e6af00
More documentation of arguments in mod_admin_extra
2016-02-09 16:33:32 +01:00
Evgeniy Khramtsov
4839ba5ae4
XEP-0013: Flexible Offline Message Retrieval support
2016-02-09 17:59:54 +03:00
Paweł Chmielowski
2bca8d5121
Remove remanants of pre-binary strings
2016-02-09 15:50:35 +01:00
Christophe Romain
583476380a
Use muc_online_room record for pattern matching
2016-02-09 15:33:00 +01:00
Paweł Chmielowski
c0da9b43ce
Better presentation of result description in docs
2016-02-09 13:18:01 +01:00
Paweł Chmielowski
30d171e79e
Start documenting arguments in mod_admin_extra commands
2016-02-09 13:03:40 +01:00
Paweł Chmielowski
d36c351fc7
Typo in markdown generator
2016-02-09 13:03:40 +01:00
Holger Weiss
10ed4a1c85
Add most status codes only to initial MUC presence
2016-02-08 20:10:20 +01:00
Badlop
04a315eb52
Fix section links to the Guide in the WebAdmin
2016-02-08 16:16:53 +01:00
badlop
cf2f80bd09
Merge pull request #944 from cdroege/configureable_host-mod_register_web
...
Allow to modify host when deleting account or changing password over web
2016-02-08 13:48:11 +01:00
Evgeny Khramtsov
2bfb619d19
Merge pull request #914 from weiss/mam-expose-jid
...
Expose occupant JID in MUC MAM messages whenever possible
2016-02-08 14:23:19 +03:00
Mickael Remond
0b1620a45c
Remove compile warnings
2016-02-08 10:50:28 +01:00
Holger Weiss
bf49c292f8
Omit redundant check for overcrowded MUC room
...
The send_update_presence/4 function already checked whether the room is
overcrowded before calling send_update_presence1/4, so there's no need
to have send_new_presence/4 perform the same check.
2016-02-08 00:46:33 +01:00
Holger Weiss
8098f7d9a8
mod_mam: Don't let outcasts access MUC archive
...
XEP-0313 says: "A MUC archive MUST check that the user requesting the
archive has the right to enter it at the time of the query [...]. In
the case of open MUC rooms, the MUC archives can generally be accessed
by any users [...] who do not have an affiliation of 'outcast'".
2016-02-08 00:16:02 +01:00
Holger Weiss
a31f59ea31
XEP-0198: Fix session timeout corner case
...
If the "resend_on_timeout" option is set to 'if_offline' and a pending
stream management session is terminated because a new session is opened
by the same resource (while no other resource is online), resend
unacknowledged messages rather than bouncing error messages.
2016-02-06 22:28:55 +01:00
Badlop
7435ee464f
Rename option to regexp_room_id for consistency with other options ( #905 )
2016-02-05 12:09:27 +01:00
HAMANO Tsukasa
268f0b30ec
add room_id_regexp option
2016-02-05 12:09:18 +01:00
Christian Dröge
30388fa2bf
Allow to modify host when deleting account or changing password over web
2016-02-04 21:31:16 +01:00
Pablo Polvorin
942072cf9d
Make hibernate timeouts configurable
...
Two *global* options added:
c2s_hibernate and receiver_hibernate.
Default if not specified is 90000, the previous hardcoded value.
2016-02-04 15:45:29 -03:00
Mickael Remond
dfc29ea03c
Switch to Fast XML module
2016-02-03 19:03:17 +01:00
Mickael Remond
71ee0d56fa
Switch to fast_tls and update app names
2016-02-03 16:13:16 +01:00
Mickael Remond
9ae1371c6e
Convert more dependencies to new repository / packages
2016-02-03 12:30:12 +01:00
Mickael Remond
0de222d998
Convert code to use Fast YAML
2016-02-03 11:30:48 +01:00
Mickael Remond
b137ee3beb
Move to new dependencies for SIP and STUN
2016-02-03 11:26:14 +01:00
Mickael Remond
99b5c5712c
Move to new iconv package
2016-02-03 11:17:24 +01:00
Mickael Remond
e8ba7bce24
Use stringprep app name
2016-02-03 10:12:25 +01:00
Nathan Bruning
80fc34fb0c
Fix presence-based delivery
2016-02-02 14:06:07 +01:00
Paweł Chmielowski
fa55ac5c8f
More strict checking for MUC initial presence
2016-02-01 12:09:58 +01:00
Paweł Chmielowski
dc52ec904c
Send presence with code 170 only in initial presence from MUC
2016-02-01 11:30:49 +01:00
Evgeniy Khramtsov
d3ee2a9c18
Add 'import_prosody' command
2016-01-29 14:30:50 +03:00
Evgeniy Khramtsov
54dc2f56c6
Import privacy lists from Prosody
2016-01-29 14:14:08 +03:00
Richard
ae77b1300a
change mod_ping Timers using maps instead of dict
2016-01-29 00:07:38 +08:00
Evgeniy Khramtsov
b20db3b736
Initial version of migration script from Prosody to ejabberd
2016-01-28 14:23:51 +03:00
Paweł Chmielowski
aaa84dc118
Need extra line before ## in markdown
2016-01-27 11:42:13 +01:00
Paweł Chmielowski
239b1c6f74
Always use lagger
2016-01-26 14:34:58 +01:00
Christophe Romain
b2c6e397fc
Set set utf8mb4 charset on mysql connection
2016-01-26 13:47:24 +01:00
Paweł Chmielowski
621dff7307
Add header to generated markdown file
2016-01-26 10:46:38 +01:00
Paweł Chmielowski
bdeb4a7e32
Add a way to get all ejabberd_commands, not only those that was registered
...
This is part of (TECH-1828).
2016-01-26 10:00:28 +01:00
Paweł Chmielowski
22696e8388
Geenarte markdown that is acceptable by docs.ejabberd.org processor
2016-01-25 16:51:54 +01:00
Paweł Chmielowski
a2a692d081
Merge pull request #919 from hamano/rename_timestamp_function
...
rename timestamp function #917
2016-01-24 07:51:25 +01:00
Mickael Remond
a3931e6b73
lager is the default logger, we need to reverse the define flag
2016-01-23 18:43:06 +01:00
HAMANO Tsukasa
5a85b0fb52
rename timestamp function #917
2016-01-23 17:58:10 +09:00
Holger Weiss
b62607037a
mod_mam: Expose MUC occupant JID in more cases
...
Include the occupant JID with MUC MAM messages if the room is not
anonymous, and also when the MAM user sent the MUC message himself (not
just in the case where he is a room moderator).
2016-01-20 00:02:40 +01:00
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