aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* ejabberd_stun: Add 'turn_blacklist' optionHolger Weiss2020-05-211-0/+3
| | | | | | | | The new 'turn_blacklist' listener option allows for specifying one or more IP addresses and/or subnet addresses/masks. The TURN server will refuse to relay traffic from/to blacklisted IP addresses. By default, Teredo and 6to4 addresses are blacklisted, as mandated by RFC 6156 (section 9.1).
* 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-194-67/+116
| | | | | 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-193-18/+39
| | | | | The stun application now supports RFC 6156: TURN Extension for IPv6, and therefore needs separate IPv4 and IPv6 relay addresses.
* Let ejabberd_stun listen on IPv6 socketsHolger Weiss2020-05-191-1/+1
| | | | | The stun application now allows IPv6 clients to perform STUN requests and to allocate TURN relays.
* Fix hardcoded URL to register.css and URLS to sections (#3281)Badlop2020-05-191-7/+7
|
* Sort databases alphabetically in options doc (thanks to Neustradamus)(#3246)Badlop2020-05-191-4/+4
|
* Don't crash in mod_muc_log:get_url when mod_muc_log is not enabledPaweł Chmielowski2020-05-151-1/+4
| | | | | Disco on room can call this function even when logger is not enabled, but this room option was enabled previously when logger was active.
* Display installed ejabberd version in webadmin footer (#3272)Badlop2020-05-151-0/+1
|
* Make SQL query more generic for MSSQL compatibility (#3271)yuriyz-w2020-05-151-2/+2
|
* Update *_vcard commands help, so they are better displayed in DocsBadlop2020-05-141-26/+26
|
* Update syntax of some options so they are better displayed in DocsBadlop2020-05-123-13/+13
|
* Fix most EDoc errors, even if that's not used nowadays apparentlyBadlop2020-05-1113-26/+31
|
* If new session Pid exists when sm_remove is called, then keep Ping (#3260)Badlop2020-05-111-1/+8
|
* 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.
* Fix link in mod_sip to SIP Docs sectionBadlop2020-05-091-3/+3
|
* Provide minimal mod_bosh configuration exampleBadlop2020-05-091-1/+14
|
* Add link in acme option to ACME section in ejabberd DocsBadlop2020-05-091-1/+1
|
* Remove ancient and rather useless incode ejabberd_commands documentationBadlop2020-05-071-201/+0
|
* Don't use string:take, as it isn't available in Erlang/OTP 19.3 (#3256)Badlop2020-05-071-3/+2
|
* Fix webadmin muc room sorting broken due to trailing slash patch (#3256)Badlop2020-05-071-1/+2
|
* Unconditionally send presence unavailable to all pres_a recipientPaweł Chmielowski2020-05-071-26/+37
| | | | | | | 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
* Show deprecation warning if ejabberd_xmlrpc is configured as listen module ↵Badlop2020-05-061-0/+7
| | | | (#2915)
* Remove access_commands useless lines, api_permission replaced it years agoBadlop2020-05-061-14/+8
|
* ejabberd_listener: Let supervisor terminate childHolger Weiss2020-05-051-1/+6
| | | | | | | 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.
* Set 'max_fsm_queue' default value (back) to 10000Holger Weiss2020-05-054-4/+4
| | | | | | | | | | 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.
* 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.
* Rewrite sentences in modules options examples, to not break Docs indentationBadlop2020-04-282-8/+4
|
* Merge pull request #3235 from weiss/xep-0215Jérôme Sautret2020-04-284-9/+720
|\ | | | | Support STUN/TURN service discovery
| * ejabberd_stun: Tone down 'auth_realm' warningHolger Weiss2020-04-281-7/+7
| | | | | | | | | | | | | | 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.
| * Support XEP-0215: External Service DiscoveryHolger Weiss2020-04-282-0/+711
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * gen_mod: Reload modules after reloading listenersHolger Weiss2020-04-231-2/+2
| | | | | | | | | | | | 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.
* | Don't offer X-OAUTH2 if the only auth method enabled is Anonymous (#3209)Badlop2020-04-271-1/+1
| |
* | Don't store caps information for direct presences of muc roomPaweł Chmielowski2020-04-271-1/+13
| | | | | | | | | | | | 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.
* | Clean some unused functions in ejabberd_ctl, this makes "make hooks" happyBadlop2020-04-241-60/+2
|/
* ejabberd_stun: Fix 'turn_ip' fallbackHolger Weiss2020-04-231-13/+20
| | | | | | | | | 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).
* use dsn-less config for mssql (#3131)ChaosKid422020-04-232-47/+9
|
* ejabberd_stun: Handle hashed passwords gracefullyHolger Weiss2020-04-221-1/+8
| | | | | Don't crash when STUN/TURN authentication is performed against a SCRAM-hashed password.
* ejabberd_stun: Add 'stun_get_password' hookHolger Weiss2020-04-221-2/+11
| | | | | Add a hook that allows modules to offer a password for STUN/TURN authentication.
* Fix some English typosBadlop2020-04-213-5/+5
|
* Rephrase mod_admin_extra doc, a2x screwed the format when building DocsBadlop2020-04-211-10/+10
|
* Make a few more strings translatable in MUC and Shared Roster WebAdminBadlop2020-04-202-11/+11
|
* ejabberd_stun: Set a default 'turn_ip'Holger Weiss2020-04-203-17/+19
| | | | | | 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.
* Fix doc content in mod_admin_extra so it can be extracted by make translationsBadlop2020-04-171-28/+27
|
* Check if mod_muc_log is enabled before setting logging option (#3215)Badlop2020-04-171-0/+9
|
* When rescode is some unexpected, probably error message, print itBadlop2020-04-171-1/+3
|
* Restart offline pop_messages when there is mismatch between select and deletePaweł Chmielowski2020-04-171-4/+10
| | | | | | | | When another connection is inserting something to spool at this same time as we do pop_messages, it's possible that insert will happen between we fetch messages and delete them, so we effectively will delete it without delivering it to client. This change catch this situation and restart transaction, so we should always have consistent results.