diff options
author | Brandon Bergren <git@bdragon.rtk0.net> | 2018-06-10 13:21:58 -0500 |
---|---|---|
committer | Samuel Mendoza-Jonas <sam@mendozajonas.com> | 2018-06-12 10:56:35 +1000 |
commit | 917f7aa880a7c6ab08991ae0c969d0489ba48845 (patch) | |
tree | 92cdab208c9f752e3e9ea57d3926ead2c4db7780 /discover/pxe-parser.c | |
parent | d47114df83e88f1b5ae65747001fc13d5dae525b (diff) | |
download | talos-petitboot-917f7aa880a7c6ab08991ae0c969d0489ba48845.tar.gz talos-petitboot-917f7aa880a7c6ab08991ae0c969d0489ba48845.zip |
Fix pb-discover segfaults caused by list corruption.
I was seeing list corruption and segfaults in pb-discover on my Talos
II when using both yaboot and kboot config files on the same device.
My assumption is that discover_context_add_boot_option() was being
called on the same pointer more than once.
So, null the pointer right after the call. The ownership was transferred
anyway so the parsers should not keep it around.
Signed-off-by: Brandon Bergren <git@bdragon.rtk0.net>
Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Diffstat (limited to 'discover/pxe-parser.c')
-rw-r--r-- | discover/pxe-parser.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/discover/pxe-parser.c b/discover/pxe-parser.c index fd8b8e8..470dd83 100644 --- a/discover/pxe-parser.c +++ b/discover/pxe-parser.c @@ -41,6 +41,7 @@ static void pxe_finish(struct conf_context *conf) if (info->proxy) info->opt->proxy = talloc_strdup(info->opt, info->proxy); discover_context_add_boot_option(conf->dc, info->opt); + info->opt = NULL; } } |