diff options
Diffstat (limited to 'ports/unix/guts/readlinkat.c')
-rw-r--r-- | ports/unix/guts/readlinkat.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/ports/unix/guts/readlinkat.c b/ports/unix/guts/readlinkat.c new file mode 100644 index 0000000..5282e2b --- /dev/null +++ b/ports/unix/guts/readlinkat.c @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2010 Wind River Systems; see + * guts/COPYRIGHT for information. + * + * static ssize_t + * wrap_readlinkat(int dirfd, const char *path, char *buf, size_t bufsiz) { + * ssize_t rc = -1; + */ +#ifdef PSEUDO_NO_REAL_AT_FUNCTIONS + if (dirfd != AT_FDCWD) { + errno = ENOSYS; + return -1; + } + rc = real_readlink(path, buf, bufsiz); +#else + rc = real_readlinkat(dirfd, path, buf, bufsiz); +#endif + + if (rc > 0) { + rc = pseudo_dechroot(buf, rc); + } + +/* return rc; + * } + */ |