Re: [PATCH] Fix junk values when run crash on a .gz file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




----- Original Message -----
>
> So I guess the proper thing to do would be to check for the FNAME bit
> in the FLG byte, and if it's not set, I guess we could either accept
> the file without prejudice, or print a message indicating that the
> name has been stripped and that -f should be used.

I wasn't aware of "gzip -n" or "gzip --no-name" when I wrote the
original function.  How does the attached patch work for you?
Instead of either suggestion above, it will just print a NOTE if
you don't use "-f".

Dave

--- crash-6.0.1/symbols.c.orig
+++ crash-6.0.1/symbols.c
@@ -2983,6 +2983,8 @@ is_compressed_kernel(char *file, char **
 #define GZIP  (1)
 #define BZIP2 (2)
 
+#define FNAME (1 << 3)
+
 	if ((fd = open(file, O_RDONLY)) < 0)
 		return FALSE;
 
@@ -2995,7 +2997,12 @@ is_compressed_kernel(char *file, char **
 	type = 0;
 
 	if ((header[0] == 0x1f) && (header[1] == 0x8b) && (header[2] == 8)) {
-		if (!STRNEQ((char *)&header[10], "vmlinux") && 
+		if (!(header[3] & FNAME)) {
+		    	if (!(st->flags & FORCE_DEBUGINFO))
+				error(NOTE, "%s: "
+				    "original filename unknown\n\n",
+					file);
+		} else if (!STRNEQ((char *)&header[10], "vmlinux") && 
 		    !(st->flags & FORCE_DEBUGINFO)) {
 			error(INFO, "%s: compressed file name does not "
 			    "start with \"vmlinux\"\n", &header[10]);
--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility

[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux