Evgeniy Khramtsov
309bdfbe28
Add xmpp_stream_out behaviour and rewrite s2s/SM code
2016-12-28 09:47:11 +03:00
Christophe Romain
ed679279fd
Cleanup file headers
2016-12-27 10:57:50 +01:00
Badlop
fad7612cf1
Allow subscriber to create room, then set allow_subscription=true ( #1404 )
2016-12-26 21:16:17 +01:00
Holger Weiss
df92d96d4f
Revert "Fix 'nodetree' configuration lookups for PEP"
...
This reverts commit 7ef8dfb4e0
.
The config/3 function copes with the PEP case.
2016-12-25 01:24:40 +01:00
Holger Weiss
7ef8dfb4e0
Fix 'nodetree' configuration lookups for PEP
2016-12-25 00:58:20 +01:00
Badlop
3811a61573
Extract correctly the text from #stanza_error ( #1425 )
2016-12-17 11:46:16 +01:00
Badlop
cc14e223c6
Describe command arguments and results in ejabberd_admin
2016-12-12 13:19:17 +01:00
Evgeniy Khramtsov
7f653cfe76
Rewrite ejabberd_service to use new XMPP stream API
2016-12-11 18:24:51 +03:00
Evgeniy Khramtsov
5cc8e807df
Initial version of new XMPP stream behaviour (for review)
2016-12-11 15:03:37 +03:00
Badlop
1a4f63f058
Copy recent make_opts function from mod_muc_room.erl
2016-12-09 13:07:48 +01:00
Christophe Romain
bcc04d93e1
Enforce pubsub node removal, revert previous commit ( #1320 )
...
This reverts commit 2976c2d921
.
and enforce node purge/removal instead
2016-12-09 12:51:08 +01:00
Christophe Romain
2976c2d921
Enforce affiliation removal, remove corresponding items ( #1320 )
2016-12-09 11:35:51 +01:00
Paweł Chmielowski
a50247c20d
Improve handling on acl rules in api_permissions
2016-12-08 18:08:54 +01:00
Mickael Remond
fdf69dcd0d
API call does not necessary use token, it could use basic auth
2016-12-08 16:28:47 +01:00
Paweł Chmielowski
a3b12fd745
Recognize "- who:" not only "who:" syntax in api_permissions
2016-12-08 12:01:24 +01:00
Christophe Romain
8a7ea85a7e
Cleanup ext_mod and fix compilation path
2016-12-07 09:27:21 +01:00
Christophe Romain
1883a98d1c
Fix compilation of external module with new xmpp lib
2016-12-06 12:01:04 +01:00
Christophe Romain
0c2491d9ea
Remove obsolete remove_node api (use leave_cluster)
2016-12-05 14:17:57 +01:00
Christophe Romain
23f7075313
Fix reload_config
2016-12-02 16:29:46 +01:00
Badlop
847376924e
Add password support in muc_subscribe ( #1306 )
2016-12-02 16:18:35 +01:00
Badlop
d7e1f6d7b3
When unsubscribes, check if room should get closed ( #1396 )
2016-12-01 22:09:57 +01:00
Badlop
34f2a8a4f2
Fix error formatting, which closed client connection ( #1389 )
2016-12-01 21:02:54 +01:00
Mickael Remond
309fd56fb4
Merge branch 'master' of github.com:processone/ejabberd
2016-12-01 15:05:09 +01:00
Christophe Romain
32f484a349
Fix typo introduced by 92db9ff
changes
2016-11-30 13:50:46 +01:00
Christophe Romain
92db9ff105
Improve handling of mnesia schema
2016-11-30 11:09:17 +01:00
Christophe Romain
95a4b1b266
Cleanup admin_extra, add few functions
2016-11-30 10:31:36 +01:00
Christophe Romain
fc7e52df71
Adds optional post_install and pre_uninstall hooks (thanks Igor Manturov Jr.)( #1300 )
2016-11-28 17:15:57 +01:00
Evgeniy Khramtsov
56b30ab598
Improve translation of some messages
2016-11-26 10:05:22 +03:00
Evgeniy Khramtsov
ca1b22bdd4
Use ejabberd_router:route_error/4 wherever possible
2016-11-25 11:41:24 +03:00
Evgeniy Khramtsov
e1539e5769
Get rid of compile warnings
2016-11-25 09:48:26 +03:00
Evgeniy Khramtsov
0f11b1be36
Don't forget to erase cache on user removal
2016-11-24 18:40:20 +03:00
Evgeniy Khramtsov
49f1275e20
Get rid of excessive (io)list_to_binary/1 calls
2016-11-24 15:06:06 +03:00
Paweł Chmielowski
b14843d098
Add missing -callbacks
2016-11-24 12:44:21 +01:00
Evgeny Khramtsov
8f692f51d8
Merge pull request #1391 from weiss/mark-copies
...
Mark messages as copies by attaching metadata
2016-11-24 15:43:38 +04:00
Holger Weiss
560038c808
Use xmpp:put_meta/3 to update metadata
2016-11-24 10:47:26 +01:00
Christophe Romain
12683b4aaf
Fix typo in copyright date
2016-11-23 14:36:11 +01:00
Evgeniy Khramtsov
5d434c1aea
Move copyright definition to ejabberd.hrl
2016-11-23 15:51:48 +03:00
Evgeniy Khramtsov
6f2f1e87c9
Don't use deprecated functions from jlib.erl
2016-11-23 10:41:26 +03:00
Holger Weiss
3325e69ae6
Let mod_carboncopy mark copied messages
...
Carbon copies are now marked with a 'carbon_copy' flag. This makes it
easier to identify them.
2016-11-22 22:21:34 +01:00
Holger Weiss
114ca786ee
Let ejabberd_sm mark copied messages
...
When multiple resources have the same (highest) priority, ejabberd_sm
dispatches messages addressed to the bare JID (or to an unavailable
resource) to each of these resources. Such messages are now marked with
an 'sm_copy' flag for all but one of the resources. This makes it
easier for other modules to identify those duplicates.
Resolves #1356 .
2016-11-22 19:25:20 +01:00
Christophe Romain
ee8cc1dac2
Fix xref issue injected by fbfbb96
2016-11-22 17:51:21 +01:00
Christophe Romain
9ab169bc63
Fix get_roster issue injected by fbfbb96
2016-11-22 16:59:02 +01:00
Christophe Romain
24ef90c556
Fix vcard_ldap exports
2016-11-22 16:23:02 +01:00
Christophe Romain
c0e7b298db
Add missing export
2016-11-22 16:12:19 +01:00
Christophe Romain
cc63bcc997
Fix issues on import improvements
2016-11-22 16:01:08 +01:00
Paweł Chmielowski
ebadcf71c2
New bosh module
2016-11-22 15:26:15 +01:00
Christophe Romain
fbfbb96872
Improve ODBC import
2016-11-22 14:48:01 +01:00
Evgeniy Khramtsov
3189bb3bb9
Set 'sql_pool_size' to 1 by default for sqlite
2016-11-21 21:34:56 +03:00
Evgeniy Khramtsov
04fdf69737
Fix non-empty disco-nodes processing
2016-11-21 14:21:34 +03:00
Badlop
c5e7b4738f
Fix handling mod_http_upload disco#info queries: need decoded elements
...
As reported in
https://www.ejabberd.im/forum/28605/ejabberd-modhttpupload-error-405-not-allowed
2016-11-21 12:06:11 +01:00
Evgeniy Khramtsov
e6365979bd
Merge branch 'master' of github.com:processone/ejabberd
2016-11-21 12:14:37 +03:00
Evgeniy Khramtsov
274303f248
Fix conference disco#items when running multiple virtual hosts
2016-11-21 12:14:24 +03:00
Paweł Chmielowski
3f91668c46
Log more data for failed s2s connection
2016-11-21 09:52:36 +01:00
Evgeniy Khramtsov
c7ae916afc
Don't forget to start XMPP application
2016-11-21 10:23:09 +03:00
Evgeniy Khramtsov
049a6d97f1
Fix RSM for conference disco#items
2016-11-20 18:08:49 +03:00
Evgeniy Khramtsov
13c6039700
Use xmpp_util.erl from XMPP library
2016-11-19 13:57:25 +03:00
Evgeniy Khramtsov
de7a143a2c
Transform ejabberd_commands on the start
2016-11-19 13:05:13 +03:00
Evgeniy Khramtsov
9aff7e52a8
Switch to stand-alone XMPP library
2016-11-19 13:03:33 +03:00
Christophe Romain
45e77ea483
Remove useless NO_EXT_LIB flag
2016-11-18 12:25:01 +01:00
Evgeniy Khramtsov
f57f267c54
Merge branch 'master' of github.com:processone/ejabberd
...
Conflicts:
test/ejabberd_SUITE.erl
2016-11-18 13:39:10 +03:00
Evgeniy Khramtsov
b8dcc911a3
Make common tests working again
2016-11-18 13:38:08 +03:00
Paweł Chmielowski
995c97671d
Add auth to mod_http_fileserver
2016-11-17 12:59:46 +01:00
Christophe Romain
1c90b19d74
Fix typo
2016-11-16 18:24:12 +01:00
Badlop
3cd174cb56
Ensure that presence_broadcast room option is stored ( #1380 )
2016-11-16 13:35:50 +01:00
Badlop
b1723c6e2d
Handle correctly p1_http:request result
2016-11-16 13:11:23 +01:00
Christophe Romain
2929f5b5bc
Minor cosmetic changes on pubsub code
2016-11-15 18:35:20 +01:00
Christophe Romain
4d4ad922a2
Cosmetic validator changes
2016-11-15 18:14:21 +01:00
Christophe Romain
8df68266f2
Add missing verbs for RESTfull operation
2016-11-15 14:35:26 +01:00
Christophe Romain
2b93de6912
apply string optimizations
2016-11-15 14:32:22 +01:00
Paweł Chmielowski
5ffc01db53
Fix types in check_password_hash
2016-11-15 10:02:21 +01:00
Paweł Chmielowski
717159a98f
Make string args in http_api be list strings
2016-11-15 10:02:21 +01:00
Christophe Romain
309962fb8b
Use p1_http from p1_utils 1.0.6
2016-11-14 16:52:03 +01:00
Evgeniy Khramtsov
3765210698
Fix IQ result processing
2016-11-13 16:56:05 +03:00
Evgeniy Khramtsov
13d5da4da6
Add some copyright notices
2016-11-13 16:46:04 +03:00
Evgeniy Khramtsov
ebefd0d8d6
Add more control for decoding IQ payloads
2016-11-13 14:17:21 +03:00
Evgeniy Khramtsov
7e9f1a6dc1
Don't auto-decode forwarded payload
2016-11-13 13:41:04 +03:00
Evgeniy Khramtsov
21d78ed7f4
Don't use jlib.hrl outside of jlib.erl
2016-11-13 10:56:36 +03:00
Evgeniy Khramtsov
b8f22ff538
Deprecate most of the functions from jlib.erl
2016-11-13 10:44:53 +03:00
Evgeniy Khramtsov
534e73f732
Uncomment forgotten block of code
2016-11-12 14:51:43 +03:00
Evgeniy Khramtsov
de81c50199
Revert "Support to provide password when subscribing to a room ( #1306 )"
...
This reverts commit 566ac872fe
.
2016-11-12 14:47:29 +03:00
Evgeniy Khramtsov
5d552c8463
Merge branch 'master' into xml-ng
2016-11-12 14:41:37 +03:00
Evgeniy Khramtsov
78a44e0176
Merge branch 'master' into xml-ng
...
Conflicts:
src/adhoc.erl
src/cyrsasl_oauth.erl
src/ejabberd_c2s.erl
src/ejabberd_config.erl
src/ejabberd_service.erl
src/gen_mod.erl
src/mod_admin_extra.erl
src/mod_announce.erl
src/mod_carboncopy.erl
src/mod_client_state.erl
src/mod_configure.erl
src/mod_echo.erl
src/mod_mam.erl
src/mod_muc.erl
src/mod_muc_room.erl
src/mod_offline.erl
src/mod_pubsub.erl
src/mod_stats.erl
src/node_flat_sql.erl
src/randoms.erl
2016-11-12 13:27:15 +03:00
Badlop
566ac872fe
Support to provide password when subscribing to a room ( #1306 )
2016-11-10 20:48:43 +01:00
Mickael Remond
42bede77a1
Merge branch 'master' of github.com:processone/ejabberd
2016-11-09 09:04:58 +01:00
Mickael Remond
35506f5470
Expose unregister API command
2016-11-09 09:04:52 +01:00
Evgeniy Khramtsov
e841a6ec34
Add more tests for offline storage
2016-11-08 15:15:19 +03:00
Evgeniy Khramtsov
e9dd3ffe9c
Merge branch 'xml-ng' of github.com:processone/ejabberd into xml-ng
2016-11-07 10:11:40 +03:00
Evgeniy Khramtsov
56c91d3c58
Add roster tests
2016-11-07 10:10:57 +03:00
Badlop
bd060bc1bb
Support several groups separated by ; in add_rosteritem command
2016-11-04 18:45:27 +01:00
Badlop
49d3b7ec1d
Throw error if room name or host has invalid characters ( #1360 )
2016-11-04 17:28:28 +01:00
Badlop
5e723bc90e
Fix reading room jids from file for create and destroy_rooms_file commands
2016-11-04 16:54:31 +01:00
Paweł Chmielowski
62db030942
Merge mod_opt_type from db sub-modules to main module mod_opt_type
2016-11-04 12:58:08 +01:00
Holger Weiss
2a63d0e95a
mod_mam: Use user JID for stanza ID 'by' attribute
...
Use the user (or room) JID instead of the server JID for the 'by'
attribute of <stanza-id/> and <archived/> tags. That's what the
examples in XEP-0313 v0.2 and XEP-0359 v0.3.0 suggest.
2016-11-01 08:47:08 +01:00
Badlop
149cc9654f
Append ; to privacy_list_data exporting lines (thanks to Marcio Luciano Donada)
2016-10-24 13:42:33 +02:00
Evgeniy Khramtsov
9d977e484a
Use base64:mime_decode/1 for SASL packets
...
It will be now possible to accept SASL packets with only
single '=' character set as required by RFC6120
2016-10-22 13:09:11 +03:00
Evgeniy Khramtsov
f6236d456d
Add more tests for privacy lists and blocking command
2016-10-22 13:01:45 +03:00
Prasad Vaidya
cdafd3254b
Rollback minor change, to avoid redundant use of fail-safe function
2016-10-21 15:02:39 +05:30
Prasad Vaidya
509776a0d1
Fix: Replace erlang function with fail-safe jlib function.
2016-10-21 13:57:47 +05:30
Badlop
2ab72bcd00
Nidx may be integer or binary, so use jlib:i2l instead
...
As reported in
https://www.ejabberd.im/forum/28580/erlang-function-integertobinary1-throwing-badargs-exception
2016-10-20 21:56:19 +02:00
Badlop
0212559ca7
If a participant can change subject, let asubscriber too ( #1345 )
2016-10-20 20:35:00 +02:00
colm
3b876875e9
mod_muc: made the constant MAX_ROOMS_DISCOITEMS configurable
2016-10-18 21:59:34 +01:00
Evgeniy Khramtsov
d19552f464
Fix randoms:uniform/1 return
...
Make sure randoms:uniform/1 returns values from the same interval
as deprecated random:uniform/1
2016-10-18 08:35:47 +03:00
Evgeniy Khramtsov
4c5460f0bd
Get rid of compile warnings for random/crypto modules on R19
2016-10-18 08:17:21 +03:00
badlop
90acec8a2b
Merge pull request #1338 from marcphilipp/muc_invite_hook
...
Introduce muc_invite hook
2016-10-17 17:46:25 +02:00
Jerome Sautret
305d4c05dc
Fix delete_old_messages command for SQL backends
2016-10-17 17:02:23 +02:00
Evgeniy Khramtsov
67720c7713
Add more MUC tests
2016-10-17 13:37:23 +03:00
Paweł Chmielowski
fd6f0f94b5
Convert ejabberd_xmlrpc to new api_permissions
2016-10-14 13:55:50 +02:00
Marc Philipp
a1faecc4c9
Introduce muc_invite hook
...
This adds a new hook that is triggered for each invite to an MUC room:
- muc_invite(RoomJID, RoomConfig, From, To, Reason) -> ok
where
- RoomJID = From = To = #jid (see jlib.h)
- RoomConfig = #config (see mod_muc_room.hrl)
- Reason = binary()
2016-10-14 12:52:59 +02:00
Holger Weiss
d97e777c9b
Always include <actions/> with ad-hoc responses
...
XEP-0050 says: "The result for each stage (other than the last) of a
command's execution SHOULD include an <actions/> element." Some clients
insist on this.
2016-10-13 22:34:29 +02:00
Holger Weiss
b693601dd1
Don't let MAM messages go into offline storage
2016-10-12 23:10:25 +02:00
badlop
4935ac8866
Merge pull request #1331 from weiss/send-message-omit-copies
...
Don't let "send_message" duplicate the message
2016-10-12 13:52:27 +02:00
Holger Weiss
ead7e21037
Ignore offline sessions in statistics
...
Offline sessions should not be counted when reporting the number of
connected resources.
Apart from that, this number is now also reported when using a
non-default session management backend.
2016-10-11 22:20:22 +02:00
Evgeniy Khramtsov
a915fd161e
Create room on configuration request as per XEP-0045, 10.1.3
2016-10-10 10:51:39 +03:00
Holger Weiss
dffcfe74d4
Don't let "send_message" duplicate the message
...
In the past, the "send_message" command sent a copy of the message to
each resource if the message was addressed to the bare JID of a local
online user. When message carbons are enabled, this creates duplicates;
and with MAM enabled, each copy is archived. Therefore, "send_message"
no longer creates copies of the message.
2016-10-10 00:17:17 +02:00
Evgeniy Khramtsov
6a3691ef7c
Add xdata generator and make some code using it
2016-10-07 10:31:03 +03:00
Holger Weiss
d701230555
Make map syntax compatible with Erlang/OTP 17
2016-10-07 00:36:47 +02:00
Holger Weiss
e54ba3db5b
XEP-0198: Cope with invalid 'from'/'to' attributes
...
Check whether the 'from' and 'to' attributes are valid before bouncing
or resending a stanza from the stream management queue. They might be
invalid in certain corner cases.
Thanks to Evgeniy for spotting this.
2016-10-06 23:20:45 +02:00
Paweł Chmielowski
b01fbfadf3
Use correct field for oauth scope
2016-10-06 11:03:26 +02:00
Paweł Chmielowski
438dbc8bda
Make handling of oauth clauses be more consistent with other rules
2016-10-06 10:59:43 +02:00
Paweł Chmielowski
8accb8ee0c
Use proper default value for api_permissions
2016-10-06 10:59:43 +02:00
Paweł Chmielowski
98e0123ca4
New api permissions framework
2016-10-05 13:21:11 +02:00
Holger Weiss
9cee3760db
ejabberd_sm: Clean up old offline session entries
...
If the number of offline sessions exceeds the 'max_user_sessions' limit,
remove the oldest entry from the table.
2016-10-02 22:01:03 +02:00
Christophe Romain
1de0bb83a0
PubSub: creation jid must be bare jid
2016-09-30 07:51:33 +03:00
Christophe Romain
7566e267a7
PubSub: fix error type on item deletion with insufficient priviledge
2016-09-30 07:51:17 +03:00
Christophe Romain
15ebb79160
PubSub: creation jid must be bare jid
2016-09-29 16:10:11 +02:00
Christophe Romain
767dba8f3b
PubSub: fix notification on subscription change
2016-09-29 12:00:59 +02:00
Christophe Romain
a42bf67957
PubSub: fix error type on item deletion with insufficient priviledge
2016-09-29 11:20:56 +02:00
Badlop
6f538545b4
Fix 404 response formatting (thanks to Kaggggggga)( #1306 )
2016-09-28 11:03:46 +02:00
Holger Weiss
d4b4f35a0e
ejabberd_http: Handle missing POST data gracefully
...
Return a "bad request" error instead of crashing if receiving POST/PUT
data fails.
2016-09-27 23:22:30 +02:00
Alexey Shchepin
acab2270f1
Use inets instead of lhttpc in http_p1
2016-09-27 07:12:10 +03:00
Alexey Shchepin
ac6f701033
Add http_p1.erl, rest.erl, and oauth2 ReST backend for tokens.
2016-09-27 05:57:14 +03:00
Evgeniy Khramtsov
3112a7187f
Test anonymous auth
2016-09-25 09:57:56 +03:00
Evgeniy Khramtsov
fa31e3ef23
Deprecate jlib:integer_to_binary/1 and jlib:binary_to_integer/1
2016-09-24 23:34:28 +03:00
Evgeniy Khramtsov
58969fb854
Improve namespace handling
2016-09-24 14:17:21 +03:00
Evgeniy Khramtsov
53209b9ab1
Add tests for s2s code
2016-09-23 12:30:33 +03:00
Evgeniy Khramtsov
ceda073766
Add tests for external component
2016-09-21 10:45:11 +03:00
Evgeniy Khramtsov
a4ec064455
Add more tests for C2S
2016-09-20 14:04:07 +03:00
Holger Weiss
e7787e2f33
mod_carboncopy: Don't copy MUC PMs
...
Carbon copies of private MUC message are generally not desired,
especially not when multiple clients joined the room with the same nick.
In this case, the MUC service usually sends PMs to all joined resources
anyway, so carbon-copying those PMs would create duplicates.
2016-09-19 22:46:36 +02:00
Badlop
5bcfcf4c5e
When getting list of subscribed rooms, check all including temporary ones ( #1242 )
2016-09-19 13:46:01 +02:00
Badlop
9fa92092bf
Revert "Fix getting of subscribed rooms: consider also temporary ones ( #1242 )"
...
This reverts commit f2cc81dfea
.
2016-09-19 12:54:19 +02:00
Badlop
f2cc81dfea
Fix getting of subscribed rooms: consider also temporary ones ( #1242 )
2016-09-19 12:35:53 +02:00
Badlop
8244c1fa8c
Store the Allow Subscription room option ( #1301 )
2016-09-19 12:35:32 +02:00
Badlop
ed62d705d8
Don't worry about storage_type of the Acl mnesia table ( #1206 )
2016-09-19 11:59:40 +02:00
Badlop
da291d804c
Use mnesia calls instead of ets for Acl and Access tables ( #1206 )
2016-09-19 11:56:22 +02:00
Holger Weiss
27999a122f
node_mb_sql: Add missing (SQL-specific) functions
2016-09-15 23:02:04 +02:00
Evgeniy Khramtsov
151668ac10
Fix dialyzer warnings for mod_mam
2016-09-13 16:56:34 +03:00
Christophe Romain
c39501a48d
Merge branch 'push-requirements' of https://github.com/weiss/ejabberd into weiss-push-requirements
2016-09-13 14:29:14 +02:00
Christophe Romain
c3543e002d
Allow to create room with custom config
2016-09-13 11:52:59 +02:00
Evgeniy Khramtsov
e987b88848
Make common tests working again
2016-09-13 12:30:05 +03:00
Paweł Chmielowski
2f596b0e10
Expand parsing of json input to be able to handle update_roster command
2016-09-13 11:27:59 +02:00
Paweł Chmielowski
054382f074
Add X-Admin and basic auth header to CORS allowed headers in http_api
2016-09-12 15:40:38 +02:00
Paweł Chmielowski
96d05dad8f
Properly process OPTIONS header in http_api for all paths
2016-09-12 15:40:38 +02:00
Evgeniy Khramtsov
1aca541639
Fix nick-to-jid mapping for MUC subscribers
2016-09-12 14:41:33 +03:00
Badlop
d0761039ff
Support multiple room invitations ( #1285 )
2016-09-09 12:18:27 +02:00
Evgeniy Khramtsov
fe1bf27ef3
Fix subscribed rooms list retreivement
2016-09-09 13:04:47 +03:00
Holger Weiss
d222fed228
XEP-0198: Cancel timer when waiting for resumption
...
If an ACK timer is active while going into the 'wait_for_resume' state,
cancel that timer.
2016-09-09 00:21:36 +02:00
Holger Weiss
8fd888eb2b
Revert "Don't log an [error] message if Elixir is missing"
...
This reverts commit 41386d718d
. The issue
was fixed with commit 4bd45bada7
.
2016-09-08 18:11:54 +02:00
Holger Weiss
41386d718d
Don't log an [error] message if Elixir is missing
...
The Elixir support is still optional.
Closes #1250 .
2016-09-08 17:59:40 +02:00
Christophe Romain
26a040e2d5
Fix typo on previous commit ( #1284 )
2016-09-08 16:32:16 +02:00
Paweł Chmielowski
4bd45bada7
Start elixir config code only if elixir was enabled in configure script
2016-09-08 16:29:45 +02:00
Christophe Romain
ad39da0b0a
Full jid entity subscriptions should include bare jid records ( #1284 )
2016-09-08 16:27:16 +02:00
Evgeniy Khramtsov
c29a48695d
Rename #error{} record to #stanza_error{}
2016-09-08 17:08:48 +03:00
Evgeniy Khramtsov
36ab9cc2ea
Fix message routing from subscribers
2016-09-08 16:39:34 +03:00
Evgeniy Khramtsov
5ec972b00f
Improve pubsub code
2016-09-08 15:49:27 +03:00
Paweł Chmielowski
6c943aa293
Merge pull request #1287 from weiss/ack-timeout
...
New stream management option: ack_timeout
2016-09-08 12:45:16 +02:00
gabrielgatu
803270fc6b
Support for Elixir configuration file #1208
...
Contribution for Google Summer of code 2016 by Gabriel Gatu
2016-09-08 11:37:14 +02:00
Paweł Chmielowski
d2621130a3
Typo
2016-09-08 10:27:14 +02:00
Paweł Chmielowski
a8368278ec
Properly normalize resource_regexp acl rule
...
This fixes issue #1288 .
2016-09-08 08:45:10 +02:00
Holger Weiss
621f0e2b7c
New stream management option: ack_timeout
...
Close the connection if a stream management client fails to respond to
an acknowledgement request within 60 seconds. This number of seconds
can be changed with the new "ack_timeout" option, and the mechanism can
be disabled by specifying 'infinity'.
As a side effect of this change, a new acknowledgement is no longer
requested before the response to the previous request is received.
2016-09-07 23:16:54 +02:00
Christophe Romain
7a538bb88b
Enforce pathtype use with config path ( #1264 )
2016-09-07 17:38:35 +02:00
Christophe Romain
af0a493c66
Merge pull request #1253 from Amuhar/xep0356
2016-09-07 14:34:31 +02:00
Evgeniy Khramtsov
f304149615
Create room on configuration request as per XEP-0045, 10.1.3
2016-09-07 11:15:19 +03:00
Evgeniy Khramtsov
3803a8de3c
Link MUC subscription to bare JID
2016-09-07 10:33:37 +03:00
Holger Weiss
1edca899ff
Add SQL support for microblogging node plugin
2016-09-07 07:15:12 +02:00
Evgeniy Khramtsov
c6afb9731b
Handle <subscriptions/> request to list MUC subscribers
2016-09-06 19:06:02 +03:00
Evgeniy Khramtsov
5ec2874a96
Do not update muc_online_users table on MUC/Sub operations
2016-09-06 18:17:30 +03:00
Evgeniy Khramtsov
417284a921
Add get_subscribers command to list MUC subscribers
2016-09-06 17:55:18 +03:00
Holger Weiss
af2999a783
node_mb: Call node_pep instead of node_hometree
2016-09-06 00:30:46 +02:00
Holger Weiss
48ce34987d
node_mb: Fix configuration documentation
...
A node plugin used in a 'pep_mapping' must explicitly be added to the
list of 'plugins'.
2016-09-06 00:08:43 +02:00
Holger Weiss
e29f47893f
mod_pubsub: Remove outdated comment
2016-09-06 00:05:54 +02:00
Evgeniy Khramtsov
45eb49125b
Rewrite mod_pubsub to use XML codec
2016-08-30 09:48:08 +03:00
Igor Manturov Jr
f1afea223b
Fixed typo in Stream Management option name
2016-08-23 02:21:09 +06:00
Igor Manturov Jr
d5659735b3
Fixed #1260 Stream Management feature for the websocket connections
2016-08-23 00:59:39 +06:00
Holger Weiss
23d9fb0592
mod_muc_admin: Accept 'allow_subscription' option
...
Allow for setting the new 'allow_subscription' option using the
'change_room_option' command.
2016-08-22 01:17:32 +02:00
Badlop
8af85d913f
Erlang R17 has a Time limit in erlang:send_after ( #1246 )
2016-08-16 18:32:06 +02:00
Holger Weiss
20a510d877
mod_mam: Add 'store_mam_message' hook
...
The new 'store_mam_message' hook is invoked whenever a MAM message is
stored.
2016-08-15 23:28:36 +02:00
Holger Weiss
8821cf8b27
mod_offline: Add 'store_offline_message' hook
...
The new 'store_offline_message' hook is invoked whenever an offline
message is stored.
2016-08-15 22:30:08 +02:00
Holger Weiss
4d19fb518f
ejabberd_c2s: Add XEP-0198 resumption hooks
...
The new 'c2s_session_pending' and 'c2s_session_resumed' hooks are
invoked when a stream management session is pending and resumed,
respectively.
2016-08-15 21:49:58 +02:00
Holger Weiss
e7217e6320
Add functions to get/set some c2s state elements
2016-08-15 20:24:43 +02:00
Badlop
5b4f347da8
Support sql backend in mod_shared_roster commands ( #1244 )
2016-08-15 15:53:35 +02:00
Evgeny Khramtsov
38666cfd58
Merge pull request #1245 from hamano/clean_redis_table
...
fix clean redis table
2016-08-15 15:12:20 +04:00
HAMANO Tsukasa
877d0752e2
fix clean redis table
2016-08-15 17:51:06 +09:00
Badlop
0ab08f4eeb
Don't delete ejabberd_commands table, it's problematic in cluster ( #1210 )
2016-08-14 20:35:25 +02:00
Holger Weiss
4ee8af633b
Store announcements for offline users
...
Add a <store/> hint to announcements (unless they are explicitly sent to
online users). Without that hint, announcements weren't delivered to
offline users, since they are sent as messages of type "headline".
2016-08-13 00:07:27 +02:00
Holger Weiss
bf9d6b5534
Honor <store/> hint for any non-"error" message
...
XEP-0334 says: "A message containing the <store/> hint that is not of
type 'error' SHOULD be stored by the entity."
2016-08-12 21:13:10 +02:00
Holger Weiss
28dde294e5
mod_mam: Don't store messages of type "headline"
...
XEP-0313 says: "a server SHOULD include in a user archive all of the
messages a user sends or receives of type 'normal' or 'chat' that
contain a <body> element."
2016-08-12 20:38:17 +02:00
Evgeniy Khramtsov
31faa4eb9a
Add more type specs
2016-08-12 13:17:42 +03:00
Evgeniy Khramtsov
ffba664f2c
Add a requirement for full JID in subscribe_room command
2016-08-11 17:13:20 +03:00
Paweł Chmielowski
50596dc4d3
Provide proper args_desc in oauth_issue_token command
2016-08-10 11:26:04 +02:00
Paweł Chmielowski
e63fe5c216
Fix result type of subscribe_room command
2016-08-10 11:22:19 +02:00
Evgeniy Khramtsov
1fc58ace2f
Add commands for MUC subscriptions management
2016-08-09 13:36:43 +03:00
Evgeniy Khramtsov
522a186a38
Improve some type specs
2016-08-09 10:56:32 +03:00
Mickael Remond
efc744092b
We do not force yet access rules check on register command
2016-08-07 18:27:16 +02:00
Mickael Remond
a0c8012c66
Do not force command line to pass a credentials
2016-08-07 18:24:08 +02:00
Holger Weiss
b62aa3d2dc
mod_client_state: Let other modules filter stanzas
...
Don't stop execution of the 'csi_filter_stanza' hook if mod_client_state
won't queue the stanza.
2016-08-06 13:36:27 +02:00
Holger Weiss
91e26fbf7a
Add user's JID to CSI hook arguments
...
Add the JID of the CSI user to the arguments of the 'csi_filter_stanza'
and 'csi_flush_queue' hooks.
2016-08-05 23:47:18 +02:00
Holger Weiss
c2ef55a075
Cosmetic change: Set CSI state 'active' on resume
...
The CSI state is always set to 'active' when a stream management session
is resumed; so there's no need to apply the CSI state of the old c2s
process, first.
2016-08-05 20:09:52 +02:00
Evgeniy Khramtsov
4ff8d7918a
Change code to reflect recent changes in fxml_gen
2016-08-05 08:41:08 +03:00
Holger Weiss
9a5f0751be
mod_mam: Simplify "assume_mam_usage" option
...
The "assume_mam_usage" option now takes a boolean value. Setting it to
"true" has the same effect as "if_enabled" had before. The "on_request"
behavior is no longer offered, as it made the option (and its
documentation) overly complex.
2016-08-05 01:57:01 +02:00
Evgeniy Khramtsov
b487ccfb34
Delete mod_configure2
...
The module doesn't work properly for many years and nobody reported
this, which means nobody is using it. Also, mod_configure does
the same (and more) in a standard compliant way (XEP-0133).
2016-08-04 16:45:33 +03:00
Evgeniy Khramtsov
ca217dc105
Rewrite HTTP Bind and Web Admin code to use XML generator
2016-08-04 13:41:38 +03:00
Evgeniy Khramtsov
8b81b9ecb1
Rewrite PIEFXIS code to use XML generator
2016-08-04 13:37:07 +03:00
Evgeniy Khramtsov
cbdc106427
Rewrite jd2ejd to use XML generator
2016-08-04 12:34:12 +03:00
Evgeniy Khramtsov
bc33a3873d
Rewrite multicast code to use XML generator
2016-08-04 11:49:17 +03:00
Christophe Romain
72b0fb49e8
Fix type convertion bug injected by 4ccc40b
( #1229 )
2016-08-04 09:49:23 +02:00
Alexey Shchepin
111aa83f5e
Add tokens cache to ejabberd_oauth
2016-08-04 01:59:28 +03:00
Evgeniy Khramtsov
abb4446b51
Fix calls to undefined functions
2016-08-03 21:00:22 +03:00
Evgeniy Khramtsov
a417fbf45b
Rewrite mod_irc to use XML generator
2016-08-03 20:57:05 +03:00
Evgeniy Khramtsov
5d06c6acbf
Rewrite mod_configure to use XML generator
2016-08-03 10:34:54 +03:00
Holger Weiss
78fa9e08a5
XEP-0198: Handle timeouts during stream resumption
...
If session resumption failed because requesting the #state from the old
c2s process took too long, the new c2s process will usually receive the
response. Let the new process handle that case gracefully.
2016-08-03 02:28:46 +02:00
Holger Weiss
3c1e4f0dfd
XEP-0198: Increase timeout for stream resumption
...
During stream resumption, the #state is transferred from the old c2s
process to the new one. This is usually very fast, but under certain
conditions, it can take longer than five seconds.
2016-08-03 02:15:15 +02:00
Alexey Shchepin
4add262090
Add OAUTH SQL backend
2016-08-01 16:55:43 +03:00
Mickaël Rémond
2ef58a33a9
Merge pull request #1223 from processone/expand_api
...
More API fixes and improvements
2016-08-01 15:36:47 +02:00
Mickael Remond
d02d7b2b6a
Remove compile warning
2016-08-01 15:35:54 +02:00
Mickael Remond
90ea3ca361
Improve error message when try to call api on api root
2016-08-01 15:29:47 +02:00
Christophe Romain
bf45c9eeee
Switch mix worker to transient
2016-08-01 14:09:16 +02:00
Christophe Romain
a9c6748ec7
Add missing comas in sql statement ( #1219 )
2016-08-01 10:55:02 +02:00
Mickael Remond
c5c394e929
Fix HTTP process return formatting
2016-08-01 08:58:49 +02:00
Mickael Remond
6ea7153e31
Improve error handling
2016-07-31 22:48:24 +02:00
Evgeniy Khramtsov
c0272ae766
Rewrite mod_stats to use XML generator
2016-07-31 14:51:16 +03:00
Evgeniy Khramtsov
e258462b6b
Improve vCard creation from LDAP result
2016-07-31 14:17:17 +03:00
Evgeniy Khramtsov
0bcbd12776
Rewrite mod_mix to use XML generator
2016-07-31 08:51:47 +03:00
Mickael Remond
2a49f8cae7
Change name of result key for offline count to value
...
This is more user friendly and should be more consistent with other commands.
2016-07-30 20:12:04 +02:00
Mickael Remond
674a8039ef
Add support for sending back missing scope error to API ReST command calls
2016-07-30 18:51:54 +02:00
Mickael Remond
4bf8ce7681
Make s2s stats commands more robust
2016-07-30 18:50:58 +02:00
Evgeniy Khramtsov
eb1d385d4e
Get rid of "jlib.hrl" dependency in mod_service_log
2016-07-30 18:42:17 +03:00
Evgeniy Khramtsov
5cd1cf5096
Get rid of "jlib.hrl" dependency in some modules
2016-07-30 18:37:57 +03:00
Evgeniy Khramtsov
792e6a7c1c
Rewrite mod_http_upload to use XML generator
2016-07-30 17:48:52 +03:00
Mickael Remond
19ad6e6145
Ensure ejabberdctl status result is in valid shell supported range
2016-07-30 13:18:39 +02:00
Mickael Remond
39640b67c7
Add support for rich error reporting for API
2016-07-30 13:08:30 +02:00
Evgeniy Khramtsov
d2d3b961eb
Rewrite mod_sic to use XML generator
2016-07-30 13:30:29 +03:00
Mickael Remond
fb2603d3cd
Return 409 conflict error code on register if user already exists
2016-07-30 11:50:04 +02:00
Mickaël Rémond
4a49dfecf3
Merge pull request #1221 from processone/expand_api
...
Do not crash on check when we do not have JID
2016-07-30 10:55:39 +02:00
Evgeniy Khramtsov
f19d2fdcff
Rewrite mod_shared_roster backends module to use XML generator
2016-07-30 08:39:30 +03:00
Evgeniy Khramtsov
a093e9d441
Rewrite mod_shared_roster to use XML generator
2016-07-30 08:37:34 +03:00
Mickael Remond
42e6f72ee9
Do not crash on check when we do not have JID
2016-07-29 20:38:05 +02:00
Evgeniy Khramtsov
9bf1bac7df
Rewrite mod_vcard_ldap to use XML generator
2016-07-29 17:39:13 +03:00
Evgeniy Khramtsov
f91f2bc3d2
Rewrite several modules to use XML generator
2016-07-29 13:21:00 +03:00
Christophe Romain
a080322055
Switch workers from temporary to transient
2016-07-29 11:18:42 +02:00
Paweł Chmielowski
fd365b2893
Display data that is send to websocket connection in debug log level
...
This should help with detecting problems like in #1097
2016-07-28 16:20:28 +02:00
Christophe Romain
fad088a3c4
Merge pull request #1193 from gabrielgatu/support-elixir-module-installer
...
Fix issue #625 : Writing Elixir modules
2016-07-28 16:06:12 +02:00
gabrielgatu
91865c66c0
Start elixir application after ejabberd_app:start_apps()
2016-07-28 15:57:35 +02:00
Mickaël Rémond
7a74a4836a
Merge pull request #1211 from processone/expand_api
...
There is still work to do, be we reached a stable state and can merge up to this point.
2016-07-28 14:57:48 +02:00
Evgeniy Khramtsov
b31ebd2ea0
Rewrite captcha to use XML generator
2016-07-28 15:10:41 +03:00
Evgeniy Khramtsov
96e912b09a
Rewrite mod_register to use XML generator
2016-07-27 18:06:54 +03:00
Evgeniy Khramtsov
8275e95a16
Swap variables in their correct places
2016-07-27 18:06:34 +03:00
Evgeniy Khramtsov
1097d31d63
Fix type spec for set_from_to/3
2016-07-27 18:05:11 +03:00
Evgeniy Khramtsov
c409ed2f2c
Rewrite S2S and ejabberd_service code to use XML generator
2016-07-27 10:45:08 +03:00
Holger Weiss
72445bb374
mod_http_upload_quota: Apply cosmetic changes
...
Use "fun f/1" syntax in place of "fun(X) -> f(X) end".
2016-07-27 00:28:47 +02:00
Evgeniy Khramtsov
984c4cf6bd
Add 'allow_subscription' MUC configuration option
2016-07-26 14:37:28 +03:00
Mickael Remond
7781f39b74
Clarify command module API
2016-07-26 12:15:03 +02:00
Mickael Remond
e5fd1ee4f6
Avoid starting several time the owner process
2016-07-26 12:12:48 +02:00
Mickael Remond
9ff7257287
Make jlib ETS table more resilient
2016-07-26 11:58:14 +02:00
Mickael Remond
12f74b4aa7
Fix list appending bug
2016-07-26 11:57:38 +02:00
Evgeniy Khramtsov
23858469b7
Get rid of "jlib.hrl" dependency in some files
2016-07-26 11:29:17 +03:00
Evgeniy Khramtsov
c26d38a893
Remove jlib dependency from acl.erl
2016-07-26 10:01:59 +03:00
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