Evgeniy Khramtsov
fddd6110e0
Don't validate an option in gen_mod:get*opt() functions
...
The changes are very similar to those from previous commit:
* Now there is no need to pass validating function in
gen_mod:get_opt() and gen_mod:get_module_opt() functions,
because the modules' configuration keeps already validated values.
* New functions gen_mod:get_opt/2 and gen_mod:get_module_opt/3 are
introduced.
* Functions gen_mod:get_opt/4 and get_module_opt/5 are deprecated.
If the functions are still called, the "function" argument is
simply ignored.
* Validating callback Mod:listen_opt_type/1 is introduced to validate
listening options at startup.
2017-04-30 19:01:47 +03:00
Holger Weiss
168712ebbd
Add support for HTTP File Upload, version 0.3.0
...
Support the current XEP-0363 version in addition to the previous
revisions.
2017-04-21 18:36:53 +02:00
Evgeniy Khramtsov
64333f69ea
Don't try to load already loaded applications
2017-04-19 11:40:58 +03:00
Christophe Romain
b1acd1183f
Rename aux.erl as misc.erl
...
Thanks Microsoft Windows to not support some filenames
2017-04-11 12:13:58 +02:00
Evgeniy Khramtsov
7bcbea2108
Deprecate jlib.erl in favor of aux.erl
...
Since the main goal of jlib.erl is lost, all auxiliary functions
are now moved to aux.erl, and the whole jlib.erl is now deprecated.
2017-03-30 14:17:13 +03:00
Holger Weiss
510fde58d8
mod_http_upload: Don't add "Server" header line
...
Administrators can add the "Server" header line using the new listener
option "custom_headers", if desired.
2017-03-28 00:03:17 +02:00
Holger Weiss
191fc1b4e8
ejabberd_http: Expand @VERSION@ in custom headers
...
Let ejabberd_http expand the @VERSION@ keyword to the ejabberd version
if specified in the "custom_headers" listener option.
Closes #1414 .
2017-03-27 23:52:49 +02:00
Alexey Shchepin
069d28b1ed
Get rid of p1_sha calls
2017-03-14 02:31:51 +03:00
Evgeniy Khramtsov
7decd58aaa
Don't fail on elements decoding
2017-02-26 11:53:41 +03:00
Evgeniy Khramtsov
c1439ddd5b
Get rid of jid:to_string/1 and jid:from_string/1
2017-02-26 10:07:12 +03:00
Evgeniy Khramtsov
603ec9cb19
Don't pass empty resource to jid:make()
2017-02-25 10:01:01 +03:00
Evgeniy Khramtsov
940ca9311d
Fix some dialyzer warnings
2017-02-18 09:36:27 +03:00
Evgeniy Khramtsov
8b2d308498
Change routing API
...
Now 'From' and 'To' arguments must be omitted in functions
and structures related to routing.
The commit deprecates the following functions:
ejabberd_router:route/3 in favor of ejabberd_router:route/1
ejabberd_router:route_error/4 in favor of ejabberd_router:route_error/2
ejabberd_local:route_iq/4 in favor of ejabberd_local:route_iq/2
ejabberd_local:route_iq/5 in favor of ejabberd_local:route_iq/3
The format of {route, From, To, Packet} is changed in favor of {route, Packet}
2017-02-16 11:10:24 +03:00
Evgeniy Khramtsov
f61c933a7a
Only use GEN_SERVER macro where appropriate
2017-02-14 15:39:57 +03:00
Evgeniy Khramtsov
28f66ddd7c
Attach modules to gen_mod's supervisor
2017-02-14 12:39:26 +03:00
Evgeniy Khramtsov
d5d906184f
Merge branch 'new_stream'
...
Conflicts:
src/cyrsasl.erl
src/ejabberd_c2s.erl
src/ejabberd_cluster.erl
src/ejabberd_frontend_socket.erl
src/ejabberd_node_groups.erl
src/ejabberd_router.erl
src/mod_bosh.erl
src/mod_ip_blacklist.erl
src/mod_muc_mnesia.erl
src/mod_offline.erl
src/mod_proxy65_sm.erl
2017-01-20 19:35:46 +03:00
Evgeniy Khramtsov
0baaad30b1
Implement database backend interface for MUC, BOSH and auth_anonyous
2017-01-13 12:03:39 +03:00
Badlop
5fdd1c39fe
Update copyright date automatically ( #1442 )
2017-01-02 21:42:06 +01:00
Evgeniy Khramtsov
56b30ab598
Improve translation of some messages
2016-11-26 10:05:22 +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
fa31e3ef23
Deprecate jlib:integer_to_binary/1 and jlib:binary_to_integer/1
2016-09-24 23:34:28 +03:00
Evgeniy Khramtsov
c29a48695d
Rename #error{} record to #stanza_error{}
2016-09-08 17:08:48 +03:00
Evgeniy Khramtsov
522a186a38
Improve some type specs
2016-08-09 10:56:32 +03:00
Evgeniy Khramtsov
792e6a7c1c
Rewrite mod_http_upload to use XML generator
2016-07-30 17:48:52 +03:00
Evgeniy Khramtsov
4220a2b98c
Make modules loading in a dependent order ( #1191 )
2016-07-06 14:58:48 +03: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
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
382c6ce1fb
Specify type of second terminate/2 parameter
2016-04-19 09:15:09 +02:00
Evgeniy Khramtsov
fced8dc3d9
Replace some ?ERR_* macros with ?ERRT_*
2016-03-31 11:00:29 +03:00
Evgeniy Khramtsov
357e48fb6b
Make it possible to get virtual host of a registered route
2016-03-13 11:38:40 +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
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
Mickael Remond
dfc29ea03c
Switch to Fast XML module
2016-02-03 19:03:17 +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
f448ff608a
Update copyright to 2016 ( #901 )
2016-01-13 12:29:14 +01: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
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
Holger Weiss
94c620cc27
mod_http_upload: Fix logging of file size mismatch
2016-01-04 01:01:14 +01:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Holger Weiss
43626f5c97
mod_http_upload: Return error atoms, not strings
...
Don't convert error atoms to strings before actually logging them. This
avoids a bogus error message when a user who has no uploaded files is
removed.
2015-11-17 00:12:20 +01:00
Holger Weiss
55a92c2983
mod_http_upload: Log message if URL looks wrong
...
Log an [info] message if a PUT request looks like the specified
"put_url" contains a path component that doesn't match the
"request_handlers" path, as in the following configuration:
listen:
-
module: ejabberd_http
port: 5444
request_handlers:
"/": mod_http_upload
modules:
mod_http_upload:
put_url: "http://example.com/path/ "
2015-11-11 22:51:40 +01:00
Holger Weiss
20709f9880
mod_http_upload: Make case indentation consistent
...
Use four spaces (or the corresponding amount of tab characters) for case
indentation everywhere in mod_http_upload and mod_http_upload_quota.
2015-11-09 19:23:52 +01:00
Holger Weiss
113c315857
mod_http_upload: Apply cosmetic changes
2015-11-09 19:12:08 +01:00
Holger Weiss
842db2ca15
mod_http_upload: Don't flatten command strings
2015-11-09 18:50:45 +01:00
Holger Weiss
9c80cb2b26
mod_http_upload: Don't let identify/1 return error
...
Let identify/1 return 'pass' when it failed to identify the file type,
as this doesn't (necessarily) indicate an error condition. This also
makes it consistent with the return value of convert/2.
2015-11-09 18:41:31 +01:00
Holger Weiss
fec7e47169
Add copyright and license to HTTP upload modules
2015-11-04 01:22:39 +01:00
Holger Weiss
4566325241
mod_http_upload: Don't complain during shutdown
...
Ignore the case where, for some reason, no process is found to be
stopped.
Closes #810 .
2015-11-02 23:46:58 +01:00
Holger Weiss
1b368a86b7
mod_http_upload: Use binary strings in most places
...
Switch to binary strings to fix a type issue, and for consistency.
Closes #808 .
2015-11-02 23:46:31 +01:00