Skip site navigation (1)Skip section navigation (2)
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>