Date: Thu, 21 Jun 2018 19:13:02 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 229208] `install -l rs` (relative symlink to source) into directory creates invalid symlink Message-ID: <bug-229208-227-ZVHxZFMKiK@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-229208-227@https.bugs.freebsd.org/bugzilla/> References: <bug-229208-227@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D229208 --- Comment #1 from Andreas Sommer <andreas.sommer87@googlemail.com> --- I was mistaken =E2=80=93 the `makelink` function *is* called but has the fo= llowing, very explicit logic to handle this case if (*from_name !=3D '/') { /* this is already a relative link */ do_symlink(from_name, to_name, target_sb); /* XXX: from_name may point outside of destdir. */ metadata_log(to_name, "link", NULL, from_name, NULL, 0); return; } So it seems on purpose, but is still a breaking change from FreeBSD 10.x. Please advise. The manpage has no hint about the exact behavior. It reads The file(s) are copied (or linked if the -l option is specified) to the target file or directory. If the destination is a directory, then the = file is copied into directory with its original filename. which leaves it open for humans to interpret what happens. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-229208-227-ZVHxZFMKiK>