forked from osmocom/wireshark
HTTP: really choose the correct server port for tunnels
The very first message after a 200 OK response to a CONNECT request likely originates from the client. So assume that this destination is actually the server. This reduces the probability of address and port collisions. Previously the proxy port (e.g. 3128) and server port (443) identified each conversation, now it will use the client and server port instead. Bug: 15043 Change-Id: Ib73f370334873efd773ac6b49e2db57146bc20b0 Fixes: v2.9.0rc0-1420-g2f126db3fe ("HTTP: set correct server port for tunnels") Reviewed-on: https://code.wireshark.org/review/29110 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
4802e3300d
commit
1d4bb22a22
|
@ -3509,8 +3509,8 @@ dissect_http_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data
|
|||
conv_data->request_uri) {
|
||||
if (conv_data->startframe == 0 && !PINFO_FD_VISITED(pinfo)) {
|
||||
conv_data->startframe = pinfo->num;
|
||||
copy_address_wmem(wmem_file_scope(), &conv_data->server_addr, &pinfo->src);
|
||||
conv_data->server_port = pinfo->srcport;
|
||||
copy_address_wmem(wmem_file_scope(), &conv_data->server_addr, &pinfo->dst);
|
||||
conv_data->server_port = pinfo->destport;
|
||||
}
|
||||
http_payload_subdissector(tvb, tree, pinfo, conv_data, data);
|
||||
|
||||
|
|
Loading…
Reference in New Issue