This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems using Solaris mapped drive


On Feb 16 09:59, Cowdery, James wrote:
> I just updated cygwin and my Solaris mapped drive no longer works
> properly. If I create a directory I cannot remove it. I just get
> permission denied. If I try and copy a file I get the "skipping file
> 'filename' , as it was replaced while being copied" error. The Solaris
> machine is running 5.9. I am running cygwin 1.5.19-4. I have seen some
> chatter on the copying error message but it wasn't clear if this related
> to the same problem I have encountered. I tried reverting to 1.5.18-1
> and snapshot cygwin1-20060206.dll neither of which helped. Here is the
> output of the getvolinfo tool in case that helps. My other remote drives
> and local drives seem to work fine. Ideas Appreciated.
> 				Thanks,
> 					James
> 
> rootdir: l:\
> Volume Name        : <.>
> Serial Number      : 37093646
> Max Filenamelength : 128
> Filesystemname     : <NTFS>
> Flags:
>   FILE_CASE_SENSITIVE_SEARCH  : TRUE
>   FILE_CASE_PRESERVED_NAMES   : TRUE
>   FILE_UNICODE_ON_DISK        : FALSE
>   FILE_PERSISTENT_ACLS        : TRUE
>   FILE_FILE_COMPRESSION       : FALSE
>   FILE_VOLUME_QUOTAS          : TRUE
>   FILE_SUPPORTS_SPARSE_FILES  : FALSE
>   FILE_SUPPORTS_REPARSE_POINTS: FALSE
>   FILE_SUPPORTS_REMOTE_STORAGE: FALSE
>   FILE_VOLUME_IS_COMPRESSED   : FALSE
>   FILE_SUPPORTS_OBJECT_IDS    : FALSE
>   FILE_SUPPORTS_ENCRYPTION    : FALSE
>   FILE_NAMED_STREAMS          : FALSE
>   FILE_READ_ONLY_VOLUME       : FALSE

Sorry, but I doubt that this doesn't work with the latest Cygwin
snapshots.  The current rule, when to use the inode information of a
drive is like this:

- If GetDriveType() == DRIVE_UNKNOWN, then we don't trust the inode
  information and use name hashes instead.

- All drives have to have FILE_PERSISTENT_ACLS == TRUE, otherwise we
  use name hashes.

- Remote drives also need to have FILE_SUPPORTS_OBJECT_IDS == TRUE, or
  they have to have exactly the following set of flags set to TRUE:
  
  FILE_CASE_SENSITIVE_SEARCH | FILE_CASE_PRESERVED_NAMES | FILE_PERSISTENT_ACLS

  which is the set of flags set to TRUE for the usual Samba 3.x shares.

So your above volume information is evaluated as an unreliable drive
(remote, FILE_SUPPORTS_OBJECT_IDS == FALSE and not Samba), which results
in using pathname hashes instead of the inode numbers returned by the
appropriate Windows functions.  I don't see how it's possible to get
the "skipping file..." message with a recent snapshot.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]