leaking_addresses: check if file name contains address
authorTobin C. Harding <me@tobin.cc>
Thu, 1 Mar 2018 21:49:55 +0000 (08:49 +1100)
committerTobin C. Harding <me@tobin.cc>
Fri, 6 Apr 2018 22:50:34 +0000 (08:50 +1000)
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>
scripts/leaking_addresses.pl

index ba5f970..6a89778 100755 (executable)
@@ -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;