bneradt opened a new pull request, #12519: URL: https://github.com/apache/trafficserver/pull/12519
The pqus scheme marshaling logic used "strlen" which accidentally picked up LogAccess::strlen rather than the intended std strlen. This resulted in padded-counting rather than actual strlen counting, which threw off our buffer counting logic and led to corruption and/or crashing. The updated ip_allow.test.py reproduced a crash without the LogAccess.cc patch included in this commit. With the LogAccess patch, the test now reproduces the expected scheme. Function renames for clarity: * LogAccess::round_strlen is not a strlen at all. Rather it converts a given length to a padded length for alignment. * LogAccess::strlen returns the padded version of strlen. To make this explicit (and avoid potential accitantal clashes with ::strlen), I renamed this to padded_strlen. This also adds doxygen comments to explain these functions further. (cherry picked from commit 83adab4eaf1aa1c1504fb6ba5a22df413134cd26) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
