From e29b1c453d280dcde3c2731599fc7a0f64e4dc10 Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Fri, 27 Jul 2018 13:36:15 -0500 Subject: [PATCH] ubik: Save errno before logging The value of errno can change after a syscall, and ViceLog may issue syscalls (such as write()). So, make sure we save errno here before calling ViceLog(). Issue spotted by kaduk@mit.edu. Reviewed-on: https://gerrit.openafs.org/13263 Reviewed-by: Benjamin Kaduk Tested-by: BuildBot (cherry picked from commit 9ff5f8f7601cc9761cc6a4ef0e8b7c8c2c8dddb5) Change-Id: I4f41ca758574e0d58659788467372af71a5f75f2 Reviewed-on: https://gerrit.openafs.org/13898 Reviewed-by: Michael Meffie Reviewed-by: Andrew Deason Reviewed-by: Cheyenne Wills Tested-by: BuildBot Reviewed-by: Stephan Wiesand --- src/ubik/remote.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ubik/remote.c b/src/ubik/remote.c index a4fbf8410..65dc411b8 100644 --- a/src/ubik/remote.c +++ b/src/ubik/remote.c @@ -508,6 +508,7 @@ SDISK_SendFile(struct rx_call *rxcall, afs_int32 file, fd = open(pbuffer, O_CREAT | O_RDWR | O_TRUNC, 0600); if (fd < 0) { code = errno; + ViceLog(0, ("Open error=%d\n", code)); goto failed_locked; } code = lseek(fd, HDRSIZE, 0); -- 2.39.5