From 04a73bdf3a28ebd13b86d99d1c997de60c2df366 Mon Sep 17 00:00:00 2001 From: Y Bharath Date: Thu, 27 Mar 2025 09:30:40 +0530 Subject: [PATCH] tests: Fix potential issues at send_bsr_packet.py Fix potential issues at send_bsr_packet.py Signed-off-by: y-bharath14 --- tests/topotests/lib/send_bsr_packet.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/tests/topotests/lib/send_bsr_packet.py b/tests/topotests/lib/send_bsr_packet.py index c11de64b1e..7f9d3e8d2d 100755 --- a/tests/topotests/lib/send_bsr_packet.py +++ b/tests/topotests/lib/send_bsr_packet.py @@ -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) -- 2.39.5