view src/misc/ngx_cpp_test_module.cpp @ 7561:9f1f9d6e056a

HTTP/2: discard remaining request body after redirect. Previously, if unbuffered request body reading wasn't finished before the request was redirected to a different location using error_page or X-Accel-Redirect, and the request body is read again, this could lead to disastrous effects, such as a duplicate post_handler call or "http request count is zero" alert followed by a segmentation fault. This happened in the following configuration (ticket #1819): location / { proxy_request_buffering off; proxy_pass http://bad; proxy_intercept_errors on; error_page 502 = /error; } location /error { proxy_pass http://backend; }
author Sergey Kandaurov <pluknet@nginx.com>
date Mon, 19 Aug 2019 15:16:06 +0300
parents 1d693deab8ae
children f1e6f65ddfeb
line wrap: on
line source


// stub module to test header files' C++ compatibility

extern "C" {
  #include <ngx_config.h>
  #include <ngx_core.h>
  #include <ngx_event.h>
  #include <ngx_event_connect.h>
  #include <ngx_event_pipe.h>

  #include <ngx_http.h>

  #include <ngx_mail.h>
  #include <ngx_mail_pop3_module.h>
  #include <ngx_mail_imap_module.h>
  #include <ngx_mail_smtp_module.h>
}

// nginx header files should go before other, because they define 64-bit off_t
// #include <string>


void ngx_cpp_test_handler(void *data);

void
ngx_cpp_test_handler(void *data)
{
    return;
}