diff options
author | Thomas Markwalder <tmark@isc.org> | 2019-07-12 15:02:24 -0400 |
---|---|---|
committer | Thomas Markwalder <tmark@isc.org> | 2019-07-12 15:02:24 -0400 |
commit | d73dd575a2353960568aed80d51e1e299137c982 (patch) | |
tree | 0f890edb37e20426fd481d21da5f5989acf13010 | |
parent | ea37c51408cf04adaf19204d66700bfd4d1f95f8 (diff) | |
download | isc-dhcp-d73dd575a2353960568aed80d51e1e299137c982.tar.gz |
[master] Fixed minor Coverity issues
Merges in #30,!16
-rw-r--r-- | RELNOTES | 4 | ||||
-rw-r--r-- | server/confpars.c | 12 |
2 files changed, 16 insertions, 0 deletions
@@ -139,6 +139,10 @@ by Eric Young (eay@cryptsoft.com). Thanks to Brett Neumeier for bringing the matter to our attention. [ISC-Bugs #15,!10 git c138f38bd00ceca4e1e51a4db7542a15ef79babd] +- Fixed potential memory leaks in parser error message generation + spotted by Coverity, CIDs: 1448191, 1448193, 1448194, 1448195 + [Gitlab #30,!16 git TBD] + Changes since 4.4.0 (New Features) - none Changes since 4.4.0 (Bug Fixes) diff --git a/server/confpars.c b/server/confpars.c index 7ad28d55..99fb9a6d 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -3578,6 +3578,11 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) if (token != EQUAL) { parse_warn (cfile, "expecting '=' in set statement."); + binding_value_dereference(&nv, MDL); + if (newbinding) { + dfree(binding->name, MDL); + dfree(binding, MDL); + } goto badset; } } @@ -3585,6 +3590,10 @@ int parse_lease_declaration (struct lease **lp, struct parse *cfile) if (!parse_binding_value(cfile, nv)) { binding_value_dereference(&nv, MDL); lease_dereference(&lease, MDL); + if (newbinding) { + dfree(binding->name, MDL); + dfree(binding, MDL); + } return 0; } @@ -4762,6 +4771,7 @@ parse_ia_na_declaration(struct parse *cfile) { if (token != LBRACE) { parse_warn(cfile, "corrupt lease file; expecting left brace"); skip_to_semi(cfile); + ia_dereference(&ia, MDL); return; } @@ -5209,6 +5219,7 @@ parse_ia_ta_declaration(struct parse *cfile) { if (token != LBRACE) { parse_warn(cfile, "corrupt lease file; expecting left brace"); skip_to_semi(cfile); + ia_dereference(&ia, MDL); return; } @@ -5646,6 +5657,7 @@ parse_ia_pd_declaration(struct parse *cfile) { if (token != LBRACE) { parse_warn(cfile, "corrupt lease file; expecting left brace"); skip_to_semi(cfile); + ia_dereference(&ia, MDL); return; } |