Skip to content

Fix double free() corruption due to config#15

Open
DL6ER wants to merge 1 commit intomasterfrom
fix/rev-server-cidr
Open

Fix double free() corruption due to config#15
DL6ER wants to merge 1 commit intomasterfrom
fix/rev-server-cidr

Conversation

@DL6ER
Copy link
Copy Markdown
Member

@DL6ER DL6ER commented Jun 17, 2024

Hey Simon,

the attached patch fixes a double free() corruption leading to a crash
during startup of dnsmasq. The crash can be reproduced by using a
rev-server addresses with a prefix length != {8,16,24,32}, e.g.

rev-server=192.168.0.0/25,home.mydomain.com

The crash is caused by freeing too early (within the loop). The crash
does not happen for prefix lengths {8,16,24,32} as the loop runs only
once. However, for other prefixes, the loop runs more often (e.g. 128x
for /25 networks as above).

Best,
Dominik

Tracked here: https://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2024q2/017606.html

…ver addresses with prefix lengths != {8,16,24,32}

Signed-off-by: DL6ER <dl6er@dl6er.de>
@DL6ER DL6ER mentioned this pull request Jul 15, 2024
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant