summaryrefslogtreecommitdiff
path: root/scripts/leaking_addresses.pl
diff options
context:
space:
mode:
authorTobin C. Harding <me@tobin.cc>2018-03-02 08:49:55 +1100
committerTobin C. Harding <me@tobin.cc>2018-04-07 08:50:34 +1000
commitc73dff595f259736a90f52b38cf5798abeae4a3c (patch)
treed8c32846abfa3a47ceeb6c80aa368dfc2fcbdb71 /scripts/leaking_addresses.pl
parent2306a67745ebdf3f98bc954248b74a3f1d57cdc2 (diff)
downloadlwn-c73dff595f259736a90f52b38cf5798abeae4a3c.tar.gz
lwn-c73dff595f259736a90f52b38cf5798abeae4a3c.zip
leaking_addresses: check if file name contains address
Sometimes files may be created by using output from printk. As the scan traverses the directory tree we should parse each path name and check if it is leaking an address. Add check for leaking address on each path name. Suggested-by: Tycho Andersen <tycho@tycho.ws> Acked-by: Tycho Andersen <tycho@tycho.ws> Signed-off-by: Tobin C. Harding <me@tobin.cc>
Diffstat (limited to 'scripts/leaking_addresses.pl')
-rwxr-xr-xscripts/leaking_addresses.pl12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/leaking_addresses.pl b/scripts/leaking_addresses.pl
index ba5f9709bced..6a897788f5a7 100755
--- a/scripts/leaking_addresses.pl
+++ b/scripts/leaking_addresses.pl
@@ -463,6 +463,16 @@ sub parse_file
close $fh;
}
+# Checks if the actual path name is leaking a kernel address.
+sub check_path_for_leaks
+{
+ my ($path) = @_;
+
+ if (may_leak_address($path)) {
+ printf("Path name may contain address: $path\n");
+ }
+}
+
# Recursively walk directory tree.
sub walk
{
@@ -485,6 +495,8 @@ sub walk
next if (skip($path));
+ check_path_for_leaks($path);
+
if (-d $path) {
push @dirs, $path;
next;