8.25.2d Frozen Counters (revision 3.1r1, subset level 3)

Device under test: Step Function I/O dnp3 outstation

11:03:52.745 Running procedure: 8.25.2d
11:03:52.746 step: 1
11:03:52.746 - Set every frozen counter point's flags normal: ONLINE set, all others clear
11:03:52.746 - Generate 2 frozen counter events
11:03:52.746 [PLG] Every frozen counter point's flags are normal
11:03:52.746 [PLG] Updated frozen counter 0: value=1
11:03:52.746 [PLG] Updated frozen counter 0: value=2
11:03:52.747 step: 2
11:03:52.747 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
11:03:52.747 - g23v1, All Objects
11:03:52.747 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
11:03:52.747 g23v1, All Objects
11:03:52.747 --T-> fir: 1 fin: 1 seq: 0
11:03:52.747 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
11:03:52.747 --P-> 05 64 0B C4 00 04 01 00 CA 8A
11:03:52.747 C0 C1 01 17 01 06 7A 74
11:03:52.747 steps: 3 to 6
11:03:52.747 - If the DUT has no points of the type, it must answer with a Null Error Response with IIN2.1 or IIN2.2, and the rest of the test is skipped. If it doesn't support the type, or isn't tested at subset level 3, the same answer passes too, and with the points but not the events, a Null Response or IIN2.1
11:03:52.747 - Read a single fragment response w/ sequence(0x01)
11:03:52.747 - Verify that each event comes back in g23v1, or in the other width for a point the DUT keeps only in that one, with 1-octet (0x17) or 2-octet (0x28) indexes
11:03:52.747 - Verify that every event reports its flags normal (ONLINE set, all others clear)
11:03:52.747 - Verify that the response holds the frozen counter events just generated, with their values
11:03:52.747 - Verify that an application layer confirmation is requested.
11:03:52.747 - Confirm each response that asks for a confirmation
11:03:52.747 <-P-- 05 64 1D 44 01 00 00 04 98 2E
11:03:52.747 C0 E1 81 90 00 17 01 28 02 00 00 00 01 01 00 00 E3 3E
11:03:52.747 00 00 00 01 02 00 00 00 50 14
11:03:52.747 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 29 dest: 1 src: 1024
11:03:52.747 <-T-- fir: 1 fin: 1 seq: 0
11:03:52.747 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x01 IIN(DeviceRestart, NeedTime)
11:03:52.747 g23v1, 2-Byte Count and Index, count: 2
11:03:52.747 [0] - flags: 0x01 count: 1
11:03:52.747 [0] - flags: 0x01 count: 2
11:03:52.748 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
11:03:52.748 --T-> fir: 1 fin: 1 seq: 0
11:03:52.748 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
11:03:52.748 --P-> 05 64 08 C4 00 04 01 00 9A 19
11:03:52.748 C0 C1 00 7D 3D
11:03:52.749 [PLG] Verified 2 frozen counter point event(s)
11:03:52.749 step: 7
11:03:52.749 - Generate 2 frozen counter events
11:03:52.749 [PLG] Updated frozen counter 0: value=3
11:03:52.749 [PLG] Updated frozen counter 0: value=4
11:03:52.749 step: 8
11:03:52.749 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
11:03:52.749 - g23v2, All Objects
11:03:52.749 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
11:03:52.749 g23v2, All Objects
11:03:52.749 --T-> fir: 1 fin: 1 seq: 0
11:03:52.749 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
11:03:52.749 --P-> 05 64 0B C4 00 04 01 00 CA 8A
11:03:52.749 C0 C2 01 17 02 06 DB A1
11:03:52.749 steps: 9 to 10
11:03:52.749 - Read a single fragment response w/ sequence(0x02)
11:03:52.749 - Verify that each event comes back in g23v2, or in the other width for a point the DUT keeps only in that one, with 1-octet (0x17) or 2-octet (0x28) indexes
11:03:52.749 - Verify that every event reports its flags normal (ONLINE set, all others clear)
11:03:52.749 - Verify that the response holds the frozen counter events just generated, with their values
11:03:52.749 - Verify that an application layer confirmation is requested.
11:03:52.749 - Record the events
11:03:52.749 <-P-- 05 64 19 44 01 00 00 04 F6 63
11:03:52.749 C1 E2 81 90 00 17 02 28 02 00 00 00 01 03 00 00 E8 FA
11:03:52.749 00 01 04 00 8D D1
11:03:52.749 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 25 dest: 1 src: 1024
11:03:52.749 <-T-- fir: 1 fin: 1 seq: 1
11:03:52.749 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime)
11:03:52.749 g23v2, 2-Byte Count and Index, count: 2
11:03:52.749 [0] - flags: 0x01 count: 3
11:03:52.749 [0] - flags: 0x01 count: 4
11:03:52.749 [PLG] Verified 2 frozen counter point event(s)
11:03:52.749 step: 10.5
11:03:52.749 - Expect no response within 6000 ms.
11:03:58.755 step: 10.6
11:03:58.756 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
11:03:58.756 - g23v2, All Objects
11:03:58.756 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
11:03:58.756 g23v2, All Objects
11:03:58.756 --T-> fir: 1 fin: 1 seq: 0
11:03:58.756 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
11:03:58.756 --P-> 05 64 0B C4 00 04 01 00 CA 8A
11:03:58.756 C0 C3 01 17 02 06 DD 82
11:03:58.756 steps: 10.7 to 10.8
11:03:58.756 - Read a single fragment response w/ sequence(0x03)
11:03:58.756 - Verify that each event comes back in g23v2, or in the other width for a point the DUT keeps only in that one, with 1-octet (0x17) or 2-octet (0x28) indexes
11:03:58.756 - Verify that every event reports its flags normal (ONLINE set, all others clear)
11:03:58.756 - Verify that an application layer confirmation is requested.
11:03:58.756 - Verify that the response reports the same events as the one before
11:03:58.756 - Confirm each response that asks for a confirmation
11:03:58.756 <-P-- 05 64 19 44 01 00 00 04 F6 63
11:03:58.756 C2 E3 81 90 00 17 02 28 02 00 00 00 01 03 00 00 64 42
11:03:58.756 00 01 04 00 8D D1
11:03:58.756 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 25 dest: 1 src: 1024
11:03:58.756 <-T-- fir: 1 fin: 1 seq: 2
11:03:58.756 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime)
11:03:58.756 g23v2, 2-Byte Count and Index, count: 2
11:03:58.756 [0] - flags: 0x01 count: 3
11:03:58.756 [0] - flags: 0x01 count: 4
11:03:58.756 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
11:03:58.756 --T-> fir: 1 fin: 1 seq: 0
11:03:58.756 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
11:03:58.756 --P-> 05 64 08 C4 00 04 01 00 9A 19
11:03:58.756 C0 C3 00 98 26
11:03:58.756 Passed procedure: 8.25.2d