From 04a80b89b8cd0d3b4d7a68d60f9c4f3ca56a9b72 Mon Sep 17 00:00:00 2001 From: David Oberhollenzer Date: Mon, 23 Dec 2019 19:32:31 +0100 Subject: Simplify hard link handling - For now, enforce that hard links don't point to a directories. - Instead of doing the swaping trickery, just reorder the flat list and hand out new inode numbers. Signed-off-by: David Oberhollenzer --- lib/fstree/hardlink.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/fstree/hardlink.c') diff --git a/lib/fstree/hardlink.c b/lib/fstree/hardlink.c index 8a79d46..e71670a 100644 --- a/lib/fstree/hardlink.c +++ b/lib/fstree/hardlink.c @@ -57,6 +57,11 @@ int fstree_resolve_hard_link(fstree_t *fs, tree_node_t *node) } } + if (S_ISDIR(node->mode)) { + errno = EPERM; + return -1; + } + start->mode = FSTREE_MODE_HARD_LINK_RESOLVED; start->data.target_node = node; -- cgit v1.2.3