Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mod_admin_shell: Report CSI queue length from mod_csi_simple | Kim Alvefur | 2020-08-22 | 1 | -1/+5 |
| | |||||
* | mod_admin_shell: Report CSI state in c2s:show() | Kim Alvefur | 2020-08-22 | 1 | -0/+3 |
| | |||||
* | mod_external_services: Validate services added via events | Kim Alvefur | 2020-08-17 | 1 | -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 callback | Kim Alvefur | 2020-07-25 | 1 | -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 algorithms | Kim Alvefur | 2020-07-25 | 1 | -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 API | Kim Alvefur | 2020-07-25 | 1 | -2/+4 |
| | |||||
* | mod_external_services: XEP-0215: External Service Discovery | Kim Alvefur | 2020-07-18 | 5 | -0/+284 |
| | |||||
* | mod_component: Return extended error condition when not connected | Kim Alvefur | 2020-04-13 | 1 | -1/+2 |
| | | | | This might be something to write a XEP about. | ||||
* | mod_component: Reply with a different error when not connected | Kim Alvefur | 2020-04-13 | 1 | -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. | ||||
* | net.http.parser: Allow configuration of the chunk size fed to the parser | Matthew Wild | 2020-08-21 | 1 | -1/+3 |
| | |||||
* | net.http.parser: Switch tests so that CRLF conversion of input data is optional | Matthew Wild | 2020-08-21 | 1 | -7/+10 |
| | |||||
* | net.http.parser: Fix incorrect path in test | Matthew Wild | 2020-08-21 | 1 | -1/+1 |
| | |||||
* | net.http.parser: Add failing test for (large?) chunk-encoded responses | Matthew Wild | 2020-08-21 | 2 | -0/+27 |
| | |||||
* | net.http.parser: Fix indentation | Kim Alvefur | 2020-08-20 | 1 | -2/+2 |
| | | | | | Probably due to a rebase/merge with a merge tool that ignores whitespace. Happens all the time to me :( | ||||
* | util.dbuffer: Fix traceback when :collapse() is called on empty buffer | Matthew Wild | 2020-08-20 | 2 | -1/+13 |
| | |||||
* | util.dataforms: Add more XEP-0211 media element test coverage | Kim Alvefur | 2020-08-16 | 1 | -0/+28 |
| | |||||
* | util.dataforms: Convert media element sizes to avoid error on Lua 5.3 | Kim Alvefur | 2020-08-16 | 2 | -1/+16 |
| | | | | | | | | The stanza API does not accept number values and threw an error due to the height and width attributes of the media element (XEP-0221). This part had no test coverage previously, explaining why it was not discovered until now. | ||||
* | net.http.errors: Add new module for converting net.http errors to util.error ↵ | Matthew Wild | 2020-08-13 | 1 | -0/+115 |
| | | | | objects | ||||
* | mod_net_multiplex: Set read size/mode to that of the target listener | Kim Alvefur | 2020-08-02 | 1 | -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 setting | Kim Alvefur | 2020-08-02 | 1 | -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 uploads | Kim Alvefur | 2020-08-01 | 1 | -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 bodies | Kim Alvefur | 2020-08-01 | 3 | -7/+36 |
| | | | | | | | This enables uses such as saving uploaded files directly to a file on disk or streaming parsing of payloads. See #726 | ||||
* | net.http.parser: Switch to util.dbuffer for buffering incoming data | Kim Alvefur | 2020-08-01 | 1 | -61/+49 |
| | | | | | | This is primarily a step towards saving uploads directly to files, tho this should hopefully be more efficient than collapsing the entire buffer to a single string every now and then. | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2020-08-08 | 0 | -0/+0 |
|\ | |||||
| * | mod_s2s: Escape invalid XML in loggin (same way as mod_c2s) fix #15740.11.6 | Kim Alvefur | 2020-08-01 | 1 | -2/+1 |
| | | |||||
* | | Merge 0.11->trunk | Matthew Wild | 2020-08-08 | 1 | -0/+12 |
|\| | |||||
| * | net.http: Add request:cancel() method | Matthew Wild | 2020-08-08 | 1 | -0/+11 |
| | | | | | | | | | | | | | | | | | | | | This is a new API that should be used in preference to http.destroy_request() when possible, as it ensures the callback is always called (with an error of course). APIs that have edge-cases where they don't call callbacks have, from experience, shown to be difficult to work with and often lead to unintentional leaks when the callback was expected to free up certain resources. | ||||
| * | net.http: Re-expose destroy_request() function | Matthew Wild | 2020-08-08 | 1 | -0/+1 |
| | | | | | | | | | | This was accidentally turned private in 647adfd8f738 as part of refactoring for Lua 5.2+. | ||||
* | | net.server_epoll: Log debug message when a connection errors on read | Kim Alvefur | 2020-07-25 | 1 | -0/+5 |
| | | | | | | | | | | | | It's confusingly quiet otherwise, even with maximum verboseness. Thanks perflyst | ||||
* | | mod_register: Add a dependency on mod_watchregistrations | Emmanuel Gil Peyrot | 2020-06-29 | 1 | -0/+1 |
| | | | | | | | | | | Spammers are a big hassle, hopefully this will make admins aware of them sooner than when they’ve already spammed a bunch. | ||||
* | | mod_proxy65: Limit dump of invalid data to 300 bytes (like mod_c2s) | Kim Alvefur | 2020-07-17 | 1 | -2/+2 |
| | | |||||
* | | mod_proxy65: Log invalid greetings escaped instead of as base64 | Kim Alvefur | 2020-07-16 | 1 | -3/+2 |
| | | | | | | | | | | Makes it easier to see human-readable parts and thus identifying the garbage. Also consistent with mod_c2s and others. | ||||
* | | mod_server_contact_info: Add status-addresses field | Kim Alvefur | 2020-05-27 | 4 | -1/+6 |
| | | | | | | | | XEP-0157 version 1.1.0 | ||||
* | | configure: Pass compiler flag to enable ICU only when building util.encodings | Kim Alvefur | 2020-07-12 | 3 | -1/+5 |
| | | | | | | | | Passing it in CFLAGS applied to all modules, which was not needed. | ||||
* | | Merge 0.11->trunk | Matthew Wild | 2020-07-10 | 1 | -1/+2 |
|\| | |||||
| * | net.resolvers.basic: Default conn_type to 'tcp' consistently if unspecified ↵ | Matthew Wild | 2020-07-10 | 1 | -1/+2 |
| | | | | | | | | | | | | (thanks marc0s) Fixes a traceback when passed an IP address with no conn_type. | ||||
* | | prosodyctl about: Show longer name for luaunbound | Kim Alvefur | 2020-07-10 | 1 | -2/+2 |
| | | | | | | | | luaunbound, lunbound, lua-unbound ... "kärt barn har många namn" | ||||
* | | prosodyctl about: Strip name from lua module _VERSION | Kim Alvefur | 2020-07-10 | 1 | -1/+5 |
| | | | | | | | | | | Some modules have _VERSION = "LuaModule x.y.z", so it is a bit weird to show the name twice. | ||||
* | | prosodyctl about: Substitute better names for some Lua modules | Kim Alvefur | 2020-07-10 | 1 | -1/+10 |
| | | | | | | | | E.g. 'lxp' isn't that easy to guess that it's LuaExpat | ||||
* | | prosodyctl about: Split out libraries into a separate section | Kim Alvefur | 2020-07-10 | 1 | -5/+10 |
| | | | | | | | | | | Currently libevent and libunbound would show up under Lua modules but they are not, so a separate section seems more appropriate. | ||||
* | | prosodyctl about: Use library function for sorted listing of lua modules | Kim Alvefur | 2020-07-10 | 1 | -5/+3 |
| | | | | | | | | Code reuse and one less module to import is nice. | ||||
* | | scansion/prosody.cfg: Fix typo | Kim Alvefur | 2020-07-09 | 1 | -1/+1 |
| | | |||||
* | | coding_style: Replace mention of git with hg | Kim Alvefur | 2020-07-08 | 1 | -1/+1 |
| | | | | | | | | We use Mercurial, not git! | ||||
* | | net.cqueues: Fix resuming after timeouts | Kim Alvefur | 2020-07-08 | 1 | -0/+14 |
| | | | | | | | | | | | | | | net.cqueues previously relied on timers instead of fd events sometimes. Under net.server_select, it would have called cq:loop() on every iteration of the main loop, which was probably not optimal. | ||||
* | | util.indexedbheap: Add failing test case for #1572 | Kim Alvefur | 2020-07-08 | 1 | -0/+15 |
| | | | | | | | | | | This approximates what happens if you add a timer far in the future, then reschedule it to right now. | ||||
* | | luacheck: Remove exception for net.cqueues since it is now clean | Kim Alvefur | 2020-07-08 | 1 | -1/+0 |
| | | |||||
* | | net.cqueues: Switch to server.watchfd for main loop integration | Kim Alvefur | 2020-07-08 | 1 | -46/+2 |
| | | | | | | | | | | | | | | Why? Just look at all that code deleted! watchfd is the prefered way to poll things that expose FDs for this purpose, altho it was added after net.cqueues. | ||||
* | | Merge 0.11->trunk | Matthew Wild | 2020-07-07 | 1 | -2/+3 |
|\| | |||||
| * | net.http: Fix traceback on invalid URL passed to request() | Matthew Wild | 2020-07-07 | 1 | -2/+3 |
| | | |||||
* | | mod_storage_sql: Measure hits/misses on the item count cache | Kim Alvefur | 2020-07-02 | 1 | -0/+7 |
| | | | | | | | | | | A cache miss can be expensive so having numbers on how often this occurs may be valuable. |