The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=29351335704e39ce3ca09c528d534c7898bbdc2c
commit 29351335704e39ce3ca09c528d534c7898bbdc2c Author: Dag-Erling Smørgrav <[email protected]> AuthorDate: 2026-05-22 17:57:12 +0000 Commit: Dag-Erling Smørgrav <[email protected]> CommitDate: 2026-05-22 17:57:12 +0000 tftp: Close files when we're done with them Also, delete the file we created if receiving it failed. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D57071 --- usr.bin/tftp/main.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/usr.bin/tftp/main.c b/usr.bin/tftp/main.c index 9b7ea7155d82..a26561eaa982 100644 --- a/usr.bin/tftp/main.c +++ b/usr.bin/tftp/main.c @@ -584,8 +584,11 @@ get(int argc, char *argv[]) if (verbose) printf("getting from %s:%s to %s [%s]\n", hostname, src, cp, mode); - if (recvfile(peer, port, fd, src, mode) != 0) + if (recvfile(peer, port, fd, src, mode) != 0) { + (void) unlink(cp); txrx_error = 1; + } + close(fd); break; } cp = tail(src); /* new .. jdg */ @@ -597,8 +600,11 @@ get(int argc, char *argv[]) if (verbose) printf("getting from %s:%s to %s [%s]\n", hostname, src, cp, mode); - if (recvfile(peer, port, fd, src, mode) != 0) + if (recvfile(peer, port, fd, src, mode) != 0) { + (void) unlink(cp); txrx_error = 1; + } + close(fd); } }
