[Midnightbsd-cvs] CVS Commit: smbfs_smb.c: Fix interaction with Windows 2000/XP servers.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Thu Aug 2 04:33:00 EDT 2007
Log Message:
-----------
Fix interaction with Windows 2000/XP servers. If a newly created directory has exactly 50 entries, an error is generated as smbfs grabs 52 items at a time. With . and .. this is 52. It then returns on the second trip and causes some apps like rsync to generate errors.
Modified Files:
--------------
src/sys/fs/smbfs:
smbfs_smb.c (r1.1.1.1 -> r1.2)
-------------- next part --------------
Index: smbfs_smb.c
===================================================================
RCS file: /home/cvs/src/sys/fs/smbfs/smbfs_smb.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -Lsys/fs/smbfs/smbfs_smb.c -Lsys/fs/smbfs/smbfs_smb.c -u -r1.1.1.1 -r1.2
--- sys/fs/smbfs/smbfs_smb.c
+++ sys/fs/smbfs/smbfs_smb.c
@@ -1224,8 +1224,10 @@
return error;
if ((error = md_get_uint16le(mdp, &tw)) != 0)
return error;
- if (ctx->f_ecnt == 0)
+ if (ctx->f_ecnt == 0) {
+ ctx->f_flags |= SMBFS_RDD_EOF | SMBFS_RDD_NOCLOSE;
return ENOENT;
+ }
ctx->f_rnameofs = tw;
mdp = &t2p->t2_rdata;
if (mdp->md_top == NULL) {
More information about the Midnightbsd-cvs
mailing list