]>
Commit | Line | Data |
---|---|---|
320054e8 DG |
1 | // Copyright (c) 2015-2016 Nuxi, https://nuxi.nl/ |
2 | // | |
3 | // SPDX-License-Identifier: BSD-2-Clause | |
4 | ||
5 | #include <common/errno.h> | |
6 | ||
7 | #include <wasi/core.h> | |
8 | #include <errno.h> | |
9 | #include <string.h> | |
10 | #include <unistd.h> | |
11 | ||
12 | ssize_t readlinkat(int fd, const char *restrict path, char *restrict buf, | |
13 | size_t bufsize) { | |
14 | size_t bufused; | |
15 | #ifdef __wasilibc_unmodified_upstream | |
16 | __wasi_errno_t error = __wasi_file_readlink(fd, path, strlen(path), | |
17 | #else | |
18 | __wasi_errno_t error = __wasi_path_readlink(fd, path, strlen(path), | |
19 | #endif | |
20 | buf, bufsize, &bufused); | |
21 | if (error != 0) { | |
22 | errno = errno_fixup_directory(fd, error); | |
23 | return -1; | |
24 | } | |
25 | return bufused; | |
26 | } |