diff mbox series

[2/2] fwts-test: add regression tests for iBFT

Message ID 20231128055739.47290-2-ivan.hu@canonical.com
State Accepted
Headers show
Series [1/2] acpi: ibft: add tests for iBFT table | expand

Commit Message

Ivan Hu Nov. 28, 2023, 5:57 a.m. UTC
Signed-off-by: Ivan Hu <ivan.hu@canonical.com>
---
 Makefile.am                           |   2 +
 fwts-test/ibft-0001/acpidump-0001.log |  60 ++++++++++++
 fwts-test/ibft-0001/acpidump-0002.log |  50 ++++++++++
 fwts-test/ibft-0001/ibft-0001.log     | 130 ++++++++++++++++++++++++++
 fwts-test/ibft-0001/ibft-0002.log     | 108 +++++++++++++++++++++
 fwts-test/ibft-0001/test-0001.sh      |  23 +++++
 fwts-test/ibft-0001/test-0002.sh      |  23 +++++
 7 files changed, 396 insertions(+)
 create mode 100644 fwts-test/ibft-0001/acpidump-0001.log
 create mode 100644 fwts-test/ibft-0001/acpidump-0002.log
 create mode 100644 fwts-test/ibft-0001/ibft-0001.log
 create mode 100644 fwts-test/ibft-0001/ibft-0002.log
 create mode 100755 fwts-test/ibft-0001/test-0001.sh
 create mode 100755 fwts-test/ibft-0001/test-0002.sh
diff mbox series

Patch

diff --git a/Makefile.am b/Makefile.am
index 1949b7f8..46ee2a84 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -124,6 +124,8 @@  TESTS = fwts-test/acpidump-0001/test-0001.sh \
 	fwts-test/hest-0001/test-0002.sh \
 	fwts-test/hmat-0001/test-0001.sh \
 	fwts-test/hmat-0001/test-0002.sh \
+	fwts-test/ibft-0001/test-0001.sh \
+	fwts-test/ibft-0001/test-0002.sh \
 	fwts-test/iort-0001/test-0001.sh \
 	fwts-test/iort-0001/test-0002.sh \
 	fwts-test/ivrs-0001/test-0001.sh \
