Discover Centmin Mod today
Register Now

Stable Branch fix ngx_devel_kit set-misc worker segfault on nginx 1.31.3 in 132.00s…

Discussion in 'Centmin Mod Github Commits' started by eva2000, Aug 16, 2026.

  1. eva2000

    eva2000 Administrator Staff Member

    60,147
    12,591
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +19,249
    Local Time:
    2:53 PM
    Nginx 1.31.x
    MariaDB 10.x/11.4+/12.3+
    fix ngx_devel_kit set-misc worker segfault on nginx 1.31.3 in 132.00stable

    Nginx 1.31.3 and 1.30.4 CVE-2026-42533 security fixes split
    ngx_http_script_complex_value_code() and moved the script engine value
    stack push into a new ngx_http_script_complex_value_end_code() opcode
    (nginx commit a8289aa69c74). ngx_devel_kit's ndk_http_rewrite_value()
    is a fork of nginx's ngx_http_rewrite_value() that never emits the new
    opcode, so any NDK based set_* directive with a variable argument -
    including set-misc set_escape_uri/set_unescape_uri used by the Centmin
    Mod Nginx Redis full page cache php-rediscache.conf - reads an
    unwritten value stack slot and segfaults nginx workers on the first
    request (worker process exited on signal 11, dmesg segfault in
    ngx_http_set_misc_module.so). No released ngx_devel_kit version
    (latest v0.3.4) contains the fix, so vendor the upstream fix as a
    build-time patch.

    Changes:
    - add patches/ngx-devel-kit/ndk-nginx-complex-value-end.patch that
    emits the terminating
    ngx_http_script_complex_value_end_code opcode in
    ndk_http_rewrite_value() guarded by an nginx version check that
    excludes freenginx
    - add ngx_develkit_patch() to inc/nginx_patch.inc wired into
    patchnginx() after ngx_srcache_patch - always re-extracts pristine
    ngx_devel_kit sources then applies the patch only when a feature
    probe finds ngx_http_script_complex_value_end_code in the nginx
    source tree being built and not already in ndk_rewrite.c, so it
    self-enables on nginx 1.31.3+/1.30.4+, self-disables on older
    nginx/freenginx and skips future fixed ngx_devel_kit releases

    Continue reading...


    132.00stable branch