[PR #140] perf(CAPTCHA): verify CAPTCHA responses using subrequests instead of libcurl #249

Open
opened 2026-03-13 17:08:49 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/ADD-SP/ngx_waf/pull/140
Author: @ADD-SP
Created: 3/24/2024
Status: 🔄 Open

Base: current-devHead: add_sp/refactor-replace-libcurl-with-subreq


📝 Commits (2)

  • 4641341 refactor(modsecurity): remove thread_pool supports for modsecurity
  • db3af98 saving current progress

📊 Changes

12 files changed (+150 additions, -1044 deletions)

View changed files

include/ngx_http_waf_module_action.h (+0 -226)
📝 include/ngx_http_waf_module_captcha.h (+0 -1)
📝 include/ngx_http_waf_module_check.h (+12 -12)
📝 include/ngx_http_waf_module_config.h (+0 -4)
📝 include/ngx_http_waf_module_core.h (+0 -6)
📝 include/ngx_http_waf_module_macro.h (+6 -2)
📝 include/ngx_http_waf_module_type.h (+43 -90)
src/ngx_http_waf_module_action.c (+0 -430)
📝 src/ngx_http_waf_module_config.c (+1 -19)
📝 src/ngx_http_waf_module_core.c (+87 -139)
📝 src/ngx_http_waf_module_modsecurity.c (+0 -73)
📝 src/ngx_http_waf_module_util.c (+1 -42)

📄 Description

Summary

This module needs to send HTTP requests to the CAPTCHA server to verify if the CAPTCHA passes. Currently, this was done by the libcurl, but this blocks the event loop of the Nginx, so replacing it with subrequests is more efficient.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/ADD-SP/ngx_waf/pull/140 **Author:** [@ADD-SP](https://github.com/ADD-SP) **Created:** 3/24/2024 **Status:** 🔄 Open **Base:** `current-dev` ← **Head:** `add_sp/refactor-replace-libcurl-with-subreq` --- ### 📝 Commits (2) - [`4641341`](https://github.com/ADD-SP/ngx_waf/commit/464134194b759042f4c85d230b7c297009260913) refactor(modsecurity): remove thread_pool supports for modsecurity - [`db3af98`](https://github.com/ADD-SP/ngx_waf/commit/db3af9885ac19ba88755aecc24b94a1c31a4b0d1) saving current progress ### 📊 Changes **12 files changed** (+150 additions, -1044 deletions) <details> <summary>View changed files</summary> ➖ `include/ngx_http_waf_module_action.h` (+0 -226) 📝 `include/ngx_http_waf_module_captcha.h` (+0 -1) 📝 `include/ngx_http_waf_module_check.h` (+12 -12) 📝 `include/ngx_http_waf_module_config.h` (+0 -4) 📝 `include/ngx_http_waf_module_core.h` (+0 -6) 📝 `include/ngx_http_waf_module_macro.h` (+6 -2) 📝 `include/ngx_http_waf_module_type.h` (+43 -90) ➖ `src/ngx_http_waf_module_action.c` (+0 -430) 📝 `src/ngx_http_waf_module_config.c` (+1 -19) 📝 `src/ngx_http_waf_module_core.c` (+87 -139) 📝 `src/ngx_http_waf_module_modsecurity.c` (+0 -73) 📝 `src/ngx_http_waf_module_util.c` (+1 -42) </details> ### 📄 Description ## Summary This module needs to send HTTP requests to the CAPTCHA server to verify if the CAPTCHA passes. Currently, this was done by the `libcurl`, but this blocks the event loop of the Nginx, so replacing it with subrequests is more efficient. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ngx_waf#249
No description provided.