diff --git a/fwts-test/ibft-0001/acpidump-0001.log b/fwts-test/ibft-0001/acpidump-0001.log
new file mode 100644
index 00000000..5ef30a92
--- /dev/null
+++ b/fwts-test/ibft-0001/acpidump-0001.log
@@ -0,0 +1,60 @@ 
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
+  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+
+FACP @ 0x00000000
+  0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20  FACP......AMD   
+  0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20  GUAM    ....AMD 
+  0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00  @B.../...G......
+  0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00  ................
+  0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00  ................
+  0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00   ...............
+  0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00  e...........2...
+  0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af  ...../.......G..
+  0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00  ..... ..........
+  00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00  ................
+  00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00  ................
+  00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00  . ...........@..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+iBFT @ 0x00000000
+  0000: 69 42 46 54 1A 02 00 00 01 6C 49 4E 54 45 4C 20  iBFT.....lINTEL 
+  0010: 54 45 4D 50 4C 41 54 45 00 00 00 00 00 00 00 00  TEMPLATE........
+  0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 01 01 12 00 00 00 00 00 48 00 98 00 00 01 38 01  ................
+  0040: A0 01 00 00 00 00 00 00 02 01 4A 00 00 00 11 22  ................
+  0050: 33 44 55 66 77 88 99 AA BB CC DD EE FF 00 00 01  ................
+  0060: 02 02 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00 11  ................
+  0070: 22 33 44 55 66 77 88 99 AA BB CC DD EE FF AA AA  ................
+  0080: AA AA BB BB BB BB CC CC CC CC DD DD DD DD 08 00  ................
+  0090: D8 01 00 00 00 00 00 00 03 01 66 00 00 00 FF EE  ................
+  00a0: DD CC BB AA 99 88 77 66 55 44 33 22 11 00 18 00  ................
+  00b0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00c0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00d0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00e0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00f0: 00 00 11 22 33 44 55 66 00 00 04 00 E0 01 00 00  ................
+  0100: 04 01 36 00 00 00 00 11 22 33 44 55 66 77 88 99  ................
+  0110: AA BB CC DD EE FF 00 00 00 00 00 00 00 00 00 00  ................
+  0120: 00 00 04 00 E4 01 04 00 E8 01 04 00 EC 01 08 00  ................
+  0130: F0 01 08 00 F8 01 00 00 03 01 66 00 01 00 FF EE  ................
+  0140: DD CC BB AA 99 88 77 66 55 44 33 22 11 00 18 00  ................
+  0150: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  0160: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  0170: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  0180: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  0190: 00 00 11 22 33 44 55 66 00 00 0F 00 00 02 00 00  ................
+  01a0: 04 01 36 00 01 00 00 11 22 33 44 55 66 77 88 99  ................
+  01b0: AA BB CC DD EE FF 00 00 00 00 00 00 00 00 00 00  ................
+  01c0: 00 00 02 00 10 02 02 00 12 02 02 00 14 02 02 00  ................
+  01d0: 16 02 02 00 18 02 00 00 41 41 41 41 41 41 41 41  ........AAAAAAAA
+  01e0: 42 42 42 42 43 43 43 43 44 44 44 44 55 55 55 55  BBBBCCCCDDDDUUUU
+  01f0: 66 66 66 66 66 66 66 66 77 77 77 77 77 77 77 77  ffffffffwwwwwwww
+  0200: 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45  EEEEEEEEEEEEEEEE
+  0210: 47 47 48 48 49 49 4A 4A 4B 4B                    GGHHIIJJKK
diff --git a/fwts-test/ibft-0001/acpidump-0002.log b/fwts-test/ibft-0001/acpidump-0002.log
new file mode 100644
index 00000000..b317f50c
--- /dev/null
+++ b/fwts-test/ibft-0001/acpidump-0002.log
@@ -0,0 +1,50 @@ 
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
+  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+
+FACP @ 0x00000000
+  0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20  FACP......AMD   
+  0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20  GUAM    ....AMD 
+  0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00  @B.../...G......
+  0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00  ................
+  0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00  ................
+  0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00   ...............
+  0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00  e...........2...
+  0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af  ...../.......G..
+  0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00  ..... ..........
+  00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00  ................
+  00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00  ................
+  00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00  . ...........@..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+iBFT @ 0x00000000
+  0000: 69 42 46 54 7A 01 00 00 01 6C 49 4E 54 45 4C 20  iBFT.....lINTEL 
+  0010: 54 45 4D 50 4C 41 54 45 00 00 00 00 00 00 00 00  TEMPLATE........
+  0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 01 01 12 00 00 02 00 00 48 00 98 00 00 01 00 00  ................
+  0040: A0 01 00 00 00 00 00 00 02 01 4A 00 00 04 11 22  ................
+  0050: 33 44 55 66 77 88 99 AA BB CC DD EE FF 00 00 01  ................
+  0060: 02 02 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00 11  ................
+  0070: 22 33 44 55 66 77 88 99 AA BB CC DD EE FF AA AA  ................
+  0080: AA AA BB BB BB BB CC CC CC CC DD DD DD DD 08 00  ................
+  0090: D8 01 00 00 00 00 00 00 03 01 66 00 00 08 FF EE  ................
+  00a0: DD CC BB AA 99 88 77 66 55 44 33 22 11 00 18 00  ................
+  00b0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00c0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00d0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00e0: 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF  ................
+  00f0: 00 00 11 22 33 44 55 66 00 00 04 00 E0 01 00 00  ................
+  0100: 04 01 36 00 00 10 00 11 22 33 44 55 66 77 88 99  ................
+  0110: AA BB CC DD EE FF 00 00 00 00 00 00 00 00 00 00  ................
+  0120: 00 00 04 00 E4 01 04 00 E8 01 04 00 EC 01 08 00  ................
+  0130: F0 01 08 00 F8 01 00 00 41 41 41 41 41 41 41 41  ........AAAAAAAA
+  0140: 42 42 42 42 43 43 43 43 44 44 44 44 55 55 55 55  BBBBCCCCDDDDUUUU
+  0150: 66 66 66 66 66 66 66 66 77 77 77 77 77 77 77 77  ffffffffwwwwwwww
+  0160: 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45  EEEEEEEEEEEEEEEE
+  0170: 47 47 48 48 49 49 4A 4A 4B 4B                    GGHHIIJJKK
diff --git a/fwts-test/ibft-0001/ibft-0001.log b/fwts-test/ibft-0001/ibft-0001.log
new file mode 100644
index 00000000..a447be0b
--- /dev/null
+++ b/fwts-test/ibft-0001/ibft-0001.log
@@ -0,0 +1,130 @@ 
+ibft            ibft: iBFT iSCSI Boot Firmware Table test.
+ibft            ----------------------------------------------------------
+ibft            Test 1 of 1: Validate iBFT table.
+ibft            iSCSI Boot Firmware Table:
+ibft            iBFT Control Structure:
+ibft              Structure ID:               0x01
+ibft              Version:                    0x01
+ibft              Length:                     0x0012
+ibft              Index:                      0x00
+ibft              Flags:                      0x00
+ibft              Extensions:                 0x0000
+ibft              Initiator Offset:           0x0048
+ibft            iBFT Initiator Structure:
+ibft              Structure ID:               0x02
+ibft              Version:                    0x01
+ibft              Length:                     0x004a
+ibft              Index:                      0x00
+ibft              Flags:                      0x00
+ibft              iSNS Server:
+ibft                11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 00 
+ibft              SLP Server:
+ibft                00 01 02 02 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 
+ibft              Primary Radius Server:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Secondary Radius Server:
+ibft                AA AA AA AA BB BB BB BB CC CC CC CC DD DD DD DD 
+ibft              Initiator Name Length:      0x0008
+ibft              Initiator Name Offset:      0x01d8
+ibft              NIC 0 Offset:               0x0098
+ibft            iBFT NIC Structure:
+ibft              Structure ID:               0x03
+ibft              Version:                    0x01
+ibft              Length:                     0x0066
+ibft              Index:                      0x00
+ibft              Flags:                      0x00
+ibft              IP Address:
+ibft                FF EE DD CC BB AA 99 88 77 66 55 44 33 22 11 00 
+ibft              Subnet Mask Prefix:         0x18
+ibft              Origin:                     0x00
+ibft              Gateway:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Primary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Secondary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              DHCP:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              VLAN:                       0x0000
+ibft              MAC Address:
+ibft                11 22 33 44 55 66 
+ibft              PCI Bus/Dev/Func:           0x0000
+ibft              Host Name Length:           0x0004
+ibft              Host Name Offset:           0x01e0
+ibft              Target 0 Offset:            0x0100
+ibft            iBFT Target Structure:
+ibft              Structure ID:               0x04
+ibft              Version:                    0x01
+ibft              Length:                     0x0036
+ibft              Index:                      0x00
+ibft              Flags:                      0x00
+ibft              Target IP Address:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Target IP Socket:           0x0000
+ibft              Target Boot LUN:            0x0000000000000000
+ibft              CHAP Type:                  0x00
+ibft              NIC Association:            0x00
+ibft              Target Name Length:         0x0004
+ibft              Target Name Offset:         0x01e4
+ibft              CHAP Name Length:           0x0004
+ibft              CHAP Name Offset:           0x01e8
+ibft              CHAP Secret Length:         0x0004
+ibft              CHAP Secret Offset:         0x01ec
+ibft              Reverse CHAP Name Length:   0x0008
+ibft              Reverse CHAP Name Offset:   0x01f0
+ibft              Reverse CHAP Secret Length: 0x0008
+ibft              Reverse CHAP Secret Offset: 0x01f8
+ibft              NIC 1 Offset:               0x0138
+ibft            iBFT NIC Structure:
+ibft              Structure ID:               0x03
+ibft              Version:                    0x01
+ibft              Length:                     0x0066
+ibft              Index:                      0x01
+ibft              Flags:                      0x00
+ibft              IP Address:
+ibft                FF EE DD CC BB AA 99 88 77 66 55 44 33 22 11 00 
+ibft              Subnet Mask Prefix:         0x18
+ibft              Origin:                     0x00
+ibft              Gateway:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Primary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Secondary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              DHCP:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              VLAN:                       0x0000
+ibft              MAC Address:
+ibft                11 22 33 44 55 66 
+ibft              PCI Bus/Dev/Func:           0x0000
+ibft              Host Name Length:           0x000f
+ibft              Host Name Offset:           0x0200
+ibft              Target 1 Offset:            0x01a0
+ibft            iBFT Target Structure:
+ibft              Structure ID:               0x04
+ibft              Version:                    0x01
+ibft              Length:                     0x0036
+ibft              Index:                      0x01
+ibft              Flags:                      0x00
+ibft              Target IP Address:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Target IP Socket:           0x0000
+ibft              Target Boot LUN:            0x0000000000000000
+ibft              CHAP Type:                  0x00
+ibft              NIC Association:            0x00
+ibft              Target Name Length:         0x0002
+ibft              Target Name Offset:         0x0210
+ibft              CHAP Name Length:           0x0002
+ibft              CHAP Name Offset:           0x0212
+ibft              CHAP Secret Length:         0x0002
+ibft              CHAP Secret Offset:         0x0214
+ibft              Reverse CHAP Name Length:   0x0002
+ibft              Reverse CHAP Name Offset:   0x0216
+ibft              Reverse CHAP Secret Length: 0x0002
+ibft              Reverse CHAP Secret Offset: 0x0218
+ibft            PASSED: Test 1, No issues found in iBFT table.
+ibft            
+ibft            ==========================================================
+ibft            1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0
+ibft            info only.
+ibft            ==========================================================
diff --git a/fwts-test/ibft-0001/ibft-0002.log b/fwts-test/ibft-0001/ibft-0002.log
new file mode 100644
index 00000000..85002afa
--- /dev/null
+++ b/fwts-test/ibft-0001/ibft-0002.log
@@ -0,0 +1,108 @@ 
+ibft            ibft: iBFT iSCSI Boot Firmware Table test.
+ibft            ----------------------------------------------------------
+ibft            Test 1 of 1: Validate iBFT table.
+ibft            iSCSI Boot Firmware Table:
+ibft            iBFT Control Structure:
+ibft              Structure ID:               0x01
+ibft              Version:                    0x01
+ibft              Length:                     0x0012
+ibft              Index:                      0x00
+ibft              Flags:                      0x02
+ibft            FAILED [HIGH] iBAFReservedBitsNonZero: Test 1, iBAF Flags
+ibft            Bits [7..1] must be zero, got 0x02 instead
+ibft              Extensions:                 0x0000
+ibft              Initiator Offset:           0x0048
+ibft            iBFT Initiator Structure:
+ibft              Structure ID:               0x02
+ibft              Version:                    0x01
+ibft              Length:                     0x004a
+ibft              Index:                      0x00
+ibft              Flags:                      0x04
+ibft            FAILED [HIGH] iBAFReservedBitsNonZero: Test 1, iBAF Flags
+ibft            Bits [7..2] must be zero, got 0x04 instead
+ibft              iSNS Server:
+ibft                11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 00 
+ibft              SLP Server:
+ibft                00 01 02 02 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 
+ibft              Primary Radius Server:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Secondary Radius Server:
+ibft                AA AA AA AA BB BB BB BB CC CC CC CC DD DD DD DD 
+ibft              Initiator Name Length:      0x0008
+ibft              Initiator Name Offset:      0x01d8
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT initiator name
+ibft            offset exceed table length
+ibft              NIC 0 Offset:               0x0098
+ibft            iBFT NIC Structure:
+ibft              Structure ID:               0x03
+ibft              Version:                    0x01
+ibft              Length:                     0x0066
+ibft              Index:                      0x00
+ibft              Flags:                      0x08
+ibft            FAILED [HIGH] iBAFReservedBitsNonZero: Test 1, iBAF Flags
+ibft            Bits [7..3] must be zero, got 0x08 instead
+ibft              IP Address:
+ibft                FF EE DD CC BB AA 99 88 77 66 55 44 33 22 11 00 
+ibft              Subnet Mask Prefix:         0x18
+ibft              Origin:                     0x00
+ibft              Gateway:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Primary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Secondary DNS:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              DHCP:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              VLAN:                       0x0000
+ibft              MAC Address:
+ibft                11 22 33 44 55 66 
+ibft              PCI Bus/Dev/Func:           0x0000
+ibft              Host Name Length:           0x0004
+ibft              Host Name Offset:           0x01e0
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT host name offset
+ibft            exceed table length
+ibft              Target 0 Offset:            0x0100
+ibft            iBFT Target Structure:
+ibft              Structure ID:               0x04
+ibft              Version:                    0x01
+ibft              Length:                     0x0036
+ibft              Index:                      0x00
+ibft              Flags:                      0x10
+ibft            FAILED [HIGH] iBAFReservedBitsNonZero: Test 1, iBAF Flags
+ibft            Bits [7..4] must be zero, got 0x10 instead
+ibft              Target IP Address:
+ibft                00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 
+ibft              Target IP Socket:           0x0000
+ibft              Target Boot LUN:            0x0000000000000000
+ibft              CHAP Type:                  0x00
+ibft              NIC Association:            0x00
+ibft              Target Name Length:         0x0004
+ibft              Target Name Offset:         0x01e4
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT target name
+ibft            offset exceed table length
+ibft              CHAP Name Length:           0x0004
+ibft              CHAP Name Offset:           0x01e8
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT chap name offset
+ibft            exceed table length
+ibft              CHAP Secret Length:         0x0004
+ibft              CHAP Secret Offset:         0x01ec
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT chat secret
+ibft            offset exceed table length
+ibft              Reverse CHAP Name Length:   0x0008
+ibft              Reverse CHAP Name Offset:   0x01f0
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT resverse chap
+ibft            name offset exceed table length
+ibft              Reverse CHAP Secret Length: 0x0008
+ibft              Reverse CHAP Secret Offset: 0x01f8
+ibft            FAILED [HIGH] iBFTBadOffset: Test 1, iBFT reverse chap
+ibft            secret offset exceed table length
+ibft              NIC 1 Offset:               0x0000
+ibft              Target 1 Offset:            0x01a0
+ibft            FAILED [HIGH] iBFTBadStructureOffset: Test 1, iBFT Target
+ibft            structure exceed the table length, table length 0x0000017a
+ibft            , but got 0x000001a0
+ibft            
+ibft            ==========================================================
+ibft            0 passed, 12 failed, 0 warning, 0 aborted, 0 skipped, 0
+ibft            info only.
+ibft            ==========================================================
diff --git a/fwts-test/ibft-0001/test-0001.sh b/fwts-test/ibft-0001/test-0001.sh
new file mode 100755
index 00000000..6110ef5f
--- /dev/null
+++ b/fwts-test/ibft-0001/test-0001.sh
@@ -0,0 +1,23 @@ 
+#!/bin/bash
+#
+TEST="Test apci table against iBFT"
+NAME=test-0001.sh
+TMPLOG=$TMP/ibft.log.$$
+
+$FWTS --show-tests | grep iBFT > /dev/null
+if [ $? -eq 1 ]; then
+	echo SKIP: $TEST, $NAME
+	exit 77
+fi
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/ibft-0001/acpidump-0001.log ibft - | cut -c7- | grep "^ibft" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/ibft-0001/ibft-0001.log >> $FAILURE_LOG
+ret=$?
+if [ $ret -eq 0 ]; then
+	echo PASSED: $TEST, $NAME
+else
+	echo FAILED: $TEST, $NAME
+fi
+
+rm $TMPLOG
+exit $ret
diff --git a/fwts-test/ibft-0001/test-0002.sh b/fwts-test/ibft-0001/test-0002.sh
new file mode 100755
index 00000000..cf4e3ca5
--- /dev/null
+++ b/fwts-test/ibft-0001/test-0002.sh
@@ -0,0 +1,23 @@ 
+#!/bin/bash
+#
+TEST="Test apci table against iBFT"
+NAME=test-0002.sh
+TMPLOG=$TMP/ibft.log.$$
+
+$FWTS --show-tests | grep iBFT > /dev/null
+if [ $? -eq 1 ]; then
+	echo SKIP: $TEST, $NAME
+	exit 77
+fi
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/ibft-0001/acpidump-0002.log ibft - | cut -c7- | grep "^ibft" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/ibft-0001/ibft-0002.log >> $FAILURE_LOG
+ret=$?
+if [ $ret -eq 0 ]; then
+	echo PASSED: $TEST, $NAME
+else
+	echo FAILED: $TEST, $NAME
+fi
+
+rm $TMPLOG
+exit $ret