ZIm/crates/eval/examples/add_arp_protocol_support/criteria.md
2025-04-15 16:52:08 +00:00

1.1 KiB

  1. Protocol Enumeration: Ensure the Protocol enum includes the ARP variant and is integrated in Protocol::ALL.
  2. Packet Analysis Logic:
    • Properly detect ARP packets within analyze_headers and analyze_network_header.
    • Appropriately extract ARP sender/target IPs based on the protocol (IPv4 or IPv6).
    • Track and store ARP operations (Request, Reply) using the ArpType enum.
  3. Display & User Interface:
    • Accurately represent ARP packet types in the UI (connection_details_page.rs) alongside ICMP types.
    • Skip displaying service information for ARP packets in line with ICMP behavior.
  4. Data Struct Enhancements:
    • Update InfoAddressPortPair to store and count ARP operation types.
    • Ensure filtering and presentation logic uses ARP data correctly.
  5. Default Behaviors:
    • Set default protocol in PacketFiltersFields to ARP for consistency.
  6. Testing:
    • Update unit tests for Protocol::ALL and get_service to account for ARP behavior.
    • Confirm that ARP protocol toggling works properly in the GUI protocol filter handling.