| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
More correct handling of namespaces here.
This works with both prefixes from the parser and hacky .attr["foo:bar"]
|
| |
|
|
|
|
| |
Otherwise Prosody refuses to start.
|
|
|
|
|
|
| |
Allows granting read only access to other sets of users using a separate
access control capability, which makes sense as some properties may be
intended to be public but read-only.
|
|
|
|
|
|
|
|
|
| |
Removes dependency on util.error from util.pubsub which was only used
for this one special case.
Line count reduction!
Would be even nicer if templating could be done by util.error itself.
|
|
|
|
| |
For freshness. Not that it matters a lot for Prosody
|
|
|
|
|
|
|
|
|
| |
This removes the different argument order used between '{x|foo}' and
'{x|foo(y)}' because the differing order was awkward and confusing.
This util does not seem to be widely used so should not be problematic
to change this part. The only known use is in mod_pubsub, which does not
use the filter function feature.
|
|\ |
|
| |
| |
| |
| | |
This should make it visible if the move fails
|
| |
| |
| |
| | |
Backport of 1f93e4f78c53
|
| |
| |
| |
| | |
Simplifies shipping well-known DH parameters in the config
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, prosodyctl only waits for the pidfile to appear, which does
not necessarily mean that Prosody is fully ready to receive traffic.
By waiting until Prosody says it's ready via the systemd notify socket
we know for sure that Prosody is really ready.
Notably this should ensure that when running `make integration-test`
Prosody is really ready when Scansion starts running tests.
Not sure if this timeout handling is optimal.
|
| |
| |
| |
| |
| |
| |
| | |
Allows e.g. restricting your vcard4 to only family or similar.
Notes: This does not include roster groups in the configuration form,
so the client will have to get them from the actual roster.
|
| |
| |
| |
| |
| |
| |
| | |
The code correctly inserted the ',' when there was already a "%q" in the
format string, but then the next argument would fail to match because it
inserted ", %q" instead of "%q". The code now matches both, ensuring the
generated code will not produce a syntax error with multiple arguments.
|
| |
| |
| |
| | |
Does this event name seem backwards to anyone else?
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This lets Prosody report its lifecycle status to systemd, so it knows
when Prosody has completed its startup, when it's reloading and shutting
down.
Both Type=notify and Type=notify-reload is supported
Example systemd .service configuration snippet:
[Service]
Type=notify
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
prosody.shutdown() relies on prosody.main_thread, which has not been set
yet at this point.
Doing a clean shutdown might actually be harmful in case it tears down
things set up by the conflicting Prosody, such as the very pidfile we
were looking at.
Thanks again SigmaTel71 for noticing
|
|\| |
|
| |
| |
| |
| |
| | |
This ensures that domain names of virtual hosts and components are valid in
XMPP, and that they are encoded correctly.
|
| |
| |
| |
| |
| | |
Prevents creation of log files owned by the root user which could be
inaccessible once started correctly.
|
| |
| |
| |
| | |
root (thanks SigmaTel71)
|
| |
| |
| |
| |
| |
| |
| |
| | |
SigmaTel71)
Ensures that startup.detect_platform() runs so know whether to use the
POSIX method of checking the current user or something else. Also after
reading the config so we know whether the root override setting is set.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows greater control over the order of events.
Notably, the internal ordering between daemonization, initialization of
libunbound and setup of signal handling is sensitive.
libunbound starts a separate thread for processing DNS requests.
If this thread is started before signal handling has been set up, it
will not inherit the signal handlers and instead behave as it would have
before signal handlers were set up, i.e. cause the whole process to
immediately exit.
libunbound is usually initialized on the first DNS request, usually
triggered by an outgoing s2s connection attempt.
If daemonization happens before signals have been set up, signals may
not be processed at all.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Broke signal handling again, such that an early s2s connection results
in libunbound catching signals and getting Prosody killed on e.g. SIGHUP
This returns to the situation where prosody --daemonize does not respond
to signals.
|
| |
| |
| |
| |
| |
| | |
signalfds stop working with epoll after forking
hooking signals later should not affect anything
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When libunbound is initialized, it spawns a thread to work in.
In case a module initializes libunbound, e.g. by triggering a s2s
connection, Prosody would not handle signals, instead immediately quit
on e.g. the reload (SIGHUP) signal. Likely because the libunbound thread
would not have inherited the signal mask from the main Prosody thread.
Thanks Menel, riau and franck-x for reporting and help narrowing down
|
| | |
|
| |
| |
| |
| | |
100,000 iterations of match() on my laptop from 3.5s -> 0.5s.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| | |
for convenience.
|
| | |
|
| |
| |
| |
| |
| | |
e.g.
prosodyctl shell muc room room@muc.example.com :set_name "This Room"
|
| |
| |
| |
| |
| |
| | |
whitespace
Seen in some other template languages
|
| | |
|
| |
| |
| |
| | |
Thanks MattJ
|
| |
| |
| |
| |
| | |
The new method parse_duration_lax() exports the old behaviour, mainly for
compatibility purposes.
|
| |
| |
| |
| | |
Should get rid of fseek() call
|
| |
| |
| |
| | |
Maybe we need some sort of lint for this?
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is purely for informational purposes, so it's possible to determine
externally whether a runner is using the default runner function (which
executes functions as work items) or a custom runner function.
|
| |
| |
| |
| | |
Mostly expected to be useful for debugging purposes.
|
| |
| |
| |
| | |
Knowing the state of the coroutine as well as the runner state can be helpful.
|
| |
| |
| |
| | |
This can be used for debugging and introspection.
|
| |
| |
| |
| |
| | |
This would indicate that a reverse proxy is used, which gets to be
responsible for that since it probably holds the actual cert.
|
| | |
|
| |
| |
| |
| |
| |
| | |
The 'anonymous_login' setting is deprecated and prosodyctl check config
will tell you to change it to 'authentication = "internal_hashed"', so
we shouldn't need to care about here anymore.
|
| |
| |
| |
| | |
This code is hard to follow and in need of some refactoring.
|