https://sourceware.org/bugzilla/show_bug.cgi?id=27456
--- Comment #12 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> --- The binutils-2_36-branch branch has been updated by Alan Modra <amo...@sourceware.org>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=08bdb5f4f98b6a5e1a9bdc89e7d1889933859caf commit 08bdb5f4f98b6a5e1a9bdc89e7d1889933859caf Author: Alan Modra <amo...@gmail.com> Date: Tue Feb 23 12:10:58 2021 +1030 Use make_tempname file descriptor in smart_rename This patch makes use of the temp file descriptor in smart_rename rather than reopening the file. I don't believe there is a security issue in reopening the file, but this way is one less directory operation. The patch also attempts to preserve S_ISUID and S_ISGID. PR 27456 * bucomm.h (smart_rename): Update prototype. * rename.c (smart_rename): Add fromfd and preserve_dates params. Pass fromfd and target_stat to simple_copy. Call set_times when preserve_dates. (simple_copy): Accept fromfd rather than from filename. Add target_stat param. Rewind fromfd rather than opening. Open "to" file without O_CREAT. Try to preserve S_ISUID and S_ISGID. * ar.c (write_archive): Rename ofd to tmpfd. Dup tmpfd before closing output temp file, and pass tmpfd to smart_rename. * arsup.c (temp_fd): Rename from real_fd. (ar_save): Dup temp_fd and pass to smart_rename. * objcopy.c (strip_main, copy_main): Likewise, and pass preserve_dates. (cherry picked from commit c42c71a1527dd70417d3966dce7ba9edbcf4bdb4) -- You are receiving this mail because: You are on the CC list for the bug.