Some of the file systems that MSYS can access are
designed for use by only one user. The MSYS run time
currently maps access to such a file system to one that
allows everyone to have the same access as everyone
else. These patches change that mapping to one with
access restricted to a single user but with everyone's
access aliased to that user. This produces a more
consistant model of what acctualy is taking place when
such a file system is used. (Specifically, the old
scheme implied that there was an individual and group
identifier associated with each file or directory and
that by implication those identifiers could be changed.
The alternate scheme implies that you can not change
Note that there are three patches.
The sec_acl.cc patch is a technical correction to the
interpretation of access descriptor strings. There are
in fact four possible characters that can appear in the
third position of an access triplet string, not two.
Asside from the common 'x' and '-' values, there are
also 's' and 'S' values that have the same execute
attributes as 'x' and '-' respectively, but also
indicate that the corresponding 'sticky bit' is set.
The change allows for the alternate 'x' coding. The
'sticky bit' encoding is ignored because impimenting it
would require changes to the calling routines as well
as changes to this routine.
The fhandler.cc patch implements the modified scheme
for files. It removes apparent 'group' and 'other'
access to files. In fact this does not change the
actual access semantics since the UID of everything on
a single user file system is implictly the current UID.
A secondary correction in this file corrects the
calculation of the total amount of space available on
volume which might be larger than 4GB.
The syscalls.cc patch implements the modified scheme
for directories. It also removes 'group' and 'other'
access, but indicates that 'group' and 'user' ids will
not be set 'properly' on and can not be changed for any
files in those directories.
Sorry - system trouble. I'll have to shut down and add
the actual patches and change log entry later...