touch(1) not working on directories in an msdosfs(5) envirement
Vadim Goncharov
vadim_nuclight at mail.ru
Thu Aug 25 21:06:44 UTC 2011
Hi Bruce Evans!
On Wed, 24 Aug 2011 02:19:56 +1000 (EST); Bruce Evans wrote about 'Re: touch(1) not working on directories in an msdosfs(5) envirement':
>>> The above is only the least serious of the bugs in msdosfs_setattr() :-(.
>>> With the above fix, plain touch works as well as possible -- it cannot
>>> work perfectly since setting of atimes is not always supported. But
>>> touch -r and more importantly, cp -p only work as well as possible for
>>> root, since they use utimes() without the null timeptr arg that allows
>>> plain touch to work. A non-null timeptr arg ends up normally requiring
>>> root permissions for msdosfs where it normally doesn't require extra
>>> permissions for ffs, because ownership requirements for the non-null case
>>> cannot be satisfied by file systems that don't really support ownerships.
>>> We fudge the ownerships and use weak checks on them in most places, but
>>> for utimes() we use strict checks that almost always fail: from my old
>>> version:
>>
>> So, now the usual case of not touching directory times on change is preserved,
>> but cp -r et al. sets times as expected? Sounds good, could it be committed
>> please?
> Yes, cp -p works but only if the user is root or the owner of the file.
> Someone else will have to commit it.
Umm... but why not you?..
--
WBR, Vadim Goncharov. ICQ#166852181 mailto:vadim_nuclight at mail.ru
[Anti-Greenpeace][Sober FreeBSD zealot][http://nuclight.livejournal.com]
More information about the freebsd-fs
mailing list