On Fri, Mar 01, 2024 at 04:43:20PM -0500, Brian Haley wrote: > When a new IPv6 address is being added to a dhcp_config > struct, if there is anything invalid regarding the prefix > it looks like there is a potential memory leak. > ret_err_free() should be used to free it. > > Signed-off-by: Brian Haley <haleyb....@gmail.com> > --- > src/option.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/src/option.c b/src/option.c > index f4ff7c0..02be995 100644 > --- a/src/option.c > +++ b/src/option.c > @@ -4034,7 +4034,7 @@ static int one_opt(int option, char *arg, char *errstr, > char *gen_err, int comma > ((((u64)1<<(128-new_addr->prefixlen))-1) & > addrpart) != 0) > { > dhcp_config_free(new); > - ret_err(_("bad IPv6 prefix")); > + ret_err_free(_("bad IPv6 prefix"), new_addr); > } > > new_addr->flags |= ADDRLIST_PREFIX;
Looks good to me > Also, the new addrlist struct is being linked into > the existing addr6 list in the dhcp_config before the > validity check, it is best to defer this insertion > until later so an invalid entry is not present, since > the CONFIG_ADDR6 flag might not have been set yet. That is worth its own commit. Groeten Geert Stappers -- Silence is hard to parse _______________________________________________ Dnsmasq-discuss mailing list Dnsmasq-discuss@lists.thekelleys.org.uk https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss