Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mod_admin_socket, util.adminstream: New module to manage a local unix domain ↵ | Matthew Wild | 2020-06-01 | 2 | -0/+354 |
| | | | | socket for admin functionality | ||||
* | net.server_epoll: Handle missing ports from getsock/peername (as in the case ↵ | Matthew Wild | 2020-06-01 | 1 | -2/+2 |
| | | | | of unix sockets) | ||||
* | net.server: Switch to epoll backend by default | Matthew Wild | 2020-06-01 | 1 | -1/+5 |
| | | | | (if util.poll is found) | ||||
* | net.server_select: Pass conn/handler to readbuffer/sendbuffer | Matthew Wild | 2020-06-01 | 1 | -4/+4 |
| | | | | | | The internal implementations don't use it, but this causes onreadable and onwritable of watchfd to receive the conn as they do in other backends. | ||||
* | net.server_select: Ensure onconnect is always called before onincoming | Matthew Wild | 2020-06-01 | 1 | -9/+18 |
| | | | | | | | | | This changes the code to call onconnect when the first data is sucessfully read or written, instead of simply when the socket first becomes writable. A writable socket can mean a connection error, and if the client already sent some data it may get passed to onincoming before processing writable sockets. This fixes the issue. | ||||
* | mod_c2s,mod_s2s: Make stanza size limits configurable | Kim Alvefur | 2020-05-31 | 2 | -2/+4 |
| | |||||
* | mod_c2s,mod_s2s: Use a distinct stream error for hitting stanza size limit | Kim Alvefur | 2020-05-31 | 2 | -2/+10 |
| | | | | Since this is not a real parse error, it should not be reported as such. | ||||
* | scansion: Add test for mod_server_contact_info / XEP-0157 | Kim Alvefur | 2020-05-27 | 2 | -1/+63 |
| | |||||
* | net.server_epoll: Fix typo in internal method name | Kim Alvefur | 2020-05-22 | 1 | -5/+5 |
| | |||||
* | net.server_epoll: Log some noise before TLS handshake step | Kim Alvefur | 2020-05-22 | 1 | -0/+1 |
| | | | | | This would help pinpoint if a crash happens during the handshake, which has occurred a few times, e.g. like https://github.com/brunoos/luasec/issues/75 | ||||
* | mod_admin_telnet: Update existing sessions on reload | Kim Alvefur | 2020-05-16 | 1 | -0/+14 |
| | | | | | This removes the need to disconnect and reconnect to the telnet console for changes to take effect. | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2020-05-15 | 1 | -2/+4 |
|\ | |||||
| * | mod_storage_internal: Fix error in time limited queries on items without ↵ | Kim Alvefur | 2020-05-15 | 1 | -2/+4 |
| | | | | | | | | 'when' field, fixes #1557 | ||||
* | | mod_storage_internal: Fix keeping old timestamp in archive map API | Kim Alvefur | 2020-05-15 | 2 | -4/+15 |
| | | | | | | | | | | This led to a missing 'when' field on changed items, which would cause a traceack. | ||||
* | | mod_http: Tell luacheck to ignore the long comment lines | Kim Alvefur | 2020-05-14 | 1 | -0/+1 |
| | | |||||
* | | mod_http: Add documentation to the non-obvious logic of get_ip_from_request | Jonas Schäfer | 2020-05-14 | 1 | -0/+7 |
| | | | | | | | | Because docs are good. | ||||
* | | mod_storage_memory: Add map store methods to archive store | Kim Alvefur | 2020-05-11 | 1 | -0/+31 |
| | | |||||
* | | doc/storage: Add archive store map-like API | Kim Alvefur | 2020-05-11 | 1 | -0/+4 |
| | | |||||
* | | mod_storage_internal: Implement key-value API | Kim Alvefur | 2020-05-11 | 2 | -0/+55 |
| | | |||||
* | | spec/storage: Reset build context of test stanza make comparisons easier | Kim Alvefur | 2020-05-11 | 1 | -1/+2 |
| | | | | | | | | | | | | | | While building a stanza there's a .last_add field keeping track of where in the XML tree tags are being added. This field does not survive a roundtrip through preserialize / deserialize. :reset() removes this, which simplifes comparisons after such a roundtrip. | ||||
* | | Merge 0.11->trunk | Kim Alvefur | 2020-05-11 | 1 | -1/+1 |
|\| | |||||
| * | mod_muc_mam: Remove spoofed archive IDs before archiving, fix #1552 | Kim Alvefur | 2020-05-11 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | The stanza-id added during archiving looks exactly like what should be stripped, so the stripping must happen before archiving. Getting priorities right is hard! Also no test coverage yet. | ||||
* | | mod_csi_simple: Report whatever's not a stirng and not a stanza | Kim Alvefur | 2020-05-10 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | | | This is either dead code or actually a type error, but catching that should be the responsibility of the session.send function. This type check is left since everything after it assumes a stanza object. These last few commits aren't meant to change any behavior and it did mark things not stanzas as important, but those would have been mostly raw strings which are now specially handled. | ||||
* | | mod_csi_simple: Report whitespace keepalives | Kim Alvefur | 2020-05-10 | 1 | -2/+3 |
| | | | | | | | | | | | | | | Single space character is sent by mod_c2s when a session has been silent for some time. This should account for the vast majority of raw strings passing through here. If this is not the case then having stats to say otherwise will be interesting. | ||||
* | | mod_csi_simple: Identify raw string data in logging and stats | Kim Alvefur | 2020-05-10 | 1 | -1/+3 |
| | | |||||
* | | mod_csi_simple: Collect stats on flush reasons | Kim Alvefur | 2020-05-09 | 1 | -0/+11 |
| | | |||||
* | | mod_csi_simple: Record stats of how long buffers are held | Kim Alvefur | 2020-05-09 | 1 | -0/+16 |
| | | | | | | | | Telnet command `stats:show("buffer_hold"):histogram()` looks nice! | ||||
* | | mod_csi_simple: Change debug message of client-triggered flush for coherence | Kim Alvefur | 2020-05-09 | 1 | -1/+1 |
| | | | | | | | | It now matches other the other source of flush reason logging. | ||||
* | | mod_csi_simple: Reset queue counter to zero when enabling | Kim Alvefur | 2020-05-09 | 1 | -0/+1 |
| | | | | | | | | For symmetry. | ||||
* | | mod_csi_simple: Forget queue counter when disabling optimizations | Kim Alvefur | 2020-05-09 | 1 | -0/+1 |
| | | | | | | | | Otherwise it might not start from zero when enabled again. | ||||
* | | mod_csi_simple: Fix flushing when client sent something | Kim Alvefur | 2020-05-09 | 1 | -5/+0 |
| | | | | | | | | | | | | Forgot to unset the flag afterwards, so it would only work once. The flag is not even needed, it works as intended without it. | ||||
* | | mod_csi_simple: Fix treating presence errors as presence updates | Kim Alvefur | 2020-05-09 | 1 | -1/+1 |
| | | | | | | | | Autocomplete fail probably. | ||||
* | | mod_csi_simple: Add comment highlighting that XEP-0353 is experimental | Kim Alvefur | 2020-05-09 | 1 | -0/+1 |
| | | | | | | | | | | | | To make it easier to find implemented Experimental XEPs later. Also at the time of this commit it has been Proposed as mentinoed in the comment but hopefully that will be resolved soon. | ||||
* | | mod_csi_simple: Fix unintentional order of rules from merge | Kim Alvefur | 2020-05-09 | 1 | -3/+3 |
| | | |||||
* | | mod_mam: Archive XEP-0353: Jingle Message Initiation | Kim Alvefur | 2020-05-09 | 2 | -1/+5 |
| | | |||||
* | | mod_carbons: Explicitly carbon XEP-0353: Jingle Message Initiation | Kim Alvefur | 2020-05-09 | 2 | -1/+6 |
| | | |||||
* | | doap: Add XEP-0353 since mod_csi_simple is aware of it | Kim Alvefur | 2020-05-09 | 1 | -0/+8 |
| | | |||||
* | | mod_carbons: Describe return types in a comment | Kim Alvefur | 2020-05-09 | 1 | -1/+1 |
| | | | | | | | | For similarity with mod_mam, mod_csi_simple | ||||
* | | Merge 0.11->trunk | Kim Alvefur | 2020-05-09 | 2 | -1/+5 |
|\| | |||||
| * | mod_csi_simple: Consider XEP-0353: Jingle Message Initiation important | Kim Alvefur | 2020-05-08 | 1 | -0/+3 |
| | | | | | | | | | | | | Improves experience with VoIP calls initiated via JMI Closes #1548 | ||||
| * | mod_muc_mam: Fix missing advertising of XEP-0359, fixes #1547 | Kim Alvefur | 2020-05-08 | 1 | -0/+1 |
| | | |||||
| * | mod_muc_mam: Fix stanza id filter event name, fixes #1546 | Kim Alvefur | 2020-04-29 | 1 | -1/+1 |
| | | | | | | | | Nice typo | ||||
* | | mod_presence: Send unavailable presence in current thread run | Kim Alvefur | 2020-05-09 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | | | | | `session:dispatch_stanza(pres)` enqueues processing of the stanza in the sessions async thread, but becasue the entire stream close handling is now in that thread it would process the presence after the stream and session was completely closed, leading to weird errors "sent to a resting session". We call core_process_stanza() since this is what :dispatch_stanza calls in the end. | ||||
* | | spec/scansion/blocking: Don't send stanzas after disconnecting | Kim Alvefur | 2020-05-09 | 1 | -4/+4 |
| | | | | | | | | | | | | | | Probably casued by mod_scansion_record catching the unavailable presence generated by Prosody on disconnect. See #1549 | ||||
* | | mod_c2s: Run stream open and close events in async thread, fixes #1103 | Kim Alvefur | 2020-05-08 | 1 | -2/+18 |
| | | | | | | | | Enables async processing during stream opening and closing. | ||||
* | | mod_s2s: Run stream close in async context | Kim Alvefur | 2020-05-08 | 1 | -1/+8 |
| | | | | | | | | | | Allows async processing during stream shutdown. Fixes potential ASYNC-01 issues, however no such issues known at the time of this commit. | ||||
* | | mod_s2s: Improve signaling of stream open events | Kim Alvefur | 2020-05-08 | 1 | -4/+4 |
| | | | | | | | | Makes it clearer, cleaner and easier to extend. | ||||
* | | mod_csi_simple: Log reasons for not flushing | Kim Alvefur | 2020-05-07 | 1 | -0/+1 |
| | | |||||
* | | mod_csi_simple: Add short reasons to report | Kim Alvefur | 2020-05-07 | 1 | -10/+14 |
| | | | | | | | | Should improve quality of debug logs | ||||
* | | mod_csi_simple: Refactor to allow logging reason for buffer flush | Kim Alvefur | 2020-05-07 | 1 | -7/+19 |
| | | | | | | | | | | | | Same style as mod_mam and mod_carbons allows easy comparison. BC: Log format changes |