Yes, %>ru is consistent for small and large URLs.

FYI: this problem existed in the past for %>ru, but was fixed at master
r11274. I have a feeling that the way how setLogUri() fixes malformed
requests was not the best choice (in fact, there is a code duplication
between setLogUri() and urlParse(), and, moreover, I suspect that
encoding methods like rfc1738_escape_unescaped() may be applied
several times with destructive consequences).

However, probably in this small step we could leave those problems
aside and just unify %>ru and %ru 'cleanup' procedure, as suggested.
I see a simple fix: in One::Server::buildHttpRequest() initialize
our new ALE::virginUrlForMissingRequest with http->log_uri just
after setLogUri() (i.e., when the URL was clean-upped already).


Eduard.


On 08.06.2018 11:46, Amos Jeffries wrote:
On 08/06/18 11:18, Alex Rousskov wrote:
On 06/07/2018 04:13 PM, Eduard Bagdasaryan wrote:

in %>ru Squid logs large and small URLs differently.  For example,
Squid strips whitespaces from small URLs, while keeping them for
large ones.
Is %ru logging consistent with regard to small and large URLs?

* If it is, should we use the same approach to make %>ru consistent?

For a quick fix yes.

Longer term; all Squid code using char* buffers and MAX_URL for URL
storage is obsolete and needs fixing to use class URL (or an SBuf) instead.

Amos
_______________________________________________
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev

_______________________________________________
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev

Reply via email to