#
1.5 |
|
14-Apr-2024 |
otto |
t22 and t23 can fail if the first chunk ends up being allocated at the very end of the page. Circumvent that. Reported by and fix ok anton@
|
Revision tags: OPENBSD_7_5_BASE
|
#
1.4 |
|
22-Oct-2023 |
otto |
A few more tests
|
Revision tags: OPENBSD_7_4_BASE
|
#
1.3 |
|
04-Jun-2023 |
otto |
More thorough write-afetr-free checks.
On free, chunks (the pieces of a pages used for smaller allocations) are junked and then validated after they leave the delayed free list. So after free, a chunk always contains junk bytes. This means that if we start with the right contents for a new page of chunks, we can *validate* instead of *write* junk bytes when (re)-using a chunk.
With this, we can detect write-after-free when a chunk is recycled, not justy when a chunk is in the delayed free list. We do a little bit more work on initial allocation of a page of chunks and when re-using (as we validate now even on junk level 1).
Also: some extra consistency checks for recallocaray(3) and fixes in error messages to make them more consistent, with man page bits.
Plus regress additions.
|
#
1.2 |
|
09-May-2023 |
otto |
Make malloc tests that set flags more robust against the user also having flags set.
|
#
1.1 |
|
08-May-2023 |
otto |
Add a regress test to test various malloc API and heap mismanagement errors which should cause abort. A few are not enabled yet, they will be once the corresponding diffs in malloc are committed.
|
#
1.4 |
|
22-Oct-2023 |
otto |
A few more tests
|
Revision tags: OPENBSD_7_4_BASE
|
#
1.3 |
|
04-Jun-2023 |
otto |
More thorough write-afetr-free checks.
On free, chunks (the pieces of a pages used for smaller allocations) are junked and then validated after they leave the delayed free list. So after free, a chunk always contains junk bytes. This means that if we start with the right contents for a new page of chunks, we can *validate* instead of *write* junk bytes when (re)-using a chunk.
With this, we can detect write-after-free when a chunk is recycled, not justy when a chunk is in the delayed free list. We do a little bit more work on initial allocation of a page of chunks and when re-using (as we validate now even on junk level 1).
Also: some extra consistency checks for recallocaray(3) and fixes in error messages to make them more consistent, with man page bits.
Plus regress additions.
|
#
1.2 |
|
09-May-2023 |
otto |
Make malloc tests that set flags more robust against the user also having flags set.
|
#
1.1 |
|
08-May-2023 |
otto |
Add a regress test to test various malloc API and heap mismanagement errors which should cause abort. A few are not enabled yet, they will be once the corresponding diffs in malloc are committed.
|
#
1.3 |
|
04-Jun-2023 |
otto |
More thorough write-afetr-free checks.
On free, chunks (the pieces of a pages used for smaller allocations) are junked and then validated after they leave the delayed free list. So after free, a chunk always contains junk bytes. This means that if we start with the right contents for a new page of chunks, we can *validate* instead of *write* junk bytes when (re)-using a chunk.
With this, we can detect write-after-free when a chunk is recycled, not justy when a chunk is in the delayed free list. We do a little bit more work on initial allocation of a page of chunks and when re-using (as we validate now even on junk level 1).
Also: some extra consistency checks for recallocaray(3) and fixes in error messages to make them more consistent, with man page bits.
Plus regress additions.
|
#
1.2 |
|
09-May-2023 |
otto |
Make malloc tests that set flags more robust against the user also having flags set.
|
#
1.1 |
|
08-May-2023 |
otto |
Add a regress test to test various malloc API and heap mismanagement errors which should cause abort. A few are not enabled yet, they will be once the corresponding diffs in malloc are committed.
|