lws fails to queue connection when mixing IP and Hostname#3338
lws fails to queue connection when mixing IP and Hostname#3338yassineBT wants to merge 1 commit intowarmcat:mainfrom
Conversation
|
Thanks... I don't really want to change the behaviour for the normal case that the address is a DNS name, as this patch seems to do. For the vast majority of people, they are using TLS and it is based on confirming that the cert that is served and signed by the CA, matches the DNS name. I understand the behaviour at the moment when using pipelining with an IP address is wrong, but it sounds like the patch should work around that for the explicit IP case only, and leave the normal case as it is. |
|
Thank you, Sir, for the library and your support. I might be mistaken or perhaps I misunderstood your comment—please bear with me if I’m lacking knowledge here—but I don’t quite see how it changes the behavior. I’d be interested to know if this patch could have any impact. The patch's goal is simply to compare two elements of the same type. When I mixed IP and hostname in my application, I noticed that a new session was triggered each time I attempted to connect. This was because I combined IP and hostname for the following reasons:
|
3742e46 to
028931a
Compare
a800d4a to
7f2f518
Compare
baf4897 to
0c7fa23
Compare
2b74af4 to
5f77374
Compare
a677221 to
0c67054
Compare
f5fa440 to
278c671
Compare
580b993 to
c837e3f
Compare
260929d to
f06bf53
Compare
fb3f410 to
d8c745e
Compare
LWS fails to queue connection when mixing IP and Hostname, the issue occurs due to how
lws_client_connect_infofields (address,origin, andhost) are configured. Specifically, when the fields are set as follows:Example:
address = 81.71.211.11
origin = ybt.test.com
host = ybt.test.com
Using an IP address instead of a hostname prevents LWS from performing DNS resolution, as the resolution is handled externally. However, with this configuration, LWS incorrectly compares 81.71.211.11 with ybt.test.com for the second session, treating it as a new session instead of an existing one.
Fix:
Ensure consistent comparison by matching IP to IP or host to host. This fix updates the logic to compare IP addresses directly, preventing LWS from incorrectly creating a new session instead of properly queuing it.