1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-21 01:59:07 +03:00

Turns out with Win9x, we could occasionally return from unix_convert() given

a mangled name without a valid stat struct if the file existed. This would
then cause open_file_shared1() to erroneously think the file open was new,
thus not check for oplock break, thus causing a spurious EAGAIN reply to
the open on a file we already had kernel oplocked.... (phew - that was fun
to track down :-).
Jeremy.
(This used to be commit e23210e4732163e7f005b320235c20c814b41972)
This commit is contained in:
Jeremy Allison 2002-10-11 01:17:41 +00:00
parent ac71311ff2
commit 24d8333c72

View File

@ -318,6 +318,18 @@ BOOL unix_convert(pstring name,connection_struct *conn,char *saved_last_componen
pstrcat(start,"/");
pstrcat(start,rest);
*end = '\0';
} else {
/*
* We just scanned for, and found the end of the path.
* We must return a valid stat struct if it exists.
* JRA.
*/
if (vfs_stat(conn,name, &st) == 0) {
*pst = st;
} else {
ZERO_STRUCT(st);
}
}
} /* end else */