Lines Matching defs:path
30 static int execveat_(int fd, const char *path, char **argv, char **envp,
34 return syscall(__NR_execveat, fd, path, argv, envp, flags);
41 #define check_execveat_fail(fd, path, flags, errno) \
42 _check_execveat_fail(fd, path, flags, errno, #errno)
43 static int _check_execveat_fail(int fd, const char *path, int flags,
50 fd, path?:"(null)", flags, errno_str);
51 rc = execveat_(fd, path, argv, envp, flags);
67 static int check_execveat_invoked_rc(int fd, const char *path, int flags,
73 int pathlen = path ? strlen(path) : 0;
77 fd, path, (path + pathlen - 20), flags);
80 fd, path?:"(null)", flags);
88 rc = execveat_(fd, path, argv, envp, flags);
114 static int check_execveat(int fd, const char *path, int flags)
116 return check_execveat_invoked_rc(fd, path, flags, 99, 99);
245 int fd_ephemeral_path = open_or_die("execveat.path.ephemeral",
263 /* dfd + path */
267 /* absolute path */
269 /* absolute path with nonsense dfd */
271 /* fd + no path */
273 /* O_CLOEXEC fd + no path */
279 /* fd + no path to a file that's been renamed */
282 /* fd + no path to a file that's been deleted */
287 /* fd + no path to a file that's been deleted */
288 unlink("execveat.path.ephemeral");
296 /* dfd + path */
299 /* absolute path */
301 /* fd + no path, even with AT_SYMLINK_NOFOLLOW (already followed) */
307 /* dfd + path */
312 /* absolute path */
321 /* dfd + path */
325 /* absolute path */
327 /* fd + no path */
337 /* fd + no path to a file that's been renamed */
340 /* fd + no path to a file that's been deleted */
344 /* Rename a subdirectory in the path: */
357 /* Invalid path => ENOENT */
386 exe_cp("execveat", "execveat.path.ephemeral");