mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-08 04:08:32 +00:00
Fix some glitches in redbean
This change includes a fix to Fetch() where an out of bounds memory read could happen, when the reverse proxied endpoint omits the content-length header. This caused a bunch of NUL chars to appear on TurfWar's /statusz since it wouldn't actually overrun the buffer, and if it did it would've been caught by MODE=asan builds.
This commit is contained in:
parent
14d036b68d
commit
6b06a8176d
6 changed files with 7 additions and 7 deletions
|
@ -69,7 +69,7 @@ static const struct thatispacked {
|
|||
{CAP_CHECKPOINT_RESTORE, "CHECKPOINT_RESTORE"}, //
|
||||
};
|
||||
|
||||
const char *(DescribeCapability)(char buf[20], int x) {
|
||||
const char *(DescribeCapability)(char buf[32], int x) {
|
||||
int i;
|
||||
for (i = 0; i < ARRAYLEN(kCapabilityName); ++i) {
|
||||
if (kCapabilityName[i].x == x) {
|
||||
|
|
|
@ -13,7 +13,7 @@ const char *DescribeFlags(char *, size_t, struct DescribeFlags *, size_t,
|
|||
const char *, unsigned);
|
||||
|
||||
const char *DescribeArchPrctlCode(char[12], int);
|
||||
const char *DescribeCapability(char[20], int);
|
||||
const char *DescribeCapability(char[32], int);
|
||||
const char *DescribeClockName(char[32], int);
|
||||
const char *DescribeDirfd(char[12], int);
|
||||
const char *DescribeDnotifyFlags(char[80], int);
|
||||
|
@ -67,7 +67,7 @@ const char *DescribeWhence(char[12], int);
|
|||
const char *DescribeWhichPrio(char[12], int);
|
||||
|
||||
#define DescribeArchPrctlCode(x) DescribeArchPrctlCode(alloca(12), x)
|
||||
#define DescribeCapability(x) DescribeCapability(alloca(20), x)
|
||||
#define DescribeCapability(x) DescribeCapability(alloca(32), x)
|
||||
#define DescribeClockName(x) DescribeClockName(alloca(32), x)
|
||||
#define DescribeDirfd(x) DescribeDirfd(alloca(12), x)
|
||||
#define DescribeDnotifyFlags(x) DescribeDnotifyFlags(alloca(80), x)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue