13920f5df8ba111f471ab44995130049a63c7872 |
|
04-Jun-2015 |
Paul Stewart <pstew@chromium.org> |
chaos_analyzer: Display ACKs in packet summary Use the ACK packet numbers discovered in the analyzer to augment which packets are displayed when showing packet summaries. This allows viewing the details of the protocol exchange consistent with the knowledge gained by the analyzer. BUG=None TEST=Successful packet captures show both authentication request ACKs and authentication response ACKs. Change-Id: I2ebdf2650decfa909c8e37a408f935883c7fa1fc Reviewed-on: https://chromium-review.googlesource.com/277052 Reviewed-by: Roshan Pius <rpius@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org> Commit-Queue: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/chaos_lib/chaos_capture_analyzer.py
|
375d6d1e31f3a933dce1cfc24746b97953ddc946 |
|
04-Jun-2015 |
Paul Stewart <pstew@chromium.org> |
chaos_analyzer: Rework ACK validation Fix a couple issues with ACK validation: - The attempt to copy "packet_iterator" was incorrect. - Only ACKs to DUT frames were checked. The first issue is due to the fact that a trivial copy of an iterator object yields a second reference to the same iterator. Thus, calling "copy_iterator.next()" also advances packet_iterator. This causes issues in captures where the next packet in packet_iterator is not an ACK but is a different packet that the state machine is looking for. The second issue is due to the fact that the packet filter did not admit ACKs directed at the AP. These frames are worth validating since it indicates whether the DUT heard the associated packet. In order to fix both issues, this CL reworks the ACK check by going back to the packet capture file and retrieving the very next frame in the packet capture and checking if it is an ACK back to the transmitter of the current frame. Doing it this way avoids having to expand the packet capture filter to admit extra traffic from the AP, but allows individual packets outside of the filter to be validated. Doing so also prevents the packet_iterator from being modified during the test, nor does it incur the cost of a deep-copy like itertools.tee(). BUG=chrome-os-partner:38849 TEST=Attempt 5 in chrome-os-partner:38849 yields Found state: WLAN AUTH REQUEST, Packet number: 79, Data rate: 6Mbps. WARNING! Missing ACK for state: WLAN AUTH REQUEST. Found state: WLAN AUTH RESPONSE, Packet number: 80, Data rate: 6Mbps. Note that packet 80 is successfully decoded although it was also evaluated to test whether it was an ACK to packet 79. Change-Id: Ice8ab352335529e4ac919a2c97cfe2ad232a6fad Reviewed-on: https://chromium-review.googlesource.com/275360 Reviewed-by: Roshan Pius <rpius@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org> Commit-Queue: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/chaos_lib/chaos_capture_analyzer.py
|
b53d07a75e51114aba66a25acc76ef43c5be308a |
|
04-Jun-2015 |
Paul Stewart <pstew@chromium.org> |
chaos_analyzer: Add error details and packet warnings Report the reason code and sender for deauthentication and disassociation events. This is accomplished by adding a "details" field to the ErrorStateInfo tuple which reports which fields of the packet might be interesting to include in error messages. Add more specific filters to the authentication response and association response states so that only successful responses are matched. Add a list of packets for which warnings should be generated. This uses the ErrorStateInfo named tuple, but does not terminate the state machine. Also it only matches packets that do not occur naturally either in the history or future of the state machine. This makes it convenient to match the non-successful versions of the authentication and association response frames. BUG=chrome-os-partner:40901 TEST=Attempt 8 in chrome-os-partner:40901 WARNING! WLAN ASSOC REJECTED found, Packet number: 168, Status Code: 0x000c" TEST=Attempt 3 in chrome-os-partner:40896 State Machine encountered error due to WLAN DEAUTH REQUEST, Packet number: 14, Sender: 24:f5:aa:9a:be:29, Reason Code: 0x0007" Change-Id: Ie5bb93cd00b67cd2a9dc05ccb3afbb3ba725d726 Reviewed-on: https://chromium-review.googlesource.com/275315 Reviewed-by: Roshan Pius <rpius@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org> Commit-Queue: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/chaos_lib/chaos_capture_analyzer.py
|
0ddc7a8015bffd7cbfedc3e9c5d1eb47c6353003 |
|
03-Jun-2015 |
Roshan Pius <rpius@google.com> |
chaos_analyzer: Fix the key messages packet matching. 1. Changes to correctly detect the key message 1-4 packets in case the key descriptor version is different. 2. Couple of output string formatting changes. BUG=chrome-os-partner:40900 TEST=Manually ran the script. Change-Id: Id1ae157213380b7465e3e6c74f2baa08c496aff3 Reviewed-on: https://chromium-review.googlesource.com/275013 Reviewed-by: Paul Stewart <pstew@chromium.org> Commit-Queue: Roshan Pius <rpius@chromium.org> Tested-by: Roshan Pius <rpius@chromium.org>
/external/autotest/server/cros/chaos_lib/chaos_capture_analyzer.py
|
529b03b35e44a331e77a2aa1a18274404a459494 |
|
10-Apr-2015 |
Roshan Pius <rpius@chromium.org> |
chaos: Add an analyzer to be run on the Chaos logs. Writing a new log analyzer to parse the Chaos logs and produce consolidated outputs for each attempt in the test. BUG=chromium:475710 TEST=Manually ran the script on Chaos log ouptut Change-Id: Ia8c9de1a2082efc6dec733f1d428c5e48a903e05 Reviewed-on: https://chromium-review.googlesource.com/265067 Reviewed-by: Paul Stewart <pstew@chromium.org> Tested-by: Roshan Pius <rpius@chromium.org> Commit-Queue: Roshan Pius <rpius@chromium.org>
/external/autotest/server/cros/chaos_lib/chaos_capture_analyzer.py
|