Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 04 Mar 2017 20:08:50 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-fs@FreeBSD.org
Subject:   [Bug 217440] FAT32 formatted USB stick with files written by PS4 - Invalid argument, unable to list directory contents
Message-ID:  <bug-217440-3630-fkKD9jJ0Mo@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-217440-3630@https.bugs.freebsd.org/bugzilla/>
References:  <bug-217440-3630@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D217440

Conrad Meyer <cem@freebsd.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ache@FreeBSD.org

--- Comment #6 from Conrad Meyer <cem@freebsd.org> ---
I think I see why ls(1)/fts(3) shows "Invalid".  The directory entries are
readable:

$ echo ./testdir/*
./testdir/123t=EF=BF=BDst ./testdir/abc?
$ echo $?
0

However, that '?' is an actual question mark symbol, because =E2=84=A2 can =
not be
represented in iso-8859-1, only win-1252 and unicode.  So you cannot access
that file by its directory entry:

$ ls ./testdir/abc?
ls: ./testdir/abc?: Invalid argument
$ truss stat ./testdir/abc?
...
lstat("./testdir/abc?",0x7fffffffe298)           ERR#22 'Invalid argument'

I think that EINVAL return is bogus.  lstat() misses should return ENOENT. =
 But
that doesn't help you very much.

Maybe VOP_READDIR should prefer 8.3 names if LFN names do not convert into
cs_local.  Although, lookup of 8.3 names doesn't work.  So maybe not.

It seems cs_local should default to UTF-8 or user's locale, not ISO-8859-1.=
  Or
if it must be a 8-bit character set, Win-1252 may be a better choice.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-217440-3630-fkKD9jJ0Mo>