NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/50608 (udf fails the fs/vfs/t_vnops::create_many test)



The following reply was made to PR kern/50608; it has been noted by GNATS.

From: Andreas Gustafsson <gson%gson.org@localhost>
To: Reinoud Zandijk <reinoud%NetBSD.org@localhost>
Cc: pooka%NetBSD.org@localhost,
    gnats-bugs%NetBSD.org@localhost
Subject: Re: kern/50608 (udf fails the fs/vfs/t_vnops::create_many test)
Date: Wed, 13 Jan 2016 21:30:22 +0200

 Reinoud Zandijk wrote:
 > On Wed, Jan 13, 2016 at 08:34:49PM +0200, Andreas Gustafsson wrote:
 > > I'm considering removing the newlines from the create_many test and instead
 > > adding a separate test of files with non-alphanumeric characters in their
 > > names.
 > 
 > It had a newline in the name??
 
 Yes.  Don't look at me, I didn't write the test...
 
 > Since when is this allowed?
 
 Not to defend the test, but intro(2) says:
 
      File Name
              Names consisting of up to 255 (MAXNAMELEN) characters may be used
              to name an ordinary file, special file, or directory.
 
              These characters may be selected from the set of all ASCII char-
              acter excluding 0 (NUL) and the ASCII code for `/' (slash).  (The
              parity bit, bit 7, must be 0).
 
 > Thats how it is supposed to work in UDF; names are transcribed to and from
 > compressed unicode-16 in a standard prescribed way. This '\n' is seen as an
 > illegal character and replaced by a _ but to avoid aliases its appended with
 > '#' and a kind of checksum/crc character.
 > 
 > Is the code also trying to delete the files with names appened with '\n'?
 
 Yes.  
 
 > Either this or some rump code is removing the '\n' in the remove code.
 
 No.
 
 > If it would pass the filename exactly the same I see no reason it
 > should not have found it.
 
 When the test tries to delete "testfile0\n", UDF ends up looking up
 "testfile0\n" in the dirhash, but the dirhash doesn't contain an entry
 for "testfile0\n", only for "testfile0_#2A44".
 -- 
 Andreas Gustafsson, gson%gson.org@localhost
 


Home | Main Index | Thread Index | Old Index