kang li created TS-3018:
---------------------------
Summary: Client Request's default port can't be changed after
scheme was changed
Key: TS-3018
URL: https://issues.apache.org/jira/browse/TS-3018
Project: Traffic Server
Issue Type: Bug
Components: HTTP
Reporter: kang li
If I received a client request with scheme http and there are no port set in
Host header or absolute URI in http request. Then I change the scheme to https.
But when in url remap, it still get the port as 80 which indicated by the
previous scheme.
{code}
1475 } else if (0 != (m_host_mime =
const_cast<HTTPHdr*>(this)->get_host_port_values(0, &m_host_length, &port_ptr,
0))) {
1476 if (port_ptr) {
1477 m_port = 0;
1478 for ( ; is_digit(*port_ptr) ; ++port_ptr )
1479 m_port = m_port * 10 + *port_ptr - '0';
1480 m_port_in_header = (0 != m_port);
1481 }
1482 m_port = url_canonicalize_port(url->m_url_impl->m_url_type, m_port);
{code}
That seems the m_port was not reset to 0 when it second time try to get the
port by url type (which was reset in UrlSchemeSet). So it always get the port
in the initial time.
--
This message was sent by Atlassian JIRA
(v6.2#6252)