diff --git a/src/smblib/smblib.c b/src/smblib/smblib.c
index 5cd5ab63d9e0a35767f0eeffa994ad9fabfce2dd..3b95f853d3cc76a37bd5efe3f76dd9e5071a94b6 100644
--- a/src/smblib/smblib.c
+++ b/src/smblib/smblib.c
@@ -1450,7 +1450,7 @@ int SMBCALL smb_addcrc(smb_t* smb, uint32_t crc)
 
 	SAFEPRINTF(str,"%s.sch",smb->file);
 	while(1) {
-		if((file=sopen(str,O_RDWR|O_CREAT|O_BINARY,SH_DENYRW,S_IREAD|S_IWRITE))!=-1)
+		if((file=sopen(str,O_RDWR|O_CREAT|O_BINARY,SH_DENYRW, DEFFILEMODE))!=-1)
 			break;
 		if(get_errno()!=EACCES && get_errno()!=EAGAIN) {
 			safe_snprintf(smb->last_error,sizeof(smb->last_error)