[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <a9c5028086c7f5f0e245853b9065e187.squirrel@ubb.ca>
Date: Mon, 10 Aug 2009 21:05:09 -0500
From: "Tony Mantler" <nicoya@....ca>
To: linux-kernel@...r.kernel.org
Subject: case-duplicated filenames
A co-worker reminded me this afternoon that the linux source tree does not
get along well with case-insensitive filesystems. Ever the curious and
bored sort, and in the middle of an sqlite bender, I decided to cook up a
quick script to find exactly what files those are.
The results (in lowercase) are as follows:
linux-source-2.6.30/include/linux/netfilter/xt_mark.h
linux-source-2.6.30/include/linux/netfilter/xt_connmark.h
linux-source-2.6.30/include/linux/netfilter/xt_dscp.h
linux-source-2.6.30/include/linux/netfilter/xt_rateest.h
linux-source-2.6.30/include/linux/netfilter/xt_tcpmss.h
linux-source-2.6.30/include/linux/netfilter_ipv6/ip6t_mark.h
linux-source-2.6.30/include/linux/netfilter_ipv6/ip6t_hl.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_ttl.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_tos.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_ecn.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_connmark.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_dscp.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_tcpmss.h
linux-source-2.6.30/include/linux/netfilter_ipv4/ipt_mark.h
linux-source-2.6.30/net/netfilter/xt_tcpmss.c
linux-source-2.6.30/net/netfilter/xt_connmark.c
linux-source-2.6.30/net/netfilter/xt_mark.c
linux-source-2.6.30/net/netfilter/xt_dscp.c
linux-source-2.6.30/net/netfilter/xt_rateest.c
linux-source-2.6.30/net/netfilter/xt_hl.c
linux-source-2.6.30/net/ipv4/netfilter/ipt_ecn.c
linux-source-2.6.30/documentation/io-mapping.txt
And the script, if you'd like to run it yourself, is as follows (hereby
released GPL2):
#!/bin/bash
#set -x
SQLITE3=`which sqlite3`
DBNAME=filenames.db
SQLFILE=filenames.sql
DIRECTORY=linux-source-2.6.30
$SQLITE3 $DBNAME "CREATE TABLE filenames ( id INTEGER PRIMARY KEY, name
TEXT );"
echo "PRAGMA synchronous=OFF;" >$SQLFILE
echo "BEGIN TRANSACTION;" >>$SQLFILE
find $DIRECTORY | tr '[:upper:]' '[:lower:]' | sed 's/^\(.*\)/INSERT INTO
filenames (name) VALUES ("\1");/' >>$SQLFILE
echo "COMMIT;" >>$SQLFILE
$SQLITE3 $DBNAME <$SQLFILE
$SQLITE3 $DBNAME "SELECT a.name FROM filenames a, filenames b WHERE a.name
== b.name AND a.id < b.id;"
rm $SQLFILE
rm $DBNAME
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists