Re: "git clone" executed as root on solaris 10 shreds UFS (it ispossible to create hardlinks for directories as root under solaris)
- From
David Kastrup <dak@gnu.org>
- Date
- Jul 16, 2007, 19:57 UTC
- Message-ID
- <85644knmun.fsf@lola.goethe.zz>
- In-Reply-To
- <20070716154559.GD19073@lavos.net>
bdowning@lavos.net (Brian Downing) writes:
Show 11 quoted lines
> On Mon, Jul 16, 2007 at 04:35:10PM +0200, Johannes Sixt wrote: >> It tries to remove a *file* that is in the way and create the directory >> in its place. But since your unlink() behaves incorrectly (it is >> supposed to *fail* for directories), the logic does not quite work as >> expected - it mistakes the directory for a file. > > http://www.opengroup.org/onlinepubs/007908799/xsh/unlink.html > > | The path argument must not name a directory unless the process has > | appropriate privileges and the implementation supports using unlink() on > | directories.
Isn't it funny? The problem with the git code is that the path argument must not name a directory _if_ the process has appropriate privileges and the implementation supports using unlink() on directories.
Failure is not an option, it is a requirement.
-- David Kastrup, Kriemhildstr. 15, 44793 Bochum