
judogeek
By: a guest on Jul 31st, 2008 | syntax:
Python | size: 1.27 KB | hits: 79 | expires: Never
import socket, struct, csv
def numToDottedQuad(n):
"convert long int to dotted quad string"
return socket.inet_ntoa(struct.pack('!L',n))
"returns tuple (network, host) dotted-quad addresses given IP and mask size"
# (by Greg Jorgensen)
n = dottedQuadToNum(ip)
m = makeMask(maskbits)
host = n & m
net = n - host
return numToDottedQuad(net), numToDottedQuad(host)
reader = csv.reader(open("networks.csv", "rb"))
out = open("networks_conv.csv", "w")
out.write('network,mask,name\n')
for row in reader:
out.write(numToDottedQuad(long(row[0])) + ',' + numToDottedQuad(long(row[2])) + ',' + row[1] + '\n')
out.close
reader = csv.reader(open("subnets.csv", "rb"))
out = open("subnets_conv.csv", "w")
out.write('network,subnet,mask,name\n')
for row in reader:
out.write(numToDottedQuad(long(row[0])) + ',' + numToDottedQuad(long(row[1])) + ',' + numToDottedQuad(long(row[2])) + ',' + row[3] + '\n')
out.close
reader = csv.reader(open("address.csv", "rb"))
out = open("addresses_conv.csv", "w")
out.write('network,subnet,address,name\n')
for row in reader:
out.write(numToDottedQuad(long(row[0])) + ',' + numToDottedQuad(long(row[1])) + ',' + numToDottedQuad(long(row[2])) + ',' + row[3] + '\n')
out.close