| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
Because it already sets request.secure, which depends on the connection,
just like the IP, so it makes sense to do both in the same place.
Dealing with proxies can be left to mod_http for now, but maybe it could
move into some util some day?
|
| |
| |
| |
| |
| |
| |
| | |
Fixes that otherwise it would wait for the request to be done after
receiving the head of the request, when it's meant to select a target
for where to store the data, instead of waiting after receiving the
request for when the request has been handled.
|
| |
| |
| |
| | |
Storing the async thread on the connection was weird.
|
| | |
|
| |
| |
| |
| |
| | |
Lazy initialization only worked for async queries, but prosodyctl check
dns uses sync queries.
|
|\| |
|
| |
| |
| |
| | |
Thanks Ge0rG for testing
|
| |
| |
| |
| | |
Thanks tmolitor
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This makes sure that a timer that returns 0 (or less) does not prevent
runtimers() from completing, as well as making sure a timer added with
zero timeout from within a timer does not run until the next tick.
Thanks tmolitor
|
| |
| |
| |
| |
| | |
Shouldn't need a DNS resolver until later anyways. Might even be
sensible to only initialize if a query is actually attempted.
|
| |
| |
| |
| | |
Prepare for lazy-loading it.
|
| | |
|
| |
| |
| |
| |
| | |
This could cause weirdness if the error contains formatting options, but
should be reasonably safe with util.format
|
| |
| |
| |
| | |
Noticed the potential need for this thanks to Ge0rG
|
| |
| |
| |
| | |
It's an error, it should be logged at error level.
|
| | |
|
| | |
|
| |
| |
| |
| | |
It happens often and generally doesn't require admin intervention.
|
| | |
|
| | |
|
|\| |
|
| | |
|
|\| |
|
| |
| |
| |
| | |
(fixes #1596)
|
|\| |
|
| |
| |
| |
| |
| |
| |
| | |
COMPAT: The __len metamethod does not work with tables in Lua 5.1.
Both strings and util.dbuffer now expose their length as a :len()
method.
|
|\| |
|
| | |
|
| |
| |
| |
| |
| | |
This improves performance and enforces stanza size limits earlier
in the pipeline.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of using the string library, use methods from the passed object,
which are assumed to be equivalent.
This provides compatibility with objects from util.ringbuffer and
util.dbuffer, for example.
|
| | |
|
|\| |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Partial backports of the following commits from trunk:
6c804b6b2ca2 net.http: Pass server name along for SNI (fixes #1408)
75d2874502c3 net.server_select: SNI support (#409)
9a905888b96c net.server_event: Add SNI support (#409)
adc0672b700e net.server_epoll: Add support for SNI (#409)
d4390c427a66 net.server: Handle server name (SNI) as extra argument
|
| |
| |
| |
| |
| |
| |
| | |
Promise mode is not (widely?) used, changing this now while we can, as it
improves usability of the API.
The request is now available as response.request, if needed.
|
| | |
|
| |
| |
| |
| |
| |
| | |
The `socket` here is unreferenced on disconnect. Calling :resume_writes
after that causes an error when `addsocket()` tries to use it as a table
index.
|
| |
| |
| |
| |
| | |
Probably due to a rebase/merge with a merge tool that ignores
whitespace. Happens all the time to me :(
|
| |
| |
| |
| | |
objects
|
| |
| |
| |
| |
| |
| |
| | |
This enables uses such as saving uploaded files directly to a file on
disk or streaming parsing of payloads.
See #726
|
| |
| |
| |
| |
| |
| | |
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.
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| | |
This was accidentally turned private in 647adfd8f738 as part of refactoring
for Lua 5.2+.
|
| |
| |
| |
| |
| |
| | |
It's confusingly quiet otherwise, even with maximum verboseness.
Thanks perflyst
|
|\| |
|
| |
| |
| |
| |
| |
| | |
(thanks marc0s)
Fixes a traceback when passed an IP address with no conn_type.
|
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| | |
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.
|