[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-tar] tar-1.25: test 39 fails on FreeBSD
From: |
Joerg Schilling |
Subject: |
Re: [Bug-tar] tar-1.25: test 39 fails on FreeBSD |
Date: |
Tue, 23 Nov 2010 17:16:57 +0100 |
User-agent: |
nail 11.22 3/20/05 |
Christian Weisgerber <address@hidden> wrote:
> > maybe_recoverable should execute this code:
> >
> > if (*interdir_made)
> > return RECOVER_NO;
> >
> > switch (e)
> > {
> > case ELOOP:
>
> The problem turns out to be very straightforward: On FreeBSD, the
> open() call returns -1 with errno=EMLINK. This is documented
> behavior in FreeBSD's open(2) man page:
>
> [EMLINK] O_NOFOLLOW was specified and the target is a symbolic
> link.
>
> Adding EMLINK to the ELOOP case in maybe_recoverable fixes this (and
> doesn't break any other regression tests).
The POSIX standard requires errno to be ELOOP in this case.
Jörg
--
EMail:address@hidden (home) Jörg Schilling D-13353 Berlin
address@hidden (uni)
address@hidden (work) Blog: http://schily.blogspot.com/
URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily