Print

Print


The allocated target buffer for base64 output is sometimes too short, leading to an overrun. (And I suspect it's causing memory corruption with eventual misbehavior and segfaults.)

A hex string may be the same length as the base64 representation. To allow for a terminating null on the base64 string, we need to allocate an additional byte.
```
string abcd
   hex 61626364
base64 YWJjZA==
```
You can view, comment on, or merge this pull request online at:

  https://github.com/xrootd/xrootd/pull/1012

-- Commit Summary --

  * [XrdHttp] Fix one-byte overrun in Tobase64()

-- File Changes --

    M src/XrdHttp/XrdHttpReq.cc (2)

-- Patch Links --

https://github.com/xrootd/xrootd/pull/1012.patch
https://github.com/xrootd/xrootd/pull/1012.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/pull/1012

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1