View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0011418 | libmicrohttpd | HTTP GET/HEAD | public | 2026-05-20 11:05 | 2026-05-20 13:01 |
| Reporter | veloman-yunkan | Assigned To | Christian Grothoff | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | no change required | ||
| Product Version | Git master | ||||
| Target Version | 1.0.3 | Fixed in Version | 1.0.3 | ||
| Summary | 0011418: Handling of URLs containing % symbols has changed | ||||
| Description | The commit https://git.gnunet.org/gnunet/libmicrohttpd/commit/ec6e6d288876606af964747f97379aa9371c4206.html has affected the handling of URLs containing a % symbol not followed by two valid hex digits (e.g. "http://localhost:8080/qwe%rty"). Before that change such URLs were accepted and the % symbol was preserved as is. Now such URLs are rejected with an HTTP 400 Bad Request error. The description of the said commit doesn't suggest that this change in behaviour was intentional, and that's why I am bringing it to your attention. | ||||
| Steps To Reproduce | 1. Build examples 2. ./src/examples/demo 8080 3. curl -D - http://localhost:8080/qwe%rty - Before the change in question, HTTP 404 Not Found response is returned - After the change in question, HTTP 400 Bad Reqest response is returned | ||||
| Tags | No tags attached. | ||||
|
|
You are right that it could have been pointed out better, but the change was intentional, as 'plain' % in the URL is invalid and the change was about hardening MHD URL parsing to be more restrictive with respect to malformed requests. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-05-20 11:05 | veloman-yunkan | New Issue | |
| 2026-05-20 13:01 | Christian Grothoff | Note Added: 0028671 | |
| 2026-05-20 13:01 | Christian Grothoff | Assigned To | => Christian Grothoff |
| 2026-05-20 13:01 | Christian Grothoff | Status | new => resolved |
| 2026-05-20 13:01 | Christian Grothoff | Resolution | open => no change required |
| 2026-05-20 13:01 | Christian Grothoff | Fixed in Version | => 1.0.3 |
| 2026-05-20 13:01 | Christian Grothoff | Product Version | => Git master |
| 2026-05-20 13:01 | Christian Grothoff | Target Version | => 1.0.3 |
| 2026-05-20 13:01 | Christian Grothoff | Status | resolved => closed |