Lines Matching refs:fd

20 static int get_path(int fd, const char* path, char fullPath[]);
25 get_path(int fd, const char* path, char fullPath[])
28 if (fstat(fd, &dirst) < 0) {
34 // fd does not point to a directory
39 if (fcntl(fd, F_GETPATH, fullPath) < 0) {
40 // failed to get the path of fd, fcntl() sets errno
110 faccessat(int fd, const char* path, int accessMode, int flag)
118 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
119 // call access() ignoring fd
124 if (fd < 0) {
131 if (get_path(fd, path, fullPath) < 0)
140 fchmodat(int fd, const char* path, mode_t mode, int flag)
148 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
149 // call chmod() ignoring fd
160 if (fd < 0) {
167 if (get_path(fd, path, fullPath) < 0)
184 fchownat(int fd, const char* path, uid_t owner, gid_t group, int flag)
192 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
193 // call chown() ignoring fd
198 if (fd < 0) {
205 if (get_path(fd, path, fullPath) < 0)
214 fdopendir(int fd)
217 if (fstat(fd, &st)) {
218 // failed to get the stat info for fd, fstat() sets errno
228 if (fcntl(fd, F_GETPATH, path) < 0) {
229 // failed to get the path of fd, fcntl() sets errno
235 close(fd);
242 fstatat(int fd, const char *path, struct stat *st, int flag)
250 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
251 // call stat() or lstat() ignoring fd
256 if (fd < 0) {
263 if (get_path(fd, path, fullPath) < 0)
272 mkdirat(int fd, const char *path, mode_t mode)
274 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
275 // call mkdir() ignoring fd
279 if (fd < 0) {
286 if (get_path(fd, path, fullPath) < 0)
294 mkfifoat(int fd, const char *path, mode_t mode)
296 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
297 // call mkfifo() ignoring fd
301 if (fd < 0) {
308 if (get_path(fd, path, fullPath) < 0)
316 mknodat(int fd, const char *path, mode_t mode, dev_t dev)
318 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
319 // call mknod() ignoring fd
323 if (fd < 0) {
330 if (get_path(fd, path, fullPath) < 0)
350 // call rename() ignoring the fd's
384 readlinkat(int fd, const char *path, char *buffer, size_t bufferSize)
386 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
387 // call readlink() ignoring fd
391 if (fd < 0) {
398 if (get_path(fd, path, fullPath) < 0)
406 symlinkat(const char *oldPath, int fd, const char *newPath)
408 if (fd == AT_FDCWD || (newPath != NULL && newPath[0] == '/')) {
409 // call symlink() ignoring fd
413 if (fd < 0) {
419 // newPath is relative to the fd
421 if (get_path(fd, newPath, newFullPath) < 0)
429 unlinkat(int fd, const char *path, int flag)
437 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
438 // call rmdir() or unlink() ignoring fd
442 if (fd < 0) {
449 if (get_path(fd, path, fullPath) < 0)
481 // call link() ignoring the fd's
515 futimesat(int fd, const char *path, const struct timeval times[2])
517 if (fd == AT_FDCWD || (path != NULL && path[0] == '/')) {
518 // call utimes() ignoring fd
522 if (fd < 0) {
529 if (get_path(fd, path, fullPath) < 0)