Evgeniy Khramtsov
5cfe57ece5
Add 'supervisor' listening option
...
If set to 'true' (this is the default), new processes spawned by
ejabberd_listener will be attached to the corresponding supervisor.
No such processes will be attached to a supervisor otherwise.
Setting this to 'false' will improve performance of high loaded
systems where new C2S/S2S processes are spawned very rapidly.
2017-01-11 10:56:04 +03:00
Evgeniy Khramtsov
1e55e018e5
Adopt remaining code to support new hooks
2017-01-09 17:02:17 +03:00
Badlop
5fdd1c39fe
Update copyright date automatically ( #1442 )
2017-01-02 21:42:06 +01:00
Evgeniy Khramtsov
e7fe4dc474
More refactoring on session management
2016-12-30 00:00:36 +03:00
Evgeniy Khramtsov
309bdfbe28
Add xmpp_stream_out behaviour and rewrite s2s/SM code
2016-12-28 09:47:11 +03:00
Paweł Chmielowski
3f91668c46
Log more data for failed s2s connection
2016-11-21 09:52:36 +01: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
Evgeniy Khramtsov
4c5460f0bd
Get rid of compile warnings for random/crypto modules on R19
2016-10-18 08:17:21 +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
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
c409ed2f2c
Rewrite S2S and ejabberd_service code to use XML generator
2016-07-27 10:45:08 +03: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
Mickael Remond
dfc29ea03c
Switch to Fast XML module
2016-02-03 19:03:17 +01:00
Badlop
f448ff608a
Update copyright to 2016 ( #901 )
2016-01-13 12:29:14 +01:00
Evgeniy Khramtsov
c7931b4a4f
CVE-2016-1232: Add Dialback Key Generation and Validation support (XEP-0185)
2016-01-11 14:22:17 +03:00
Paweł Chmielowski
95a9100623
Fix more places where random:seed is used
2015-12-07 16:48:29 +01:00
Paweł Chmielowski
29db302808
More now() replacements
2015-12-07 16:09:48 +01:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Christophe Romain
341be9b682
Remove supervisor option, disable it for c2s and muc
2015-11-04 16:24:35 +01:00
Christophe Romain
6aeb9dcb38
cosmetic cleanup
2015-10-07 14:18:38 +02:00
Evgeniy Khramtsov
6740b1f0e1
Rename idna.erl to ejabberd_idna.erl ( #702 )
2015-09-02 16:02:46 +03:00
Holger Weiss
fc0754c609
Add s2s_dhfile to list of known options
2015-06-20 00:14:54 +02:00
Holger Weiss
e608274243
Add s2s_dhfile option to configuration validator
2015-06-16 15:18:34 +02:00
Alexey Shchepin
2110b929bc
Merge pull request #581 from weiss/dh-param-file
...
New options: dhfile and s2s_dhfile
2015-06-16 11:59:06 +03:00
Evgeniy Khramtsov
fb6267f38e
Add config validation at startup
2015-06-01 15:38:27 +03:00
Holger Weiss
5585fb1ecf
New options: dhfile and s2s_dhfile
...
Let admins specify a file that contains custom parameters for
Diffie-Hellman key exchange.
2015-05-26 21:06:04 +02:00
Holger Weiss
afdc269825
ejabberd_s2s_out: Remove Erlang/OTP version check
...
The version check won't work for Erlang/OTP >= 17; and it's no longer
needed, as we don't support versions older than R16 anyway.
2015-04-16 23:51:16 +02:00
Christophe Romain
0c0947a241
Add compatibility macros for deprecated types (thanks to Alexey)
2015-02-23 09:58:00 +01:00
Badlop
5a35405cd5
Update copyright dates to 2015 (EJAB-1733)
2015-01-08 17:34:43 +01:00
Evgeny Khramtsov
9563b0228f
Merge pull request #177 from weiss/log-tls-sasl-external
...
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-30 00:38:18 +04:00
Evgeny Khramtsov
8419322884
Merge pull request #181 from weiss/check-tls-before-auth
...
Check TLS state before requesting SASL EXTERNAL for outgoing s2s connections
2014-04-30 00:36:08 +04:00
Holger Weiss
49bdbf2895
Support certificate verification for outgoing s2s
...
Handle "s2s_use_starttls: required_trusted" the same way for outgoing
s2s connections as for incoming connections. That is, check the remote
server's certificate (including the host name) and abort the connection
if verification fails.
2014-04-28 01:42:02 +02:00
Holger Weiss
d805d198ac
Check TLS state before requesting SASL EXTERNAL
...
Make sure a remote server can't circumvent "s2s_use_starttls: required"
by offering SASL EXTERNAL authentication over a non-TLS connection.
2014-04-24 11:04:10 +02:00
Holger Weiss
f988aad940
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-23 23:28:13 +02:00
Alexey Shchepin
f93758a3cd
Merge pull request #160 from runcom/protocol_options
...
Add option to specify openssl options
2014-04-15 19:01:21 +04:00
badlop
285c4c17cf
Merge pull request #146 from jamielinux/master
...
Update FSF address
2014-04-11 13:35:46 +02:00
Antonio Murdaca
fbf71f86f3
Add option to specify openssl options
2014-04-08 18:46:52 +02:00
Badlop
633d47f784
Update copyright dates to 2014 (EJAB-1679)
2014-03-13 12:30:57 +01:00
Jamie Nguyen
8538997d61
Update FSF address
2014-02-22 10:27:40 +00:00
Alexey Shchepin
1dd94ac0d0
Support for OpenSSL ciphers list in ejabberd_c2s, ejabberd_s2s_in and ejabberd_s2s_out
2013-11-28 19:39:11 +02:00
Evgeniy Khramtsov
91a74e3e27
Change configuration file format to YAML
2013-08-21 22:17:59 +10:00
Evgeniy Khramtsov
a2ead99c83
Make it possible to enable/disable TLS compression
2013-07-17 22:46:18 +10:00
Evgeniy Khramtsov
4d8f770624
Switch to rebar build tool
...
Use dynamic Rebar configuration
Make iconv dependency optional
Disable transient_supervisors compile option
Add hipe compilation support
Only compile ibrowse and lhttpc when needed
Make it possible to generate an OTP application release
Add --enable-debug compile option
Add --enable-all compiler option
Add --enable-tools configure option
Add --with-erlang configure option.
Add --enable-erlang-version-check configure option.
Add lager support
Improve the test suite
2013-06-13 11:11:02 +02:00
Badlop
9deb294328
Accumulated patch to binarize and indent code
2013-03-14 10:33:02 +01:00
Alexey Shchepin
0ae400533c
Update copyright dates
2013-01-24 16:25:13 +02:00
Alexey Shchepin
b1e2538488
Update copyright dates
2012-02-23 17:52:34 +02:00
Evgeniy Khramtsov
6b0eb1f09d
Reorganize the code to shut up the dialyzer
2011-09-05 21:27:31 +10:00
Christophe Romain
fd52f2cb7d
update copyright up to 2011
2011-02-14 13:50:55 +01:00
Badlop
6ddc66db9f
Handle Tigase's unexpected version=1.0 when ejabberd doesn't announce it (EJAB-1379)
2011-01-31 19:43:28 +01:00
Evgeniy Khramtsov
606c207e21
Make sure 'closed' event is correctly processed on every state
2010-12-17 17:26:20 +09:00
Badlop
b9bbe19d4c
Option to reject S2S connection if untrusted certificate (EJAB-464)
2010-12-11 02:29:53 +01:00
Badlop
44b2002504
Include From attribute in the stream header of outgoing S2S connections
2010-12-11 02:29:52 +01:00
Badlop
eb884c80d0
Add option to require encryption in S2S connections (EJAB-495)
2010-12-11 02:29:48 +01:00
Andreas Köhler
e34eebb5ad
Correct domain_certfile tlsopts modifications for s2s connections (EJAB-1086)
...
* In ejabberd_s2s_out:wait_for_feature_request/2, the domain to use for
looking up domain_certfile options is #state.myname and not
#state.server
* If s2s_certfile is not specified, connect should still be part of the
tls options used by ejabberd_s2s_out
* Add #state.server to ejabberd_s2s_in processes and store the to
attribute in :wait_for_stream/2. Then use that server in
:wait_for_feature_request/2 to change the tls options like in
ejabberd_s2s_out.
Fixes EJAB-1086.
2010-11-26 00:14:46 +01:00
Evgeniy Khramtsov
ac87749d55
add find_s2s_bridge hook
2010-10-11 18:40:57 +10:00
Evgeniy Khramtsov
1f2c9b7971
fixes typo in stop_connection/1
2010-09-28 14:20:02 +10:00
Badlop
c8033833f9
When logging s2s out connection attempt or success, log if TLS is used
2010-07-23 00:25:43 +02:00
Evgeniy Khramtsov
715cc5ea3b
New configure option: --enable-nif
2010-07-01 20:54:01 +10:00
Pablo Polvorin
84c4d75735
Remove warning for undefined print_state/1 function for p1_fsm processes (thanks Badlop).
...
Include a identity function as implementation of print_state/1.
2010-04-09 14:25:00 -03:00
Evgeniy Khramtsov
31c3a78453
improved s2s connections clean up (EJAB-1202)
2010-03-04 12:36:57 +09:00
Badlop
86794b1d23
Fix OTP version detection to work with old supported R10 and R11
...
SVN Revision: 2906
2010-01-16 12:24:11 +00:00
Badlop
7b76fdcde7
Update year of ProcessOne copyright from 2009 to 2010 (EJAB-1159)
...
SVN Revision: 2891
2010-01-12 16:11:32 +00:00
Badlop
d812975565
Provide more detailed log message when s2s stream start fails.
...
SVN Revision: 2831
2009-12-28 15:29:42 +00:00
Badlop
798853abb6
Fix mistake that disallowed s2s_out connections when using Erlang R12 or older.
...
SVN Revision: 2694
2009-10-21 21:11:09 +00:00
Badlop
257e4c34a8
Provide send_timeout_close option in TCP only in R13B or higher (EJAB-926)
...
SVN Revision: 2680
2009-10-19 14:47:05 +00:00
Mickaël Rémond
006515020a
Support gen_tcp send timeout: Close the connection if the other end has disconnected ungracefully or cannot keep up with the rate at which we are sending data (EJAB-926)
...
SVN Revision: 2671
2009-10-19 09:36:23 +00:00
Badlop
355648dc7e
If s2s fails due to namespace mismatch, show differences to help debugging the problem.
...
SVN Revision: 2662
2009-10-12 22:51:19 +00:00
Evgeniy Khramtsov
14232df14c
new option added: max_fsm_queue. removed hardcoded FSMLIMITS
...
SVN Revision: 2645
2009-10-07 14:24:09 +00:00
Badlop
d678a21f21
Change some error messages.
...
SVN Revision: 2587
2009-09-07 14:28:08 +00:00
Badlop
720fd7605d
Document the new option s2s_dns_options, expressed in seconds (EJAB-994)
...
SVN Revision: 2417
2009-08-03 15:03:50 +00:00
Geoff Cant
f4330e9ed3
EJAB-994: Implements DNS timeouts and retries.
...
SVN Revision: 2404
2009-07-30 12:34:59 +00:00
Badlop
b5964c2a5f
Added API function to get current S2S connections with information
...
get_info_s2s_connections(Type) returns a list of incoming (or outgoing)
S2S connections with information for each one including IP address,
port number, TLS options... (thanks to Juan Pablo Carlino)
SVN Revision: 2088
2009-05-19 09:38:17 +00:00
Badlop
f09509502e
* doc/guide.tex: Update copyright date 2008 to 2009 (EJAB-842)
...
* doc/guide.html: Likewise
* src/*/*.erl: Likewise
* src/*/*.erl: Remove unneeded blankspaces in license text
SVN Revision: 1804
2009-01-12 14:44:42 +00:00
Mickaël Rémond
f0af10e600
* src/ejabberd_listener.erl: Define send timeout option to avoid blocking on socket send (EJAB-746).
...
* src/ejabberd_s2s_out.erl: Likewise.
SVN Revision: 1784
2009-01-08 20:49:16 +00:00
Badlop
1944aa097f
Use inet:gethostbyname instead of inet_res:getbyname
...
SVN Revision: 1758
2008-12-26 18:36:53 +00:00
Badlop
682909e0fc
* src/ejabberd_config.erl: Option outgoing_s2s_options to define
...
s2s outgoing behaviour: IPv4, IPv6 and timeout (thanks to Stephan
Maka)(EJAB-665)
* src/ejabberd_s2s_out.erl: Likewise
* src/ejabberd_socket.erl: Likewise
* src/ejabberd.cfg.example: Likewise
* doc/guide.tex: Likewise
* doc/guide.html: Likewise
SVN Revision: 1756
2008-12-26 11:45:08 +00:00
Mickaël Rémond
10e3f2cf92
* src/ejabberd_s2s_out.erl: exports the DNS resolution function.
...
SVN Revision: 1674
2008-11-08 17:50:54 +00:00
Badlop
c3bda4aaee
* doc/guide.tex: Update Process-one name to ProcessOne (EJAB-708)
...
* doc/guide.html: Likewise
* doc/api/overview.edoc: Likewise
* src/*/*.erl: Likewise
* src/*/*.hrl: Likewise
* src/*/*.c: Likewise
* src/odbc/*.sql: Likewise
SVN Revision: 1499
2008-07-31 11:18:49 +00:00
Mickaël Rémond
8dae53abda
* src/ejabberd_s2s_out.erl: Fix compilation error.
...
SVN Revision: 1332
2008-05-18 12:34:52 +00:00
Mickaël Rémond
8a8a02431f
* src/ejabberd_s2s_out.erl: Avoid an harmless error (function clause in logs)
...
SVN Revision: 1331
2008-05-18 12:28:58 +00:00
Christophe Romain
5bec1eedc1
Change FSMTIMEOUT to 30s
...
SVN Revision: 1328
2008-05-16 15:29:33 +00:00
Badlop
ef531fb208
* src/ejabberd_s2s_out.erl: Improve confusing log message in s2s
...
connection: wait_for_validation connect timeout (EJAB-617)
SVN Revision: 1311
2008-04-29 16:59:03 +00:00
Badlop
ee6aae8211
* src/ejabberd_s2s_out.erl: Fix long timeout when reconnecting s2s
...
after a remote server crash (EJAB-540)
* src/ejabberd_s2s_in.erl: Likewise
* src/ejabberd_s2s.erl: Likewise
* doc/guide.tex: Likewise
SVN Revision: 1296
2008-04-18 12:19:45 +00:00
Mickaël Rémond
320c266276
* src/ejabberd_s2s.erl: Only trigger s2s_connect_hook on successful connection (EJAB-566)
...
* src/ejabberd_s2s_out.erl: Likewise
SVN Revision: 1235
2008-03-17 10:16:21 +00:00
Badlop
2d2fcc8210
* doc/guide.tex: Updated copyright dates to 2008
...
* src/*: Likewise
SVN Revision: 1153
2008-01-15 17:02:57 +00:00
Alexey Shchepin
e0fc360cf8
* src/ejabberd_s2s_out.erl: Fixed behavior when outgoing_s2s_port
...
option is not defined
SVN Revision: 1129
2007-12-29 14:22:38 +00:00
Mickaël Rémond
56fe3579bb
* Applied copyright update patch 1.
...
SVN Revision: 1110
2007-12-24 11:41:41 +00:00
Alexey Shchepin
b14c88aaaf
* src/ejabberd_s2s_out.erl: Bugfix
...
SVN Revision: 1069
2007-12-14 09:12:14 +00:00
Mickaël Rémond
5a3c80e380
* src/ejabberd_s2s_out.erl: Increase dialback timeout as dialback can
...
sometimes take longer than expected.
SVN Revision: 1052
2007-12-08 16:39:02 +00:00
Badlop
6342c258a7
* src/cyrsasl.erl: Fix compilation warnings: Part 1 (EJAB-290)
...
* src/ejabberd_auth_odbc.erl: Likewise
* src/ejabberd_config.erl: Likewise
* src/ejabberd_hooks.erl: Likewise
* src/ejabberd_s2s_out.erl: Likewise
* src/ejabberd_sm.erl: Likewise
* src/idna.erl: Likewise
* src/jd2ejd.erl: Likewise
SVN Revision: 1045
2007-12-06 23:15:04 +00:00
Alexey Shchepin
950060cd3c
* src/ejabberd_s2s_out.erl: Bugfix
...
SVN Revision: 976
2007-11-25 16:14:32 +00:00
Mickaël Rémond
b53f2be7f2
* src/ejabberd_s2s_out.erl: Changed to actual p1_fsm behaviour. It was working
...
correctly as the API of p1_fsm and gen_fsm is strictly the same.
SVN Revision: 948
2007-09-14 14:21:25 +00:00
Mickaël Rémond
f6bf5973ef
* src/ejabberd_s2s_out.erl: Implements s2s negociation timeouts and s2s connection retrial interval (EJAB-357, EJAB-294).
...
SVN Revision: 936
2007-09-14 14:18:32 +00:00
Mickaël Rémond
0efaacb24e
open up to 3 s2s outgoing connection per domain pair
...
SVN Revision: 935
2007-09-14 14:18:17 +00:00
Mickaël Rémond
afec054544
* src/ejabberd_c2s.erl: Option to prevent the use of Erlang OTP supervisor for transient processes (EJAB-354).
...
* src/ejabberd_s2s_in.erl: Likewise.
* src/ejabberd_s2s_out.erl: Likewise.
* src/mod_muc/mod_muc_room.erl: Likewise.
* src/configure.ac: Likewise.
* src/configure: Likewise.
* src/Makefile.in: Likewise.
* src/mod_muc/Makefile.in: Likewise.
SVN Revision: 931
2007-09-14 14:16:36 +00:00
Mickaël Rémond
b78d8ee55f
* src/ejabberd_s2s_out.erl: Moved s2s connexion information from INFO level to DEBUG level and more human readable information explaining what is going on (EJAB-353).
...
SVN Revision: 930
2007-09-14 14:16:20 +00:00
Mickaël Rémond
9fc203ee6d
open up to 3 s2s outgoing connection per domain pair
...
SVN Revision: 928
2007-09-14 14:15:44 +00:00
Mickaël Rémond
f9221e2212
* src/ejabberd_s2s_out.erl: Avoid bouncing messages twice if terminate happens during open_connect.
...
SVN Revision: 854
2007-08-01 11:25:23 +00:00