]> git.puffer.fish Git - mirror/frr.git/commitdiff
tests: Fix potential issues at send_bsr_packet.py 18520/head
authorY Bharath <y.bharath@samsung.com>
Thu, 27 Mar 2025 04:00:40 +0000 (09:30 +0530)
committerY Bharath <y.bharath@samsung.com>
Thu, 27 Mar 2025 04:00:40 +0000 (09:30 +0530)
Fix potential issues at send_bsr_packet.py

Signed-off-by: y-bharath14 <y.bharath@samsung.com>
tests/topotests/lib/send_bsr_packet.py

index c11de64b1e1651030226d3b161f08241192d5def..7f9d3e8d2dfd7b96563bbf7e45e2146143a5227b 100755 (executable)
@@ -23,16 +23,28 @@ def send_packet(packet, iface, interval, count):
     * `count` : Number of packets to be sent
     """
 
-    data = binascii.a2b_hex(packet)
+    try:
+        data = binascii.a2b_hex(packet)
+    except binascii.Error:
+        print("Invalid packet format. Please provide a hexadecimal-encoded string.")
+        sys.exit(1)
+
     p = Raw(load=data)
     p.show()
-    sendp(p, inter=int(interval), iface=iface, count=int(count))
+    try:
+        sendp(p, inter=int(interval), iface=iface, count=int(count))
+    except ValueError:
+        print("Invalid interval or count value. Please provide integers.")
+        sys.exit(1)
+    except Exception as error:
+        print(f"Error sending packet: {error}")
+        sys.exit(1)
 
 
 if __name__ == "__main__":
     parser = argparse.ArgumentParser(description="Send BSR Raw packet")
     parser.add_argument("packet", help="Packet in raw format")
-    parser.add_argument("iface", help="Packet send to this ineterface")
+    parser.add_argument("iface", help="Packet send to this interface")
     parser.add_argument("--interval", help="Interval between packets", default=0)
     parser.add_argument(
         "--count", help="Number of times packet is sent repetitively", default=0
@@ -40,6 +52,7 @@ if __name__ == "__main__":
     args = parser.parse_args()
 
     if not args.packet or not args.iface:
+        print("Please provide both a packet and an interface.")
         sys.exit(1)
 
     send_packet(args.packet, args.iface, args.interval, args.count)