[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
smbfs smbnetfs.c
From: |
Ludovic Courtès |
Subject: |
smbfs smbnetfs.c |
Date: |
Sun, 04 Mar 2012 14:39:51 +0000 |
CVSROOT: /sources/hurdextras
Module name: smbfs
Changes by: Ludovic Courtès <civodul> 12/03/04 14:39:51
Modified files:
. : smbnetfs.c
Log message:
Have `get_dirents' return entries even for unstat'able entries.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/smbfs/smbnetfs.c?cvsroot=hurdextras&r1=1.6&r2=1.7
Patches:
Index: smbnetfs.c
===================================================================
RCS file: /sources/hurdextras/smbfs/smbnetfs.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- smbnetfs.c 4 Mar 2012 14:23:24 -0000 1.6
+++ smbnetfs.c 4 Mar 2012 14:39:51 -0000 1.7
@@ -222,6 +222,26 @@
return 0;
}
+/* Return a zeroed stat buffer for CRED. */
+static struct stat
+empty_stat (struct iouser *cred)
+{
+ struct stat st;
+
+ st.st_ino = 0;
+ st.st_dev = st.st_rdev = 0;
+ st.st_size = 0;
+ st.st_blksize = 0;
+ st.st_blocks = 0;
+ st.st_mode = 0;
+ st.st_nlink = 0;
+ st.st_atime = st.st_mtime = st.st_ctime = 0;
+ st.st_uid = cred->uids->num > 0 ? cred->uids->ids[0] : -1;
+ st.st_gid = cred->gids->num > 0 ? cred->gids->ids[0] : -1;
+
+ return st;
+}
+
error_t
netfs_validate_stat (struct node * np, struct iouser *cred)
{
@@ -969,8 +989,15 @@
{
sprintf (stat_file_name,"%s/%s", dir->nn->filename, dirent->name);
mutex_lock (&smb_mutex);
- err=smbc_stat (stat_file_name, &st);
+ err = smbc_stat (stat_file_name, &st);
mutex_unlock (&smb_mutex);
+
+ if (err)
+ {
+ /* STAT_FILE_NAME is not accessible but ought to be listed. */
+ st = empty_stat (cred);
+ err = 0;
+ }
}
free (stat_file_name);
- smbfs smbnetfs.c,
Ludovic Courtès <=
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/04
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/04
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/04
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/04
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/05
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/05
- smbfs smbnetfs.c, Ludovic Courtès, 2012/03/14