GNU bug report logs - #7823
Rm -f fails on non-existant file

Previous Next

Package: coreutils;

Reported by: "Nadav Har'El" <nyh <at> math.technion.ac.il>

Date: Tue, 11 Jan 2011 13:28:02 UTC

Severity: normal

Done: Jim Meyering <jim <at> meyering.net>

Bug is archived. No further changes may be made.

Full log


Message #14 received at 7823 <at> debbugs.gnu.org (full text, mbox):

From: Eric Blake <eblake <at> redhat.com>
To: "Nadav Har'El" <nyh <at> math.technion.ac.il>
Cc: 7823 <at> debbugs.gnu.org, ramic <at> il.ibm.com
Subject: Re: bug#7823: Rm -f fails on non-existant file
Date: Tue, 11 Jan 2011 11:50:14 -0700
[Message part 1 (text/plain, inline)]
On 01/11/2011 08:12 AM, Nadav Har'El wrote:
> On Tue, Jan 11, 2011, Eric Blake wrote about "Re: bug#7823: Rm -f fails on non-existant file":
>> Feel free to file a bug report to the smbfs people.  POSIX does not
>> specify EINVAL (except for bad flags to unlinkat), but does have a
>> global clause that states that any errno not specifically listed may be
>> returned if it is a better fit than any mandated error.  On the other
>> hand, the next version of POSIX will be mandating that the case of an
>> unsupported byte in a filename ('*' in the case of smbfs) shall fail
>> with EILSEQ, not EINVAL (that is, if they don't return the equally valid
>> ENOENT failure).  See http://austingroupbugs.net/view.php?id=293, for
>> justification why smbfs ought to change their errno value away from EINVAL.
> 
> Thanks, I'll look at how to send them a bug report as well.
> 
>> Yes, since POSIX doesn't specify EINVAL for any other situation, I see
>> no harm in globally exempting it (with a comment why) in our source
>> code; likewise, I see no problem in also adding EILSEQ to that list,
>> whether or not smbfs also fixes their bug.
>>
>> Is it okay if I push this patch in your name?
> 
> Yes, looks good. Thanks.

Actually, this is a bug fix, so I'm also squashing this NEWS blurb in,
then pushing:

diff --git i/NEWS w/NEWS
index 5a70243..9ccad63 100644
--- i/NEWS
+++ w/NEWS
@@ -10,6 +10,9 @@ GNU coreutils NEWS
-*- outline -*-
   argument following the one containing the moved sub-tree.
   [bug introduced in coreutils-5.1.0]

+  rm -f no longer fails for EINVAL or EILSEQ on file systems that
+  reject file names invalid for that file system.
+

 * Noteworthy changes in release 8.9 (2011-01-04) [stable]


-- 
Eric Blake   eblake <at> redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

[signature.asc (application/pgp-signature, attachment)]

This bug report was last modified 14 years and 158 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.