From 380b8bac123f819fb24eccbea12c23b88a5d12b7 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Wed, 21 May 2008 10:23:19 +0000 Subject: * fhandler_disk_file.cc (get_ino_by_handle): Rename pfai to fai. (fhandler_base::fstat_by_handle): Drop fai_size and pfai in favor of static struct fai_buf. Restructure. (fhandler_base::fstat_by_name): Drop fvi_size and pfvi. Drop fdi_size and pfdi in favor of static struct fdi_buf. Drop redundant test for existance. Use FileDirectoryInformation class instead of FileBothDirectoryInformation. Drop call to NtQueryVolumeInformationFile in favor of using pc.fs_serial_number (). Fix FileId information given to fstat_helper. (fhandler_disk_file::fstatvfs): Drop fvi_size, pfvi, fai_size and pfai. Drop getting FileFsVolumeInformation and FileFsAttributeInformation in favor of using the related path_conv info. (fhandler_disk_file::opendir): Fix comment. (fhandler_disk_file::readdir): Ditto. Use FileDirectoryInformation class instead of FileBothDirectoryInformation. * path.cc (fs_info::update): Store MaximumComponentNameLength in new member name_len. * path.h (struct fs_info): Use ULONG rather than DWORD. Add member name_len to store MaximumComponentNameLength. Add accessor methods. (path_conv::fs_name_len): New method. --- winsup/cygwin/path.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'winsup/cygwin/path.h') diff --git a/winsup/cygwin/path.h b/winsup/cygwin/path.h index fc0d28b60..513d7e80d 100644 --- a/winsup/cygwin/path.h +++ b/winsup/cygwin/path.h @@ -95,8 +95,9 @@ struct fs_info private: struct status_flags { - DWORD flags; /* Volume flags */ - DWORD samba_version; /* Samba version if available */ + ULONG flags; /* Volume flags */ + ULONG samba_version; /* Samba version if available */ + ULONG name_len; /* MaximumComponentNameLength */ unsigned is_remote_drive : 1; unsigned has_buggy_open : 1; unsigned has_acls : 1; @@ -113,8 +114,9 @@ struct fs_info void clear () { memset (&status, 0 , sizeof status); sernum = 0UL; } fs_info () { clear (); } - IMPLEMENT_STATUS_FLAG (DWORD, flags) - IMPLEMENT_STATUS_FLAG (DWORD, samba_version) + IMPLEMENT_STATUS_FLAG (ULONG, flags) + IMPLEMENT_STATUS_FLAG (ULONG, samba_version) + IMPLEMENT_STATUS_FLAG (ULONG, name_len) IMPLEMENT_STATUS_FLAG (bool, is_remote_drive) IMPLEMENT_STATUS_FLAG (bool, has_buggy_open) IMPLEMENT_STATUS_FLAG (bool, has_acls) @@ -269,6 +271,7 @@ class path_conv DWORD file_attributes () const {return fileattr;} void file_attributes (DWORD new_attr) {fileattr = new_attr;} DWORD fs_flags () {return fs.flags ();} + DWORD fs_name_len () {return fs.name_len ();} bool fs_is_fat () const {return fs.is_fat ();} bool fs_is_ntfs () const {return fs.is_ntfs ();} bool fs_is_samba () const {return fs.is_samba ();} -- cgit v1.2.3