mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Make the assert related to 15083 a tiny bit more tolerant
This commit is contained in:
parent
71ee53fe9b
commit
81a994ce77
@ -3,4 +3,8 @@
|
||||
failure if a buffer of exactly the wrong layout was passed
|
||||
to buf_pullup() at exactly the wrong time. Fixes bug 15083;
|
||||
bugfix on 0.2.0.10-alpha. Patch from 'cypherpunks'.
|
||||
|
||||
|
||||
- Do not assert if the 'data' pointer on a buffer is advanced to the very
|
||||
end of the buffer; log a BUG message instead. Only assert if it is
|
||||
past that point. Fixes bug 15083; bugfix on 0.2.0.10-alpha.
|
||||
|
||||
|
@ -2483,7 +2483,14 @@ assert_buf_ok(buf_t *buf)
|
||||
total += ch->datalen;
|
||||
tor_assert(ch->datalen <= ch->memlen);
|
||||
tor_assert(ch->data >= &ch->mem[0]);
|
||||
tor_assert(ch->data < &ch->mem[0]+ch->memlen);
|
||||
tor_assert(ch->data <= &ch->mem[0]+ch->memlen);
|
||||
if (ch->data == &ch->mem[0]+ch->memlen) {
|
||||
static int warned = 0;
|
||||
if (! warned) {
|
||||
log_warn(LD_BUG, "Invariant violation in buf.c related to #15083");
|
||||
warned = 1;
|
||||
}
|
||||
}
|
||||
tor_assert(ch->data+ch->datalen <= &ch->mem[0] + ch->memlen);
|
||||
if (!ch->next)
|
||||
tor_assert(ch == buf->tail);
|
||||
|
Loading…
Reference in New Issue
Block a user