3 # Script to process a "gateways" file into the form needed by
4 # the Westerhof "ipip" daemon.
6 # gateway file on stdin, ipip format route file on stdout
8 echo "#\n# ipip route table built by $LOGNAME on `date`\n#\n# local routes"
9 echo "route 44.32.0.0 0xffff0000 open 192.133.104.8"
10 echo "route 44.20.0.0 0xffff0000 open 192.195.73.3"
11 echo "#\n# quasi-local routes - we're the open subnet relay"
12 echo "route 44.130.48.0 0xffffff00 open 15.15.80.34"
13 echo "#\n# remote routes"
15 fgrep encap | grep "^route" | grep -v "15.255.240" | \
19 if (n[1] == "") n[1]="0"
20 if (n[2] == "") n[2]="0"
21 if (n[3] == "") n[3]="0"
22 if (n[4] == "") n[4]="0"
23 if (s[2] == "1") mask="0x80000000"
24 else if (s[2] == "2") mask="0xc0000000"
25 else if (s[2] == "3") mask="0xe0000000"
26 else if (s[2] == "4") mask="0xf0000000"
27 else if (s[2] == "5") mask="0xf8000000"
28 else if (s[2] == "6") mask="0xfc000000"
29 else if (s[2] == "7") mask="0xfe000000"
30 else if (s[2] == "8") mask="0xff000000"
31 else if (s[2] == "9") mask="0xff800000"
32 else if (s[2] == "10") mask="0xffc00000"
33 else if (s[2] == "11") mask="0xffe00000"
34 else if (s[2] == "12") mask="0xfff00000"
35 else if (s[2] == "13") mask="0xfff80000"
36 else if (s[2] == "14") mask="0xfffc0000"
37 else if (s[2] == "15") mask="0xfffe0000"
38 else if (s[2] == "16") mask="0xffff0000"
39 else if (s[2] == "17") mask="0xffff8000"
40 else if (s[2] == "18") mask="0xffffc000"
41 else if (s[2] == "19") mask="0xffffe000"
42 else if (s[2] == "20") mask="0xfffff000"
43 else if (s[2] == "21") mask="0xfffff800"
44 else if (s[2] == "22") mask="0xfffffc00"
45 else if (s[2] == "23") mask="0xfffffe00"
46 else if (s[2] == "24") mask="0xffffff00"
47 else if (s[2] == "25") mask="0xffffff80"
48 else if (s[2] == "26") mask="0xffffffc0"
49 else if (s[2] == "27") mask="0xffffffe0"
50 else if (s[2] == "28") mask="0xfffffff0"
51 else if (s[2] == "29") mask="0xfffffff8"
52 else if (s[2] == "30") mask="0xfffffffc"
53 else if (s[2] == "31") mask="0xfffffffe"
54 else if (s[2] == "32") mask="0xffffffff"
55 printf "route %s.%s.%s.%s %s open %s\n",n[1],n[2],n[3],n[4],mask,$5 }'
56 # printf "route %s %s open %s\n", subnet, mask, $5 }'
58 echo "#\n# the world via Brian's machine at UCSD - mirrorshades.ucsd.edu"
59 echo "route 0.0.0.0 0x00000000 open 128.54.16.18"