[GH-ISSUE #501] Proxyman alters the header case #500

Open
opened 2026-03-03 19:50:59 +03:00 by kerem · 3 comments
Owner

Originally created by @kotori2 on GitHub (Apr 28, 2025).
Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/501

Originally assigned to: @kics223w1 on GitHub.

Description

Proxyman will change all header to lower case, even if HTTP/1.1 is used

Steps to Reproduce

  1. Visit any website that supports only HTTP/1.1, with proxyman configured

  2. Check for the raw response tab

Current Behavior

All headers are in lower case. However if you are accessing the same URL with cURL and without proxy, you will see the response is actually in Camel Case.

Image

It causes some applications (in my case, Dell RACADM) that search for case-sensitive headers to fail.

Some logs from that app if you are curious:

12037140 DEBUG: sslsocket.c [587]: Calling HttpSendRequest
12037500 DEBUG: sslsocket.c [597]: HttpSendRequest return code = 1
12037546 DEBUG: xmlhttp.c [2263]: Reading response...
12037546 DEBUG: xmlhttp.c [1766]: Reading HTTP headers...
12037546 DEBUG: xmlhttp.c [1776]: HTTP Response Headers:
HTTP/1.1 200 OK
strict-transport-security: max-age=63072000
vary: Accept-Encoding
keep-alive: timeout=60, max=199
x-frame-options: SAMEORIGIN
content-type: text/xml
date: Mon, 28 Apr 2025 11:39:21 GMT
etag: 1711716376
connection: close
accept-ranges: bytes
transfer-encoding: chunked


12037546 DEBUG: xmlhttp.c [1821]: Searching for Content-Length field...
12037562 DEBUG: xmlhttp.c [1828]: Searching for Content-length field because Content-Length was not found

Expected Behavior

Proxyman should not alter the response for HTTP/1.1. I know you have to reassemble that for HTTP/2, but please leave HTTP/1.1 alone.

Environment

  • App version: 2.23.0
  • Windows/Linux version: 26100.3624
Originally created by @kotori2 on GitHub (Apr 28, 2025). Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/501 Originally assigned to: @kics223w1 on GitHub. ## Description Proxyman will change all header to lower case, even if HTTP/1.1 is used ## Steps to Reproduce <!-- Add relevant code and/or a live example --> 1. Visit any website that supports only HTTP/1.1, with proxyman configured 2. Check for the raw response tab ## Current Behavior <!--- What went wrong? --> All headers are in lower case. However if you are accessing the same URL with cURL and without proxy, you will see the response is actually in Camel Case. ![Image](https://github.com/user-attachments/assets/b605ba57-c220-40ec-a194-87051457927d) It causes some applications (in my case, Dell RACADM) that search for case-sensitive headers to fail. Some logs from that app if you are curious: ``` 12037140 DEBUG: sslsocket.c [587]: Calling HttpSendRequest 12037500 DEBUG: sslsocket.c [597]: HttpSendRequest return code = 1 12037546 DEBUG: xmlhttp.c [2263]: Reading response... 12037546 DEBUG: xmlhttp.c [1766]: Reading HTTP headers... 12037546 DEBUG: xmlhttp.c [1776]: HTTP Response Headers: HTTP/1.1 200 OK strict-transport-security: max-age=63072000 vary: Accept-Encoding keep-alive: timeout=60, max=199 x-frame-options: SAMEORIGIN content-type: text/xml date: Mon, 28 Apr 2025 11:39:21 GMT etag: 1711716376 connection: close accept-ranges: bytes transfer-encoding: chunked 12037546 DEBUG: xmlhttp.c [1821]: Searching for Content-Length field... 12037562 DEBUG: xmlhttp.c [1828]: Searching for Content-length field because Content-Length was not found ``` ## Expected Behavior <!--- What should have happened? --> Proxyman should not alter the response for HTTP/1.1. I know you have to reassemble that for HTTP/2, but please leave HTTP/1.1 alone. ## Environment - App version: 2.23.0 - Windows/Linux version: 26100.3624
Author
Owner

@kics223w1 commented on GitHub (Apr 28, 2025):

Hi @kotori2,

We are aware of this behavior, but we haven't made any updates related to it yet.
Let me discuss it with @NghiaTranUIT, and we will keep you updated.

Thank you!

<!-- gh-comment-id:2833916584 --> @kics223w1 commented on GitHub (Apr 28, 2025): Hi @kotori2, We are aware of this behavior, but we haven't made any updates related to it yet. Let me discuss it with @NghiaTranUIT, and we will keep you updated. Thank you!
Author
Owner

@kotori2 commented on GitHub (Apr 28, 2025):

Thanks @kics223w1 !

<!-- gh-comment-id:2833917185 --> @kotori2 commented on GitHub (Apr 28, 2025): Thanks @kics223w1 !
Author
Owner

@NghiaTranUIT commented on GitHub (May 5, 2025):

@kotori2 it's a bug, and we're working on the fix 👍

<!-- gh-comment-id:2849763688 --> @NghiaTranUIT commented on GitHub (May 5, 2025): @kotori2 it's a bug, and we're working on the fix 👍
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/proxyman-windows-linux#500
No description provided.