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]

Reply via email to