Blame SOURCES/autofs-5.1.7-add-set_offset_tree_catatonic.patch

96dc52
autofs-5.1.7 - add set_offset_tree_catatonic()
96dc52
96dc52
From: Ian Kent <raven@themaw.net>
96dc52
96dc52
Add tree mapent support function set_offset_tree_catatonic().
96dc52
96dc52
Signed-off-by: Ian Kent <raven@themaw.net>
96dc52
---
96dc52
 CHANGELOG    |    1 +
96dc52
 lib/mounts.c |   15 +++++++++++++++
96dc52
 2 files changed, 16 insertions(+)
96dc52
96dc52
diff --git a/CHANGELOG b/CHANGELOG
96dc52
index 89d4cfa0..0bd6f181 100644
96dc52
--- a/CHANGELOG
96dc52
+++ b/CHANGELOG
96dc52
@@ -38,6 +38,7 @@
96dc52
 - add tree_mapent_traverse_subtree().
96dc52
 - fix mount_fullpath().
96dc52
 - add tree_mapent_cleanup_offsets().
96dc52
+- add set_offset_tree_catatonic().
96dc52
 
96dc52
 25/01/2021 autofs-5.1.7
96dc52
 - make bind mounts propagation slave by default.
96dc52
diff --git a/lib/mounts.c b/lib/mounts.c
96dc52
index ba573b9a..f075a27e 100644
96dc52
--- a/lib/mounts.c
96dc52
+++ b/lib/mounts.c
96dc52
@@ -2578,6 +2578,21 @@ static int set_mount_catatonic(struct autofs_point *ap, struct mapent *me, int i
96dc52
 	return 0;
96dc52
 }
96dc52
 
96dc52
+static int set_offset_tree_catatonic_work(struct tree_node *n, void *ptr)
96dc52
+{
96dc52
+	struct mapent *me = MAPENT(n);
96dc52
+	struct autofs_point *ap = me->mc->ap;
96dc52
+
96dc52
+	set_mount_catatonic(ap, me, me->ioctlfd);
96dc52
+
96dc52
+	return 1;
96dc52
+}
96dc52
+
96dc52
+static void set_offset_tree_catatonic(struct autofs_point *ap, struct mapent *me)
96dc52
+{
96dc52
+	tree_traverse_inorder(MAPENT_ROOT(me), set_offset_tree_catatonic_work, NULL);
96dc52
+}
96dc52
+
96dc52
 static void set_multi_mount_tree_catatonic(struct autofs_point *ap, struct mapent *me)
96dc52
 {
96dc52
 	if (!list_empty(&me->multi_list)) {