$NetBSD: patch-aq,v 1.2 2003/05/27 15:59:09 taca Exp $

--- smbd/open.c.orig	2003-05-20 11:17:18.000000000 +0900
+++ smbd/open.c
@@ -986,8 +986,11 @@ flags=0x%X flags2=0x%X mode=0%o returned
 	fsp_open = open_file(fsp,conn,fname,psbuf,flags|flags2,mode,desired_access);
 
 	if (!fsp_open && (flags == O_RDWR) && (errno != ENOENT) && fcbopen) {
+		int saved_errno = errno;
 		if((fsp_open = open_file(fsp,conn,fname,psbuf,O_RDONLY,mode,desired_access)) == True)
 			flags = O_RDONLY;
+		else
+			errno = saved_errno;
 	}
 
 	if (!fsp_open) {