aboutsummaryrefslogtreecommitdiff
path: root/src/mod_stun_disco.erl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add details about XEP implementations to some protocol attributesBadlop2022-11-071-1/+1
|
* Update copyright year to 2022Badlop2022-02-111-1/+1
|
* mod_stun_disco: Fix parsing of IPv6 listenersHolger Weiss2021-12-181-1/+1
| | | | | | | Don't crash if `mod_stun_disco` is used with `offer_local_services` and an IPv6 listener has an explicit `ip:` address configured. Thanks to Daniel Kenzelmann for reporting the issue.
* Update documentation to match the implemented options values (#3675)Badlop2021-09-141-1/+1
|
* Use the new 'note' field to annotate changes in 20.01..21.03Badlop2021-05-051-1/+2
|
* Update newest copyright year to 2021 (#3464)Badlop2021-01-271-1/+1
|
* Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson2020-09-031-1/+1
|
* mod_stun_disco: Fix function specificationHolger Weiss2020-07-111-1/+1
|
* mod_stun_disco: Fix wording of log messageHolger Weiss2020-06-191-1/+1
|
* Use old http_uri, crypto and pg2 only with old Erlang/OTP (#3284)Badlop2020-06-011-1/+1
|
* Rename 'turn_v4_ip' and 'turn_v6_ip' optionsHolger Weiss2020-05-291-14/+15
| | | | | The 'turn_ipv4_address' and 'turn_ipv6_address' option names are probably more intuitive.
* mod_stun_disco: Make 'services' example shorterHolger Weiss2020-05-191-30/+0
| | | | | | Omit the 'tcp' and 'stuns' services from the list of example 'services' in the documentation. For typical use cases, those are less interesting than 'udp' and 'turns' services.
* mod_stun_disco: Offer local IPv6 servicesHolger Weiss2020-05-191-61/+102
| | | | | Also announce local STUN/TURN services listening on IPv6 sockets (unless the 'offer_local_services' option is set to 'false').
* ejabberd_stun: Support IPv6 for TURNHolger Weiss2020-05-191-10/+10
| | | | | The stun application now supports RFC 6156: TURN Extension for IPv6, and therefore needs separate IPv4 and IPv6 relay addresses.
* mod_stun_disco: Bump credentials_lifetime defaultHolger Weiss2020-05-111-13/+18
| | | | | | | | | | | 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.
* mod_stun_disco: Log discovered services on startupHolger Weiss2020-05-051-4/+4
| | | | | | 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).
* mod_stun_disco: Remove unnecessary inclusionHolger Weiss2020-05-031-2/+0
|
* mod_stun_disco: Apply minor documentation cleanupsHolger Weiss2020-05-031-4/+4
|
* mod_stun_disco: Try to resolve listener addressHolger Weiss2020-04-301-2/+28
| | | | | | | | | | | | | | | | | 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.
* Support XEP-0215: External Service DiscoveryHolger Weiss2020-04-281-0/+670
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.