| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
| |
Increase the default lifetime of temporary credentials to 12 hours.
ejabberd's built-in TURN server re-queries the temporary password from
mod_stun_disco whenever a TURN client attempts to refresh an allocation,
and mod_stun_disco will only return the password as long as the
credentials didn't expire. Therefore, the credentials lifetime
effectively limits the maximum lifetime of a TURN allocation when
ejabberd's TURN service is used, so the default value shouldn't be too
short.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Previously we only send that presence to direct presence recipients if
client also sent general self presence (without to attribute).
This should help with issue #3245
|
|
|
|
| |
(#2915)
|
| |
|
|
|
|
|
|
|
| |
If a TCP connection was closed before the socket was handed over to a
supervised child process, let the supervisor terminate the process
rather than killing it directly. This avoids crash log entries
generated by the supervisor.
|
|
|
|
|
|
|
|
|
|
| |
The default value for the 'max_fsm_queue' option was set to 10000 in
commit 79685da90b514a49f9c412e31dccc17be9dd8680, and that value is still
documented to be the default. It was (probably unintentionally) changed
to 5000 in commit 03de853e4fdcf852ae75a86922c08bb1a0950e6d.
It makes sense to keep it larger than the value of mod_stream_mgmt's
'max_ack_queue' option.
|
|
|
|
|
|
| |
If the 'offer_local_services' option isn't set to 'false', log an [info]
message for each auto-discovered ejabberd_stun listener on startup (and
on configuration reload).
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In some IPv6-only networks, hostnames that have no AAAA record are
resolved to an IPv6 address that's mapped to the host's IPv4 address.
This allows the IPv6-only clients to communicate with IPv4-only services
such as ejabberd's built-in STUN/TURN server. If STUN/TURN clients try
to contact the IPv4 address directly rather than using the mapped IPv6
address, the connection will fail.
Therefore, try to resolve the IP address of local ejabberd_stun services
to the hostname and announce that hostname rather than the IP address if
(and only if) the hostname resolves back to the original IP address, and
not to any additional IPv4 or IPv6 address(es).
This can (and should) be reverted once IPv6 support is added to
ejabberd's built-in STUN/TURN server.
|
| |
|
| |
|
|\
| |
| | |
Enable STUN/TURN support by default
|
| |
| |
| |
| |
| | |
Build ejabberd with STUN/TURN support by default, and add a STUN/TURN
listener to the example configuration file.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Support STUN/TURN service discovery
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
These days, STUN/TURN authentication can be performed with ephemeral
credentials, where the REALM is irrelevant. Therefore, just log an
[info] message rather than a [warning] in the case where no
authentication REALM is configured but multiple virtual domains exist.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add the 'mod_stun_disco' module, which allows XMPP clients to discover
STUN/TURN services and to obtain temporary credentials for using them as
per XEP-0215: External Service Discovery. The temporary credentials
handed out to clients have the format described in:
https://tools.ietf.org/html/draft-uberti-behave-turn-rest-00
Also add the new module to the example configuration file.
Closes #2947.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Use the current versions of 'xmpp' (to get XEP-0215 support) and 'stun'
(to fix TURN issues).
|
| | |
| | |
| | |
| | |
| | |
| | | |
Make sure modules won't be reloaded before listeners. This is necessary
to allow the (not yet committed) 'mod_stun_disco' module to parse the
listener configuration after configuration reloads.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
We really don't need those, and thanks to each individual room having
different hash (as one of hashed data is room description) we end with
lot of data that we really don't need.
|
|/ / |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The 'turn_ip' option validator doesn't accept an inet:ip4_address()
tuple.
While at it, change the logic to only perform the fallback address
lookup if no 'turn_ip' is configured (analogous to the fallback
mechanism for the case where the 'auth_realm' is undefined).
|
| | |
|
| |
| |
| |
| |
| | |
* Update jiffy
* And here
|
| |
| |
| |
| |
| | |
Don't crash when STUN/TURN authentication is performed against a
SCRAM-hashed password.
|
| |
| |
| |
| |
| | |
Add a hook that allows modules to offer a password for STUN/TURN
authentication.
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
| |
Try to resolve the local hostname, use the result as the default
'turn_ip', and only log a warning if that fails. Using the local
hostname's address by default is analogous to mod_proxy65's behavior.
|
| |
|