mdw-test/: Include some random utilities I've found handy for testing.
[secnet] / mdw-test / mkping
1 #! /usr/bin/python
2
3 import os as OS
4 from sys import stdout, argv
5 import impacket.ImpactPacket as I
6
7 sndname, sndaddr, rcpname, rcpaddr, outfile = argv[1:]
8
9 ip = I.IP()
10 ip.set_ip_src(sndaddr);
11 ip.set_ip_dst(rcpaddr);
12 icmp = I.ICMP()
13 icmp.set_icmp_type(icmp.ICMP_ECHO)
14 icmp.set_icmp_cksum(0)
15 icmp.auto_checksum = 1
16 icmp.contains(I.Data('Hello, %s, from %s!' % (rcpname, sndname)))
17 ip.contains(icmp)
18
19 if outfile == '-':
20 stdout.write(ip.get_packet())
21 else:
22 outtmp = outfile + '.new'
23 with open(outtmp, 'wb') as f: f.write(ip.get_packet())
24 OS.rename(outtmp, outfile)