aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mod_c2s,mod_s2s: Disable and close port listeners before closing sessionsKim Alvefur2022-02-113-0/+15
| | | | This ensures no new clients can start connecting during shutdown
* mod_posix: Run signal handlers in the startup threadKim Alvefur2021-10-061-7/+13
|
* prosody: Expose main thread on the 'prosody' globalKim Alvefur2021-10-062-0/+5
| | | | To allow running things in it.
* prosody: Run shutdown procedure in async threadKim Alvefur2019-01-011-1/+1
|
* prosody: Move last cleanup and shutdown code into util.startupKim Alvefur2019-01-012-13/+17
|
* mod_admin_shell: Squeeze some characters out of the Certificate columnKim Alvefur2022-02-171-2/+2
| | | | The more compact these are, the better
* prosodyctl: Restore 'list --outdated'Kim Alvefur2022-02-171-0/+4
| | | | | Parsing --flags puts it into 'opts', so --outdated wasn't passed to luarocks, breaking that functionality
* mod_admin_shell: Fix description of muc:room() (thanks Link Mauve)Kim Alvefur2022-02-151-1/+1
| | | | | But then this is the internal API which is weird and unfriendly to expose externally. Lots of methods to wrap tho ... one day.
* mod_turn_external: Fix type of config option (thanks mirux)Kim Alvefur2022-02-151-1/+1
| | | | | | There was a separate boolean option to enable TLS before, but it was merged with the port number option and it seems the typed API interface got confused.
* util.dns: Remove compat for pre-0.11 lack of inet_ntop bindingKim Alvefur2022-02-151-32/+3
| | | | The inet_ntop binding was added in 8b612ec00e4a and included in 0.11.0
* util.dns: Replace base16 implementation with util.hexKim Alvefur2022-02-151-10/+1
| | | | Less code!
* core.certmanager: Relax certificate filename check #1713Kim Alvefur2022-02-141-8/+2
| | | | | After a survey of ACME clients it seems *.crt and *fullchain* should work for the majority. The rest get to manually copy their files.
* util.dependencies: Refer to 'apt' instead of 'apt-get'Kim Alvefur2022-02-132-7/+7
| | | | | The more modern and user friendly frontend, should be in every supported version of Debian and Ubuntu by now
* mod_invites_register: Load mod_register_ibr in invite only modeKim Alvefur2022-02-101-0/+4
| | | | | This ensures that registration actually works even if allow_registration is not enabled.
* mod_invites_register: Replace COMPAT hackKim Alvefur2022-02-101-1/+1
| | | | | This hack is not needed since a9c975a0f113 so can be removed when included with Prosody.
* mod_turn_external: Add option to enable TURN over TLSKim Alvefur2022-02-101-2/+6
| | | | | | Usually on port 443 to avoid restrictive firewalls. Thanks to Holger for discussion
* mod_turn_external: Simplify configurationKim Alvefur2022-02-101-2/+9
| | | | | Much harder to get boolean options wrong than accidentally adding something unrecognised to a Set.
* mod_admin_shell: Track connected events instead of createdKim Alvefur2022-02-061-3/+3
| | | | | | | | The connection events are more appropriate here, where the s2s-created events happens a bit later or earlier in a sessions lifetime depending on its direction and for outgoing connections isn't actually the creation time (which happens immediately after pressing enter, so not very interesting), but rather closer to the connection time.
* mod_s2s: Add new early s2s-connected eventsKim Alvefur2022-02-061-0/+3
| | | | | Allows doing things based on connections rather than sessions, which may have been created before or after.
* doap: Reference some JSON RFCsKim Alvefur2022-02-051-0/+2
| | | | | RFC 4627 JSON - util.json RFC 6901 JSON Pointer - util.jsonpointer
* doap: Reference RFC 6331 which deprecated SASL DIGEST-MD5Kim Alvefur2022-02-051-0/+1
|
* prosody.cfg.lua.dist: Link to website (thanks eta)Kim Alvefur2021-07-171-0/+2
|
* prosody.cfg.lua.dist: Warn about adding settings at the end of the fileKim Alvefur2021-07-171-0/+9
| | | | It is very often a confusing mistake that leads to support questions
* core.modulemanager: Save module metadata for potential later useKim Alvefur2022-02-051-1/+2
| | | | Makes it reachable from the shell if nothing else
* util.startup: Enable DANE in http client library with use_daneKim Alvefur2022-02-051-0/+1
|
* net.http: Allow using DANE via options or per request settingsKim Alvefur2022-02-051-1/+5
| | | | Dare to enable by default?
* mod_smacks: Tweak resumption age buckets towards multiples of 60Kim Alvefur2022-02-041-1/+1
| | | | | This seems like the thing to do for time, which is usually divided into divisors divisible by 60, or multiplied by multiples of 60
* tools: Allow processing instructions in some XML parsing toolsKim Alvefur2022-02-042-2/+2
| | | | IANA registry files have XSLT references, which are harmless to ignore.
* util.xml: Add an option to allow <?processing instructions?>Kim Alvefur2022-02-042-1/+11
| | | | | These should generally be safe to just ignore, which should be the default behavior of Expat and LuaExpat
* mod_http: Use interface name as default default global hostnameKim Alvefur2022-02-041-1/+1
| | | | | | | http://[::]:5280/ is as sensible as http://*:5280/ so why not This might be a bit weird when listening no multiple interfaces but not sure we can really do anything sensible then anyway.
* mod_http: Use http_default_host for URLs generated in global contextKim Alvefur2022-02-041-1/+2
| | | | | This might make the global routes less confusing sometimes, or at least valid URLs instead of http://*:5280/ which doesn't make much sense.
* prosodyctl: Allow passing server on command line with --serverKim Alvefur2022-02-041-1/+1
| | | | Because why not I guess. This mirrors the corresponding luarocks command
* prosodyctl: Allow install plugin via explicit path or URLKim Alvefur2022-02-041-2/+2
| | | | | | | | | | This way you don't need to set the server URL in the config to use this, you could just ^C^V an install line from a web page that says prosodyctl install https://modules.example.com/mod_example.src.rock Drop the help message in this case since it'll be all messed up by being given an URL or rock filename.
* prosodyctl: Return success status code from --helpKim Alvefur2022-02-041-11/+11
| | | | | Only when the help is shown because of invalid arguments should a non-zero status code be returned to indicate a problem.
* prosodyctl: Use argument parsing library to parse --help, -h, -?Kim Alvefur2022-02-041-12/+27
| | | | Reads nicer, but adds more code. Can always be reverted later I suppose.
* mod_websocket: Only enable host-agnostic HTTP routing when enabled globallyKim Alvefur2022-02-041-1/+3
| | | | | | | This way the host-agnostic http://*:5280/ handler is not enabled, but BOSH can still be used with any local VirtualHost Ref #1712
* mod_bosh: Only enable host-agnostic HTTP routing when enabled globallyKim Alvefur2022-02-041-1/+3
| | | | | | | This way the host-agnostic http://*:5280/ handler is not enabled, but BOSH can still be used with any local VirtualHost Ref #1712
* util.format: Fix typo in comment [codespell]Kim Alvefur2022-02-041-1/+1
|
* mod_pep: Fix typo in comment [codespell]Kim Alvefur2022-02-041-1/+1
|
* mod_bookmarks: Fix typos in stanza error messages [codespell]Kim Alvefur2022-02-041-2/+2
|
* mod_admin_shell: Fix typo in comment [codespell]Kim Alvefur2022-02-041-1/+1
|
* modulemanager: Shorten metadata keys to improve readability and memorabilityMatthew Wild2022-02-041-5/+5
|
* Revert util.debug change accidentally committed in e157e5c79daaMatthew Wild2022-02-041-1/+1
|
* util.pluginloader: Fix method to return any module metadata (luacheck)Matthew Wild2022-02-041-1/+1
|
* modulemanager: Add plugin load filter that reads module metadata from sourceMatthew Wild2022-02-041-0/+32
| | | | | | | | | | | | | | | | | | | | | Metadata in modules is added using lines formatted as: --% key: value Where key is a valid identifier string, and value is also a string (leading and trailing whitespace are trimmed during parsing). The initial supported keys are: --% requires_core_features: feature1, feature2, ... --% conflicts_core_features: feature1, feature2. ... These 'features' map to features reported by the new core.features module. A benefit of this load-time metadata approach compared to e.g. something like module:requires()/module:conflicts() is that we can continue to look in module search paths for a suitable module. Aborting an already-loaded module due to a version conflict would be too late.
* modulemanager, moduleapi: Switch to new pluginloader interfaceMatthew Wild2022-02-042-4/+9
|
* core.features: New module to track and expose the features supported by ProsodyMatthew Wild2022-02-041-0/+8
| | | | | A "feature" is a simple string, and it's expected that we will add to (and maybe remove from) this list over the course of time.
* util.pluginloader: Support for a per-file load filterMatthew Wild2022-02-031-6/+14
| | | | | Load filters can choose to block the loading of certain files, and optionally return some metadata about the loaded file.
* util.pluginloader: Support for multiple pluginloader instances, and optionsMatthew Wild2022-02-032-11/+29
|
* mod_pep: Clarify purpose of fallback serviceKim Alvefur2022-02-031-0/+7
| | | | | Extra-extra obvious that no interaction with this should lead to persisted changes