Mercurial > hg > anonet-resdb
comparison contrib/whoisd/whoisd.pl @ 1189:7a618eaa29cb draft
LOTS of shit.
author | epoch <epoch@hacking.allowed.ano> |
---|---|
date | Thu, 09 Mar 2017 23:48:00 +0000 |
parents | 7ea11723da51 |
children | 93f2650b65c0 |
comparison
equal
deleted
inserted
replaced
1188:b5fb7fa1b2c6 | 1189:7a618eaa29cb |
---|---|
123 } | 123 } |
124 } | 124 } |
125 } | 125 } |
126 | 126 |
127 | 127 |
128 # IPv4 addresses | 128 # IPv4 addresses #this checks all dirs in the ip dir. so, 1., 2., and 21. (15) |
129 sub IPv4_lookup { | 129 sub IPv4_lookup { |
130 if($QUERY =~ m/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/) { | 130 if($QUERY =~ m/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/) { |
131 printf "%% IP section for %s\n", $QUERY unless $HACK; | 131 printf "%% IP section for %s\n", $QUERY unless $HACK; |
132 chdir("$RESDB/db/ip") || die "%% error"; | 132 chdir("$RESDB/db/ip") || die "%% error"; |
133 @parts=split(/\./,$QUERY); | 133 @parts=split(/\./,$QUERY); |
202 } | 202 } |
203 } | 203 } |
204 } | 204 } |
205 } | 205 } |
206 | 206 |
207 sub user_lookup { | 207 sub user_based_lookups { |
208 printf "%% user section for '%s'\n", $QUERY unless $HACK; | 208 printf "%% user section for '%s'\n", $QUERY unless $HACK; |
209 | 209 |
210 chdir("$RESDB/db/usr") || die "%% error"; | 210 chdir("$RESDB/db/usr") || die "%% error"; |
211 if(chdir($QUERY)) { | 211 if(chdir($QUERY)) { |
212 foreach(split(/\n/,`grep '' -r .`)) { | 212 foreach(split(/\n/,`grep '' -r .`)) { |
228 printf "%-20s AS%s\n", "origin" . ":", $out unless $HACK; | 228 printf "%-20s AS%s\n", "origin" . ":", $out unless $HACK; |
229 @asn[scalar(@asn)]=$out; | 229 @asn[scalar(@asn)]=$out; |
230 } | 230 } |
231 chdir("$RESDB/db/ip") || die "%% error"; | 231 chdir("$RESDB/db/ip") || die "%% error"; |
232 my $merp; | 232 my $merp; |
233 foreach(split(/\n/,`grep '^$QUERY\$' */*/*/owner | cut -d/ -f1-3`)) { | 233 foreach(split(/\n/,`grep '^$QUERY\$' */*/*/owner | cut -d/ -f1-3 | xargs printf '%s/cidr\n' | xargs cat | uniq`)) { |
234 $merp=`cat $_/cidr`; | 234 chomp $_; |
235 chomp $merp; | 235 printf "%-20s %s\n", "cidr" . ":", $_; |
236 printf "%-20s %s\n", "cidr" . ":", $merp; | |
237 } | 236 } |
238 | 237 |
239 foreach(split(/\n/,`grep -i -e "^$QUERY\$" "$RESDB/db/dom"/*/*/owner`)) { | 238 foreach(split(/\n/,`grep -i -e "^$QUERY\$" "$RESDB/db/dom"/*/*/owner`)) { |
240 $out = $_; | 239 $out = $_; |
241 $out =~ s/.*\/db\/dom\/(.+?)\/(.+?)\/owner.*/\2\.\1/; | 240 $out =~ s/.*\/db\/dom\/(.+?)\/(.+?)\/owner.*/\2\.\1/; |
273 | 272 |
274 ASN_lookup($user); | 273 ASN_lookup($user); |
275 IPv4_lookup($user); | 274 IPv4_lookup($user); |
276 domain_lookup($user); | 275 domain_lookup($user); |
277 IPv6_lookup($user); | 276 IPv6_lookup($user); |
278 #user_lookup(); | 277 $QUERY=$user; |
278 user_based_lookups($user); |