aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* util.signal: Add support for signalfd(2) on LinuxKim Alvefur2024-02-241-0/+34
| | | | | | | | | signalfd allows handling signal events using the same method as sockets, via file descriptors. Thus all signal dispatch can go through the same main event loop as everything else, removing need for thread-scary signal handling where execution would just jump to the signal handler regardless of the state of Lua, and needing to keep track of Lua states/threads.
* features: Add mod_server_infoMatthew Wild2024-02-231-0/+2
|
* mod_server_contact_info: Update to publish fields via new mod_server_infoMatthew Wild2024-02-231-12/+25
|
* mod_server_info: New module to manage the serverinfo disco extension formMatthew Wild2024-02-231-0/+55
| | | | | | | | This allows multiple modules to populate the form dynamically. Currently the form is "owned" by mod_server_contact_info, which prevents other modules from contributing to it. A further commit will port mod_server_contact_info to use this module.
* util.strbitop: Add common_prefix_bits() to Teal interface descriptionKim Alvefur2024-02-231-0/+1
|
* util.hashes: Add missing entries to Teal interface descriptionKim Alvefur2024-02-231-2/+6
| | | | Also sorted to match C source
* util.crypto: Update Teal interface description to match C sourcesKim Alvefur2024-02-231-12/+40
| | | | | | Was missing some entries. Rearranged to match order of entries in the C source Reg table.
* tools/test_mutants.sh: Load loader helper when running bustedMatthew Wild2024-02-231-1/+1
|
* util.ip: Remove ip.bits and related code, switch to more efficient strbitopMatthew Wild2024-02-231-22/+6
| | | | 100,000 iterations of match() on my laptop from 3.5s -> 0.5s.
* util.strbitop: Remove unused import in testsMatthew Wild2024-02-231-1/+1
|
* util.strbitop: Add common_prefix_bits() methodMatthew Wild2024-02-232-0/+81
| | | | | This returns the number of bits that two strings have in common. It is significantly more efficient than similar calculations in Lua.
* util.ip: Add another test case for match() and commonPrefixLength()Matthew Wild2024-02-231-0/+4
|
* util.strbitop: Rename spec file to correct name so tests actually runMatthew Wild2024-02-231-0/+0
|
* util.rfc6724: Remove, unused since introduction of Happy EyeballsKim Alvefur2024-02-224-239/+1
| | | | | | | | It was mainly used to determine whether to try IPv6 or IPv4 first, following the rules for this in the RFC. Now we always try IPv6 and IPv4 at roughly the same time, thus there no need to carry these rules.
* features: Add module-ready (for commit e20949a10118)Matthew Wild2024-02-221-0/+3
|
* util.startup: Expose core.features.available as prosody.featuresMatthew Wild2024-02-221-0/+2
| | | | for convenience.
* mod_s2s_auth_certs: Handle potential string errorKim Alvefur2024-02-211-3/+6
| | | | | conn:ssl_peerverification() can now return a single error in case the connection has been closed for whatever reason
* net.server_epoll: Prevent traceback when checking TLS after connection goneKim Alvefur2024-01-211-0/+5
| | | | Unclear why this would be done, but an error is not great.
* mod_cron: Allow configuring various "internal" delay parametersMatthew Wild2024-02-201-2/+10
| | | | | Notably, it is now possible to add a randomized spread factor to the check interval.
* mod_c2s: Fix error on role change on Components (thanks Menel)Kim Alvefur2024-02-171-0/+3
|
* mod_smacks: Adjust buckets for resumption age statisticKim Alvefur2024-02-161-1/+1
| | | | | | | | | Given that there are recommendations floating around recommending 24 hours session lifetime, having buckets up to 10 minutes wouldn't be useful in that case. Would be nice if we had some way to automatically assign suitable number series for buckets, scaled to what the configuration might be.
* mod_storage_internal: Fix off-by-one when searching archive forKim Alvefur2024-02-151-6/+2
| | | | | Fixes a test case provided by MattJ where the very first item matched by a 'start' timestamp was not returned.
* mod_s2s_auth_dane_in: Try single TLSA lookup per draft-ietf-dance-client-authKim Alvefur2024-01-112-4/+12
| | | | Moves some complexity from the implementation into DNS operations.
* mod_s2s_auth_dane_in: Simplify result processingKim Alvefur2024-01-111-18/+26
| | | | Fewer loops
* MUC: Record reason for affiliation changes and return in list (fixes #1227)Kim Alvefur2021-08-083-4/+84
|
* MUC: Test that <subject/> + <thread/> is not handled as subject changeKim Alvefur2024-01-231-0/+29
| | | | | Ref #667 Ref #1838
* mod_invites: Fix argument handlingKim Alvefur2024-01-211-1/+1
| | | | | Not sure what the next() was supposed to do. Reject unknown --options perhaps?
* mod_invites: Show short help instead of traceback on missing hostnameKim Alvefur2024-01-131-2/+3
|
* mod_invites: Show help if --help passed instead of hostnameKim Alvefur2024-01-131-18/+25
| | | | | Because I couldn't guess the right way to get the help message without reading the source twice.
* mod_invites: Allow specifying invite ttl on command lineKim Alvefur2024-01-131-1/+3
| | | | Was missing a way to pass TTL via command or shell.
* Merge 0.12->trunkKim Alvefur2023-12-172-0/+30
|\
| * mod_disco: Advertise disco#info and #items on bare JIDs to fix #1664Kim Alvefur2023-12-172-0/+30
| | | | | | | | | | | | | | | | Having to add these in *there* places seems less than ideal. I would also think that advertising disco#info is a bit redundant, since it is a requirement for everything in XMPP and if it was missing you would get an error back.
* | scansion: Use new style for accessing Lua globalsKim Alvefur2023-12-171-1/+1
| |
* | scansion: Use new prosody namespace in importKim Alvefur2023-12-171-1/+1
| |
* | scansion: Use captures or wildcards instead of mocking timeKim Alvefur2023-12-175-24/+14
| | | | | | | | | | > Mockery is one of the things I hold dear! And he's making a mockery of it!! -- Belkar Bitterleaf
* | util.xtemplate: Test the each template functionKim Alvefur2023-12-161-0/+8
| | | | | | | | | | | | | | | | It iterates over childtags, so a template like {foo|each{...}} would be equivalent to root:childtags("foo"), while a deeper query needs the bit that becomes arguments to :childtags as an argument to each, e.g. {foo/bar|each(baz)} would behave like root:get_child("foo"):get_child("bar"):childtags("baz")
* | tools: Fix selection of container engineKim Alvefur2023-12-121-1/+6
| | | | | | | | | | Seems command -v in sh only checks and returns one argument, unlike bash.
* | mod_storage_internal, tests: Fix before/after combined with the 'reverse' flagMatthew Wild2023-12-122-0/+25
| |
* | util.http: Silence strict luacheck warning in testsKim Alvefur2023-12-091-0/+1
| |
* | core.moduleapi: Silence strict luacheck warnings in testsKim Alvefur2023-12-091-3/+3
| |
* | util.throttle: Silence some strict luacheck warningsKim Alvefur2023-12-091-0/+1
| |
* | util.prosodyctl.shell: Fix lint [luacheck]Kim Alvefur2023-12-091-1/+0
| |
* | CHANGES: Mention new prosodyctl shell method behaviorKim Alvefur2023-12-091-0/+1
| |
* | util.prosodyctl.shell: Add :method syntax to make e.g. MUC commands easierKim Alvefur2023-12-091-2/+11
| | | | | | | | | | e.g. prosodyctl shell muc room room@muc.example.com :set_name "This Room"
* | util.xtemplate: Add some initial testsKim Alvefur2023-12-091-0/+35
| | | | | | | | Strict typing does not magically make code correct
* | util.xtemplate: Adopt {-path-} syntax to strip preceding and/or trailing ↵Kim Alvefur2023-12-092-8/+24
| | | | | | | | | | | | whitespace Seen in some other template languages
* | mod_http_errors: Simplify CSS via built-in dark modeKim Alvefur2023-12-061-2/+2
| |
* | CHANGES: Document some of the recent changes and features in trunkMatthew Wild2023-12-081-0/+8
| |
* | configmanager: Fix linter issuesMatthew Wild2023-12-081-2/+10
| |
* | configmanager: Support for appending to existing config optionsMatthew Wild2023-12-081-3/+56
| | | | | | | | ...and some other useful operations