aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
Commit message (Collapse)AuthorAgeFilesLines
* mod_scansion_record: Flush after writesMatthew Wild2021-01-081-0/+3
|
* MUC: Reject probes from non-occupantsJC Brand2020-10-021-12/+21
| | | | Also test for self-probes
* MUC: Add support for presence probes (fixes #1535)JC Brand2020-04-192-24/+87
| | | | | | | | | | | The following patch allows Prosody to respond to `probe` presences and send out the probed occupant's current presence. This is based on line 17.3 in XEP-0045: A MUC service MAY handle presence probes sent to the room JID <room@service> or an occupant JID <room@service/nick> (e.g, these might be sent by an occupant's home server to determine if the room is still online or to synchronize presence information if the user or the user's server has gone offline temporarily or has started sharing presence again, as for instance when Stanza Interception and Filtering Technology (XEP-0273) is used).
* mod_component: Distinguish missing stream @to from unknown local component ↵Kim Alvefur2020-12-181-0/+4
| | | | | | | | | | | (thanks Daniel_W) Spectrum2 did not include a stream @to attribute due to a configuration error. "nil does not match ..." is not very clear in pointing this out and is somewhat confusing, tho it did help pinpoint what went wrong. It's also not great leak to programming language internals like "nil" out into user-facing strings like this.
* Merge 0.11->trunkKim Alvefur2020-12-161-1/+1
|\
| * mod_s2s: Fix copypaste mistake in b3ae48362f78Kim Alvefur2020-12-161-1/+1
| | | | | | | | | | Directly sending something over s2s needs to use sends2s() but the code copied from mod_c2s had .send()
* | Merge 0.11->trunkMatthew Wild2020-12-151-2/+2
|\|
| * MUC: Fix logic bug causing unnecessary presence to be sent, fixes #1615 ↵Matthew Wild2020-12-151-2/+2
| | | | | | | | (thanks damencho)
* | Merge 0.11->trunkKim Alvefur2020-12-111-1/+4
|\|
| * mod_s2s: Prevent whitespace keepalives the stream has been openedKim Alvefur2020-12-101-1/+4
| | | | | | | | | | | | | | | | | | This will result in the stream timing out instead, which is probably correct if the stream has not been opened yet. This was already done for c2s in e69df8093387 Thanks Ge0rG
* | MUC: Merge mod_muc_occupant_id into a sub-module (thanks pep.!)Matthew Wild2020-11-242-0/+72
| |
* | Merge 0.11->trunkKim Alvefur2020-11-231-1/+4
|\|
| * mod_saslauth: Only advertise channel binding if a finished message is availableKim Alvefur2020-11-231-1/+1
| | | | | | | | In some cases this method returns nothing, unclear why.
| * mod_saslauth: Disable 'tls-unique' channel binding with TLS 1.3 (closes #1542)Kim Alvefur2020-11-231-1/+4
| | | | | | | | | | | | | | | | The 'tls-unique' channel binding is undefined in TLS 1.3 according to a single sentence in parenthesis in Apendix C of RFC 8446 This may trigger downgrade protection in clients that were expecting channel binding to be available.
* | mod_adhoc: Log commands provided at debug levelKim Alvefur2020-11-221-0/+2
| |
* | mod_disco: Add some spacing to improve readability and code navigationKim Alvefur2020-11-101-0/+4
| |
* | Merge 0.11->trunkKim Alvefur2020-11-061-1/+1
|\|
| * mod_pubsub: Fix notification stanza type setting (fixes #1605)Kim Alvefur2020-11-061-1/+1
| |
* | Merge 0.11->trunkKim Alvefur2020-11-0573-2719/+4493
|\ \ | |/ |/|
| * mod_pubsub: Comment on itemstore typeKim Alvefur2020-10-251-1/+1
| |
| * mod_pubsub: Clarify kind of item store createdKim Alvefur2020-10-251-1/+1
| | | | | | | | | | Planning to make this configurable, so good to distinguish it from future backends.
| * mod_pubsub: Don't set store as metatableKim Alvefur2020-10-251-1/+1
| | | | | | | | | | 'archive' is not a metatable here, so this has no effect. Remove since apparently nothing depends on this.
| * MUC: Remove XEP-0091: Legacy Delayed DeliveryKim Alvefur2020-10-171-3/+0
| | | | | | | | | | | | | | Why do we still include this? Deprecated in 2007, obsoleted in 2009. Removes redundant timestamp that nobody should be looking at since many years and a redundant copy of the room JID.
| * mod_posix: Hook and fire events on SIGUSR1/2Matthew Wild2020-10-161-0/+15
| |
| * mod_http_errors: Remove 'extra' element when emptyKim Alvefur2020-10-121-1/+1
| |
| * mod_http_errors: Dark theme!Kim Alvefur2020-10-121-0/+7
| |
| * mod_http_errors: Use a class on extra data sectionKim Alvefur2020-10-121-2/+2
| | | | | | | | This CSS selector makes it awkward to add more items.
| * Merge 0.11->trunkKim Alvefur2020-10-071-2/+2
| |\
| * \ Merge 0.11->trunkKim Alvefur2020-10-051-2/+2
| |\ \
| * | | mod_bosh: Count connection attempts non-VirtualHost as "bad host" (stats)Kim Alvefur2020-10-031-0/+2
| | | |
| * | | Merge 0.11->trunkKim Alvefur2020-10-031-1/+18
| |\ \ \
| * | | | mod_auth_anonymous: Add config option to allow/disallow storage writesMatthew Wild2020-10-021-2/+8
| | | | |
| * | | | Merge 0.11->trunkMatthew Wild2020-09-291-76/+106
| |\ \ \ \
| * | | | | mod_http: Silence warnings when running under prosodyctlMatthew Wild2020-09-111-2/+4
| | | | | |
| * | | | | mod_posix: Daemonize laterKim Alvefur2020-09-081-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Daemonizing later means we can use that as a "successful startup" signal and problems can be reported via exit code.
| * | | | | MUC: Don't default room name to JID localpart (API breaking change)Kim Alvefur2020-08-292-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Behavior with turning empty name into localpart was originally introduced in 711eb5bf94b4 This has caused some problems for clients, making it difficult to differentiate between a room actually named like the localpart from a room without a name. Breaking: The function signature of the :get_name() method changes from always returning a string to optional string.
| * | | | | mod_posix: Remove ancient undocumented user switchingKim Alvefur2020-08-241-31/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | User switching has been done by prosodyctl or init scripts for a very long time now, so this is not needed. Using this would not have worked with module reloading (e.g. to reload certificates) since ports are closed and re-bound, which would then not be allowed. Today there exists better ways to grant low ports, i.e. capabilities(7) <Zash> Why do we have this? <MattJ> Remove it
| * | | | | mod_admin_shell: Report CSI queue length from mod_csi_simpleKim Alvefur2020-08-221-1/+5
| | | | | |
| * | | | | mod_admin_shell: Report CSI state in c2s:show()Kim Alvefur2020-08-221-0/+3
| | | | | |
| * | | | | mod_external_services: Validate services added via eventsKim Alvefur2020-08-171-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While writing developer documentation it became obvious that i was silly to have one item format for config and items API, and another format for the event API. Then there's the stanza format, but that's a common pattern. This change reduces the possible input formats to two and allows other modules the benefit of the processing and validation performed on items from the config.
| * | | | | mod_external_services: Allow specifying a credential generation callbackKim Alvefur2020-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is especially targeted at services added via the items API. More involved credential generation should use the event hook.
| * | | | | mod_external_services: Prepare to allow more credential algorithmsKim Alvefur2020-07-251-13/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not sure what algorithms might fit here. Separation makes some sense. This is also a preparation for having a callback. (See next commit)
| * | | | | mod_external_services: Support adding services via items APIKim Alvefur2020-07-251-2/+4
| | | | | |
| * | | | | mod_external_services: XEP-0215: External Service DiscoveryKim Alvefur2020-07-181-0/+205
| | | | | |
| * | | | | mod_component: Return extended error condition when not connectedKim Alvefur2020-04-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | This might be something to write a XEP about.
| * | | | | mod_component: Reply with a different error when not connectedKim Alvefur2020-04-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The wait, service-unavailable is overloaded by XEP-0045 to mean that the room has reached the maximum number of users. See #1495. Bouncing errors for components is tricky since there is no way to tell that it comes from the server hosting the component, not from the other end of the component connection.
| * | | | | mod_net_multiplex: Set read size/mode to that of the target listenerKim Alvefur2020-08-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise it would use the configured buffer size, or previously '*a'. Using the read size set by the listener seems more sensible.
| * | | | | mod_net_multiplex: Read no more than the max buffer size settingKim Alvefur2020-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise the '*a' read mode applies, which under certain circumstances can read infinite amounts of data into memory.
| * | | | | mod_http: Add way to signal that a module supports streaming uploadsKim Alvefur2020-08-011-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #726 API: module:provides("http", { streaming_uploads = true; route = { PUT = function (event) event.request.body_sink = io.tmpfile(); return true; end } })
| * | | | | net.http.parser: Allow specifying sink for large request bodiesKim Alvefur2020-08-011-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables uses such as saving uploaded files directly to a file on disk or streaming parsing of payloads. See #726