<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    
    <title>lighty news</title>
    <description>lighty news</description>
    <link>https://www.lighttpd.net/</link>
    <atom:link href="https://www.lighttpd.net/feed.xml" rel="self" type="application/rss+xml" />

    
    <managingEditor>lighty team</managingEditor>
    
    <language>en</language>

    
    <pubDate>Thu, 09 Jul 2026 02:44:02 -0000</pubDate>
    <lastBuildDate>Thu, 09 Jul 2026 02:44:02 -0000</lastBuildDate>
    <ttl>1440</ttl>

    
    <generator>MkDocs RSS plugin - v1.19.0</generator>

    
    
    <image>
      <url>https://www.lighttpd.net/light_logo_icon.png</url>
      <title>lighty news</title>
      <link>https://www.lighttpd.net/</link>
    </image>
    

    
    
    <item>
      <title>1.4.85</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.tar.gz&#34;&gt;lighttpd-1.4.85.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;ffb2ab3e3b9e8b0dfadf9a8b2a5c86084afe5cc68ed3cf4d5776c8a7891c58e9&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.tar.xz&#34;&gt;lighttpd-1.4.85.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;18de51b393bac4a6827879e1a7ff377c169e414bae92cd245091d80fc2601d13&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.85.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1484&#34;&gt;Changes from 1.4.84&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1484&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[mod_magnet] fix custom response with 4xx and 5xx (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3313&#34;&gt;#3313&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] fix large file uploads to fastcgi (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3314&#34;&gt;#3314&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mbedtls] use mbedtls_ssl_iana_tls_group_info_t&lt;/li&gt;
&lt;li&gt;[mod_alias] expand alias.url config order check&lt;/li&gt;
&lt;li&gt;[core] quiet coverity short-sightedness&lt;/li&gt;
&lt;li&gt;[core] server.http-parseopts option interaction&lt;/li&gt;
&lt;li&gt;[core] check utf8 the same way in burl.c&lt;/li&gt;
&lt;li&gt;[core] mark burl.c routines cold if modify URL&lt;/li&gt;
&lt;li&gt;[core] burl_normalize() query string offset parse&lt;/li&gt;
&lt;li&gt;[core] _WIN32: check reparse tag in win32 readdir&lt;/li&gt;
&lt;li&gt;Bump actions/checkout from 6 to 7&lt;/li&gt;
&lt;li&gt;Bump actions/cache from 5 to 6&lt;/li&gt;
&lt;li&gt;[lemon] refresh LEMON parser to SQLite maint ver&lt;/li&gt;
&lt;li&gt;[lemon] build configparser.y w/ -Werror workarounds&lt;/li&gt;
&lt;li&gt;[lemon] quiet compiler warnings in LEMON parser&lt;/li&gt;
&lt;li&gt;[core] buffer_path_simplify() comments and indent&lt;/li&gt;
&lt;li&gt;[core] _WIN32: &amp;ldquo;url-path-backslash-trans&amp;rdquo; %5C-&amp;gt;%2F&lt;/li&gt;
&lt;li&gt;[lemon] quiet coverity warning&lt;/li&gt;
&lt;li&gt;[core] http_request_parse_target() comment&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2026/07/08/1.4.85/</link>
      <pubDate>Wed, 08 Jul 2026 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2026/07/08/1.4.85/</guid>
      
    </item>
    
    <item>
      <title>1.4.84</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;bug fixes, portability&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;highlights&#34;&gt;HIGHLIGHTS&lt;a class=&#34;headerlink&#34; href=&#34;#highlights&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;fix regression in mod_deflate&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.tar.gz&#34;&gt;lighttpd-1.4.84.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;ccf90ecef33b0fc36463d2f7a4af4dc87e0bb809d43acb4c0daba4b0672cf633&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.tar.xz&#34;&gt;lighttpd-1.4.84.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;076dd43bec8f2ba9ce6db7e7ca7e8ad72271cd529805ead2400b56efaa026f70&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.84.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;
&lt;h2 id=&#34;changes-from-1483&#34;&gt;Changes from 1.4.83&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1483&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[ci] use lua5.5-dev pacakge on alpine linux&lt;/li&gt;
&lt;li&gt;[mod_authn_gssapi] cast to avoid compiler warning&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] build if mbedtls w/ reduced ciphers&lt;/li&gt;
&lt;li&gt;[mod_deflate] fix 1.4.83 regression (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3311&#34;&gt;#3311&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] remove byte-range support for QUERY&lt;/li&gt;
&lt;li&gt;[mod_staticfile] do not handle QUERY method&lt;/li&gt;
&lt;li&gt;[core] _WIN32: support directory symlinks in fs_win32_readlinkUTF8&lt;/li&gt;
&lt;li&gt;[core] _WIN32: fix stat() on drive and directory roots in fs_win32_stati64UTF8&lt;/li&gt;
&lt;li&gt;[core] _WIN32: support stat() on local device path root&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2026/06/17/1.4.84/</link>
      <pubDate>Wed, 17 Jun 2026 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2026/06/17/1.4.84/</guid>
      
    </item>
    
    <item>
      <title>1.4.83</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;security fixes; bug fixes; tighten resource management&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;highlights&#34;&gt;Highlights&lt;a class=&#34;headerlink&#34; href=&#34;#highlights&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;add PQC hybrid KEM X25519MLKEM768 to default TLS groups&lt;/li&gt;
&lt;li&gt;mod_sockproxy can now route connections based on TLS SNI&lt;/li&gt;
&lt;li&gt;mod_proxy proxy.header enhanced config for url-path mapping of response headers&lt;/li&gt;
&lt;li&gt;HTTP Incremental header support&lt;/li&gt;
&lt;li&gt;portability/compatibility with library updates (lighttpd dependencies)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;BEHAVIOR CHANGES&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;add PQC hybrid KEM X25519MLKEM768 to default TLS groups&lt;br /&gt;
  Reference: TLSRef guidelines&lt;br /&gt;
&lt;a href=&#34;https://docs.tlsref.org/server-side-tls.html&#34;&gt;https://docs.tlsref.org/server-side-tls.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;HTTP/1.1 Upgrade: h2c has been deprecated;
  set default to disabled in lighttpd,
  but can still be enabled in config,
  and http2 prior knowledge is still enabled&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.tar.gz&#34;&gt;lighttpd-1.4.83.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;54f9598f6c07df0e9607c74bf6d2f6a45b0f420bcb0590bc5a01c5a6e3355f1a&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.tar.xz&#34;&gt;lighttpd-1.4.83.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;b3f878156480079f8a93903bd24d456074a0fbedb9b4d99fcd65df33b1f566f0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.83.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1482&#34;&gt;Changes from 1.4.82&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1482&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[systemd] add RestrictAddressFamilies AF_NETLINK&lt;/li&gt;
&lt;li&gt;[TLS] skip cert_is_active warnings for unset clock&lt;/li&gt;
&lt;li&gt;[multiple] rename plugin_data statics per module&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x removes mbedtls/ecp.h&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x removes ECDH ciph suites&lt;/li&gt;
&lt;li&gt;[core] clarify warning message&lt;/li&gt;
&lt;li&gt;[multiple] http_status.[ch]&lt;/li&gt;
&lt;li&gt;[core] single internal define for fs monitoring&lt;/li&gt;
&lt;li&gt;[core] X-Sendfile shared code&lt;/li&gt;
&lt;li&gt;[core] check for OTHER response headers earlier&lt;/li&gt;
&lt;li&gt;[core] support Incremental header&lt;/li&gt;
&lt;li&gt;[mod_magnet] resp_body_finished w/ r.resp_body:set()&lt;/li&gt;
&lt;li&gt;[core] minor code tighten&lt;/li&gt;
&lt;li&gt;[core] remove request_st member async_callback (unused)&lt;/li&gt;
&lt;li&gt;[tests] t/test_http_status.c stub&lt;/li&gt;
&lt;li&gt;[core] http_status_set_fin() handler_module = NULL&lt;/li&gt;
&lt;li&gt;[mod_magnet] http_response_reset() before HANDLER_COMEBACK&lt;/li&gt;
&lt;li&gt;[core] http_response_prepare() smaller funcs&lt;/li&gt;
&lt;li&gt;[core] add continuation framework for response prep&lt;/li&gt;
&lt;li&gt;[h2] add comment about zero-length payloads in padded frames&lt;/li&gt;
&lt;li&gt;[mod_magnet] revert recent HANDLER_COMEBACK change&lt;/li&gt;
&lt;li&gt;[core] remove small bit of commented out code&lt;/li&gt;
&lt;li&gt;[core] do not generate no-longer-used plugin funcs&lt;/li&gt;
&lt;li&gt;[core] minor code tighten&lt;/li&gt;
&lt;li&gt;[h2] fix HTTP/1.1 upgrade: h2c&lt;/li&gt;
&lt;li&gt;[h2] combine h2c code into h2_upgrade_h2c()&lt;/li&gt;
&lt;li&gt;[h2] disable HTTP/1.1 upgrade: h2c by default&lt;/li&gt;
&lt;li&gt;[core] clear trailer whitelist at startup&lt;/li&gt;
&lt;li&gt;[core] static_assert sanity check for 64-bit off_t&lt;/li&gt;
&lt;li&gt;[core] security: missing return on non-default path&lt;/li&gt;
&lt;li&gt;[mod_magnet] modify reqbody_length after file append&lt;/li&gt;
&lt;li&gt;[mod_openssl] check openssl func for NULL if mem err&lt;/li&gt;
&lt;li&gt;[mod_*_dbi] proceed if third reconnect retry succeeds&lt;/li&gt;
&lt;li&gt;[mod_ajp13] skip empty string (len == 65535)&lt;/li&gt;
&lt;li&gt;[mod_ajp13] error if backend include LF in headers&lt;/li&gt;
&lt;li&gt;[mod_deflate] translate &amp;lsquo;/&amp;rsquo; in etag to &amp;lsquo;~&amp;rsquo; for fn&lt;/li&gt;
&lt;li&gt;[mod_deflate] mod_deflate_finished() shared code&lt;/li&gt;
&lt;li&gt;[mod_authn_gssapi] warn if principal not in config&lt;/li&gt;
&lt;li&gt;[mod_authn_gssapi] mod_authn_gssapi_construct_sprinc()&lt;/li&gt;
&lt;li&gt;[core] support Range for QUERY&lt;/li&gt;
&lt;li&gt;[multiple] make most module config thread-safe&lt;/li&gt;
&lt;li&gt;[ci] tune build on freebsd&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] EC certs require drbg init&lt;/li&gt;
&lt;li&gt;[ci] Bump actions/checkout from 5 to 6 (&lt;a href=&#34;https://redmine.lighttpd.net/issues/147&#34;&gt;#147&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] quiet minor coverity warnings&lt;/li&gt;
&lt;li&gt;[mod_extforward] HAProxy PROXY protocol extensions&lt;/li&gt;
&lt;li&gt;[multiple] make most plugin objects instance-safe&lt;/li&gt;
&lt;li&gt;[multiple] C99 designated initializers&lt;/li&gt;
&lt;li&gt;[mod_auth] HTTP/2 response w/ multiple auth methods (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3296&#34;&gt;#3296&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[ci] Bump actions/cache from 4 to 5&lt;/li&gt;
&lt;li&gt;[doc] add comment to lighttpd.service&lt;/li&gt;
&lt;li&gt;[core] add .rst .xsl .xslt to builtin mimetype.assign (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3295&#34;&gt;#3295&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[build] support lua 5.5&lt;/li&gt;
&lt;li&gt;[core] __attribute_packed__&lt;/li&gt;
&lt;li&gt;[mod_extforward] fix reading &amp;lsquo;verify&amp;rsquo; from PROXY (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3298&#34;&gt;#3298&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_extforward] adjust reading &amp;lsquo;verify&amp;rsquo; from PROXY (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3298&#34;&gt;#3298&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] fix Range requests with dynamic backends&lt;/li&gt;
&lt;li&gt;[core] adjust safety factor for max-connections (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3299&#34;&gt;#3299&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] quiet coverity false positive&lt;/li&gt;
&lt;li&gt;[mod_boringssl] add more const&lt;/li&gt;
&lt;li&gt;[mod_openssl] add more const&lt;/li&gt;
&lt;li&gt;[mod_openssl] update openssl version EOL message&lt;/li&gt;
&lt;li&gt;[TLS] add PQC hybrid KEM to default TLS groups&lt;/li&gt;
&lt;li&gt;spelling suggestions from codespell (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3303&#34;&gt;#3303&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_maxminddb] sanity check snprintf of flt, dbl&lt;/li&gt;
&lt;li&gt;[multiple] add some &amp;lsquo;const&amp;rsquo; for gcc 16 warnings&lt;/li&gt;
&lt;li&gt;[mod_sockproxy] configure after TLS SNI (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3304&#34;&gt;#3304&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] add sanity check to li_hex2bin()&lt;/li&gt;
&lt;li&gt;[core] security: reject req header CGI conflicts&lt;/li&gt;
&lt;li&gt;[core] security: reject invalid Content-Length from backend (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3309&#34;&gt;#3309&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_gnutls] avoid double-free in error path (unlikely)&lt;/li&gt;
&lt;li&gt;[core] update for nettle 4.x digest func signatures&lt;/li&gt;
&lt;li&gt;[mod_deflate] more precisely match If-None-Match&lt;/li&gt;
&lt;li&gt;[core] attempt recovery on stat_cache EMFILE (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3308&#34;&gt;#3308&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] option to close unused socket after restart&lt;/li&gt;
&lt;li&gt;[cmake] use find_package() with PCRE2&lt;/li&gt;
&lt;li&gt;[h2] update ls-hpack&lt;/li&gt;
&lt;li&gt;[mod_openssl] use OSSL_STORE_open for alt schemas&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] faster client-side sort on huge listings&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] additional minor javascript optim&lt;/li&gt;
&lt;li&gt;[mod_proxy] adjust proxy.header config parsing&lt;/li&gt;
&lt;li&gt;[mod_proxy] config opt for urlpath map resp hdrs (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3300&#34;&gt;#3300&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] allow server.max-fds up to 1048576&lt;/li&gt;
&lt;li&gt;[tests] add tests for http_cgi.c varname encoding&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] code size reduction&lt;/li&gt;
&lt;li&gt;[core] reduce struct gw_plugin_config size&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] RFC 6455 §5 compliance&lt;/li&gt;
&lt;li&gt;[ci] remove wolfssl from CI on Debian/Ubuntu&lt;/li&gt;
&lt;li&gt;[multiple] limit queue size to slow backends&lt;/li&gt;
&lt;li&gt;[core] use tempfiles for HTTP/1.1 upgraded backend&lt;/li&gt;
&lt;li&gt;[core] adjust trace for server.max-connections&lt;/li&gt;
&lt;li&gt;[doc] update doc/initscripts.txt&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] disable hybi-00; obsolete&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] adjust parsing extended frame lens&lt;/li&gt;
&lt;li&gt;[cmake] fix typos for mbedtls, tfpsacrypto libs&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] reduce handler_ctx struct size&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] stricter RFC 6455 compliance&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] optimize unmasking client payload&lt;/li&gt;
&lt;li&gt;[core] propagate backend errs for h2 to RST_STREAM&lt;/li&gt;
&lt;li&gt;[core] propagate backend errs for HTTP/1.1 chunked&lt;/li&gt;
&lt;li&gt;[core] check another cond before calling cold func&lt;/li&gt;
&lt;li&gt;[core] update rand.c for nettle 4.x digest funcs&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] workaround wolfssl code smells&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] disable DHParameters w/ PSA crypto&lt;/li&gt;
&lt;li&gt;[TLS] debug.log-ssl-noise set TLS lib debug level&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] workaround mbedtls 4.1.0 bug&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] session tkts psa_alg w/ mbedtls 4.x&lt;/li&gt;
&lt;li&gt;[mod_gnutls] test for PQC hybrid group support&lt;/li&gt;
&lt;li&gt;[ci] use windows-2025-vs2026 and VS 2026&lt;/li&gt;
&lt;li&gt;[ci] use default FreeBSD package source&lt;/li&gt;
&lt;li&gt;[ci] NetBSD pkg_add -u&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2026/06/14/1.4.83/</link>
      <pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2026/06/14/1.4.83/</guid>
      
    </item>
    
    <item>
      <title>1.4.82</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;restrict request trailers to configured list; bugfixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;BEHAVIOR CHANGES:&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;trailers in request headers will be ignored unless allowed field names
    are explicitly configured in a comma-separated list containing no spaces:&lt;/p&gt;
