Commit Graph

2834 Commits (9149b56418003bbf193b334ed6cf17b8dfe7e8d6)
 

Author SHA1 Message Date
Glenn Strauss 9149b56418 [core] get_http_method_key() match by strlen first 4 years ago
Glenn Strauss b9a37291cb [core] lift code out of request line parse loop 4 years ago
Glenn Strauss e5d61e9a5f [core] http_request_parse() mark error paths cold 4 years ago
Glenn Strauss e0a35b75c0 [core] mark log_error_write*() funcs cold 4 years ago
Glenn Strauss 23b0d867c5 [core] replace con->response.keep_alive
set con->keep_alive = 0 to indicate backend request to close connection
4 years ago
Glenn Strauss 25185d1de0 [core] pass req hdrs buffer to http_request_parse 4 years ago
Glenn Strauss 7493d628b9 [core] prefer buffer_caseless_compare()
prefer buffer_caseless_compare() to strcasecmp()
4 years ago
Glenn Strauss 7f8fd8ad09 [core] make parse_request,request.request same buf 4 years ago
Glenn Strauss d7ad5819e6 [core] copy request only if might need for logging
copy request header only if we may need to log it upon error
4 years ago
Glenn Strauss a620f80b77 [core] log_request_header_on_error in one place 4 years ago
Glenn Strauss 9ab5469365 [core] parse request in connection_read_header() 4 years ago
Glenn Strauss 8426b94161 [core] perf: optimize connection_read_header() 4 years ago
Glenn Strauss 21afabb8f8 [core] helper funcs for connection_state_machine()
carve connection_state_machine() into separate functions per state
4 years ago
Glenn Strauss 9e55fd72b5 [core] quickly clear request buffer for reuse 4 years ago
Glenn Strauss 79aa8613e1 [core] store joblist pointer on stack 4 years ago
Glenn Strauss b8532fe073 [mod_staticfile] search ext array if not empty 4 years ago
Glenn Strauss c8f9658536 [core] remove server.h 4 years ago
Glenn Strauss aa2d0fb087 [core] srv->max_fds_lowat and srv->max_fds_hiwat 4 years ago
Glenn Strauss 653b0dac7c [core] fdevent_process()
process fdevents in fdevent.c
4 years ago
Glenn Strauss aa34dfd32b [core] some server_main_loop() cleanup 4 years ago
Glenn Strauss fb9b8ad8ae [core] mark startup/shutdown funcs cold 4 years ago
Glenn Strauss 413c0e557e [core] separate server_main_loop() func, mark hot
move server main loop into separate func and mark hot
separate funcs for signal handling
4 years ago
Glenn Strauss 142e54b2a8 [mod_evhost] handle IPv6 literal addr; add tests 4 years ago
Glenn Strauss 40ded06b08 - next is 1.4.54 4 years ago
Glenn Strauss 4d3447fd44 [doc] NEWS 4 years ago
Glenn Strauss 2769f19ad3 [mod_openssl] ssl.privkey directive (optional)
ssl.privkey can be used to specify path to file containing private key
in lieu of concatenating certificate and private key into single .pem
4 years ago
Martin Storsjö 3ac7764cfe [core] Fix recursive include_shell invocations
When the output of include_shell calls include_shell itself,
that second invocation must not truncate the buffer used for the
outer include_shell.

This might sound like a pathological setup in itself, but with
e.g.  debian's include-conf-enabled.pl, which outputs a list of
include statements for all files in /etc/lighttpd/conf-enabled,
if any of the *.conf files in that directory invokes include_shell,
the parsing of the rest of the files in that directory is effectively
aborted.

This fixes a regression since commit
a46bc4f5de in such setups.

github: closes #95
4 years ago
Glenn Strauss b17d3c2407 [mod_openssl] ALPN and acme-tls/1 (fixes #2931)
ssl.acme-tls-1 = "/path/to/dir" containing .crt.pem and .key.pem
named with the SNI name ("<SNI>.crt.pem" and "<SNI>.key.pem")

x-ref:
  "Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension"
  https://tools.ietf.org/html/rfc7301
  "ACME TLS ALPN Challenge Extension" (TLS-ALPN-01)
  https://tools.ietf.org/html/draft-ietf-acme-tls-alpn-05
  "Support for TLS-ALPN-01"
  https://redmine.lighttpd.net/issues/2931
4 years ago
Glenn Strauss f77cfe7ca8 [core] con->uri.scheme is maintained lowercase
con->uri.scheme is maintained lowercase "http" or "https"
so scheme string comparisons need not be case-insensitive
4 years ago
Glenn Strauss 05d20bcac2 [mod_webdav] compare COPY, MOVE Destination scheme
compare COPY, MOVE Destination scheme with request URI scheme
4 years ago
Glenn Strauss b31e7840d5 [multiple] quiet clang --analyze where trivial
quiet clang --analyze warnings where trivial to do so
4 years ago
Glenn Strauss a929de7ae5 [multiple] calloc match ptr type (clang --analyze) 4 years ago
Glenn Strauss 69d17e04cd [mod_expire] look up expire fallback "" explicitly
equivalent to prior code, but more direct (legibile in code) to look up
empty string than to walk array.  Might be marginally faster to walk
array when the list is short, but the lookup is also fairly quick in
that case, too.
4 years ago
Glenn Strauss 4608ddec2f [build] autotools: try mysqlclient.pc and mariadb.pc (fixes #2925)
(thx helmut)

x-ref:
  "autotools cross build failure with lighttpd"
  https://redmine.lighttpd.net/issues/2925
4 years ago
Glenn Strauss ce7b47c015 [core] systemd socket activation support 4 years ago
Glenn Strauss 5b0e27f8ad [core] network_srv_sockets_append() shared code 4 years ago
Glenn Strauss 6b77372ae7 [core] move /dev/stdin graceful restart handling
move /dev/stdin graceful restart handling special-case up out of
network_server_init()
4 years ago
Glenn Strauss b2ee667a3d [core] move winsock init to network_init() 4 years ago
Stefan Bühler 9b7a32ea70 [doc/conf] resolve some mime type conflicts from debian buster, regenerate mime.conf 4 years ago
Glenn Strauss a70cf6e5dc [core] cache rev DNS for localhost for dir redir 4 years ago
Glenn Strauss 629b16f188 [core] send Connection: close if reqbody not read (fixes #2924)
send Connection: close if it is known that request body has not finished
being read and will not finish being read

x-ref:
  "Suboptimal keep-alive handling when request body is not read"
  https://redmine.lighttpd.net/issues/2924
4 years ago
Glenn Strauss 96061c1e5e [mod_auth] permit additional auth backends to load
(For testing purposes, allow for all current auth module backends
 to be loaded and registered at the same time)
4 years ago
Glenn Strauss ed6b894127 [core] define MD5_DIGEST_LENGTH 16 4 years ago
Glenn Strauss e47ea5e2b0 [core] memeq compare rounded to 64, not next 1M 4 years ago
Glenn Strauss b541b67459 [core] use con->server_name for dir redir
use con->server_name for dir redir if con->server_name is not empty
and Host header not provided in request.
4 years ago
Glenn Strauss 81dfa7a8d2 [core] http_response_buffer_append_authority()
(shared code)
4 years ago
Glenn Strauss bceeac654e [core] use connected sock port in dir redirect 4 years ago
Glenn Strauss c2bd063ac4 [core] do not free() reused buffer 4 years ago
Glenn Strauss 8ed98ad089 [core] perf: reuse buffer to redirect to directory 4 years ago
Glenn Strauss 7d4ecd01e8 [core] perf: incremental hash of pathname w/o copy 4 years ago