hrev45172 adds 1 changeset to branch 'master' old head: 4280f862ecceb60e1932d747ca9a45610795c7f4 new head: 89b48debc2e995d1eb430f931cbd12daa4a96e8b overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=89b48de+%5E4280f86 ---------------------------------------------------------------------------- 89b48de: Correct errno return in link() function (bug #8770) * edited as pointed by Axel [ Przemysław Buczkowski <przemub@xxxxxxxx> ] ---------------------------------------------------------------------------- Revision: hrev45172 Commit: 89b48debc2e995d1eb430f931cbd12daa4a96e8b URL: http://cgit.haiku-os.org/haiku/commit/?id=89b48de Author: Przemysław Buczkowski <przemub@xxxxxxxx> Date: Fri Jan 18 19:00:26 2013 UTC Committer: Jerome Duval <jerome.duval@xxxxxxxxx> Commit-Date: Fri Jan 18 19:00:26 2013 UTC Ticket: https://dev.haiku-os.org/ticket/8770 ---------------------------------------------------------------------------- 1 file changed, 7 insertions(+), 2 deletions(-) src/system/libroot/posix/unistd/link.c | 9 +++++++-- ---------------------------------------------------------------------------- diff --git a/src/system/libroot/posix/unistd/link.c b/src/system/libroot/posix/unistd/link.c index 491e275..74ab991 100644 --- a/src/system/libroot/posix/unistd/link.c +++ b/src/system/libroot/posix/unistd/link.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2009, Axel Dörfler, axeld@xxxxxxxxxxxxxxxx. + * Copyright 2002-2013, Axel Dörfler, axeld@xxxxxxxxxxxxxxxx. * Distributed under the terms of the MIT License. */ @@ -76,7 +76,12 @@ unlinkat(int fd, const char *path, int flag) int link(const char *toPath, const char *linkPath) { - RETURN_AND_SET_ERRNO(_kern_create_link(-1, linkPath, -1, toPath, true)); + int status = _kern_create_link(-1, linkPath, -1, toPath, true); + // Haiku -> POSIX error mapping + if (status == B_UNSUPPORTED) + status = EPERM; + + RETURN_AND_SET_ERRNO(status); }