On Wed, Jul 18, 2018 at 11:15:15AM +0800, Zorro Lang wrote: > On Tue, Jul 17, 2018 at 10:15:47PM +0200, Florian Weimer wrote: > > * Eryu Guan: > > > > > This problem here doesn't seem the same as the bug above, Fedora 28 has > > > glibc-2.27, which contains the fix for above bug, and the bug is about > > > trailing "/". But the problem here is we're asking for all lower case > > > filenames but wildcard returns upper case names too. e.g. > > > > > > [root@fedoravm tmp]# pwd > > > /root/tmp > > > [root@fedoravm tmp]# ls -l > > > total 4 > > > -rw-r--r--. 1 root root 0 Jul 17 10:51 aaa > > > -rw-r--r--. 1 root root 0 Jul 17 10:51 AAA > > > -rw-r--r--. 1 root root 273 Jul 17 10:50 Makefile > > > drwxr-xr-x. 1 root root 0 Jul 15 14:59 testdir > > > [root@fedoravm tmp]# cat Makefile > > > STRING1 = $(wildcard $(CURDIR)/[a-z]*/) > > > STRING2 = $(wildcard ./[a-z]*/) > > > STRING3 = $(wildcard $(CURDIR)/[a-z]*/.) > > > STRING4 = $(wildcard $(CURDIR)/[a-z]*) > > > default: > > > @echo STRING1="$(STRING1)" > > > @echo STRING2="$(STRING2)" > > > @echo STRING3="$(STRING3)" > > > @echo STRING4="$(STRING4)" > > > [root@fedoravm tmp]# make > > > STRING1=/root/tmp/aaa /root/tmp/AAA /root/tmp/testdir/ /root/tmp/Makefile > > > STRING2=./aaa ./AAA ./testdir/ ./Makefile > > > STRING3=/root/tmp/testdir/. > > > STRING4=/root/tmp/aaa /root/tmp/AAA /root/tmp/testdir /root/tmp/Makefile > > > [root@fedoravm tmp]# > > > > > > STRING4 is asking for all lower file names, but both "AAA" and > > > "Makefile" are returned. > > > > This is related to this glibc bug: > > > > https://sourceware.org/bugzilla/show_bug.cgi?id=23393 Hi Florian, Sorry I just saw your internal reply in Red Hat. If you'd like to talk about this issue at here, I have to say this change is radical. Before, we can do this: # echo abcd > testfile # echo ABCD >> testfile # egrep [a-z] testfile abcd But now it becomes this suddently: # echo abcd > testfile # echo ABCD >> testfile # egrep [a-z] testfile abcd ABCD I'm afraid that we will get many complaints from customers ... And of course it will break many cases and tools. Thanks, Zorro > > > > The bug mentions the regular expression [0-9], but it also affects > > patterns like [a-z]. I have not yet looked at fnmatch and glob in > > detail, but based on the report here (and a quick test with “echo > > [a-z]*”), they are affected by the same issue. > > > > This is ultimately caused by a locale data update which was backported > > into Fedora 28 (glibc 2.27) and its derivatives. Upstream glibc only > > has this change for version 2.28 (not yet released). It's currently > > not considered a release blocker, if it's even considered a bug at > > all. > > > > I dimly recall earlier discussions regarding this matter quite some > > time ago, perhaps in the POSIX context. GNU grep appears to have a > > workaround for [0-9], but not [a-z]. Cc:ing Jim Meyering in case he > > has any insights. > > JFYI: > > I reported this bug to glibc bugzilla too, and I got some responses > as below: > https://sourceware.org/bugzilla/show_bug.cgi?id=23420#c1 > > Hmm... is Fedora glibc much different with upstream ... Need more > investigate. > > Thanks, > Zorro > > > -- > > To unsubscribe from this list: send the line "unsubscribe fstests" in > > the body of a message to majordomo@xxxxxxxxxxxxxxx > > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html