]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
chase-symlinks: Use xopenat() instead of open_mkdir_at()
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Thu, 23 Mar 2023 19:05:16 +0000 (20:05 +0100)
committerLuca Boccassi <luca.boccassi@gmail.com>
Thu, 23 Mar 2023 23:25:33 +0000 (23:25 +0000)
We don't rely on any of the extra functionality of open_mkdir_at()
so let's just use xopenat() directly.

src/basic/chase-symlinks.c

index e3041ad6be33ac915f3d360da97d60784fe0097b..3eb43ffa6221a21ef794b906d0d54a13553443fd 100644 (file)
@@ -304,7 +304,7 @@ int chase_symlinks_at(
                                 return r;
 
                         if (FLAGS_SET(flags, CHASE_MKDIR_0755) && !isempty(todo)) {
-                                child = open_mkdir_at(fd, first, O_CLOEXEC|O_PATH|O_EXCL, 0755);
+                                child = xopenat(fd, first, O_DIRECTORY|O_CREAT|O_EXCL|O_NOFOLLOW|O_CLOEXEC, 0755);
                                 if (child < 0)
                                         return child;
                         } else if (FLAGS_SET(flags, CHASE_PARENT) && isempty(todo)) {