Anton Arapov 277549
diff -up dmidecode-2.11/AUTHORS.chassis_fix dmidecode-2.11/AUTHORS
Anton Arapov 277549
--- dmidecode-2.11/AUTHORS.chassis_fix	2010-11-24 10:29:09.000000000 +0100
Anton Arapov 277549
+++ dmidecode-2.11/AUTHORS	2011-11-14 14:56:08.000000000 +0100
Anton Arapov 277549
@@ -81,3 +81,5 @@ Murlin Wenzel
Anton Arapov 277549
 Harald Mueller-Ney
Anton Arapov 277549
 Lars Mueller
Anton Arapov 277549
 Thomas Mingarelli
Anton Arapov 277549
+Andrey Matveyev
Anton Arapov 277549
+Stefan Tauner
Anton Arapov 277549
diff -up dmidecode-2.11/CHANGELOG.chassis_fix dmidecode-2.11/CHANGELOG
Anton Arapov 277549
--- dmidecode-2.11/CHANGELOG.chassis_fix	2011-11-14 14:56:39.804855909 +0100
Anton Arapov 277549
+++ dmidecode-2.11/CHANGELOG	2011-11-14 14:56:15.000000000 +0100
Anton Arapov 277549
@@ -1,3 +1,8 @@
Anton Arapov 277549
+2011-11-14  Anton Arapov  <anton@redhat.com>
Anton Arapov 277549
+
Anton Arapov 277549
+	* dmidecode.c: Make dmi_chassis_type aware of the lock bit.
Anton Arapov 277549
+	  Patch from Stefan Tauner.
Anton Arapov 277549
+
Anton Arapov 277549
 2011-04-20  Jean Delvare  <khali@linux-fr.org>
Anton Arapov 277549
 
Anton Arapov 277549
 	Update to support SMBIOS specification version 2.7.1.
Anton Arapov 277549
diff -up dmidecode-2.11/dmidecode.c.chassis_fix dmidecode-2.11/dmidecode.c
Anton Arapov 277549
--- dmidecode-2.11/dmidecode.c.chassis_fix	2011-11-14 14:56:39.805855910 +0100
Anton Arapov 277549
+++ dmidecode-2.11/dmidecode.c	2011-11-14 14:55:12.000000000 +0100
Anton Arapov 277549
@@ -532,6 +532,8 @@ static const char *dmi_chassis_type(u8 c
Anton Arapov 277549
 		"Blade Enclosing" /* 0x1D */
Anton Arapov 277549
 	};
Anton Arapov 277549
 
Anton Arapov 277549
+	code &= 0x7F; /* bits 6:0 are chassis type, 7th bit is the lock bit */
Anton Arapov 277549
+
Anton Arapov 277549
 	if (code >= 0x01 && code <= 0x1D)
Anton Arapov 277549
 		return type[code - 0x01];
Anton Arapov 277549
 	return out_of_spec;
Anton Arapov 277549
@@ -3237,7 +3239,7 @@ static void dmi_decode(const struct dmi_
Anton Arapov 277549
 			printf("\tManufacturer: %s\n",
Anton Arapov 277549
 				dmi_string(h, data[0x04]));
Anton Arapov 277549
 			printf("\tType: %s\n",
Anton Arapov 277549
-				dmi_chassis_type(data[0x05] & 0x7F));
Anton Arapov 277549
+				dmi_chassis_type(data[0x05]));
Anton Arapov 277549
 			printf("\tLock: %s\n",
Anton Arapov 277549
 				dmi_chassis_lock(data[0x05] >> 7));
Anton Arapov 277549
 			printf("\tVersion: %s\n",