summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2013-10-09 16:37:25 +0800
committerJeremy Kerr <jk@ozlabs.org>2013-10-09 17:22:46 +0800
commit96eedc649c8c0909a564787afebcfbe0588fd651 (patch)
treec37fd1117c67b091d82b535ecd8ed645f2899d6f
parente1248d2838676fe39c4aaa43adf120e630e9d387 (diff)
downloadtalos-petitboot-96eedc649c8c0909a564787afebcfbe0588fd651.tar.gz
talos-petitboot-96eedc649c8c0909a564787afebcfbe0588fd651.zip
discover/device-handler: Fix use-after-free when unmounting
We need to do the rmdir after clearing mount_path. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
-rw-r--r--discover/device-handler.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/discover/device-handler.c b/discover/device-handler.c
index 04a4484..94abb51 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -803,11 +803,12 @@ static int umount_device(struct discover_device *dev)
return -1;
dev->mounted = false;
- talloc_free(dev->mount_path);
- dev->mount_path = NULL;
pb_rmdir_recursive(mount_base(), dev->mount_path);
+ talloc_free(dev->mount_path);
+ dev->mount_path = NULL;
+
return 0;
}
OpenPOWER on IntegriCloud