# This piece of code converts the DROP list from Spamhaus project # (see http://www.spamhaus.org/drop/) into Stonegate elements # # Usage: # gawk -f DROP2XML.awk < > # zip # And import the zipfile into SMC # # Example: # gawk -f DROP2XML.awk < DROP-20091127.txt > DROP-20091127.xml # zip DROP-20091127.zip DROP-20091127.xml BEGIN { printf("\n"); printf("\n"); printf("\n"); i = 0; netmasks[0] = "0.0.0.0" netmasks[1] = "128.0.0.0" netmasks[2] = "192.0.0.0" netmasks[3] = "224.0.0.0" netmasks[4] = "240.0.0.0" netmasks[5] = "248.0.0.0" netmasks[6] = "252.0.0.0" netmasks[7] = "254.0.0.0" netmasks[8] = "255.0.0.0" netmasks[9] = "255.128.0.0" netmasks[10] = "255.192.0.0" netmasks[11] = "255.224.0.0" netmasks[12] = "255.240.0.0" netmasks[13] = "255.248.0.0" netmasks[14] = "255.252.0.0" netmasks[15] = "255.254.0.0" netmasks[16] = "255.255.0.0" netmasks[17] = "255.255.128.0" netmasks[18] = "255.255.192.0" netmasks[19] = "255.255.224.0" netmasks[20] = "255.255.240.0" netmasks[21] = "255.255.248.0" netmasks[22] = "255.255.252.0" netmasks[23] = "255.255.254.0" netmasks[24] = "255.255.255.0" netmasks[25] = "255.255.255.128" netmasks[26] = "255.255.255.192" netmasks[27] = "255.255.255.224" netmasks[28] = "255.255.255.240" netmasks[29] = "255.255.255.248" netmasks[30] = "255.255.255.252" netmasks[31] = "255.255.255.254" netmasks[32] = "255.255.255.255" } FNR > 1 && NF == 3 { if (split($1, ipmask, "/") == 2) { ip = ipmask[1]; mask = ipmask[2]; name[i] = "net-" $3 "-" $1; printf("\n", $3, ip, name[i++], netmasks[mask]); } } END { printf("\n"); for (net in name) printf(" \n", name[net]); printf("\n"); printf("\n"); }