Date: Tue, 09 Nov 1999 02:18:44 +0200 From: Maxim Sobolev <sobomax@altavista.net> To: Bruce Evans <bde@zeta.org.au> Cc: current@FreeBSD.ORG Subject: Re: rm error code on FAT Message-ID: <38276863.F71C2915@altavista.net> References: <Pine.BSF.4.10.9911081351050.2071-100000@alphplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans wrote: > On Mon, 8 Nov 1999, Maxim Sobolev wrote: > > > Does anybody can explain why two absolutely identical attempts to remove > > unexistent files on UFS and FAT32 yields different error codes ("No such > > file or directory" and "Invalid argument" respectively)? This breaks "rm > > -f" behaviour, because instead of expected "0", "rm -f" on FAT returns > > error code instead. > > unlink("/mnt/*.no_such_files") on msdosfs returns EINVAL because the > pathname contains the invalid character '*'. EINVAL used to be a > documented errno for pathnames containing characters with their high > bit set). This documentation should have been made filesystem- > dependent instead of removing it. If your logic is right, then attempt to remove existent files from FAT using '*' should yield absolutely the same result (i.e. EINVAL). But in fact files being removed from FAT w/o any problems (touch /fat/1.exist /fat/2.exist ; rm /*.exist). IMHO it is clear bug in unlink error codes on FAT f/s. -Maxim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38276863.F71C2915>