From 9ff5f8f7601cc9761cc6a4ef0e8b7c8c2c8dddb5 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. Change-Id: I0f3308d64cd779bd97c97834ec2b270f5edd7ba6 Reviewed-on: https://gerrit.openafs.org/13263 Reviewed-by: Benjamin Kaduk Tested-by: BuildBot --- src/ubik/remote.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ubik/remote.c b/src/ubik/remote.c index 069a8c3..b131da5 100644 --- a/src/ubik/remote.c +++ b/src/ubik/remote.c @@ -534,8 +534,8 @@ SDISK_SendFile(struct rx_call *rxcall, afs_int32 file, (file<0)?-file:file); fd = open(pbuffer, O_CREAT | O_RDWR | O_TRUNC, 0600); if (fd < 0) { - ViceLog(0, ("Open error=%d\n", errno)); code = errno; + ViceLog(0, ("Open error=%d\n", code)); goto failed_locked; } code = lseek(fd, HDRSIZE, 0); -- 1.9.4