&lt;div class=&#34;language-lighttpd highlight&#34;&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span id=&#34;_code_line-0-1&#34;&gt;&lt;a id=&#34;__codelineno-0-1&#34; name=&#34;__codelineno-0-1&#34; href=&#34;#__codelineno-0-1&#34;&gt;&lt;/a&gt;&lt;span class=&#34;k&#34;&gt;server.feature-flags&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;quot;request.trailer-whitelist&amp;quot;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;quot;...&amp;quot;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;This changes behavior from lighttpd 1.4.80, which added support for
request trailers and header merging, but did not restrict request trailers.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.tar.gz&#34;&gt;lighttpd-1.4.82.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;4f07f2d61ee8d136d105d9a62f139a46ad8216fe9e346476ee5340f87bcabd79&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.tar.xz&#34;&gt;lighttpd-1.4.82.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;abfe74391f9cbd66ab154ea07e64f194dbe7e906ef4ed47eb3b0f3b46246c962&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.82.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1481&#34;&gt;Changes from 1.4.81&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1481&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] restrict request trailers to configured list&lt;/li&gt;
&lt;li&gt;[core] fix logic inversion in &amp;ldquo;toupper:&amp;rdquo; modifier&lt;/li&gt;
&lt;li&gt;[mod_redirect,mod_rewrite] ${url.authority.noport} token&lt;/li&gt;
&lt;li&gt;[cmake,mod_mbedtls] mbedx509 mbedcrypto order&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] psa_crypto_init() for MBEDTLS_USE_PSA_CRYPTO (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3288&#34;&gt;#3288&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[build] mod_mbedtls: use tfpsacrypto if found&lt;/li&gt;
&lt;li&gt;[ci] Bump actions/checkout from 4 to 5&lt;/li&gt;
&lt;li&gt;[core] avoid chunk mem reallocation on read/recv&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/09/12/1.4.82/</link>
      <pubDate>Fri, 12 Sep 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/09/12/1.4.82/</guid>
      
    </item>
    
    <item>
      <title>1.4.81</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;security: fix to reject disallowed trailers&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.tar.gz&#34;&gt;lighttpd-1.4.81.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;1d137b7e595f3cd0ab1909ea8033ff17317a0ccf4f5d674cd5378744e6773093&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.tar.xz&#34;&gt;lighttpd-1.4.81.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;d7d42c3fd2fd94b63c915aa7d18f4da3cac5937ddba33e909f81cf50842a5840&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.81.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1480&#34;&gt;Changes from 1.4.80&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1480&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] security: fix to reject disallowed trailers&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/08/17/1.4.81/</link>
      <pubDate>Sun, 17 Aug 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/08/17/1.4.81/</guid>
      
    </item>
    
    <item>
      <title>1.4.80</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;detect and issue error trace for HTTP/2 MadeYouReset VU#767506 CVE-2025-8671&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;highlights&#34;&gt;Highlights&lt;a class=&#34;headerlink&#34; href=&#34;#highlights&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;detect and issue error trace for HTTP/2 MadeYouReset VU#767506 CVE-2025-8671&lt;/li&gt;
&lt;li&gt;stricter HTTP request/response header, trailer, and chunked validation/parsing&lt;/li&gt;
&lt;li&gt;support HTTP response trailers&lt;/li&gt;
&lt;li&gt;support HTTP request trailers merge to headers (if not streaming request body)&lt;/li&gt;
&lt;li&gt;bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;BEHAVIOR CHANGES&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;extend TLS error log messages to include client addr if error caused by client
  (Please review TLS error string matching in log watchers)&lt;/li&gt;
&lt;li&gt;extend TLS error log messages for HTTP/2 attack detection
  (Please review TLS error string matching in log watchers)&lt;/li&gt;
&lt;li&gt;reject path info on static files by default (prior default allowed path info)
  (For prior behavior, configure static-file.disable-pathinfo = &amp;ldquo;disable&amp;rdquo;)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.tar.gz&#34;&gt;lighttpd-1.4.80.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;30d5bbbcbeaf8e52a7bdde614248dd932d63753d87fed79307547312012b4c01&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.tar.xz&#34;&gt;lighttpd-1.4.80.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;cc5f0f71e8b2ee6bad545d1e91dfc3f954716c9174e7b352c2147add44f25bf3&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1479&#34;&gt;Changes from 1.4.79&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1479&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[doc] move comments in systemd lighttpd.service&lt;/li&gt;
&lt;li&gt;[doc] refresh INSTALL&lt;/li&gt;
&lt;li&gt;[core] adjust malloc_top_pad after srv-&amp;gt;srvconf.max_conns&lt;/li&gt;
&lt;li&gt;[build] remove references to libev; no longer used&lt;/li&gt;
&lt;li&gt;[multiple] stricter string init without trail &amp;lsquo;\0&amp;rsquo;&lt;/li&gt;
&lt;li&gt;workaround unsupported PR_CAP_AMBIENT_CLEAR_ALL on Cloud Run&lt;/li&gt;
&lt;li&gt;[TLS] 0-init plugin_ssl_ctx (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3281&#34;&gt;#3281&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[autotools] LIGHTTPD_STATIC in config.h if static build&lt;/li&gt;
&lt;li&gt;[doc] systemd lighttpd.service SystemCallFilter&lt;/li&gt;
&lt;li&gt;[core] reject stray \r in chunked headers&lt;/li&gt;
&lt;li&gt;[tests] reject stray \r or \n in chunked headers&lt;/li&gt;
&lt;li&gt;[core] http_chunk_decode_append_error()&lt;/li&gt;
&lt;li&gt;[core] h1_chunked_400_bad_request()&lt;/li&gt;
&lt;li&gt;[mod_webdav] log trace for EACCES on PUT&lt;/li&gt;
&lt;li&gt;[build] check for C23 memset_explicit()&lt;/li&gt;
&lt;li&gt;[mod_ssi] set tmp file length if ssi exec fails&lt;/li&gt;
&lt;li&gt;[ci] set SHELL=/bin/sh for builds on alpine&lt;/li&gt;
&lt;li&gt;[mod_openssl] avoid BoringSSL/AWS-LC compiler warn&lt;/li&gt;
&lt;li&gt;[mod_openssl] AWS-LC limitations/compatibility (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3282&#34;&gt;#3282&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[ci] use actions/cache@v3 to cache Cygwin install&lt;/li&gt;
&lt;li&gt;[mod_openssl] use BoringSSL APIs w/ SSL_CREDENTIAL&lt;/li&gt;
&lt;li&gt;[mod_boringssl] cp mod_openssl.c mod_boringssl.c&lt;/li&gt;
&lt;li&gt;[build] build support for mod_boringssl&lt;/li&gt;
&lt;li&gt;[mod_boringssl] rename plugin init func&lt;/li&gt;
&lt;li&gt;[mod_boringssl] remove openssl/libressl code&lt;/li&gt;
&lt;li&gt;[mod_openssl] remove code specific to boringssl&lt;/li&gt;
&lt;li&gt;[mod_boringssl] ignore ssl.read-ahead&lt;/li&gt;
&lt;li&gt;[mod_boringssl] TLS_with_buffers_method() optim&lt;/li&gt;
&lt;li&gt;[mod_boringssl] init/enable CRYPTO_BUFFER_POOL&lt;/li&gt;
&lt;li&gt;[mod_boringssl] use SSL_get0_peer_certificates()&lt;/li&gt;
&lt;li&gt;[mod_boringssl] using AWS-LC does not build&lt;/li&gt;
&lt;li&gt;[mod_boringssl] code reuse&lt;/li&gt;
&lt;li&gt;[mod_boringssl] more CRYPTO_BUFFER code, less X509&lt;/li&gt;
&lt;li&gt;[mod_boringssl] elide excess time() calls&lt;/li&gt;
&lt;li&gt;[mod_boringssl] alt callbacks for client cert vfy&lt;/li&gt;
&lt;li&gt;[mod_boringssl] remove verify_callback (replaced)&lt;/li&gt;
&lt;li&gt;[ci] bump actions/cache from 3 to 4&lt;/li&gt;
&lt;li&gt;[ci] add package for SCONS &amp;ldquo;fullstatic&amp;rdquo; build&lt;/li&gt;
&lt;li&gt;[mod_boringssl] load CRLs into STACK_OF(X509_CRL)&lt;/li&gt;
&lt;li&gt;[mod_openssl] revert commits; re-support AWS-LC&lt;/li&gt;
&lt;li&gt;[mod_boringssl] skip BIO copy if pkey already DER&lt;/li&gt;
&lt;li&gt;[mod_boringssl] shared code for parsing PEM files&lt;/li&gt;
&lt;li&gt;[mod_boringssl] typo&lt;/li&gt;
&lt;li&gt;[mod_boringssl] wipe tmp_buf used to decode pkey&lt;/li&gt;
&lt;li&gt;[mod_boringssl] more generic pkey read from PEM&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] more generic pkey read from PEM&lt;/li&gt;
&lt;li&gt;[mod_nss] more generic pkey read from PEM&lt;/li&gt;
&lt;li&gt;[core] http_chunk_decode_append_* code reuse&lt;/li&gt;
&lt;li&gt;[h2] h2_send_headers_hoff() to reduce stack use&lt;/li&gt;
&lt;li&gt;[core] stricter validate of trailers from backends&lt;/li&gt;
&lt;li&gt;[core] check Transfer-Encoding: chunked from backends&lt;/li&gt;
&lt;li&gt;[core] remove deprecated Expect-CT from enum&lt;/li&gt;
&lt;li&gt;[core] http_header_str_contains_token() comment&lt;/li&gt;
&lt;li&gt;[core] http_request_field_check_value() code reuse&lt;/li&gt;
&lt;li&gt;[core] http_request_field_check_name() code reuse&lt;/li&gt;
&lt;li&gt;[core] stricter validation of backend response&lt;/li&gt;
&lt;li&gt;[mod_magnet] stricter validation of request/response&lt;/li&gt;
&lt;li&gt;[h2] fill in hoff[] for &amp;ldquo;:status: XXX\r\n\r\n&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[core] simplify hoff[] access when hoff[1] == 0&lt;/li&gt;
&lt;li&gt;[core] check HTTP/1.x field block fully consumed&lt;/li&gt;
&lt;li&gt;[core] unfold fields in http_header_parse_hoff()&lt;/li&gt;
&lt;li&gt;[h2] stricter validation of HTTP/2 trailers&lt;/li&gt;
&lt;li&gt;[core] validate BACKEND_PROXY headers end w/ CRLF&lt;/li&gt;
&lt;li&gt;[core] strict validate request headers end w/ CRLF&lt;/li&gt;
&lt;li&gt;[core] fix stat_cache inotify for files in rootdir&lt;/li&gt;
&lt;li&gt;[core] merge request trailers into request headers&lt;/li&gt;
&lt;li&gt;[mod_staticfile] reject pathinfo on static files&lt;/li&gt;
&lt;li&gt;[mod_setenv] warn if setenv.* incl invalid chars&lt;/li&gt;
&lt;li&gt;[tests] trailers&lt;/li&gt;
&lt;li&gt;[mod_proxy] sketch out streaming and trailers&lt;/li&gt;
&lt;li&gt;[mod_setenv] quiet coverity noise&lt;/li&gt;
&lt;li&gt;[core] disable mmap for &amp;lt; QNX 8.0.0&lt;/li&gt;
&lt;li&gt;[core] connections_pool_clear() unless in jobqueue&lt;/li&gt;
&lt;li&gt;[ci] run apt-get update on github ubuntu workflows&lt;/li&gt;
&lt;li&gt;[ci] explicit compiler install on github ubuntu workflows&lt;/li&gt;
&lt;li&gt;[mod_openssl] build against ancient openssl libs&lt;/li&gt;
&lt;li&gt;[TLS] SSL error handling improvements&lt;/li&gt;
&lt;li&gt;[mod_openssl] update lib version EOL warning&lt;/li&gt;
&lt;li&gt;[mod_openssl] workaround OpenSSL 3 SSL_sendfile bug&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] check for WOLFSSL_SHUTDOWN_NOT_DONE&lt;/li&gt;
&lt;li&gt;[TLS] skip SSL_shutdown after non-recoverable error&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] handle additional wolfssl socket err&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x removes MBEDTLS_DHM_C&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x PSA crypto handles RNG&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x removes RSA key exch&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x curve_info,list private&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x makes oid private&lt;/li&gt;
&lt;li&gt;[doc] command line -f - to read config from stdin (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3286&#34;&gt;#3286&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[h2] attempt to detect HTTP/2 MadeYouReset DoS&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/08/13/1.4.80/</link>
      <pubDate>Wed, 13 Aug 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/08/13/1.4.80/</guid>
      
    </item>
    
    <item>
      <title>1.4.79</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;hardened systemd lighttpd.service&lt;/li&gt;
&lt;li&gt;bug fix for mod_openssl using both ECDSA and RSA certs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;BEHAVIOR CHANGES&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd-provided hardened systemd lighttpd.service may need admin-overrides
  on non-typical systems (less popular distros) using lighttpd-provided systemd
  lighttpd.service &lt;em&gt;and&lt;/em&gt; which also run lighttpd as root, or run CGI scripts
  as root, to manage the system.  To create overrides, &lt;code&gt;systemctl edit lighttpd&lt;/code&gt;
  and edit /etc/systemd/system/lighttpd.service.d/override.conf
  .
  In contrast, many popular distros configure lighttpd to drop privileges from
  root and to run as an unprivileged user, e.g. &amp;lsquo;lighttpd&amp;rsquo; or &amp;lsquo;www-data&amp;rsquo;.
  These systems are unlikely to be affected by the hardened and more secure
  systemd lighttpd.service configuration.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.tar.gz&#34;&gt;lighttpd-1.4.79.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;72a625243de607802b74bd6ae243716cb65757aba8e74a40321cbd74cf12c9c8&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.tar.xz&#34;&gt;lighttpd-1.4.79.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;3b29a625b3ad88702d1fea4f5f42bb7d87488f2e4efc977d7f185329ca6084bd&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1478&#34;&gt;Changes from 1.4.78&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1478&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[ci] update deps pkg names for lighttpd on Cygwin&lt;/li&gt;
&lt;li&gt;[ci] MSYS detection kludge in tests/LightyTest.pm&lt;/li&gt;
&lt;li&gt;[autotools] spelling Couldn&amp;rsquo;t =&amp;gt; Could not&lt;/li&gt;
&lt;li&gt;[mod_openssl] revert SSL_CTX default cert assign&lt;/li&gt;
&lt;li&gt;[mod_openssl] spelling in comment&lt;/li&gt;
&lt;li&gt;[TLS] issue trace if unable to check/refresh cert&lt;/li&gt;
&lt;li&gt;[ci] Cygwin Invoke-WebRequest -MaximumRetryCount 3&lt;/li&gt;
&lt;li&gt;[ci] Cygwin prefer D: drive&lt;/li&gt;
&lt;li&gt;[ci] Cygwin remove redundant call to setup.exe&lt;/li&gt;
&lt;li&gt;[core] set server.max-fds = 4096 if not specified&lt;/li&gt;
&lt;li&gt;[core] clear Linux ambient capabilities, if any&lt;/li&gt;
&lt;li&gt;[core] rename remove_pid_file() -&amp;gt; server_pid_file_remove()&lt;/li&gt;
&lt;li&gt;[core] retry pidfile open on Linux&lt;/li&gt;
&lt;li&gt;[doc] systemd lighttpd.service hardening&lt;/li&gt;
&lt;li&gt;[doc] move TLS config to separate file tls.conf&lt;/li&gt;
&lt;li&gt;[doc] systemd lighttpd.service hardening addition&lt;/li&gt;
&lt;li&gt;[doc] systemd lighttpd*.socket activation examples&lt;/li&gt;
&lt;li&gt;[core] default listen() backlog to SOMAXCONN&lt;/li&gt;
&lt;li&gt;[ci] fix meson build execution selection&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/04/04/1.4.79/</link>
      <pubDate>Fri, 04 Apr 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/04/04/1.4.79/</guid>
      
    </item>
    
    <item>
      <title>1.4.78</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;option to reload TLS certs and CRLs; bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.tar.gz&#34;&gt;lighttpd-1.4.78.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;6f1a563a23aafc649a76c40ae009445f327296a0d0c352690fbfedc46aea271d&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.tar.xz&#34;&gt;lighttpd-1.4.78.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;3c0739e8bc75c9e9fc1cfa89e1c304dd4b0e4abb87adc646a1d20bc6a2db2a3e&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.78.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1477&#34;&gt;Changes from 1.4.77&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1477&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] comment about _WIN32 security dangers&lt;/li&gt;
&lt;li&gt;[core] allow POST w/o Content-Length for HTTP/2 (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3273&#34;&gt;#3273&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_ssi] fix #exec (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3275&#34;&gt;#3275&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] address warnings for *unsigned* time_t&lt;/li&gt;
&lt;li&gt;[multiple] add missing includes&lt;/li&gt;
&lt;li&gt;[ls-hpack] adjust misplaced macro&lt;/li&gt;
&lt;li&gt;[doc] add Documentation key to lighttpd.service&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] fix ssl.verifyclient.ca-crl-file&lt;/li&gt;
&lt;li&gt;[doc] create-mime.conf.pl warn missing mime.types&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] limit default curves to avail curves&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] limit default curves to avail curves&lt;/li&gt;
&lt;li&gt;[mod_openssl] fix preproc syntax error (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3277&#34;&gt;#3277&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[autotools] adjust build with wolfssl crypto&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] check/reload crt,pkey,crl each 64sec&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] use wolfSSL_CTX_set_cert_cb()&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] check/reload crt,pkey,crl each 64sec&lt;/li&gt;
&lt;li&gt;[mod_openssl] check/reload crt,pkey,crl each 64sec&lt;/li&gt;
&lt;li&gt;[mod_nss] check/reload crt,pkey,crl each 64sec&lt;/li&gt;
&lt;li&gt;[mod_gnutls] check/reload crt,pkey,crl each 64sec&lt;/li&gt;
&lt;li&gt;[TLS] remove hctx-&amp;gt;tmp_buf use from acme-tls/1&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] adjust module spelling in config err&lt;/li&gt;
&lt;li&gt;[core] _WIN32 cast size_t to DWORD for WSASend()&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x mbedtls_ssl_ticket_setup&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] mbedtls 4.x removes DHE-RSA key exch&lt;/li&gt;
&lt;li&gt;[mod_accesslog] quiet unused var on Windows warning&lt;/li&gt;
&lt;li&gt;[ci] FreeBSD package mbedtls3&lt;/li&gt;
&lt;li&gt;[mod_openssl] fix type mismatch fn run w/ libressl&lt;/li&gt;
&lt;li&gt;[ci] macOS quiet brew install if pkg already inst&lt;/li&gt;
&lt;li&gt;[mod_gnutls] free kp if cert chain invalid&lt;/li&gt;
&lt;li&gt;[cmake] use execute_process()&lt;/li&gt;
&lt;li&gt;[core] _WIN32: cast fd to SOCKET for FD_SET,FD_CLR&lt;/li&gt;
&lt;li&gt;[mod_openssl] reload CRLs for openssl &amp;gt;= 1.1.0&lt;/li&gt;
&lt;li&gt;[multiple] check EAGAIN and EWOULDBLOCK, if diff&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] Fix off-by-one error in date conversion for sorting on mtime&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] Swap A(scending) and D(escending) values (A=0, D=1)&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] fix JS date sorting (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3279&#34;&gt;#3279&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] yield after HTTP/1.x response end&lt;/li&gt;
&lt;li&gt;[meson] set default buildtype=debugoptimized&lt;/li&gt;
&lt;li&gt;[ci] use meson build with cov-build for coverity&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/03/22/1.4.78/</link>
      <pubDate>Sat, 22 Mar 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/03/22/1.4.78/</guid>
      
    </item>
    
    <item>
      <title>1.4.77</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;stronger TLS defaults: MinProtocol TLSv1.3; experimental TLS ECH support&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;Behavior Changes&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd TLS defaults: MinProtocol TLSv1.3
  Other configurations are still supported, but are not the default.
  Previous default: MinProtocol TLSv1.2
  Current default: MinProtocol TLSv1.3&lt;/li&gt;
&lt;li&gt;lighttpd TLS defaults now limit TLSv1.3 Groups
  to the IANA &amp;ldquo;Recommended&amp;rdquo; set: &amp;ldquo;X25519:P-256:P-384:X448&amp;rdquo;
  (https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-8)
  Configure Groups/Curves using ssl.openssl.ssl-conf-cmd += (&amp;ldquo;Groups&amp;rdquo; =&amp;gt; &amp;ldquo;&amp;hellip;&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;server.error-handler-404 operates only on 404
  (historical error: server.error-handler-404 operated on both 404 and 403)
  Since lighttpd 1.4.40 (released Jul 2016), server.error-handler is available
  to produce dynamic error pages for 4xx and 5xx responses.
  Since lighttpd 1.4.56 (released Nov 2020), magnet.attract-response-start-to
  is an additional, high performance mechanism to produce dynamic error pages.
  https://wiki.lighttpd.net/mod_magnet&lt;/li&gt;
&lt;li&gt;doc/config/lighttpd.conf has been renamed doc/config/lighttpd.annotated.conf
  and doc/config/lighttpd.conf is now a simpler header which includes
  lighttpd.annotated.conf.  lighttpd package maintainers must review their
  packaging scripts and include both lighttpd.conf and lighttpd.annotated.conf
  (e.g. doc/config/&lt;em&gt;.conf) along with doc/config/conf.d/&lt;/em&gt;.conf.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.tar.gz&#34;&gt;lighttpd-1.4.77.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;5321755fb15ca20084b7b12c26f8991278907fd5a2597b1bdc061a29f7c5ba5d&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.tar.xz&#34;&gt;lighttpd-1.4.77.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;acafabdbfa2267d8b6452d03d85fdd2a66525f3f05a36a79b6645c017f1562ce&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.77.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1476&#34;&gt;Changes from 1.4.76&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1476&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[build] packdist.sh tweaks of convenience commands&lt;/li&gt;
&lt;li&gt;[build] remove ancient distribute.sh.in script&lt;/li&gt;
&lt;li&gt;[core] add .torrent to mimetype.assign builtin defaults&lt;/li&gt;
&lt;li&gt;Revert &amp;ldquo;[core] special value for Linux POLLRDHUP on SPARC&amp;rdquo; (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3251&#34;&gt;#3251&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] special value for Linux POLLRDHUP on SPARC (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3251&#34;&gt;#3251&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_ssi] rename ssi_val_tobool to ssi_val_to_bool&lt;/li&gt;
&lt;li&gt;[multiple] rename config_plugin_value_tobool&lt;/li&gt;
&lt;li&gt;[core] fix graceful shutdown timeout handling&lt;/li&gt;
&lt;li&gt;[core] preprocessor option to force crypto lib&lt;/li&gt;
&lt;li&gt;[cmake] fix some typos in pcre2 detection&lt;/li&gt;
&lt;li&gt;[tests] disambiguate regex test value from string&lt;/li&gt;
&lt;li&gt;[tests] fix deflate tests w/ Fedora zlib-ng-compat&lt;/li&gt;
&lt;li&gt;[core] port for QNX7.1/8.0&lt;/li&gt;
&lt;li&gt;[doc] remove ancient doc/scripts/spawn-php.sh&lt;/li&gt;
&lt;li&gt;[mod_deflate] limit zstd max window size to 8 MB&lt;/li&gt;
&lt;li&gt;[mod_accesslog] ignore format specifier w/o label&lt;/li&gt;
&lt;li&gt;[autotools] add pkgconf test for libdbi&lt;/li&gt;
&lt;li&gt;[mod_webdav] use SQLITE_PREPARE_PERSISTENT&lt;/li&gt;
&lt;li&gt;[mod_webdav] call sqlite3_initialize() at init&lt;/li&gt;
&lt;li&gt;[mod_webdav] disable double-quoted string literal&lt;/li&gt;
&lt;li&gt;[doc] remove ancient doc/scripts/spawn-php.sh&lt;/li&gt;
&lt;li&gt;[core] clarify error msg for plugin ver mismatch&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] Add dark mode support&lt;/li&gt;
&lt;li&gt;[autotools] Prefer libpcre.pc to pcre-config&lt;/li&gt;
&lt;li&gt;[core] server.ip-transparent option on listen sock&lt;/li&gt;
&lt;li&gt;[core] reject HTTP/1.x request-line URI trail sp&lt;/li&gt;
&lt;li&gt;[core] remove http_request_parse_proto_loose()&lt;/li&gt;
&lt;li&gt;[core] strictly require CRLF on chunked header&lt;/li&gt;
&lt;li&gt;[core] strictly require CRLF on all chunked header&lt;/li&gt;
&lt;li&gt;[multiple] quiet coverity false positives&lt;/li&gt;
&lt;li&gt;[core] http_request_check_uri_strict optimization&lt;/li&gt;
&lt;li&gt;[h2] fix spurious connection resets with zero log_monotonic_secs&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] fix ?json output; emit JSON list (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3256&#34;&gt;#3256&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] minor optimization for ?json&lt;/li&gt;
&lt;li&gt;[mod_auth] fix Digest nonce validation w/ nonce_secret&lt;/li&gt;
&lt;li&gt;[core] omit pcre2 JIT error trace if JIT not avail&lt;/li&gt;
&lt;li&gt;[doc] rename sample config lighttpd.annotated.conf&lt;/li&gt;
&lt;li&gt;[doc] simplify doc/config/lighttpd.conf entry&lt;/li&gt;
&lt;li&gt;[doc] use shorter &lt;a href=&#34;https://wiki.lighttpd.net/&#34;&gt;https://wiki.lighttpd.net/&lt;/a&gt; url&lt;/li&gt;
&lt;li&gt;[ci] ci dependency maintenance&lt;/li&gt;
&lt;li&gt;[meson] use pkg-config to find mbedtls 3.6&lt;/li&gt;
&lt;li&gt;[meson] update FORCE_* vars to select crypto lib&lt;/li&gt;
&lt;li&gt;[core] remove long-unused #ifdef USE_ALARM&lt;/li&gt;
&lt;li&gt;[core] avoid pedantic compiler warning (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3262&#34;&gt;#3262&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_auth] HTTP Digest and HTTP/2 extended CONNECT&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] sort by exact value of size (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3264&#34;&gt;#3264&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] sort mtime using data-value (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3264&#34;&gt;#3264&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[ci] enable Solaris build (now less slow)&lt;/li&gt;
&lt;li&gt;[core] remove mimetype.assign from tests/lighttpd.conf&lt;/li&gt;
&lt;li&gt;[ci] adjust Solaris CI build&lt;/li&gt;
&lt;li&gt;[doc] update create-mime.conf.pl compression types&lt;/li&gt;
&lt;li&gt;[doc] update doc/config/conf.d/mime.conf&lt;/li&gt;
&lt;li&gt;[ci] adjust Solaris CI build&lt;/li&gt;
&lt;li&gt;[core] remove cast from ioctl() RNDGETENTCNT&lt;/li&gt;
&lt;li&gt;[core] update ls-hpack&lt;/li&gt;
&lt;li&gt;[core] light_isprint(), light_iscntrl()&lt;/li&gt;
&lt;li&gt;[core] perf: tighter loops for str encode,escape&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] Sec-WebSocket-Protocol: binary&lt;/li&gt;
&lt;li&gt;[core] light_iscntrl_or_utf8_invalid_byte()&lt;/li&gt;
&lt;li&gt;[core] option: allow unescaped UTF-8 in errorlog (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3268&#34;&gt;#3268&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[systemd] test config in ExecReload before signal&lt;/li&gt;
&lt;li&gt;[core] config parsing: detect invalid keys&lt;/li&gt;
&lt;li&gt;[TLS] allow list of Groups/Curves&lt;/li&gt;
&lt;li&gt;[mbedtls] reset crt_profile when reconfigured&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] guard mbedtls use of RSA_PSK&lt;/li&gt;
&lt;li&gt;[mod_nss] add ssl.openssl.ssl-conf-cmd Ciphersuite&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] typo&lt;/li&gt;
&lt;li&gt;[mod_nss] ver check for experimental groups/curves&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] missing return&lt;/li&gt;
&lt;li&gt;[tests] do not test for exact compress zlib size&lt;/li&gt;
&lt;li&gt;[tests] consolidate test value comparison logic&lt;/li&gt;
&lt;li&gt;.github/workflows/dependabot.yml &amp;ldquo;github-actions&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[ci] dependabot.yml name&lt;/li&gt;
&lt;li&gt;[ci] ci.yml pull_request types&lt;/li&gt;
&lt;li&gt;[ci] move file to .github/dependabot.yml&lt;/li&gt;
&lt;li&gt;[multiple] avoid sending body to GW_AUTHORIZER (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3272&#34;&gt;#3272&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_magnet] use local sys-dirent.h (portability)&lt;/li&gt;
&lt;li&gt;[mod_magnet] add code header to mod_magnet.c&lt;/li&gt;
&lt;li&gt;[TLS] skip SSL_CTX init if not in SOCKET condition&lt;/li&gt;
&lt;li&gt;[mod_openssl] ssl.ech-opts, load ECH keys&lt;/li&gt;
&lt;li&gt;[mod_openssl] ssl.non-ech-host opt to require ECH&lt;/li&gt;
&lt;li&gt;[mod_openssl] free mem from SSL_ech_get1_status()&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: use new OSSL_ECHSTORE APIs&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: refresh 4 year old patches&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: kludge compat w/ OpenSSL ECH API&lt;/li&gt;
&lt;li&gt;[mod_openssl] omit OSSL_ECH_FOR_RETRY for ECH-only&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: OSSL_ECH_FOR_RETRY for cur key&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: boringssl support&lt;/li&gt;
&lt;li&gt;[TLS] modify TLS defaults to MinProtocol TLSv1.3&lt;/li&gt;
&lt;li&gt;[TLS] use TLSv1.3 groups X25519:P-256:P-384:X448&lt;/li&gt;
&lt;li&gt;[ci] macos: mariadb-connector-c is keg-only&lt;/li&gt;
&lt;li&gt;[mod_openssl] skip *.ech files beginning with &amp;lsquo;.&amp;rsquo;&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: rename directives to ECH terms&lt;/li&gt;
&lt;li&gt;[core] server.error-handler-404 handles only 404&lt;/li&gt;
&lt;li&gt;[mod_magnet] quiet coverity false positive&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: use same (debug) CGI var names&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: reload keys only if modified&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: remove kludge compat w/ OpenSSL ECH API&lt;/li&gt;
&lt;li&gt;[core] reset cond cache item URL if pathinfo&lt;/li&gt;
&lt;li&gt;[mod_openssl] use BUF_PTR_LEN when buffer not NULL&lt;/li&gt;
&lt;li&gt;[mod_openssl] ECH: code comments for ECH-only host&lt;/li&gt;
&lt;li&gt;[core] import xxHash v0.8.3&lt;/li&gt;
&lt;li&gt;[autoconf] update ax_prog_cc_for_build.m4&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2025/01/10/1.4.77/</link>
      <pubDate>Fri, 10 Jan 2025 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2025/01/10/1.4.77/</guid>
      
    </item>
    
    <item>
      <title>1.4.76</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;detect VU#421644 HTTP/2 CONTINUATION Flood, avoid CVE-2024-3094 xz supply chain attack, bug fixes&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;detect VU#421644 HTTP/2 CONTINUATION Flood&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;issue trace and send GO_AWAY&lt;/li&gt;
&lt;li&gt;(lighttpd not vulnerable to attack)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;avoid CVE-2024-3094 xz supply chain attack&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;use &amp;lsquo;git archive&amp;rsquo; to replace &amp;lsquo;make dist&amp;rsquo; to create release tarballs&lt;ul&gt;
&lt;li&gt;remove excess complexity (m4 and autotools) from release process&lt;/li&gt;
&lt;li&gt;now more easily verifiable that sources come from signed git release tag&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes-2025&#34;&gt;FUTURE SCHEDULED BEHAVIOR CHANGES: (2025)&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes-2025&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd TLS defaults will change to MinProtocol TLSv1.3
  Other configurations will still be supported, but will not be the default.
  Proposed default: MinProtocol TLSv1.3
  Current default: MinProtocol TLSv1.2&lt;/li&gt;
&lt;li&gt;server.error-handler-404 will operate only on 404
  (historical error: server.error-handler-404 operated on both 404 and 403)
  Since lighttpd 1.4.40 (released Jul 2016), server.error-handler is available
  to produce dynamic error pages for 4xx and 5xx responses.
  Since lighttpd 1.4.56 (released Nov 2020), magnet.attract-response-start-to
  is an additional, high performance mechanism to produce dynamic error pages.
  https://wiki.lighttpd.net/mod_magnet&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.gz&#34;&gt;lighttpd-1.4.76.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;ba14a030889518194fd88b33e419d51cc38c8fe917126d5a7a965be79b53e995&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.xz&#34;&gt;lighttpd-1.4.76.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;8cbf4296e373cfd0cedfe9d978760b5b05c58fdc4048b4e2bcaf0a61ac8f5011&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1475&#34;&gt;Changes from 1.4.75&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1475&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] add default to builtin mimetype.assign&lt;/li&gt;
&lt;li&gt;[core] add MPTCP support&lt;/li&gt;
&lt;li&gt;[core] disable MPTCP support by default&lt;/li&gt;
&lt;li&gt;[mod_expire] omit caching hdrs for 204 No Content&lt;/li&gt;
&lt;li&gt;[mod_staticfile] noinline cold func&lt;/li&gt;
&lt;li&gt;[core] GNU/Hurd preadv2() RWF_NOWAIT ENOTSUP&lt;/li&gt;
&lt;li&gt;[core] special value for Linux POLLRDHUP on SPARC&lt;/li&gt;
&lt;li&gt;[mod_openssl] define asn1 time w/ OPENSSL_NO_OCSP&lt;/li&gt;
&lt;li&gt;[h2] VU#421644 HTTP/2 CONTINUATION Flood&lt;/li&gt;
&lt;li&gt;[build] packdist.sh git archive; replace make dist&lt;/li&gt;
&lt;li&gt;[core] gw_network_backend_write_error() cold func&lt;/li&gt;
&lt;li&gt;[core] reduce syscalls in some backend connect&lt;/li&gt;
&lt;li&gt;[core] defer TCP_FIN propagate if connect()ing (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3249&#34;&gt;#3249&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[ci] workaround some packaging issues in NetBSD 10&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2024/04/12/1.4.76/</link>
      <pubDate>Fri, 12 Apr 2024 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2024/04/12/1.4.76/</guid>
      
    </item>
    
    <item>
      <title>1.4.75</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;incrementally stronger TLS cipher defaults; bugs fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.tar.gz&#34;&gt;lighttpd-1.4.75.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;283aa8cba5534979f987c2a652948c241a94683a21e06e2a7109f632bbcdda97&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.tar.xz&#34;&gt;lighttpd-1.4.75.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;8b721ca939d312afaa6ef31dcbd6afb5161ed385ac828e6fccd4c5b76be189d6&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.75.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes-previously-announced&#34;&gt;Behavior Changes: (previously announced)&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes-previously-announced&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;TLS cipher defaults have been incrementally updated to stronger defaults
  New defaults are forward-secret and support authenticated encryption (AEAD)
  New defaults: openssl ciphers &amp;lsquo;EECDH+AESGCM:CHACHA20:!PSK:!DHE&amp;rsquo;
  Previous defaults: openssl ciphers &amp;lsquo;EECDH+AESGCM:AES256+EECDH:CHACHA20:!SHA1:!SHA256:!SHA384&amp;rsquo;
  Little or no impact is expected for lighttpd configs already using lighttpd TLS defaults
  (and supported clients, i.e. those which have not already reached end-of-life).
  Reference: https://developers.cloudflare.com/ssl/reference/cipher-suites/recommendations/&lt;/li&gt;
&lt;li&gt;mod_redirect: default url.redirect-code for HTTP/1.1 and later has been
  changed from 301 Moved Permanently to 308 Permanent Redirect
  (only if url.redirect is not explicitly set in lighttpd.conf)
  RFC7538: https://datatracker.ietf.org/doc/html/rfc7538
  (published almost 9 years ago)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes-2025&#34;&gt;Future Scheduled Behavior Changes: (2025)&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes-2025&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd TLS defaults will change to MinProtocol TLSv1.3
  Other configurations will still be supported, but will not be the default.
  Proposed default: MinProtocol TLSv1.3
  Current default: MinProtocol TLSv1.2&lt;/li&gt;
&lt;li&gt;server.error-handler-404 will operate only on 404
  (historical error: server.error-handler-404 operated on both 404 and 403)
  Since lighttpd 1.4.40 (released Jul 2016), server.error-handler is available
  to produce dynamic error pages for 4xx and 5xx responses.
  Since lighttpd 1.4.56 (released Nov 2020), magnet.attract-response-start-to
  is an additional, high performance mechanism to produce dynamic error pages.
  https://wiki.lighttpd.net/mod_magnet&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1474&#34;&gt;Changes from 1.4.74&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1474&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[mod_redirect] url.redirect-code = 308 new default&lt;/li&gt;
&lt;li&gt;[ls-hpack] more portability fixes for sys/queue.h&lt;/li&gt;
&lt;li&gt;[ls-hpack] update version to 2.3.3&lt;/li&gt;
&lt;li&gt;[TLS] default to stronger ciphers w/ PFS and AEAD&lt;/li&gt;
&lt;li&gt;[ci] apt-get install build-essential on Ubuntu&lt;/li&gt;
&lt;li&gt;[ci] /usr/local/opt keg-only pkgs on Darwin(macOS)&lt;/li&gt;
&lt;li&gt;[mod_authn_sasl] translate SASL_LOG_* to syslog&lt;/li&gt;
&lt;li&gt;[build] include src/compat/sys/queue.h in tarball&lt;/li&gt;
&lt;li&gt;[core] fdlog_openlog(), fdlog_closelog()&lt;/li&gt;
&lt;li&gt;[mod_accesslog] fdlog_openlog() if using syslog&lt;/li&gt;
&lt;li&gt;[cmake] fix LEMON_PATH with empty CMAKE_BUILD_TYPE&lt;/li&gt;
&lt;li&gt;[ci] limit github ci to specific branches&lt;/li&gt;
&lt;li&gt;[ci] prefer non-login shell for Cygwin CI build&lt;/li&gt;
&lt;li&gt;[ci] prefer dash for Cygwin and MSYS2 builds&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] fix server.ping-interval w/ HTTP/2&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] fix suffix display of &amp;lsquo;/&amp;rsquo; on file (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3242&#34;&gt;#3242&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_openssl] use internal asn1_time fn on 32-bit (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3244&#34;&gt;#3244&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_openssl] faster ASN1_TIME parse&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] faster ASN1_TIME parse&lt;/li&gt;
&lt;li&gt;[doc] update TLS comment in sample lighttpd.conf&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2024/03/13/1.4.75/</link>
      <pubDate>Wed, 13 Mar 2024 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2024/03/13/1.4.75/</guid>
      
    </item>
    
    <item>
      <title>1.4.74</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;bugs fixes, portability, expand CI&lt;/p&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.tar.gz&#34;&gt;lighttpd-1.4.74.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;3a82994d2afdd685c967569919cfa612dbb39bc1cc737d1b07dc4e988379ae57&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.tar.xz&#34;&gt;lighttpd-1.4.74.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;5c08736e83088f7e019797159f306e88ec729abe976dc98fb3bed71b9d3e53b5&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.74.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes&#34;&gt;Behavior Changes:&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Some messages sent to syslog() (if enabled in lighttpd config) have been
  changed to use different priorities (e.g. LOG_WARNING, LOG_DEBUG) instead
  of everything being sent with LOG_ERROR priority.  The change affects only
  lighttpd configs which set server.errorlog-use-syslog = &amp;ldquo;enable&amp;rdquo; (not default)&lt;/li&gt;
&lt;li&gt;Use sendfile() with musl libc; fix build detection of sendfile() w/ musl libc
  Please report any issues, though any issues are unexpected since
  lighttpd falls back to writev() if sendfile() fails.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes-for-the-next-lighttpd-release&#34;&gt;Future Scheduled Behavior Changes: (for the next lighttpd release)&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes-for-the-next-lighttpd-release&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;TLS cipher defaults will be incrementally updated to stronger defaults
  Proposed defaults are forward-secret and support authenticated encryption (AEAD)
  Proposed defaults: openssl ciphers &amp;lsquo;EECDH+AESGCM:CHACHA20:!PSK:!DHE&amp;rsquo;
  Current defaults: openssl ciphers &amp;lsquo;EECDH+AESGCM:AES256+EECDH:CHACHA20:!SHA1:!SHA256:!SHA384&amp;rsquo;
  Little or no impact is expected for lighttpd configs already using lighttpd TLS defaults
  (and supported clients, i.e. those which have not already reached end-of-life).
  Reference: https://developers.cloudflare.com/ssl/reference/cipher-suites/recommendations/&lt;/li&gt;
&lt;li&gt;mod_redirect: default url.redirect-code for HTTP/1.1 and later will be
  changed from 301 Moved Permanently to 308 Permanent Redirect
  (only if url.redirect is not explicitly set in lighttpd.conf)
  RFC7538: https://datatracker.ietf.org/doc/html/rfc7538
  (published almost 9 years ago)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes-2025&#34;&gt;Future Scheduled Behavior Changes: (2025)&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes-2025&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd TLS defaults will change to MinProtocol TLSv1.3
  Other configurations will still be supported, but will not be the default.
  Proposed default: MinProtocol TLSv1.3
  Current default: MinProtocol TLSv1.2&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1473&#34;&gt;Changes from 1.4.73&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1473&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[mod_h2] send 500 if backend oversized resp hdrs&lt;/li&gt;
&lt;li&gt;[mod_h2] h2_send_1xx() lowercase field names (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3233&#34;&gt;#3233&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] smaller funcs to generate listing&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] dir-listing.sort option (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3235&#34;&gt;#3235&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] check for response stream bufmin&lt;/li&gt;
&lt;li&gt;[core] skip SIGUSR1 after clock jump if chroot&amp;rsquo;ed&lt;/li&gt;
&lt;li&gt;[mod_deflate] move bzip2 to end of priority list&lt;/li&gt;
&lt;li&gt;[mod_deflate] deflate.allowed-encodings default&lt;/li&gt;
&lt;li&gt;[core] cfg &amp;ldquo;if&amp;rdquo;,&amp;rdquo;elif&amp;rdquo;,&amp;rdquo;elsif&amp;rdquo;,&amp;rdquo;elseif&amp;rdquo;,&amp;rdquo;else if&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[lemon] refresh LEMON parser to SQLite maint ver&lt;/li&gt;
&lt;li&gt;[core] add newlines to config parsing error trace&lt;/li&gt;
&lt;li&gt;[ls-hpack] sys/queue.h portability&lt;/li&gt;
&lt;li&gt;[scons] remove -std=gnu99 to use modern defaults&lt;/li&gt;
&lt;li&gt;[multiple] share code for upgrade: websocket&lt;/li&gt;
&lt;li&gt;[core] check for SOCK_CLOEXEC earlier in startup&lt;/li&gt;
&lt;li&gt;[autotools] report if ipv6 support disabled (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3237&#34;&gt;#3237&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] simpler error page header&lt;/li&gt;
&lt;li&gt;[mod_status] simpler status page header&lt;/li&gt;
&lt;li&gt;[h2] quicker server graceful shutdown of idle h2&lt;/li&gt;
&lt;li&gt;[mod_openssl] kTLS: check for kernel tls offload&lt;/li&gt;
&lt;li&gt;[mod_gnutls] kTLS: check for kernel tls offload&lt;/li&gt;
&lt;li&gt;[core] quicker server graceful shutdown of websockets&lt;/li&gt;
&lt;li&gt;[build] -D_LARGEFILE64_SOURCE for musl sendfile64()&lt;/li&gt;
&lt;li&gt;[mod_setenv] code consistency&lt;/li&gt;
&lt;li&gt;[mod_expire] resp tag check&lt;/li&gt;
&lt;li&gt;[mod_expire] comment&lt;/li&gt;
&lt;li&gt;[core] use SF_NODISKIO with sendfile() on FreeBSD&lt;/li&gt;
&lt;li&gt;[core] chunk_file_pread_chunk()&lt;/li&gt;
&lt;li&gt;[mod_deflate] prefer reusable buffer to read file&lt;/li&gt;
&lt;li&gt;[core] reduce blocking I/O sending files to net&lt;/li&gt;
&lt;li&gt;[core] reduce network send file fallback path&lt;/li&gt;
&lt;li&gt;[core] try mmap() if not using sendfile()&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] mod_wolfssl_write_err()&lt;/li&gt;
&lt;li&gt;[multiple] extend chunkqueue_peek_data() w/ nowait&lt;/li&gt;
&lt;li&gt;[core] preadv2 RWF_NOWAIT EOPNOTSUPP on tmpfs (?!)&lt;/li&gt;
&lt;li&gt;[build] type error in configure.ac sendfile probe (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3238&#34;&gt;#3238&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] update ls-hpack&lt;/li&gt;
&lt;li&gt;[ls-hpack] sys/queue.h STAILQ_FOREACH portability&lt;/li&gt;
&lt;li&gt;[core] chunk_open_file_chunk() in chunk.h&lt;/li&gt;
&lt;li&gt;[multiple] use chunk_open_file_chunk()&lt;/li&gt;
&lt;li&gt;[core] remove chunkqueue_open_file_chunk()&lt;/li&gt;
&lt;li&gt;[core] use sendfile() with iovecs where available&lt;/li&gt;
&lt;li&gt;[scons] remove CheckFunc() incorrect header usage&lt;/li&gt;
&lt;li&gt;[core] spelling in comment in network_write.c&lt;/li&gt;
&lt;li&gt;[cmake] check for sendfile64 only on Linux&lt;/li&gt;
&lt;li&gt;[core] quiet compiler warning for NDEBUG redefined&lt;/li&gt;
&lt;li&gt;[autoconf] config test for mbedtls needs mbedx509&lt;/li&gt;
&lt;li&gt;[mod_h2] add con to job queue when wr alloc used&lt;/li&gt;
&lt;li&gt;[mod_h2] use different flag for disk I/O busy&lt;/li&gt;
&lt;li&gt;[crypto] use evp api for truncated sha-2 with libressl&lt;/li&gt;
&lt;li&gt;[mod_expire] smaller options parse func&lt;/li&gt;
&lt;li&gt;[mod_expire] check modification time to cur time&lt;/li&gt;
&lt;li&gt;[tests] t/test_mod_expire.c&lt;/li&gt;
&lt;li&gt;[tests] add mod_expire tests to tests/request.t&lt;/li&gt;
&lt;li&gt;[core] log trace with priority for syslog() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] avoid preprocessor use inside macros&lt;/li&gt;
&lt;li&gt;[core] log_pri() and log_pri_multiline() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[build] remove checks for sendfile64&lt;/li&gt;
&lt;li&gt;[tests] clean up memleak on test exit&lt;/li&gt;
&lt;li&gt;[build] quiet compiler warnings in LEMON parser&lt;/li&gt;
&lt;li&gt;[core] simplify connection_handle_write() err case&lt;/li&gt;
&lt;li&gt;[core] gw_host_get shared code&lt;/li&gt;
&lt;li&gt;[doc] update doc/config/conf.d/mime.conf&lt;/li&gt;
&lt;li&gt;[core] combine *BSD cond handling 0-len FILE_CHUNK&lt;/li&gt;
&lt;li&gt;[meson] portability improvements&lt;/li&gt;
&lt;li&gt;[core] DragonflyBSD portability&lt;/li&gt;
&lt;li&gt;[tests] quiet compiler warning&lt;/li&gt;
&lt;li&gt;[ci] enable github CI&lt;/li&gt;
&lt;li&gt;[ci] adjust .github/workflows/meson.yml&lt;/li&gt;
&lt;li&gt;[ci] quiet msys-clang32 stdcall compiler warning&lt;/li&gt;
&lt;li&gt;[ci] #undef _XOPEN_SOURCE on Solaris&lt;/li&gt;
&lt;li&gt;[core] fix recent solaris typo; compile failure&lt;/li&gt;
&lt;li&gt;[ci] _WIN32 portability&lt;/li&gt;
&lt;li&gt;[cmake,meson] skip tests/* under native Windows&lt;/li&gt;
&lt;li&gt;[tests] support platforms without cp -n&lt;/li&gt;
&lt;li&gt;[ci] cmake did not detect inet_pton on x86 _WIN32&lt;/li&gt;
&lt;li&gt;[ci] use latest GCC and clang&lt;/li&gt;
&lt;li&gt;[ci] adjust .github/workflows/meson.yml&lt;/li&gt;
&lt;li&gt;[ci] further simplify&lt;/li&gt;
&lt;li&gt;[ci] adjust NetBSD,OpenBSD tests .github/workflows&lt;/li&gt;
&lt;li&gt;[ci] add Windows-VisualStudio to .github/workflows&lt;/li&gt;
&lt;li&gt;[ci] add Solaris (disabled) to .github/workflows&lt;/li&gt;
&lt;li&gt;[ci] add Windows-MSYS2 to .github/workflows&lt;/li&gt;
&lt;li&gt;[ci] rename .github/workflows/meson.yml to pr.yml&lt;/li&gt;
&lt;li&gt;[tests] adjust shell syntax in tests/prepare.sh&lt;/li&gt;
&lt;li&gt;[tests] test_mod stub funcs for static builds&lt;/li&gt;
&lt;li&gt;[ci] adjust Windows tests in .github/workflows&lt;/li&gt;
&lt;li&gt;[mod_authn_dbi,mod_vhostdb_dbi] check for &lt;dbi.h&gt;&lt;/li&gt;
&lt;li&gt;[ci] tailor scripts/ci-build.sh for FreeBSD&lt;/li&gt;
&lt;li&gt;[ci] use set -e in .github/workflows run commands&lt;/li&gt;
&lt;li&gt;[debug] debug.log-timeouts for all timeout logging&lt;/li&gt;
&lt;li&gt;[debug] use log_debug_multiline() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[debug] use log_debug() instead of log_error() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] use log_warn() for config warnings (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] use log_warn(),log_notice(),log_info() (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[ls-hpack] compat include of &lt;sys/queue.h&gt;&lt;/li&gt;
&lt;li&gt;[tests] skip deflate tests if zlib not available&lt;/li&gt;
&lt;li&gt;[core] ignore cc -Wcpp warning for &lt;sys/cdefs.h&gt;&lt;/li&gt;
&lt;li&gt;[ci] mechanism to disable wolfssl in ci-build.sh&lt;/li&gt;
&lt;li&gt;[ci] use Alpine Linux VMs to test additional arch&lt;/li&gt;
&lt;li&gt;[ci] skip 32-bit builds on Windows; save resources&lt;/li&gt;
&lt;li&gt;[tests] skip shutdown(SHUT_WR) in tests on s390x&lt;/li&gt;
&lt;li&gt;[ci] add s390x arch&lt;/li&gt;
&lt;li&gt;[meson] replace deprecated meson.build_root() use&lt;/li&gt;
&lt;li&gt;[ci] x86_64 and x86 featureful builds on ubuntu&lt;/li&gt;
&lt;li&gt;[ci] add x86_64 cmake ASAN build on ubuntu&lt;/li&gt;
&lt;li&gt;[ci] ci-build.sh add some NO_* options&lt;/li&gt;
&lt;li&gt;[ci] add Windows-Cygwin build&lt;/li&gt;
&lt;li&gt;[ci] fail fast if x86 build fails on alpine&lt;/li&gt;
&lt;li&gt;[ci] reduce some builds while maintaining coverage&lt;/li&gt;
&lt;li&gt;[ci] remove config not actually running x86 ubuntu&lt;/li&gt;
&lt;li&gt;[ci] more featureful build on macOS&lt;/li&gt;
&lt;li&gt;[doc] cert-staple.sh check staple newer than cert&lt;/li&gt;
&lt;li&gt;[ci] pr.yml format consistency&lt;/li&gt;
&lt;li&gt;[tests] remove repeated file in prepare.sh cp&lt;/li&gt;
&lt;li&gt;[wolfssl] renamed SSL_OP_NO_TICKET&lt;/li&gt;
&lt;li&gt;[ci] more featureful build on NetBSD&lt;/li&gt;
&lt;li&gt;[mod_authn_gssapi] ifndef GSS_KRB5_NT_PRINCIPAL_NAME&lt;/li&gt;
&lt;li&gt;[build] check &amp;lsquo;lua54&amp;rsquo; before other lua variants&lt;/li&gt;
&lt;li&gt;[ci] OpenBSD CFLAGS LDFLAGS PKG_CONFIG_LIBDIR&lt;/li&gt;
&lt;li&gt;[ci] more featureful build on OpenBSD&lt;/li&gt;
&lt;li&gt;[ci] use bash on DragonflyBSD instead of csh&lt;/li&gt;
&lt;li&gt;[ci] special-cases for running tests under MSYS2&lt;/li&gt;
&lt;li&gt;[ci] basic build and run tests under MSYS2&lt;/li&gt;
&lt;li&gt;[tests] remove stray comment from test_mod_expire&lt;/li&gt;
&lt;li&gt;[ci] ci-build.sh NO_DBI option&lt;/li&gt;
&lt;li&gt;[ci] ci-build.sh NO_UUID option&lt;/li&gt;
&lt;li&gt;[ci] ci-build.sh NO_GNUTLS option&lt;/li&gt;
&lt;li&gt;[ci] ci-build.sh NO_MYSQL option&lt;/li&gt;
&lt;li&gt;[core] _WIN32 define PROT_WRITE to PAGE_READWRITE&lt;/li&gt;
&lt;li&gt;[mod_authn_sasl] use HOSTNAME for fqdn on _WIN32&lt;/li&gt;
&lt;li&gt;[ci] more featureful build on MSYS2&lt;/li&gt;
&lt;li&gt;[mod_authn_sasl] fix typo&lt;/li&gt;
&lt;li&gt;[ci] use cygwin test repos for latest packages&lt;/li&gt;
&lt;li&gt;[ci] vmactions usesh: true&lt;/li&gt;
&lt;li&gt;[ci] fix cmake generator path for MSVC&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] read and discard HTTP/1.1 req body&lt;/li&gt;
&lt;li&gt;[core] use log_notice() for conn limit notice (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] gw_upgrade_policy() shared code&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] handle large kernel socket recv buf&lt;/li&gt;
&lt;li&gt;[core] stat_cache.c replace assert w/ error codes&lt;/li&gt;
&lt;li&gt;[core] remove dev assert in http_chunk_append_mem&lt;/li&gt;
&lt;li&gt;[core] ck_static_assert()&lt;/li&gt;
&lt;li&gt;[core] remove asserts from gw_status_get_counter()&lt;/li&gt;
&lt;li&gt;[core] configparser.y combine assert, remove debug&lt;/li&gt;
&lt;li&gt;[core] remove assert from sock_addr.c&lt;/li&gt;
&lt;li&gt;[mod_fastcgi] check env w/ cond instead of assert&lt;/li&gt;
&lt;li&gt;[core] shared code chunkqueue_close_tempchunk()&lt;/li&gt;
&lt;li&gt;[core] buffer.c combine asserts&lt;/li&gt;
&lt;li&gt;[core] array require nonnull for insert,replace&lt;/li&gt;
&lt;li&gt;[core] li_tohex*() no longer adds &amp;lsquo;\0&amp;rsquo;&lt;/li&gt;
&lt;li&gt;[core] accept 65536 in config for ushort values&lt;/li&gt;
&lt;li&gt;[ci] add missing intermediate dep for Cygwin&lt;/li&gt;
&lt;li&gt;[core] clarify configfile parse comment&lt;/li&gt;
&lt;li&gt;[core] fix crash with invalid lighttpd.conf syntax&lt;/li&gt;
&lt;li&gt;[core] lighttpd.conf detect,err if consecutive str&lt;/li&gt;
&lt;li&gt;[mod_magnet] lighty.r.req_body.unspecified_len&lt;/li&gt;
&lt;li&gt;[mod_proxy] handle HTTP/1.0 unspecified req len&lt;/li&gt;
&lt;li&gt;[core] unset Upgrade if downgrade HTTP/1.1 to 1.0&lt;/li&gt;
&lt;li&gt;[mod_magnet] interface to downgrade HTTP/1.1 to 1.0&lt;/li&gt;
&lt;li&gt;[mod_magnet] expand guidance in error message (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3240&#34;&gt;#3240&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[debug] use log_debug() instead of log_error() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] use log_warn(),log_notice(),log_info() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3239&#34;&gt;#3239&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] gw_backend_error_trace() (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/1406&#34;&gt;#1406&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_webdav] webdav_uuid_v4() to supplant libuuid (&lt;a href=&#34;https://redmine.lighttpd.net/issues/1056&#34;&gt;#1056&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[build] remove libuuid dependency (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/1056&#34;&gt;#1056&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] quiet coverity warning&lt;/li&gt;
&lt;li&gt;[doc] fix typos in doc/config/lighttpd.conf&lt;/li&gt;
&lt;li&gt;[mod_h2] send 502 if backend oversized resp hdrs&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2024/02/19/1.4.74/</link>
      <pubDate>Mon, 19 Feb 2024 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2024/02/19/1.4.74/</guid>
      
    </item>
    
    <item>
      <title>1.4.73</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;HTTP/2 detect and log rapid reset attack&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.tar.gz&#34;&gt;lighttpd-1.4.73.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;816cbec71e8d02d874f1d5c798d76d091a76d5acbeb6e017ba76aeb4263d6995&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.tar.xz&#34;&gt;lighttpd-1.4.73.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;818816d0b314b0aa8728a7076513435f6d5eb227f3b61323468e1f10dbe84ca8&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.73.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1472&#34;&gt;Changes from 1.4.72&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1472&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] add .mkv to mimetype.assign builtin defaults&lt;/li&gt;
&lt;li&gt;[core] warn if out-of-range value for config short&lt;/li&gt;
&lt;li&gt;[mod_openssl] set default curves for ossl &amp;lt; 1.1.0&lt;/li&gt;
&lt;li&gt;[mod_h2] parse HEADERS flags sooner&lt;/li&gt;
&lt;li&gt;[mod_h2] check send window before defer frame rd&lt;/li&gt;
&lt;li&gt;[mod_h2] send GOAWAY to excessive request flood&lt;/li&gt;
&lt;li&gt;[mod_h2] h2_parse_headers_frame() adjust args&lt;/li&gt;
&lt;li&gt;[mod_h2] h2_recv_headers() parse trailers earlier&lt;/li&gt;
&lt;li&gt;[mod_h2] send GOAWAY to excessive request flood&lt;/li&gt;
&lt;li&gt;[mod_h2] discard new streams after GOAWAY sent&lt;/li&gt;
&lt;li&gt;[mod_h2] h2_discard_headers() to HPACK-decode hdrs&lt;/li&gt;
&lt;li&gt;[core] parse entire server.http-parseopts list&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] Sec-WebSocket-Protocol only if req hdr&lt;/li&gt;
&lt;li&gt;[mod_h2] disable h2proto if mod_h2 was not found&lt;/li&gt;
&lt;li&gt;[core] omit dlopen trace for mod_h2, mod_deflate&lt;/li&gt;
&lt;li&gt;[mod_h2] defer input parsing if large output queue&lt;/li&gt;
&lt;li&gt;[mod_h2] defer frame handling if stream pend close&lt;/li&gt;
&lt;li&gt;[mod_h2] detect and log HTTP/2 rapid reset attack&lt;/li&gt;
&lt;li&gt;[core] honor MBEDTLS_USE_PSA_CRYPTO for hash,rand&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] honor MBEDTLS_USE_PSA_CRYPTO for rand&lt;/li&gt;
&lt;li&gt;[core] comment out li_rand_bytes() (unused)&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] handle mbedtls 3.x partial write&lt;/li&gt;
&lt;li&gt;[mod_h2] detect and log HTTP/2 rapid reset attack&lt;/li&gt;
&lt;li&gt;[mod_h2] detect and log HTTP/2 rapid reset attack&lt;/li&gt;
&lt;li&gt;[mod_openssl] warn if openssl version &amp;lt; 3.0.0&lt;/li&gt;
&lt;li&gt;[mod_openssl] include openssl/hmac.h for boringssl&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/10/30/1.4.73/</link>
      <pubDate>Mon, 30 Oct 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/10/30/1.4.73/</guid>
      
    </item>
    
    <item>
      <title>1.4.72</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;bugfixes&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.tar.gz&#34;&gt;lighttpd-1.4.72.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;c016d62d2d13a3590ea05494c61059c025447bc71d14a87ee54968b9f506c3ca&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.tar.xz&#34;&gt;lighttpd-1.4.72.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;f7cade4d69b754a0748c01463c33cd8b456ca9cc03bb09e85a71bcbcd54e55ec&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.72.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1471&#34;&gt;Changes from 1.4.71&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1471&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] save config read from stdin across restart&lt;/li&gt;
&lt;li&gt;[core] warn if daemonize w/o absolute config path&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] send Link w/ external css or js&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] fix missing header/readme (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3211&#34;&gt;#3211&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] ignore coverity warning&lt;/li&gt;
&lt;li&gt;[core] ignore coverity warning&lt;/li&gt;
&lt;li&gt;[core] reqpool.c:request_set_con()&lt;/li&gt;
&lt;li&gt;[core] request_init_data() minor optim&lt;/li&gt;
&lt;li&gt;[core] request.c:request_pool_{push,pop}&lt;/li&gt;
&lt;li&gt;Revert &amp;ldquo;[core] h2 http_request_parse_header() tweak&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[core] enable config conditions on HTTP/2 PRI&lt;/li&gt;
&lt;li&gt;[mod_webdav] extend symlink support (non-standard)&lt;/li&gt;
&lt;li&gt;[mod_extforward] fix extforward.params config opt&lt;/li&gt;
&lt;li&gt;[mod_authn_ldap] fix config auth.require group=&amp;hellip; (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3216&#34;&gt;#3216&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] set CON_STATE_READ_POST for HTTP/2 reqbody&lt;/li&gt;
&lt;li&gt;[core] chunkqueue_read_squash() returns cq-&amp;gt;first&lt;/li&gt;
&lt;li&gt;[core] get body from cq at offset in chunk&lt;/li&gt;
&lt;li&gt;[doc] update stbuehler address&lt;/li&gt;
&lt;li&gt;[tests] use sha crypt for fastcgi auth environment tests&lt;/li&gt;
&lt;li&gt;[tests] drop des-crypt and crypt-md5 auth tests - deprecated/not available on various platforms&lt;/li&gt;
&lt;li&gt;[core] code size: xxhash XXH_NO_STREAM&lt;/li&gt;
&lt;li&gt;[core] fdevent_sh_exec()&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] http_dirlist_auto_layout_early_hints()&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] send 103 w/ external css or js&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] json output for /&lt;path&gt;/?json&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] include ETag with cached result&lt;/li&gt;
&lt;li&gt;[core] import xxHash v0.8.2&lt;/li&gt;
&lt;li&gt;[tests] move %ENV modifications into forked child&lt;/li&gt;
&lt;li&gt;[mod_ssi] init hctx-&amp;gt;wq to init alt cq tempdirs&lt;/li&gt;
&lt;li&gt;[tests] initialize request_st cqs in tests&lt;/li&gt;
&lt;li&gt;[core] chunkqueue_env_tmpdir()&lt;/li&gt;
&lt;li&gt;[core] config_set_defaults() reduce code size&lt;/li&gt;
&lt;li&gt;[tests] use current perl interpreter path for env.PERL in lighttpd.conf&lt;/li&gt;
&lt;li&gt;[mod_deflate] code reuse to create temp file&lt;/li&gt;
&lt;li&gt;[core] skip pwrite() to temp file if 0 len write&lt;/li&gt;
&lt;li&gt;[core] store cq-&amp;gt;tempdirs in stack var&lt;/li&gt;
&lt;li&gt;[core] remove tempdirs ptr from struct chunkqueue&lt;/li&gt;
&lt;li&gt;[core] treat upload_temp_file_size=0 as default sz&lt;/li&gt;
&lt;li&gt;[core] hide unused var on _WIN32 compiler warning&lt;/li&gt;
&lt;li&gt;[mod_nss] nspr include prefix portability(attempt)&lt;/li&gt;
&lt;li&gt;[CI] scripts/ci-build.sh arg consistency;add meson&lt;/li&gt;
&lt;li&gt;[CI] remove wolfssl from autobuild; let rest build&lt;/li&gt;
&lt;li&gt;[CI] remove NSS from autobuild; let rest build&lt;/li&gt;
&lt;li&gt;[CI] remove mbedtls from autobuild; let rest build&lt;/li&gt;
&lt;li&gt;[mod_nss] nspr include prefix portability(attempt)&lt;/li&gt;
&lt;li&gt;[CI] ci-build.sh: adjust meson; add pam, maxminddb&lt;/li&gt;
&lt;li&gt;[CI] ci-build.sh: fix typo &amp;ndash;with-pam&lt;/li&gt;
&lt;li&gt;[CI] remove maxminddb from autobuild,cmake; let rest build&lt;/li&gt;
&lt;li&gt;[CI] ci-build.sh re-enable additional dependencies&lt;/li&gt;
&lt;li&gt;[core] optimize for non-Range requests&lt;/li&gt;
&lt;li&gt;[core] allow larger number of Ranges if sorted&lt;/li&gt;
&lt;li&gt;[tests] test_http_range.c&lt;/li&gt;
&lt;li&gt;[core] attempt to quiet coverity warning&lt;/li&gt;
&lt;li&gt;[build] packdist.sh now produces .md for www.l.n&lt;/li&gt;
&lt;li&gt;[core] disable keep-alive if HTTP/1.1 CL and TE&lt;/li&gt;
&lt;li&gt;[core] reject empty Content-Length for HTTP/1.x&lt;/li&gt;
&lt;li&gt;[core] reject uppercase in unrecognized HTTP/2 hdr&lt;/li&gt;
&lt;li&gt;[core] warn dynamic mods listed before staticfile&lt;/li&gt;
&lt;li&gt;[core] dev-only internal request state debugging&lt;/li&gt;
&lt;li&gt;[core] short-circuit connection_state_machine_loop&lt;/li&gt;
&lt;li&gt;[core] reset connection-level state at con level&lt;/li&gt;
&lt;li&gt;[core] optim for non-throttle writes&lt;/li&gt;
&lt;li&gt;[core] remove connection_handle_write HTTP/1.x opt&lt;/li&gt;
&lt;li&gt;[core] yield writing large HTTP/1.x on slow device&lt;/li&gt;
&lt;li&gt;[core] tighten h2_process_streams()&lt;/li&gt;
&lt;li&gt;[core] h2_process_streams() simpler loop to retire&lt;/li&gt;
&lt;li&gt;[core] http_response_physical_pathinfo()&lt;/li&gt;
&lt;li&gt;[core] http_response_prepare() tweaks&lt;/li&gt;
&lt;li&gt;[meson] Fix &amp;lsquo;getoption&amp;rsquo; meson typo&lt;/li&gt;
&lt;li&gt;[core] use different getxattr() prototype on MacOS&lt;/li&gt;
&lt;li&gt;[mod_deflate] do not compress any 1xx status&lt;/li&gt;
&lt;li&gt;[core] http_response_304(), http_response_412()&lt;/li&gt;
&lt;li&gt;[core] add config option to reject pathinfo&lt;/li&gt;
&lt;li&gt;[core] expand mimetype.assign builtin defaults&lt;/li&gt;
&lt;li&gt;[core] mark some cold routines noinline&lt;/li&gt;
&lt;li&gt;[core] add config opt to send GOAWAY for bad auth&lt;/li&gt;
&lt;li&gt;[core] show_features() show inotify or kqueue&lt;/li&gt;
&lt;li&gt;[core] stat_cache_refresh_entry()&lt;/li&gt;
&lt;li&gt;[core] splaytree: use all 32-bits of hash value&lt;/li&gt;
&lt;li&gt;[core] splaytree: compare keys directly&lt;/li&gt;
&lt;li&gt;[core] splaytree: splaytree_splay_nonnull()&lt;/li&gt;
&lt;li&gt;[core] stat_cache: stat_cache_sptree_ndx()&lt;/li&gt;
&lt;li&gt;[multiple] use splaytree_splay_nonnull()&lt;/li&gt;
&lt;li&gt;[h2] comment struct h2con h2_sid member is unused&lt;/li&gt;
&lt;li&gt;[mod_openssl] disable DH auto if DHParameters set&lt;/li&gt;
&lt;li&gt;[mod_openssl] replace deprecated openssl funcs&lt;/li&gt;
&lt;li&gt;[core] splaytree: splaytree_delete_splayed_node()&lt;/li&gt;
&lt;li&gt;[multiple] use splaytree_delete_splayed_node()&lt;/li&gt;
&lt;li&gt;[core] splaytree: splaytree_insert_splayed()&lt;/li&gt;
&lt;li&gt;[multiple] use splaytree_insert_splayed()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 fs_win32_readlinkUTF8() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3223&#34;&gt;#3223&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_magnet] lighty.c.readlink() (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3223&#34;&gt;#3223&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] add config option to reject pathinfo&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] send 103 Early Hints only for h2+&lt;/li&gt;
&lt;li&gt;[mod_webdav] reject non-identity Content-Encoding&lt;/li&gt;
&lt;li&gt;[scons] include mod_h2 in static builds (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3224&#34;&gt;#3224&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] http_request_validate_pseudohdrs comment&lt;/li&gt;
&lt;li&gt;[core] comment out redundant code&lt;/li&gt;
&lt;li&gt;[core] reset addtl state b4 dynamic error handler&lt;/li&gt;
&lt;li&gt;[core] reject Connection hdr in h2 as soon as seen&lt;/li&gt;
&lt;li&gt;[mod_h2] process headers for debug&lt;/li&gt;
&lt;li&gt;[mod_h2] comments and behavior for h2spec tests&lt;/li&gt;
&lt;li&gt;[multiple] mark func __attribute_returns_nonnull__&lt;/li&gt;
&lt;li&gt;[core] expand mimetype.assign builtin defaults&lt;/li&gt;
&lt;li&gt;[core] warn if IPv6 socket not supported&lt;/li&gt;
&lt;li&gt;[mod_simple_vhost,mod_evhost] check host strict&lt;/li&gt;
&lt;li&gt;[mod_simple_vhost,mod_evhost] minor code transform&lt;/li&gt;
&lt;li&gt;[mod_magnet] quiet 32-bit compiler warning&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/10/06/1.4.72/</link>
      <pubDate>Fri, 06 Oct 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/10/06/1.4.72/</guid>
      
    </item>
    
    <item>
      <title>1.4.71</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;bugfixes and portability; HTTP/2 support separated to mod_h2 module&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.tar.gz&#34;&gt;lighttpd-1.4.71.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;3855dfed5ce7a4b006e3d434b00985852b5a91c2abc56d92071f98bfe79f9d80&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.tar.xz&#34;&gt;lighttpd-1.4.71.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;b8b6915da20396fdc354df3324d5e440169b2e5ea7859e3a775213841325afac&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.71.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes-previously-announced&#34;&gt;Behavior Changes (previously announced):&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes-previously-announced&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;http/2 support will be split out into optional separate module (mod_h2)\
  (static builds will need to list mod_h2 in plugin-static.h to include mod_h2)&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1470&#34;&gt;Changes from 1.4.70&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1470&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[mod_h2] HTTP/2 separate module; no longer builtin&lt;/li&gt;
&lt;li&gt;[mod_magnet] fix static build using autoconf (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3203&#34;&gt;#3203&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] fix new use of posix_spawn with some glibc (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3201&#34;&gt;#3201&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] _WIN32 quiet compiler warnings 32-bit build&lt;/li&gt;
&lt;li&gt;[core] check getaddrinfo EAI_ADDRFAMILY w/ glibc&lt;/li&gt;
&lt;li&gt;[core] quiet lemon.c clang C2x warnings&lt;/li&gt;
&lt;li&gt;[core] compile w/o posix_spawn() on iOS&lt;/li&gt;
&lt;li&gt;[core] fix crash due to missing initialization (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3207&#34;&gt;#3207&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] request_init() separate static func&lt;/li&gt;
&lt;li&gt;[multiple] remove some unused/redundant includes&lt;/li&gt;
&lt;li&gt;[core] server.modules s/mod_compress/mod_deflate/&lt;/li&gt;
&lt;li&gt;[core] preproc consistency #pragma GCC diagnostic&lt;/li&gt;
&lt;li&gt;[core] update ls-hpack&lt;/li&gt;
&lt;li&gt;[core] use empty value in srvconf.config_touched&lt;/li&gt;
&lt;li&gt;[core] provide mimetype.assign default if unset&lt;/li&gt;
&lt;li&gt;[mod_vhostdb_mysql] MySQL missing mysql_get_socket (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3208&#34;&gt;#3208&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] clarify comment&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/05/27/1.4.71/</link>
      <pubDate>Sat, 27 May 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/05/27/1.4.71/</guid>
      
    </item>
    
    <item>
      <title>1.4.70</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;speed up CGI spawning&lt;/li&gt;
&lt;li&gt;native Windows build (experimental) (not packaged; no installer)&lt;/li&gt;
&lt;li&gt;support HTTP/2 downstream proxy serving multiple clients on single connection (mod_extforward, mod_maxminddb)&lt;/li&gt;
&lt;li&gt;restructure code to isolate HTTP/2&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.tar.gz&#34;&gt;lighttpd-1.4.70.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;bc96e5571d937279aa7cfdc9c9de95bcc457ab6feafff6264aa8832d026068bc&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.tar.xz&#34;&gt;lighttpd-1.4.70.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;921ebe1cf4b6b9897e03779ab7a23a31f4ba40a1abe2067525c33cd3ce61fe85&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.70.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes-previously-announced&#34;&gt;Behavior Changes (previously announced):&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes-previously-announced&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;no longer building separate modules for built-in modules\
  lighttpd 1.4.70 omits building separate (unused) modules for:\
  mod_access mod_alias mod_evhost mod_expire mod_fastcgi mod_indexfile\
  mod_redirect mod_rewrite mod_scgi mod_setenv mod_simple_vhost mod_staticfile&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes&#34;&gt;Future Scheduled Behavior Changes:&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;HTTP/2 support will be split out into optional separate module (mod_h2)\
  (static builds will need to list mod_h2 in plugin-static.h to include mod_h2)&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1469&#34;&gt;Changes from 1.4.69&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1469&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[autotools] chmod u+w configparser.c for lemon&lt;/li&gt;
&lt;li&gt;[build] skip build separate modules for built-ins&lt;/li&gt;
&lt;li&gt;[core] cache format secs for high prec errlog&lt;/li&gt;
&lt;li&gt;[mod_maxminddb] check remote IP each request (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3191&#34;&gt;#3191&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] store ptrs to remote addr in request_st (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3192&#34;&gt;#3192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_extforward] manage remote addr per request (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3192&#34;&gt;#3192&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] use C23 memset_explicit() were available&lt;/li&gt;
&lt;li&gt;[mod_accesslog] %{mask}a to mask/anonymize IP&lt;/li&gt;
&lt;li&gt;[core] cast to fix compiler error in prior commit&lt;/li&gt;
&lt;li&gt;[scons] fix static build to include builtin_mods&lt;/li&gt;
&lt;li&gt;[core] h2_recv_headers() tweak to reduce code size&lt;/li&gt;
&lt;li&gt;[core] h2_get_stream_req() code reuse&lt;/li&gt;
&lt;li&gt;[core] h2: remove obsolete comment&lt;/li&gt;
&lt;li&gt;[core] h2 mark :status matching lsxpack enum value&lt;/li&gt;
&lt;li&gt;[core] h2 match w/ lsxpack pseudo-header key only&lt;/li&gt;
&lt;li&gt;[core] limit server.max-request-field-size \&amp;lt;=65535&lt;/li&gt;
&lt;li&gt;[core] permit shell HERE docs to specify config&lt;/li&gt;
&lt;li&gt;[core] add members to http_header_parse_ctx&lt;/li&gt;
&lt;li&gt;[mod_extforward] typo in comment&lt;/li&gt;
&lt;li&gt;[mod_openssl] SSL_CTX_set_options() takes uint64_t&lt;/li&gt;
&lt;li&gt;[core] reorder enum handler_t&lt;/li&gt;
&lt;li&gt;[core] connection_handle_request_start_state()&lt;/li&gt;
&lt;li&gt;[core] check chunk file open early in mmap viewadj (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3197&#34;&gt;#3197&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] h2 http_request_parse_header() tweak&lt;/li&gt;
&lt;li&gt;[mod_extforward] recognize unix domain sockets (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3198&#34;&gt;#3198&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_magnet] support ./configure &amp;mdash;with-lua=luajit (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3199&#34;&gt;#3199&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] remove instance of devel debug code&lt;/li&gt;
&lt;li&gt;[core] quiet coverity warning&lt;/li&gt;
&lt;li&gt;[core] connection_check_upgrade() h2_upgrade_h2c()&lt;/li&gt;
&lt;li&gt;[core] CON_STATE_REQUEST_END transient state&lt;/li&gt;
&lt;li&gt;[core] expose request_set_state() for internal use&lt;/li&gt;
&lt;li&gt;[core] h2_send_goaway_graceful()&lt;/li&gt;
&lt;li&gt;[core] h2_check_timeout()&lt;/li&gt;
&lt;li&gt;[core] h2_process_streams()&lt;/li&gt;
&lt;li&gt;[core] h2_recv_reqbody()&lt;/li&gt;
&lt;li&gt;[core] HTTP_VERSION_3 enum value&lt;/li&gt;
&lt;li&gt;[core] r~~[x union w/ structs for r]{style=&amp;rdquo;text-align:right;&amp;rdquo;}~~&amp;gt;x.{h1}&lt;/li&gt;
&lt;li&gt;[core] r~~[x union w/ structs for r]{style=&amp;rdquo;text-align:right;&amp;rdquo;}~~&amp;gt;x.{h1,h2}&lt;/li&gt;
&lt;li&gt;[core] http_dispatch[] tables for HTTP proto vers&lt;/li&gt;
&lt;li&gt;[core] hxcon &amp;ldquo;base class&amp;rdquo; for h2con&lt;/li&gt;
&lt;li&gt;[mod_h2] HTTP/2 module: mod_h2&lt;/li&gt;
&lt;li&gt;[multiple] optimistic client read only if HTTP/1.x&lt;/li&gt;
&lt;li&gt;[core] _WIN32 port compatibility headers&lt;/li&gt;
&lt;li&gt;[core] _WIN32 impl of setenv(), unsetenv()&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 protect code w/ HAVE_SYSLOG_H&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 protect code w/ HAVE_FORK&lt;/li&gt;
&lt;li&gt;[core] _WIN32 protect code w/ HAVE_IPV6&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 protect code w/ HAVE_SYS_UN_H&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 stat() compat sys-stat.h&lt;/li&gt;
&lt;li&gt;[core] _WIN32 uid, gid compat&lt;/li&gt;
&lt;li&gt;[core] _WIN32 signal-related compat&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 misc compat&lt;/li&gt;
&lt;li&gt;[core] _WIN32 minimal glob() impl for configfile.c&lt;/li&gt;
&lt;li&gt;[core] _WIN32 use gmtime_s(), localtime_s()&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] _WIN32 Find*File()&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 Find*File() sys-dirent.h&lt;/li&gt;
&lt;li&gt;[core] _WIN32 sys-unistd.h to wrap \&amp;lt;unistd.h&amp;gt;&lt;/li&gt;
&lt;li&gt;[core] _WIN32 sys-wait.h to wrap \&amp;lt;sys/wait.h&amp;gt;&lt;/li&gt;
&lt;li&gt;[core] _WIN32 implementation of socketpair()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 fdevent_createprocess()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 socket-compat, filesystem-compat&lt;/li&gt;
&lt;li&gt;[core] _WIN32 check WSAGetLastError() w/ sockets&lt;/li&gt;
&lt;li&gt;[mod_cgi] _WIN32 use socketpair instead of pipe&lt;/li&gt;
&lt;li&gt;[core] _WIN32 clock ticks and time&lt;/li&gt;
&lt;li&gt;[core] _WIN32 alternative fdarray for Windows&lt;/li&gt;
&lt;li&gt;[core] _WIN32 basic (very limited) getopt() impl&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 fcgi-responder.c, scgi-responder.c&lt;/li&gt;
&lt;li&gt;[core] &lt;em&gt;WIN32 rename&lt;/em&gt;_WIN32 to _WIN32&lt;/li&gt;
&lt;li&gt;[core] _WIN32 casts to quiet some VS warnings&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 use TMPDIR (or TEMP) for test files&lt;/li&gt;
&lt;li&gt;[build] _WIN32 mingw build&lt;/li&gt;
&lt;li&gt;[multiple] &lt;em&gt;MINGW32&lt;/em&gt; missing strftime() &amp;ldquo;%F %T&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 adjustments in LightyTest.pm&lt;/li&gt;
&lt;li&gt;[core] _WIN32 reset std streams at startup&lt;/li&gt;
&lt;li&gt;[core] _WIN32 log_perror() with GetLastError()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 log_serror() for WSAGetLastError()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 use log_serror() for WSAGetLastError&lt;/li&gt;
&lt;li&gt;[core] _WIN32 use rand_s() to init pseudo RNG&lt;/li&gt;
&lt;li&gt;[core] _WIN32 fdevent_kill()&lt;/li&gt;
&lt;li&gt;[multiple] _WIN32 use fdevent_kill()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 stat(), &amp;lsquo;/&amp;rsquo; and &amp;lsquo;\\&amp;rsquo; adjustments&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 cygwin test support&lt;/li&gt;
&lt;li&gt;[mod_deflate] _WIN32 disable deflate.cache-dir&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] _WIN32 close files before unlink&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 close files before unlink&lt;/li&gt;
&lt;li&gt;[core] _WIN32 close chunk temp files before unlink&lt;/li&gt;
&lt;li&gt;[core] _WIN32 prefer WSAPoll()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 lighttpd winsvc&lt;/li&gt;
&lt;li&gt;[core] _WIN32 custom fs funcs on UTF-8 paths&lt;/li&gt;
&lt;li&gt;[core] _WIN32 scream UTF-8 at MS (does not matter)&lt;/li&gt;
&lt;li&gt;[cmake] _WIN32 build more mods with BUILD_STATIC&lt;/li&gt;
&lt;li&gt;[cmake] _WIN32 remove older build config&lt;/li&gt;
&lt;li&gt;[core] _WIN32 use WSASend for writev-equiv on sock&lt;/li&gt;
&lt;li&gt;[meson] static build option under cygwin&lt;/li&gt;
&lt;li&gt;[build] &lt;em&gt;WIN32&lt;/em&gt;_declspec(dllexport) *_plugin_init&lt;/li&gt;
&lt;li&gt;[build] _WIN32 shared dll build (autotools, cmake)&lt;/li&gt;
&lt;li&gt;[tests] _WIN32 skip time-sensitive tests during CI&lt;/li&gt;
&lt;li&gt;[core] use posix_spawn() where available&lt;/li&gt;
&lt;li&gt;[mod_cgi] comment about caching target dirname&lt;/li&gt;
&lt;li&gt;[meson] update comment with build flags&lt;/li&gt;
&lt;li&gt;[meson] check FORCE_{WOLFSSL,MBEDTLS}_CRYPTO&lt;/li&gt;
&lt;li&gt;[mod_auth] warn if auth.require path never matches&lt;/li&gt;
&lt;li&gt;[core] h1.[ch] collect some HTTP/1.x specific code&lt;/li&gt;
&lt;li&gt;[core] noinline connection shutdown, reset&lt;/li&gt;
&lt;li&gt;[TLS] \$SERVER[&amp;ldquo;socket&amp;rdquo;] inherit global ssl.engine&lt;/li&gt;
&lt;li&gt;[mod_proxy] match &amp;ldquo;map-host-response&amp;rdquo; &amp;ldquo;-&amp;rdquo; w/ Host&lt;/li&gt;
&lt;li&gt;[core] noinline stat_cache_sptree_find()&lt;/li&gt;
&lt;li&gt;[core] rename http_kv funcs, reorder http_versions&lt;/li&gt;
&lt;li&gt;[mod_cgi] move fd count to cgi_create_env()&lt;/li&gt;
&lt;li&gt;[mod_cgi] reduce code size&lt;/li&gt;
&lt;li&gt;[mod_cgi] do not issue trace if CGI closes input&lt;/li&gt;
&lt;li&gt;[mod_cgi] cgi_create_err() cold err handling func&lt;/li&gt;
&lt;li&gt;[core] always decr fd count upon socket close()&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] check MBEDTLS_DEBUG_C for debug func&lt;/li&gt;
&lt;li&gt;[core] return pid_t from fdevent_waitpid()&lt;/li&gt;
&lt;li&gt;[core] _WIN32 compile fix&lt;/li&gt;
&lt;li&gt;[meson] build fix for builtin_mods&lt;/li&gt;
&lt;li&gt;[core] move some shared funcs to call from modules&lt;/li&gt;
&lt;li&gt;[build] move some files to call from modules&lt;/li&gt;
&lt;li&gt;[mod_cgi] doubly-linked list of CGI pids&lt;/li&gt;
&lt;li&gt;[mod_cgi] reuse fd already opened to /dev/null&lt;/li&gt;
&lt;li&gt;[mod_cgi] reset upload_temp_file_size in CGI close&lt;/li&gt;
&lt;li&gt;[tests] copy confs for running tests in alt dir&lt;/li&gt;
&lt;li&gt;[scons] avoid dup mod_h2 module in static build&lt;/li&gt;
&lt;li&gt;[autoconf] include fs_win32.h in hdrs for dpkg&lt;/li&gt;
&lt;li&gt;[build] ifdef _WIN32 before include fs_win32.h&lt;/li&gt;
&lt;li&gt;[mod_openssl] SSL_OP_ENABLE_KTLS_TX_ZEROCOPY_SENDFILE&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] _WIN32 fix fstat() after close()&lt;/li&gt;
&lt;li&gt;[core] quiet coverity warning&lt;/li&gt;
&lt;li&gt;[mod_openssl] FreeBSD: check &amp;ldquo;kern.ipc.tls.enable&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[core] fix HTTP/2 use of http_response_loop()&lt;/li&gt;
&lt;li&gt;[mod_openssl] check kernel support for KTLS&lt;/li&gt;
&lt;li&gt;[core] posix_spawnattr_setcwd_np() on QNX&lt;/li&gt;
&lt;li&gt;[core] posix_spawn_file_actions_addclosefrom_np()&lt;/li&gt;
&lt;li&gt;[core] Mac OS POSIX_SPAWN_CLOEXEC_DEFAULT&lt;/li&gt;
&lt;li&gt;[core] modify use of posix_spawnattr_setsigdefault&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] _WIN32 compile fix&lt;/li&gt;
&lt;li&gt;[core] fdevent_load_file() check if limit exceeded&lt;/li&gt;
&lt;li&gt;[tests] tests/prepare.sh comment w/ alt build root&lt;/li&gt;
&lt;li&gt;[core] treat mod_h2 as built-in module (for now)&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/05/10/1.4.70/</link>
      <pubDate>Wed, 10 May 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/05/10/1.4.70/</guid>
      
    </item>
    
    <item>
      <title>1.4.69</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;bugfixes, portability&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.tar.gz&#34;&gt;lighttpd-1.4.69.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;657010184c4c470ad98944abbf0a8e2281800fa2bb1836c7a2cd4a8874e97b28&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.tar.xz&#34;&gt;lighttpd-1.4.69.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;16ac8db95e719629ba61949b99f8a26feba946a81d185215b28379bb4116b0b4&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.69.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes&#34;&gt;Future Scheduled Behavior Changes:&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd 1.4.68 builds common modules into the lighttpd base executable.\
    Separate dynamic modules are still built for the benefit of existing\
    packaging scripts in various distributions, but those modules are not used.\
    A future version of lighttpd will omit building separate modules for:\
    mod_access mod_alias mod_evhost mod_expire mod_fastcgi mod_indexfile\
    mod_redirect mod_rewrite mod_scgi mod_setenv mod_simple_vhost mod_staticfile&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1468&#34;&gt;Changes from 1.4.68&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1468&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[meson] remove t/test_mod_evasive.c&lt;/li&gt;
&lt;li&gt;[doc] remove references to removed modules&lt;/li&gt;
&lt;li&gt;[cmake] add doc/CMakeLists.txt to dist tar ball (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3181&#34;&gt;#3181&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[meson] add meson.build to install man pages (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3181&#34;&gt;#3181&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[meson] fix typo in sbindir&lt;/li&gt;
&lt;li&gt;[core] update ls-hpack&lt;/li&gt;
&lt;li&gt;[cmake] remove -I/usr/include/mysql for mysql.h (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3181&#34;&gt;#3181&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[cmake] add -DWITH_LUA_VERSION= to specify lua ver (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3181&#34;&gt;#3181&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[cmake] use mysql_config cflags and ldflags (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3181&#34;&gt;#3181&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[cmake] do not link with fam if inotify or kqueue&lt;/li&gt;
&lt;li&gt;[TLS] fix spurious warning trace (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3182&#34;&gt;#3182&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] codespell: correct spelling in comments&lt;/li&gt;
&lt;li&gt;[multiple] spelling: github action check-spelling&lt;/li&gt;
&lt;li&gt;[lemon] upgrade LEMON parser to SQLite maint ver&lt;/li&gt;
&lt;li&gt;[build] modify arguments to updated LEMON parser&lt;/li&gt;
&lt;li&gt;[core] build configparser.y w/ -Werror workarounds&lt;/li&gt;
&lt;li&gt;[lemon] fix -Wpendantic warnings for bad casts&lt;/li&gt;
&lt;li&gt;[core] avoid accept4() on ARM unless detected&lt;/li&gt;
&lt;li&gt;[cmake] use CMAKE_CURRENT_SOURCE_DIR&lt;/li&gt;
&lt;li&gt;[cmake] SERVER_SRC variable&lt;/li&gt;
&lt;li&gt;[multiple] quiet some coverity false positives&lt;/li&gt;
&lt;li&gt;[cmake] use LIGHTTPD_MODULES_DIR as relative path (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3185&#34;&gt;#3185&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] add missed h2 state transition (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3186&#34;&gt;#3186&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] remove cygwin O_NOFOLLOW workaround&lt;/li&gt;
&lt;li&gt;[multiple] clang -Wstrict-prototypes for C2x&lt;/li&gt;
&lt;li&gt;[core] reset SIGUSR1 to SIG_DFL before execve()&lt;/li&gt;
&lt;li&gt;[mod_webdav] modify OPTIONS response if no db cfg&lt;/li&gt;
&lt;li&gt;[mod_webdav] MOD_WEBDAV_BUILD_MINIMAL preproc opt&lt;/li&gt;
&lt;li&gt;[core] pass fdn to fdevent_sched_close,_unregister&lt;/li&gt;
&lt;li&gt;[core] disable sendfile() on TARGET_OS_IPHONE&lt;/li&gt;
&lt;li&gt;[core] iOS does not provide netinet/tcp_fsm.h&lt;/li&gt;
&lt;li&gt;[core] move headers to help isolate fdevent layer&lt;/li&gt;
&lt;li&gt;[core] avoid select() FD_ISSET repeat on active fds&lt;/li&gt;
&lt;li&gt;[core] gw_backend more precise backend env alloc&lt;/li&gt;
&lt;li&gt;[core] fdevent_poll_poll avoid potential race&lt;/li&gt;
&lt;li&gt;[tests] quickly exit tests/request.t if GET / fail&lt;/li&gt;
&lt;li&gt;[tests] adjust outdated opt in tests/lighttpd.conf&lt;/li&gt;
&lt;li&gt;[autotools] add mod_evhost to static build list&lt;/li&gt;
&lt;li&gt;[autotools] skip modules build if LIGHTTPD_STATIC&lt;/li&gt;
&lt;li&gt;[mod_cgi] cygwin supports CGI file I/O redirection&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] use fdevent_rename() wrapper&lt;/li&gt;
&lt;li&gt;[core] path-info in debug trace may be unset&lt;/li&gt;
&lt;li&gt;[core] reset path-info for cgi.local-redir&lt;/li&gt;
&lt;li&gt;[autotools] fix typo in -I used &amp;mdash;with-pcre2=/path (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3190&#34;&gt;#3190&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_webdav] send 409 Conflict if PUT miss parent&lt;/li&gt;
&lt;li&gt;[core] fix HTTP/2 HEADERS frame parsing bug&lt;/li&gt;
&lt;li&gt;[core] remove extra HTTP/2 HEADERS frame len check&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/02/10/1.4.69/</link>
      <pubDate>Fri, 10 Feb 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/02/10/1.4.69/</guid>
      
    </item>
    
    <item>
      <title>1.4.68</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;stronger TLS defaults (as previously announced)&lt;/li&gt;
&lt;li&gt;KTLS sendfile in mod_openssl and mod_gnutls, if available and enabled&lt;/li&gt;
&lt;li&gt;removal of deprecated modules&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes-previously-announced&#34;&gt;Behavior Changes (previously announced)&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes-previously-announced&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;TLS modules now default to using stronger, modern ciphers and will default to allow client preference in selecting ciphers.\
  Allowing client preference in selecting ciphers is safe to do along with restrictions to use modern ciphers supporting PFS, and is better for mobile users without AES hardware acceleration.&lt;br /&gt;
  Legacy ciphers can still be configured in lighttpd.conf using `ssl.openssl.ssl-conf-cmd`, as long as the ciphers are supported by the underlying TLS libraries.&lt;br /&gt;
  Also see &lt;a href=&#34;https://wiki.lighttpd.net/Docs_SSL&#34;&gt;https://wiki.lighttpd.net/Docs_SSL&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;new defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;EECDH+AESGCM:AES256+EECDH:CHACHA20:!SHA1:!SHA256:!SHA384&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;-ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;old defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;HIGH&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated TLS options have been removed.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ssl.honor-cipher-order&lt;/li&gt;
&lt;li&gt;ssl.dh-file&lt;/li&gt;
&lt;li&gt;ssl.ec-curve&lt;/li&gt;
&lt;li&gt;ssl.disable-client-renegotiation&lt;/li&gt;
&lt;li&gt;ssl.use-sslv2&lt;/li&gt;
&lt;li&gt;ssl.use-sslv3&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See https://wiki.lighttpd.net/Docs_SSL for replacements with &lt;code&gt;ssl.openssl.ssl-conf-cmd&lt;/code&gt;, but prefer lighttpd defaults instead.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Continue gradual deprecation of &amp;ldquo;mini-application&amp;rdquo; lighttpd modules
  for which mod_magnet lua implementations are better and more flexible.&lt;br /&gt;
  Please post on lighttpd forums to share feedback if you use these modules.&lt;br /&gt;
  Forums: https://redmine.lighttpd.net/projects/lighttpd/boards&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_evasive has been removed.&lt;br /&gt;
  mod_evasive can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_evasive
  https://wiki.lighttpd.net/AbsoLUAtion#Fight-DDoS
  https://wiki.lighttpd.net/AbsoLUAtion#Mod_Security&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_secdownload has been removed.&lt;br /&gt;
  mod_secdownload can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_secdownload&lt;br /&gt;
  mod_secdownload historically uses insecure MD5 though SHA1, SHA256 available&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_uploadprogress has been removed.&lt;br /&gt;
  mod_uploadprogress can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_uploadprogress&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_usertrack has been removed.
  mod_usertrack can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_usertrack&lt;br /&gt;
  mod_usertrack historically uses insecure MD5.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;behavior-changes-not-previously-announced&#34;&gt;Behavior Changes (not previously announced)&lt;a class=&#34;headerlink&#34; href=&#34;#behavior-changes-not-previously-announced&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;meson build: some opts have changed from type: &amp;lsquo;boolean&amp;rsquo; to type: &amp;lsquo;feature&amp;rsquo;;
  build scripts using -D with_example=true or =false need to change some opts
  to =enabled, =disabled, or =auto&lt;/li&gt;
&lt;li&gt;mod_magnet: removed experimental lighty.r.req_attr[&amp;ldquo;response.*&amp;ldquo;] accessors
  (added in lighttpd 1.4.56 (2020) and replaced in lighttpd 1.4.65 (2022))
  (see lighty.r.req_item.http_status and lighty.r.resp_body.* replacements)&lt;/li&gt;
&lt;li&gt;remove libev fdevent option (ignore)&lt;br /&gt;
  lighttpd directly uses native OS event handlers&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes&#34;&gt;Future Scheduled Behavior Changes&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;lighttpd 1.4.68 builds common modules into the lighttpd base executable.&lt;br /&gt;
  Separate dynamic modules are still built for the benefit of existing packaging scripts in various distributions, but those modules are not used.&lt;br /&gt;
  A future version of lighttpd will omit building separate modules for:&lt;br /&gt;
  mod_access mod_alias mod_evhost mod_expire mod_fastcgi mod_indexfile mod_redirect mod_rewrite mod_scgi mod_setenv mod_simple_vhost mod_staticfile&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.tar.gz&#34;&gt;lighttpd-1.4.68.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;fa8515297cfa7273cf84be8c8d312d26ec272e28b41022f7dcb8ccef02a99c78&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.tar.xz&#34;&gt;lighttpd-1.4.68.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;e56f37ae52b63e1ada4d76ce78005affb6e56eea2f6bdb0ce17d6d36e9583384&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.68.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1467&#34;&gt;Changes from 1.4.67&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1467&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[cmake] compile lemon with native cc for x-compile&lt;/li&gt;
&lt;li&gt;[cmake] install man pages with CMake&lt;/li&gt;
&lt;li&gt;[cmake] let CMake handle the version number&lt;/li&gt;
&lt;li&gt;[cmake] set LIGHTTPD_VERSION_ID per version&lt;/li&gt;
&lt;li&gt;[meson] set LIGHTTPD_VERSION_ID per version&lt;/li&gt;
&lt;li&gt;[meson] add missing meson_version&lt;/li&gt;
&lt;li&gt;[meson] use feature options&lt;/li&gt;
&lt;li&gt;[meson] turn pcre into a combo option&lt;/li&gt;
&lt;li&gt;[meson] simplify header checking&lt;/li&gt;
&lt;li&gt;[meson] add wrapdb instructions&lt;/li&gt;
&lt;li&gt;[lighttpd-angel] waitpid after HUP before restart&lt;/li&gt;
&lt;li&gt;[core] use inotify_init() if missing IN_* defines&lt;/li&gt;
&lt;li&gt;[core] keep sockets w/ server.graceful-restart-bg&lt;/li&gt;
&lt;li&gt;[TLS] ssl.openssl.ssl-conf-cmd &amp;ldquo;DHParameters&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] check for cert must_staple&lt;/li&gt;
&lt;li&gt;[mod_mbedtls] config renegotiation;not recommended&lt;/li&gt;
&lt;li&gt;[mod_alias] fix typo in config error message&lt;/li&gt;
&lt;li&gt;[mod_proxy,mod_cgi] fix dummy Sec-WebSocket-Key&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] cast to fix compile error&lt;/li&gt;
&lt;li&gt;[TLS] try DER format if reading PEM format fails&lt;/li&gt;
&lt;li&gt;[mod_openssl] libressl 3.6.0 ASN1_TIME_cmp_time_t&lt;/li&gt;
&lt;li&gt;[mod_deflate] skip cache for Cache-Control: private,no-store&lt;/li&gt;
&lt;li&gt;[mod_webdav] minor cleanups and adjustments&lt;/li&gt;
&lt;li&gt;[core] http_response_body_clear clears body flags&lt;/li&gt;
&lt;li&gt;[core] ignore server.max-worker = 1&lt;/li&gt;
&lt;li&gt;[doc/scripts/cert-staple.sh] *BSD date portability&lt;/li&gt;
&lt;li&gt;[doc/scripts/cert-staple.sh] short-circuit checks&lt;/li&gt;
&lt;li&gt;[doc/scripts/cert-staple.sh] add copyright header&lt;/li&gt;
&lt;li&gt;[meson] fix wrong array&lt;/li&gt;
&lt;li&gt;[meson] replace most has_function calls with loop&lt;/li&gt;
&lt;li&gt;[meson] use non string true/false&lt;/li&gt;
&lt;li&gt;[meson] use files()&lt;/li&gt;
&lt;li&gt;[meson] remove use of non-existent win32 xgetopt.c&lt;/li&gt;
&lt;li&gt;[meson] update comment for opts w/ type &amp;lsquo;feature&amp;rsquo;&lt;/li&gt;
&lt;li&gt;[core] fix crash for invalid lighttpd.conf (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3175&#34;&gt;#3175&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[build] do not check for pthread.h&lt;/li&gt;
&lt;li&gt;[cmake] use find_package() to include the PkgConfig module&lt;/li&gt;
&lt;li&gt;[cmake] use GNUInstallDirs to set defaults for several directories&lt;/li&gt;
&lt;li&gt;[cmake] use FindOpenSSL cmake module to search for OpenSSL&lt;/li&gt;
&lt;li&gt;[cmake] remove wolfssl code that would already be handled by CMake&lt;/li&gt;
&lt;li&gt;[cmake] improve searching for PostgreSQL&lt;/li&gt;
&lt;li&gt;[cmake] remove needless arguments from xconfig macro&lt;/li&gt;
&lt;li&gt;[cmake] prefer libpcre.pc over pcre-config&lt;/li&gt;
&lt;li&gt;[cmake] use CMake&amp;rsquo;s provided FindZLIB&lt;/li&gt;
&lt;li&gt;[cmake] use CMake&amp;rsquo;s provided FindBZip2&lt;/li&gt;
&lt;li&gt;[cmake] remove path hints where CMake searches by default&lt;/li&gt;
&lt;li&gt;[cmake] remove use of non-existent win32 xgetopt.c&lt;/li&gt;
&lt;li&gt;[mod_openssl] mod_openssl_write_err() shared code&lt;/li&gt;
&lt;li&gt;[mod_openssl] use SSL_sendfile() if KTLS available&lt;/li&gt;
&lt;li&gt;[mod_gnutls] use gnutls_record_send_file() if KTLS&lt;/li&gt;
&lt;li&gt;[TLS] handle &amp;lsquo;+&amp;rsquo; on ssl-conf-cmd &amp;ldquo;Options&amp;rdquo;&lt;/li&gt;
&lt;li&gt;[TLS] upgrade default cipher list to stronger set&lt;/li&gt;
&lt;li&gt;[TLS] simplify TLS config; remove deprecated opts&lt;/li&gt;
&lt;li&gt;[multiple] remove deprecated modules&lt;/li&gt;
&lt;li&gt;[mod_magnet] remove lighty.r.req_attr[&amp;ldquo;response.*&amp;ldquo;]&lt;/li&gt;
&lt;li&gt;[core] remove libev fdevent option (ignore)&lt;/li&gt;
&lt;li&gt;[core] _WIN32 impl of plugins_load()&lt;/li&gt;
&lt;li&gt;[core] check for built-in plugins before dlopen&lt;/li&gt;
&lt;li&gt;[core] build core modules into lighttpd executable&lt;/li&gt;
&lt;li&gt;[core] reduce M_TOP_PAD to default on small system&lt;/li&gt;
&lt;li&gt;[multiple] mark mod_*_plugin_init() funcs cold&lt;/li&gt;
&lt;li&gt;[core] check ifndef NDEBUG before setting NDEBUG&lt;/li&gt;
&lt;li&gt;[core] server_main_setup_signals() separate func&lt;/li&gt;
&lt;li&gt;[core] server_main_setup_workers() separate func&lt;/li&gt;
&lt;li&gt;[core] server_main_setup() variable scoping&lt;/li&gt;
&lt;li&gt;[core] ck_calloc() ck_malloc() ck_realloc_u32()&lt;/li&gt;
&lt;li&gt;[multiple] employ ck_realloc_u32() shared code&lt;/li&gt;
&lt;li&gt;[core] mark gw_proc_free() cold&lt;/li&gt;
&lt;li&gt;[core] use data_config_list for config&lt;/li&gt;
&lt;li&gt;[build] omit unused vector.[ch] from build&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] store value in tmp before byteswap&lt;/li&gt;
&lt;li&gt;[core] log_buffer_vsprintf tweaks&lt;/li&gt;
&lt;li&gt;[multiple] employ ck_calloc, ck_malloc shared code&lt;/li&gt;
&lt;li&gt;[core] create non-inlined vector_resize()&lt;/li&gt;
&lt;li&gt;[lighttpd-angel] remove unused includes&lt;/li&gt;
&lt;li&gt;[core] chunk.c tweaks&lt;/li&gt;
&lt;li&gt;[core] config_check_cond_nocache_eval() tweak&lt;/li&gt;
&lt;li&gt;[mod_openssl] CLOSE_NOTIFY handling with KTLS&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] match mod_openssl CLOSE_NOTIFY&lt;/li&gt;
&lt;li&gt;[core] ignore config dir-listing.* if not enabled&lt;/li&gt;
&lt;li&gt;[doc] default lighttpd.conf: omit server.use-ipv6&lt;/li&gt;
&lt;li&gt;[lighttpd-angel] simplify&lt;/li&gt;
&lt;li&gt;[tests] disable auth.delay-invalid-creds for tests&lt;/li&gt;
&lt;li&gt;[mod_deflate] &amp;ldquo;deflate&amp;rdquo; should include zlib header&lt;/li&gt;
&lt;li&gt;[tests] fix &amp;ldquo;deflate&amp;rdquo; tests for added zlib header&lt;/li&gt;
&lt;li&gt;[tests] disable Nagle on client, remove sleeps&lt;/li&gt;
&lt;li&gt;[core] save ptr to avoid static analyzer realloc warn&lt;/li&gt;
&lt;li&gt;[core] wrap server_main_setup_workers w/ HAVE_FORK&lt;/li&gt;
&lt;li&gt;[core] temporarily disable O_NOFOLLOW on Cygwin&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2023/01/03/1.4.68/</link>
      <pubDate>Tue, 03 Jan 2023 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2023/01/03/1.4.68/</guid>
      
    </item>
    
    <item>
      <title>1.4.67</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;bugfixes&lt;/p&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes&#34;&gt;Future Scheduled Behavior Changes&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;TLS modules will default to using stronger, modern ciphers and will default to allow client preference in selecting ciphers. Allowing client preference in selecting ciphers is safe to do along with restrictions to use modern ciphers supporting PFS, and is better for mobile users without AES hardware acceleration. Legacy ciphers can still be configured in lighttpd.conf using &lt;code&gt;ssl.openssl.ssl-conf-cmd&lt;/code&gt;, as long as the ciphers are supported by the underlying TLS libraries.&lt;br /&gt;
&lt;a href=&#34;https://wiki.lighttpd.net/Docs_SSL&#34;&gt;https://wiki.lighttpd.net/Docs_SSL&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;new defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;EECDH+AESGCM:AES256+EECDH:CHACHA20:!SHA1:!SHA256:!SHA384&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;-ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;old defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;HIGH&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated TLS options will be removed.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ssl.honor-cipher-order&lt;/li&gt;
&lt;li&gt;ssl.dh-file&lt;/li&gt;
&lt;li&gt;ssl.ec-curve&lt;/li&gt;
&lt;li&gt;ssl.disable-client-renegotiation&lt;/li&gt;
&lt;li&gt;ssl.use-sslv2&lt;/li&gt;
&lt;li&gt;ssl.use-sslv3&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See &lt;a href=&#34;https://wiki.lighttpd.net/Docs_SSL&#34;&gt;https://wiki.lighttpd.net/Docs_SSL&lt;/a&gt; for replacements with &lt;code&gt;ssl.openssl.ssl-conf-cmd&lt;/code&gt;, but prefer lighttpd defaults instead.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Continue gradual deprecation of &amp;ldquo;mini-application&amp;rdquo; lighttpd modules for which mod_magnet lua implementations are better and more flexible.\
  Please post on lighttpd forums to share feedback if you use these modules.&lt;br /&gt;
  Forums: https://redmine.lighttpd.net/projects/lighttpd/boards&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_evasive will be removed.&lt;br /&gt;
  mod_evasive can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_evasive &lt;br /&gt;
  https://wiki.lighttpd.net/AbsoLUAtion#Fight-DDoS &lt;br /&gt;
  https://wiki.lighttpd.net/AbsoLUAtion#Mod_Security&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_secdownload will be removed.&lt;br /&gt;
  mod_secdownload can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_secdownload&lt;br /&gt;
  mod_secdownload historically uses insecure MD5 though SHA1, SHA256 available&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_uploadprogress will be removed.&lt;br /&gt;
  mod_uploadprogress can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_uploadprogress&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_usertrack will be removed.&lt;br /&gt;
  mod_usertrack can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_usertrack&lt;br /&gt;
  mod_usertrack historically uses insecure MD5.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.tar.gz&#34;&gt;lighttpd-1.4.67.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;de3c783a0ec3459e7e36a5ef08e13482d8640b339570dd036dfd456a6f7bb312&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.tar.xz&#34;&gt;lighttpd-1.4.67.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;7e04d767f51a8d824b32e2483ef2950982920d427d1272ef4667f49d6f89f358&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.67.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1466&#34;&gt;Changes from 1.4.66&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1466&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Update comment about TCP_INFO on OpenBSD&lt;/li&gt;
&lt;li&gt;[mod_ajp13] fix crash with bad response headers (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3170&#34;&gt;#3170&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] handle RDHUP when collecting chunked body&lt;/li&gt;
&lt;li&gt;[core] tweak streaming request body to backends&lt;/li&gt;
&lt;li&gt;[core] handle ENOSPC with pwritev() (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3171&#34;&gt;#3171&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] manually calculate off_t max (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3171&#34;&gt;#3171&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[autoconf] force large file support (&lt;a href=&#34;https://redmine.lighttpd.net/issues/3171&#34;&gt;#3171&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[multiple] quiet coverity warnings using casts&lt;/li&gt;
&lt;li&gt;[meson] add license keyword to project declaration&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2022/09/17/1.4.67/</link>
      <pubDate>Sat, 17 Sep 2022 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2022/09/17/1.4.67/</guid>
      
    </item>
    
    <item>
      <title>1.4.66</title>
      
      
        
      <author>gstrauss</author>
        
      
      
      
      <description>&lt;h2 id=&#34;important-changes&#34;&gt;Important changes&lt;a class=&#34;headerlink&#34; href=&#34;#important-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;bugfixes&lt;/p&gt;
&lt;h2 id=&#34;future-scheduled-behavior-changes&#34;&gt;Future Scheduled Behavior Changes&lt;a class=&#34;headerlink&#34; href=&#34;#future-scheduled-behavior-changes&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;TLS modules will default to using stronger, modern ciphers and will default to allow client preference in selecting ciphers. Allowing client preference in selecting ciphers is safe to do along with restrictions to use modern ciphers supporting PFS, and is better for mobile users without AES hardware acceleration. Legacy ciphers can still be configured in lighttpd.conf using &lt;code&gt;ssl.openssl.ssl-conf-cmd&lt;/code&gt;, as long as the ciphers are supported by the underlying TLS libraries. &lt;a href=&#34;https://wiki.lighttpd.net/Docs_SSL&#34;&gt;https://wiki.lighttpd.net/Docs_SSL&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;new defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;EECDH+AESGCM:AES256+EECDH:CHACHA20:!SHA1:!SHA256:!SHA384&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;-ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;old defaults:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&#34;CipherString&#34; =&amp;gt; &#34;HIGH&#34;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&#34;Options&#34; =&amp;gt; &#34;ServerPreference&#34;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated TLS options will be removed.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ssl.honor-cipher-order&lt;/li&gt;
&lt;li&gt;ssl.dh-file&lt;/li&gt;
&lt;li&gt;ssl.ec-curve&lt;/li&gt;
&lt;li&gt;ssl.disable-client-renegotiation&lt;/li&gt;
&lt;li&gt;ssl.use-sslv2&lt;/li&gt;
&lt;li&gt;ssl.use-sslv3&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See &lt;a href=&#34;https://wiki.lighttpd.net/Docs_SSL&#34;&gt;https://wiki.lighttpd.net/Docs_SSL&lt;/a&gt; for replacements with &lt;code&gt;ssl.openssl.ssl-conf-cmd&lt;/code&gt;, but prefer lighttpd defaults instead.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Continue gradual deprecation of &amp;ldquo;mini-application&amp;rdquo; lighttpd modules for which mod_magnet lua implementations are better and more flexible.&lt;br /&gt;
  Please post on lighttpd forums to share feedback if you use these modules.&lt;br /&gt;
  Forums: &lt;a href=&#34;https://redmine.lighttpd.net/projects/lighttpd/boards&#34;&gt;https://redmine.lighttpd.net/projects/lighttpd/boards&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_evasive will be removed.&lt;br /&gt;
  mod_evasive can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: &lt;a href=&#34;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_evasive&#34;&gt;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_evasive&lt;/a&gt;&lt;br /&gt;
&lt;a href=&#34;https://wiki.lighttpd.net/AbsoLUAtion#Fight-DDoS&#34;&gt;https://wiki.lighttpd.net/AbsoLUAtion#Fight-DDoS&lt;/a&gt; &lt;br /&gt;
&lt;a href=&#34;https://wiki.lighttpd.net/AbsoLUAtion#Mod_Security&#34;&gt;https://wiki.lighttpd.net/AbsoLUAtion#Mod_Security&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_secdownload will be removed.&lt;br /&gt;
  mod_secdownload can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: &lt;a href=&#34;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_secdownload&#34;&gt;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_secdownload&lt;/a&gt;&lt;br /&gt;
  mod_secdownload historically uses insecure MD5 though SHA1, SHA256 available&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_uploadprogress will be removed.&lt;br /&gt;
  mod_uploadprogress can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: &lt;a href=&#34;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_uploadprogress&#34;&gt;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_uploadprogress&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Deprecated: mod_usertrack will be removed.&lt;br /&gt;
  mod_usertrack can be replaced by mod_magnet and a few lines of lua:&lt;br /&gt;
  Replacement: &lt;a href=&#34;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_usertrack&#34;&gt;https://wiki.lighttpd.net/ModMagnetExamples#lua-mod_usertrack&lt;/a&gt;&lt;br /&gt;
  mod_usertrack historically uses insecure MD5.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;downloads&#34;&gt;Downloads&lt;a class=&#34;headerlink&#34; href=&#34;#downloads&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.tar.gz&#34;&gt;lighttpd-1.4.66.tar.gz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.tar.gz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;d919c3f9031e2580b94b311a3749eaa1e3b4a6a57b2d5c4cbcad40c0a73a7200&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.tar.xz&#34;&gt;lighttpd-1.4.66.tar.xz&lt;/a&gt; (&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.tar.xz.asc&#34;&gt;GPG signature&lt;/a&gt;)&lt;ul&gt;
&lt;li&gt;SHA256: &lt;code&gt;47ac6e60271aa0196e65472d02d019556dc7c6d09df3b65df2c1ab6866348e3b&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.sha256sum&#34;&gt;SHA256 checksums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.sha512sum&#34;&gt;SHA512 checksums&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- more --&gt;

&lt;h2 id=&#34;changes-from-1465&#34;&gt;Changes from 1.4.65&lt;a class=&#34;headerlink&#34; href=&#34;#changes-from-1465&#34; title=&#34;Permanent link&#34;&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;[core] h2: optim: send window update in 16k units&lt;/li&gt;
&lt;li&gt;[mod_magnet] reset for http-response-send-file&lt;/li&gt;
&lt;li&gt;[multiple] fix json encoding&lt;/li&gt;
&lt;li&gt;[core] buffer_append_bs_escaped_json()&lt;/li&gt;
&lt;li&gt;[autoconf] update ax_prog_cc_for_build.m4&lt;/li&gt;
&lt;li&gt;[doc] add libdeflate to INSTALL&lt;/li&gt;
&lt;li&gt;[mod_webdav] cold func if xml reqbody w/o db conf&lt;/li&gt;
&lt;li&gt;[mod_webdav] check reqbody Content-Type is XML&lt;/li&gt;
&lt;li&gt;[doc] more consistent use of vars in examples&lt;/li&gt;
&lt;li&gt;[core] do not load indexfile, dirlisting if unused&lt;/li&gt;
&lt;li&gt;[mod_dirlisting] send ETag, Cache-Control w/ cache&lt;/li&gt;
&lt;li&gt;[mod_openssl] compile compat w/ openssl \&amp;lt; 1.1.0&lt;/li&gt;
&lt;li&gt;[mod_webdav] webdav_reqbody_type_xml() fixes&lt;/li&gt;
&lt;li&gt;[core] clarify server.username = &amp;ldquo;root&amp;rdquo; error msg&lt;/li&gt;
&lt;li&gt;[mod_wolfssl] compat with older wolfssl versions&lt;/li&gt;
&lt;li&gt;[core] fix li_base64_dec() on whitespace&lt;/li&gt;
&lt;li&gt;[core] perf tweak buffer_eq_icase_ssn()&lt;/li&gt;
&lt;li&gt;[mod_deflate] fix use of libdeflate for files&amp;gt;128k (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3161&#34;&gt;#3161&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] fix buffer_substr_replace() extend (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3160&#34;&gt;#3160&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_webdav] build with Android NDK&lt;/li&gt;
&lt;li&gt;[core] check r-&amp;gt;http_status before handling Range&lt;/li&gt;
&lt;li&gt;[core] preprocessor option to force crypto lib&lt;/li&gt;
&lt;li&gt;[core] fix SIGUSR1 graceful restart w/ TLS (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3164&#34;&gt;#3164&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_authn_gssapi] warn if no confidentiality flag (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3163&#34;&gt;#3163&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[mod_wstunnel] fix crash with bad hybivers (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3165&#34;&gt;#3165&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;[core] perf: adjust max h2 stream send increment&lt;/li&gt;
&lt;li&gt;[core] fix HTTP/2 downloads &amp;gt;= 4GiB (fixes &lt;a href=&#34;https://redmine.lighttpd.net/issues/3166&#34;&gt;#3166&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;</description>
      <link>https://www.lighttpd.net/2022/08/07/1.4.66/</link>
      <pubDate>Sun, 07 Aug 2022 00:00:00 +0000</pubDate>
      <source url="https://www.lighttpd.net/feed.xml">lighty news</source>
      
      <guid isPermaLink="true">https://www.lighttpd.net/2022/08/07/1.4.66/</guid>
      
    </item>
    
  </channel>
</rss>