From 7a59400b8409ff90ecb5117c5f08277de67fec07 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 11:42:04 -0600 Subject: [PATCH 01/11] begin refactor of files --- blacklist.php | 50 ---------- getAAAA.php | 20 ---- getAll.php | 20 ---- getHinfo.php | 20 ---- getMx.php | 20 ---- getTxt.php | 21 ---- getWhois.php | 18 ---- index.php | 19 ++-- javascript/main.js | 23 +++-- operations/A.php | 10 ++ operations/AAAA.php | 10 ++ operations/All.php | 9 ++ operations/Hinfo.php | 9 ++ operations/Mx.php | 9 ++ operations/OperationInterface.php | 5 + operations/Txt.php | 9 ++ operations/blacklist.php | 94 ++++++++++++++++++ getPort.php => operations/getPort.php | 5 - operations/getWhois.php | 12 +++ getA.php => operations/index.php | 9 +- {phpwhois => operations/phpwhois}/npdata.ser | 0 operations/phpwhois/phpwhois-readme.txt | 3 + .../phpwhois}/whois.ae.php | 0 .../phpwhois}/whois.aero.php | 0 .../phpwhois}/whois.ag.php | 0 .../phpwhois}/whois.am.php | 0 .../phpwhois}/whois.asia.php | 0 .../phpwhois}/whois.at.php | 0 .../phpwhois}/whois.au.php | 0 .../phpwhois}/whois.be.php | 0 .../phpwhois}/whois.bh.php | 0 .../phpwhois}/whois.biz.php | 0 .../phpwhois}/whois.br.php | 0 .../phpwhois}/whois.ca.php | 0 .../phpwhois}/whois.cat.php | 0 .../phpwhois}/whois.ch.php | 0 .../phpwhois}/whois.cl.php | 0 .../phpwhois}/whois.client.php | 0 .../phpwhois}/whois.cn.php | 0 .../phpwhois}/whois.co.php | 0 .../phpwhois}/whois.co.za.php | 0 .../phpwhois}/whois.coop.php | 0 .../phpwhois}/whois.cz.php | 0 .../phpwhois}/whois.de.php | 0 .../phpwhois}/whois.edu.php | 0 .../phpwhois}/whois.eu.php | 0 .../phpwhois}/whois.fi.php | 0 .../phpwhois}/whois.fj.php | 0 .../phpwhois}/whois.fm.php | 0 .../phpwhois}/whois.fr.php | 0 .../phpwhois}/whois.gtld.afternic.php | 0 .../phpwhois}/whois.gtld.alldomains.php | 0 .../phpwhois}/whois.gtld.ascio.php | 0 .../phpwhois}/whois.gtld.assorted.php | 0 .../phpwhois}/whois.gtld.corporatedomains.php | 0 .../phpwhois}/whois.gtld.directnic.php | 0 .../phpwhois}/whois.gtld.domaindiscover.php | 0 .../phpwhois}/whois.gtld.domainpeople.php | 0 .../phpwhois}/whois.gtld.dotster.php | 0 .../phpwhois}/whois.gtld.dreamhost.php | 0 .../phpwhois}/whois.gtld.enom.php | 0 .../phpwhois}/whois.gtld.fabulous.php | 0 .../phpwhois}/whois.gtld.fastdomain.php | 0 .../phpwhois}/whois.gtld.gandi.php | 0 .../phpwhois}/whois.gtld.genericb.php | 0 .../phpwhois}/whois.gtld.godaddy.php | 0 .../phpwhois}/whois.gtld.iana.php | 0 .../phpwhois}/whois.gtld.interdomain.php | 0 .../phpwhois}/whois.gtld.itsyourdomain.php | 0 .../phpwhois}/whois.gtld.joker.php | 0 .../phpwhois}/whois.gtld.markmonitor.php | 0 .../phpwhois}/whois.gtld.melbourneit.php | 0 .../phpwhois}/whois.gtld.moniker.php | 0 .../phpwhois}/whois.gtld.name.php | 0 .../phpwhois}/whois.gtld.nameintel.php | 0 .../phpwhois}/whois.gtld.namejuice.php | 0 .../phpwhois}/whois.gtld.nameking.php | 0 .../phpwhois}/whois.gtld.names4ever.php | 0 .../phpwhois}/whois.gtld.namevault.php | 0 .../phpwhois}/whois.gtld.networksolutions.php | 0 .../phpwhois}/whois.gtld.nicco.php | 0 .../phpwhois}/whois.gtld.nicline.php | 0 .../phpwhois}/whois.gtld.onlinenic.php | 0 .../phpwhois}/whois.gtld.opensrs.php | 0 .../phpwhois}/whois.gtld.ovh.php | 0 .../phpwhois}/whois.gtld.php | 0 .../phpwhois}/whois.gtld.psiusa.php | 0 .../whois.gtld.publicdomainregistry.php | 0 .../phpwhois}/whois.gtld.register.php | 0 .../phpwhois}/whois.gtld.rrpproxy.php | 0 .../phpwhois}/whois.gtld.schlund.php | 0 .../phpwhois}/whois.gtld.srsplus.php | 0 .../phpwhois}/whois.gtld.tmagnic.php | 0 .../phpwhois}/whois.gtld.tvcorp.php | 0 .../phpwhois}/whois.gtld.wildwestdomains.php | 0 .../phpwhois}/whois.hu.php | 0 .../phpwhois}/whois.icon.png | Bin .../phpwhois}/whois.idna.php | 0 .../phpwhois}/whois.ie.php | 0 .../phpwhois}/whois.il.php | 0 .../phpwhois}/whois.in.php | 0 .../phpwhois}/whois.info.php | 0 .../phpwhois}/whois.int.php | 0 .../phpwhois}/whois.ip.afrinic.php | 0 .../phpwhois}/whois.ip.apnic.php | 0 .../phpwhois}/whois.ip.arin.php | 0 .../phpwhois}/whois.ip.krnic.php | 0 .../phpwhois}/whois.ip.lacnic.php | 0 .../phpwhois}/whois.ip.lib.php | 0 .../phpwhois}/whois.ip.php | 0 .../phpwhois}/whois.ip.ripe.php | 0 .../phpwhois}/whois.ir.php | 0 .../phpwhois}/whois.is.php | 0 .../phpwhois}/whois.it.php | 0 .../phpwhois}/whois.jp.php | 0 .../phpwhois}/whois.lt.php | 0 .../phpwhois}/whois.lu.php | 0 .../phpwhois}/whois.ly.php | 0 .../phpwhois}/whois.main.php | 0 .../phpwhois}/whois.me.php | 0 .../phpwhois}/whois.mobi.php | 0 .../phpwhois}/whois.museum.php | 0 .../phpwhois}/whois.mx.php | 0 .../phpwhois}/whois.name.php | 0 .../phpwhois}/whois.nl.php | 0 .../phpwhois}/whois.nu.php | 0 .../phpwhois}/whois.nz.php | 0 .../phpwhois}/whois.org.php | 0 .../phpwhois}/whois.org.za.php | 0 .../phpwhois}/whois.parser.php | 0 .../phpwhois}/whois.pl.php | 0 .../phpwhois}/whois.pro.php | 0 .../phpwhois}/whois.pt.php | 0 .../phpwhois}/whois.ro.php | 0 .../phpwhois}/whois.ru.php | 0 .../phpwhois}/whois.rwhois.php | 0 .../phpwhois}/whois.sc.php | 0 .../phpwhois}/whois.se.php | 0 .../phpwhois}/whois.servers.php | 0 .../phpwhois}/whois.si.php | 0 .../phpwhois}/whois.su.php | 0 .../phpwhois}/whois.tel.php | 0 .../phpwhois}/whois.travel.php | 0 .../phpwhois}/whois.uk.php | 0 .../phpwhois}/whois.us.php | 0 .../phpwhois}/whois.utils.php | 0 .../phpwhois}/whois.ve.php | 0 .../phpwhois}/whois.ws.php | 0 .../phpwhois}/whois.xxx.php | 0 .../phpwhois}/whois.zanet.php | 0 150 files changed, 194 insertions(+), 201 deletions(-) delete mode 100644 blacklist.php delete mode 100644 getAAAA.php delete mode 100644 getAll.php delete mode 100644 getHinfo.php delete mode 100644 getMx.php delete mode 100644 getTxt.php delete mode 100644 getWhois.php create mode 100644 operations/A.php create mode 100644 operations/AAAA.php create mode 100644 operations/All.php create mode 100644 operations/Hinfo.php create mode 100644 operations/Mx.php create mode 100644 operations/OperationInterface.php create mode 100644 operations/Txt.php create mode 100644 operations/blacklist.php rename getPort.php => operations/getPort.php (79%) create mode 100644 operations/getWhois.php rename getA.php => operations/index.php (64%) rename {phpwhois => operations/phpwhois}/npdata.ser (100%) create mode 100644 operations/phpwhois/phpwhois-readme.txt rename {phpwhois => operations/phpwhois}/whois.ae.php (100%) rename {phpwhois => operations/phpwhois}/whois.aero.php (100%) rename {phpwhois => operations/phpwhois}/whois.ag.php (100%) rename {phpwhois => operations/phpwhois}/whois.am.php (100%) rename {phpwhois => operations/phpwhois}/whois.asia.php (100%) rename {phpwhois => operations/phpwhois}/whois.at.php (100%) rename {phpwhois => operations/phpwhois}/whois.au.php (100%) rename {phpwhois => operations/phpwhois}/whois.be.php (100%) rename {phpwhois => operations/phpwhois}/whois.bh.php (100%) rename {phpwhois => operations/phpwhois}/whois.biz.php (100%) rename {phpwhois => operations/phpwhois}/whois.br.php (100%) rename {phpwhois => operations/phpwhois}/whois.ca.php (100%) rename {phpwhois => operations/phpwhois}/whois.cat.php (100%) rename {phpwhois => operations/phpwhois}/whois.ch.php (100%) rename {phpwhois => operations/phpwhois}/whois.cl.php (100%) rename {phpwhois => operations/phpwhois}/whois.client.php (100%) rename {phpwhois => operations/phpwhois}/whois.cn.php (100%) rename {phpwhois => operations/phpwhois}/whois.co.php (100%) rename {phpwhois => operations/phpwhois}/whois.co.za.php (100%) rename {phpwhois => operations/phpwhois}/whois.coop.php (100%) rename {phpwhois => operations/phpwhois}/whois.cz.php (100%) rename {phpwhois => operations/phpwhois}/whois.de.php (100%) rename {phpwhois => operations/phpwhois}/whois.edu.php (100%) rename {phpwhois => operations/phpwhois}/whois.eu.php (100%) rename {phpwhois => operations/phpwhois}/whois.fi.php (100%) rename {phpwhois => operations/phpwhois}/whois.fj.php (100%) rename {phpwhois => operations/phpwhois}/whois.fm.php (100%) rename {phpwhois => operations/phpwhois}/whois.fr.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.afternic.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.alldomains.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.ascio.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.assorted.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.corporatedomains.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.directnic.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.domaindiscover.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.domainpeople.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.dotster.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.dreamhost.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.enom.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.fabulous.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.fastdomain.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.gandi.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.genericb.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.godaddy.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.iana.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.interdomain.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.itsyourdomain.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.joker.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.markmonitor.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.melbourneit.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.moniker.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.name.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.nameintel.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.namejuice.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.nameking.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.names4ever.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.namevault.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.networksolutions.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.nicco.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.nicline.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.onlinenic.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.opensrs.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.ovh.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.psiusa.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.publicdomainregistry.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.register.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.rrpproxy.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.schlund.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.srsplus.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.tmagnic.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.tvcorp.php (100%) rename {phpwhois => operations/phpwhois}/whois.gtld.wildwestdomains.php (100%) rename {phpwhois => operations/phpwhois}/whois.hu.php (100%) rename {phpwhois => operations/phpwhois}/whois.icon.png (100%) rename {phpwhois => operations/phpwhois}/whois.idna.php (100%) rename {phpwhois => operations/phpwhois}/whois.ie.php (100%) rename {phpwhois => operations/phpwhois}/whois.il.php (100%) rename {phpwhois => operations/phpwhois}/whois.in.php (100%) rename {phpwhois => operations/phpwhois}/whois.info.php (100%) rename {phpwhois => operations/phpwhois}/whois.int.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.afrinic.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.apnic.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.arin.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.krnic.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.lacnic.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.lib.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.php (100%) rename {phpwhois => operations/phpwhois}/whois.ip.ripe.php (100%) rename {phpwhois => operations/phpwhois}/whois.ir.php (100%) rename {phpwhois => operations/phpwhois}/whois.is.php (100%) rename {phpwhois => operations/phpwhois}/whois.it.php (100%) rename {phpwhois => operations/phpwhois}/whois.jp.php (100%) rename {phpwhois => operations/phpwhois}/whois.lt.php (100%) rename {phpwhois => operations/phpwhois}/whois.lu.php (100%) rename {phpwhois => operations/phpwhois}/whois.ly.php (100%) rename {phpwhois => operations/phpwhois}/whois.main.php (100%) rename {phpwhois => operations/phpwhois}/whois.me.php (100%) rename {phpwhois => operations/phpwhois}/whois.mobi.php (100%) rename {phpwhois => operations/phpwhois}/whois.museum.php (100%) rename {phpwhois => operations/phpwhois}/whois.mx.php (100%) rename {phpwhois => operations/phpwhois}/whois.name.php (100%) rename {phpwhois => operations/phpwhois}/whois.nl.php (100%) rename {phpwhois => operations/phpwhois}/whois.nu.php (100%) rename {phpwhois => operations/phpwhois}/whois.nz.php (100%) rename {phpwhois => operations/phpwhois}/whois.org.php (100%) rename {phpwhois => operations/phpwhois}/whois.org.za.php (100%) rename {phpwhois => operations/phpwhois}/whois.parser.php (100%) rename {phpwhois => operations/phpwhois}/whois.pl.php (100%) rename {phpwhois => operations/phpwhois}/whois.pro.php (100%) rename {phpwhois => operations/phpwhois}/whois.pt.php (100%) rename {phpwhois => operations/phpwhois}/whois.ro.php (100%) rename {phpwhois => operations/phpwhois}/whois.ru.php (100%) rename {phpwhois => operations/phpwhois}/whois.rwhois.php (100%) rename {phpwhois => operations/phpwhois}/whois.sc.php (100%) rename {phpwhois => operations/phpwhois}/whois.se.php (100%) rename {phpwhois => operations/phpwhois}/whois.servers.php (100%) rename {phpwhois => operations/phpwhois}/whois.si.php (100%) rename {phpwhois => operations/phpwhois}/whois.su.php (100%) rename {phpwhois => operations/phpwhois}/whois.tel.php (100%) rename {phpwhois => operations/phpwhois}/whois.travel.php (100%) rename {phpwhois => operations/phpwhois}/whois.uk.php (100%) rename {phpwhois => operations/phpwhois}/whois.us.php (100%) rename {phpwhois => operations/phpwhois}/whois.utils.php (100%) rename {phpwhois => operations/phpwhois}/whois.ve.php (100%) rename {phpwhois => operations/phpwhois}/whois.ws.php (100%) rename {phpwhois => operations/phpwhois}/whois.xxx.php (100%) rename {phpwhois => operations/phpwhois}/whois.zanet.php (100%) diff --git a/blacklist.php b/blacklist.php deleted file mode 100644 index 03762f3..0000000 --- a/blacklist.php +++ /dev/null @@ -1,50 +0,0 @@ - \ No newline at end of file diff --git a/getAAAA.php b/getAAAA.php deleted file mode 100644 index 50b708a..0000000 --- a/getAAAA.php +++ /dev/null @@ -1,20 +0,0 @@ -getDNS($_GET['domain']); - - -?> \ No newline at end of file diff --git a/getAll.php b/getAll.php deleted file mode 100644 index f9ebd10..0000000 --- a/getAll.php +++ /dev/null @@ -1,20 +0,0 @@ -getDNS($_GET['domain']); - - -?> \ No newline at end of file diff --git a/getHinfo.php b/getHinfo.php deleted file mode 100644 index b4403fa..0000000 --- a/getHinfo.php +++ /dev/null @@ -1,20 +0,0 @@ -getDNS($_GET['domain']); - - -?> \ No newline at end of file diff --git a/getMx.php b/getMx.php deleted file mode 100644 index 4463c2c..0000000 --- a/getMx.php +++ /dev/null @@ -1,20 +0,0 @@ -getDNS($_GET['domain']); - - -?> \ No newline at end of file diff --git a/getTxt.php b/getTxt.php deleted file mode 100644 index 487c97f..0000000 --- a/getTxt.php +++ /dev/null @@ -1,21 +0,0 @@ -getDNS($_GET['domain']); - - -?> \ No newline at end of file diff --git a/getWhois.php b/getWhois.php deleted file mode 100644 index 5b2ea92..0000000 --- a/getWhois.php +++ /dev/null @@ -1,18 +0,0 @@ -lookup($query); -echo "[\n"; -echo json_encode($result['rawdata'], JSON_PRETTY_PRINT); -echo "\n]"; -?> \ No newline at end of file diff --git a/index.php b/index.php index e3898be..b7b5793 100644 --- a/index.php +++ b/index.php @@ -43,15 +43,16 @@
Domain: 
diff --git a/javascript/main.js b/javascript/main.js index a1437bd..443918a 100644 --- a/javascript/main.js +++ b/javascript/main.js @@ -15,33 +15,36 @@ window.onload = function() { function requestTitle(callType){ switch(callType){ - case "getTxt.php": + case "txt": return "SPF/TXT Lookup"; break; - case "getMx.php": + case "mx": return "MX Lookup"; break; - case "getA.php": + case "a": return "IP Lookup"; break; - case "getAll.php": + case "all": return "All available DNS records"; break; - case "getAAAA.php": + case "aaaa": return "IPV6 Lookup"; break; - case "getWhois.php": + case "whois": return "Who Is Lookup"; break; - case "getHinfo.php": + case "hInfo": return "H Info Lookup"; break; - case "blacklist.php": + case "blacklist": return "Blacklist Lookup"; break; - case "getPort.php": + case "port": return "Ports Lookup"; break; + case "reverseLookup": + return "Host Lookup"; + break; } } @@ -67,7 +70,7 @@ window.onload = function() { } } document.getElementById("loading").innerHTML = '
' - xmlhttp.open("GET", callType + "?domain=" + domain, true); + xmlhttp.open("GET", "operations?domain=" + domain + "&request=" + callType, true); xmlhttp.send(); } diff --git a/operations/A.php b/operations/A.php new file mode 100644 index 0000000..aa9caef --- /dev/null +++ b/operations/A.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/operations/AAAA.php b/operations/AAAA.php new file mode 100644 index 0000000..b6fcc09 --- /dev/null +++ b/operations/AAAA.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/operations/All.php b/operations/All.php new file mode 100644 index 0000000..a3bb111 --- /dev/null +++ b/operations/All.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/operations/Hinfo.php b/operations/Hinfo.php new file mode 100644 index 0000000..ad66420 --- /dev/null +++ b/operations/Hinfo.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/operations/Mx.php b/operations/Mx.php new file mode 100644 index 0000000..ba159a8 --- /dev/null +++ b/operations/Mx.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/operations/OperationInterface.php b/operations/OperationInterface.php new file mode 100644 index 0000000..0502498 --- /dev/null +++ b/operations/OperationInterface.php @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/operations/Txt.php b/operations/Txt.php new file mode 100644 index 0000000..b1790bf --- /dev/null +++ b/operations/Txt.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/operations/blacklist.php b/operations/blacklist.php new file mode 100644 index 0000000..6e1a988 --- /dev/null +++ b/operations/blacklist.php @@ -0,0 +1,94 @@ + \ No newline at end of file diff --git a/getPort.php b/operations/getPort.php similarity index 79% rename from getPort.php rename to operations/getPort.php index f2f5a4d..7b41168 100644 --- a/getPort.php +++ b/operations/getPort.php @@ -1,9 +1,4 @@ "SSH", 25 => "SMTP", 53 => "DNS", 80 => "HTTP", 443 => "HTTPS", 465 => "SMTPS", 587 => "IMAP", 993 => "IMAPS", 5222 => "XMPP Jabber", 5269 => "Server Jabber"); diff --git a/operations/getWhois.php b/operations/getWhois.php new file mode 100644 index 0000000..f50bd73 --- /dev/null +++ b/operations/getWhois.php @@ -0,0 +1,12 @@ +lookup($query); +echo "[\n"; +echo json_encode($result['rawdata'], JSON_PRETTY_PRINT); +echo "\n]"; +?> \ No newline at end of file diff --git a/getA.php b/operations/index.php similarity index 64% rename from getA.php rename to operations/index.php index 298b045..b535f72 100644 --- a/getA.php +++ b/operations/index.php @@ -1,5 +1,4 @@ getDNS($_GET['domain']); - +print_r($object->getOutput) ?> \ No newline at end of file diff --git a/phpwhois/npdata.ser b/operations/phpwhois/npdata.ser similarity index 100% rename from phpwhois/npdata.ser rename to operations/phpwhois/npdata.ser diff --git a/operations/phpwhois/phpwhois-readme.txt b/operations/phpwhois/phpwhois-readme.txt new file mode 100644 index 0000000..846c2ac --- /dev/null +++ b/operations/phpwhois/phpwhois-readme.txt @@ -0,0 +1,3 @@ +Source: https://github.com/sparc/phpWhois.org +License: https://github.com/sparc/phpWhois.org/blob/master/License.md +Changes: https://github.com/charlesabarnes/SPFtoolbox/commits/master/phpwhois \ No newline at end of file diff --git a/phpwhois/whois.ae.php b/operations/phpwhois/whois.ae.php similarity index 100% rename from phpwhois/whois.ae.php rename to operations/phpwhois/whois.ae.php diff --git a/phpwhois/whois.aero.php b/operations/phpwhois/whois.aero.php similarity index 100% rename from phpwhois/whois.aero.php rename to operations/phpwhois/whois.aero.php diff --git a/phpwhois/whois.ag.php b/operations/phpwhois/whois.ag.php similarity index 100% rename from phpwhois/whois.ag.php rename to operations/phpwhois/whois.ag.php diff --git a/phpwhois/whois.am.php b/operations/phpwhois/whois.am.php similarity index 100% rename from phpwhois/whois.am.php rename to operations/phpwhois/whois.am.php diff --git a/phpwhois/whois.asia.php b/operations/phpwhois/whois.asia.php similarity index 100% rename from phpwhois/whois.asia.php rename to operations/phpwhois/whois.asia.php diff --git a/phpwhois/whois.at.php b/operations/phpwhois/whois.at.php similarity index 100% rename from phpwhois/whois.at.php rename to operations/phpwhois/whois.at.php diff --git a/phpwhois/whois.au.php b/operations/phpwhois/whois.au.php similarity index 100% rename from phpwhois/whois.au.php rename to operations/phpwhois/whois.au.php diff --git a/phpwhois/whois.be.php b/operations/phpwhois/whois.be.php similarity index 100% rename from phpwhois/whois.be.php rename to operations/phpwhois/whois.be.php diff --git a/phpwhois/whois.bh.php b/operations/phpwhois/whois.bh.php similarity index 100% rename from phpwhois/whois.bh.php rename to operations/phpwhois/whois.bh.php diff --git a/phpwhois/whois.biz.php b/operations/phpwhois/whois.biz.php similarity index 100% rename from phpwhois/whois.biz.php rename to operations/phpwhois/whois.biz.php diff --git a/phpwhois/whois.br.php b/operations/phpwhois/whois.br.php similarity index 100% rename from phpwhois/whois.br.php rename to operations/phpwhois/whois.br.php diff --git a/phpwhois/whois.ca.php b/operations/phpwhois/whois.ca.php similarity index 100% rename from phpwhois/whois.ca.php rename to operations/phpwhois/whois.ca.php diff --git a/phpwhois/whois.cat.php b/operations/phpwhois/whois.cat.php similarity index 100% rename from phpwhois/whois.cat.php rename to operations/phpwhois/whois.cat.php diff --git a/phpwhois/whois.ch.php b/operations/phpwhois/whois.ch.php similarity index 100% rename from phpwhois/whois.ch.php rename to operations/phpwhois/whois.ch.php diff --git a/phpwhois/whois.cl.php b/operations/phpwhois/whois.cl.php similarity index 100% rename from phpwhois/whois.cl.php rename to operations/phpwhois/whois.cl.php diff --git a/phpwhois/whois.client.php b/operations/phpwhois/whois.client.php similarity index 100% rename from phpwhois/whois.client.php rename to operations/phpwhois/whois.client.php diff --git a/phpwhois/whois.cn.php b/operations/phpwhois/whois.cn.php similarity index 100% rename from phpwhois/whois.cn.php rename to operations/phpwhois/whois.cn.php diff --git a/phpwhois/whois.co.php b/operations/phpwhois/whois.co.php similarity index 100% rename from phpwhois/whois.co.php rename to operations/phpwhois/whois.co.php diff --git a/phpwhois/whois.co.za.php b/operations/phpwhois/whois.co.za.php similarity index 100% rename from phpwhois/whois.co.za.php rename to operations/phpwhois/whois.co.za.php diff --git a/phpwhois/whois.coop.php b/operations/phpwhois/whois.coop.php similarity index 100% rename from phpwhois/whois.coop.php rename to operations/phpwhois/whois.coop.php diff --git a/phpwhois/whois.cz.php b/operations/phpwhois/whois.cz.php similarity index 100% rename from phpwhois/whois.cz.php rename to operations/phpwhois/whois.cz.php diff --git a/phpwhois/whois.de.php b/operations/phpwhois/whois.de.php similarity index 100% rename from phpwhois/whois.de.php rename to operations/phpwhois/whois.de.php diff --git a/phpwhois/whois.edu.php b/operations/phpwhois/whois.edu.php similarity index 100% rename from phpwhois/whois.edu.php rename to operations/phpwhois/whois.edu.php diff --git a/phpwhois/whois.eu.php b/operations/phpwhois/whois.eu.php similarity index 100% rename from phpwhois/whois.eu.php rename to operations/phpwhois/whois.eu.php diff --git a/phpwhois/whois.fi.php b/operations/phpwhois/whois.fi.php similarity index 100% rename from phpwhois/whois.fi.php rename to operations/phpwhois/whois.fi.php diff --git a/phpwhois/whois.fj.php b/operations/phpwhois/whois.fj.php similarity index 100% rename from phpwhois/whois.fj.php rename to operations/phpwhois/whois.fj.php diff --git a/phpwhois/whois.fm.php b/operations/phpwhois/whois.fm.php similarity index 100% rename from phpwhois/whois.fm.php rename to operations/phpwhois/whois.fm.php diff --git a/phpwhois/whois.fr.php b/operations/phpwhois/whois.fr.php similarity index 100% rename from phpwhois/whois.fr.php rename to operations/phpwhois/whois.fr.php diff --git a/phpwhois/whois.gtld.afternic.php b/operations/phpwhois/whois.gtld.afternic.php similarity index 100% rename from phpwhois/whois.gtld.afternic.php rename to operations/phpwhois/whois.gtld.afternic.php diff --git a/phpwhois/whois.gtld.alldomains.php b/operations/phpwhois/whois.gtld.alldomains.php similarity index 100% rename from phpwhois/whois.gtld.alldomains.php rename to operations/phpwhois/whois.gtld.alldomains.php diff --git a/phpwhois/whois.gtld.ascio.php b/operations/phpwhois/whois.gtld.ascio.php similarity index 100% rename from phpwhois/whois.gtld.ascio.php rename to operations/phpwhois/whois.gtld.ascio.php diff --git a/phpwhois/whois.gtld.assorted.php b/operations/phpwhois/whois.gtld.assorted.php similarity index 100% rename from phpwhois/whois.gtld.assorted.php rename to operations/phpwhois/whois.gtld.assorted.php diff --git a/phpwhois/whois.gtld.corporatedomains.php b/operations/phpwhois/whois.gtld.corporatedomains.php similarity index 100% rename from phpwhois/whois.gtld.corporatedomains.php rename to operations/phpwhois/whois.gtld.corporatedomains.php diff --git a/phpwhois/whois.gtld.directnic.php b/operations/phpwhois/whois.gtld.directnic.php similarity index 100% rename from phpwhois/whois.gtld.directnic.php rename to operations/phpwhois/whois.gtld.directnic.php diff --git a/phpwhois/whois.gtld.domaindiscover.php b/operations/phpwhois/whois.gtld.domaindiscover.php similarity index 100% rename from phpwhois/whois.gtld.domaindiscover.php rename to operations/phpwhois/whois.gtld.domaindiscover.php diff --git a/phpwhois/whois.gtld.domainpeople.php b/operations/phpwhois/whois.gtld.domainpeople.php similarity index 100% rename from phpwhois/whois.gtld.domainpeople.php rename to operations/phpwhois/whois.gtld.domainpeople.php diff --git a/phpwhois/whois.gtld.dotster.php b/operations/phpwhois/whois.gtld.dotster.php similarity index 100% rename from phpwhois/whois.gtld.dotster.php rename to operations/phpwhois/whois.gtld.dotster.php diff --git a/phpwhois/whois.gtld.dreamhost.php b/operations/phpwhois/whois.gtld.dreamhost.php similarity index 100% rename from phpwhois/whois.gtld.dreamhost.php rename to operations/phpwhois/whois.gtld.dreamhost.php diff --git a/phpwhois/whois.gtld.enom.php b/operations/phpwhois/whois.gtld.enom.php similarity index 100% rename from phpwhois/whois.gtld.enom.php rename to operations/phpwhois/whois.gtld.enom.php diff --git a/phpwhois/whois.gtld.fabulous.php b/operations/phpwhois/whois.gtld.fabulous.php similarity index 100% rename from phpwhois/whois.gtld.fabulous.php rename to operations/phpwhois/whois.gtld.fabulous.php diff --git a/phpwhois/whois.gtld.fastdomain.php b/operations/phpwhois/whois.gtld.fastdomain.php similarity index 100% rename from phpwhois/whois.gtld.fastdomain.php rename to operations/phpwhois/whois.gtld.fastdomain.php diff --git a/phpwhois/whois.gtld.gandi.php b/operations/phpwhois/whois.gtld.gandi.php similarity index 100% rename from phpwhois/whois.gtld.gandi.php rename to operations/phpwhois/whois.gtld.gandi.php diff --git a/phpwhois/whois.gtld.genericb.php b/operations/phpwhois/whois.gtld.genericb.php similarity index 100% rename from phpwhois/whois.gtld.genericb.php rename to operations/phpwhois/whois.gtld.genericb.php diff --git a/phpwhois/whois.gtld.godaddy.php b/operations/phpwhois/whois.gtld.godaddy.php similarity index 100% rename from phpwhois/whois.gtld.godaddy.php rename to operations/phpwhois/whois.gtld.godaddy.php diff --git a/phpwhois/whois.gtld.iana.php b/operations/phpwhois/whois.gtld.iana.php similarity index 100% rename from phpwhois/whois.gtld.iana.php rename to operations/phpwhois/whois.gtld.iana.php diff --git a/phpwhois/whois.gtld.interdomain.php b/operations/phpwhois/whois.gtld.interdomain.php similarity index 100% rename from phpwhois/whois.gtld.interdomain.php rename to operations/phpwhois/whois.gtld.interdomain.php diff --git a/phpwhois/whois.gtld.itsyourdomain.php b/operations/phpwhois/whois.gtld.itsyourdomain.php similarity index 100% rename from phpwhois/whois.gtld.itsyourdomain.php rename to operations/phpwhois/whois.gtld.itsyourdomain.php diff --git a/phpwhois/whois.gtld.joker.php b/operations/phpwhois/whois.gtld.joker.php similarity index 100% rename from phpwhois/whois.gtld.joker.php rename to operations/phpwhois/whois.gtld.joker.php diff --git a/phpwhois/whois.gtld.markmonitor.php b/operations/phpwhois/whois.gtld.markmonitor.php similarity index 100% rename from phpwhois/whois.gtld.markmonitor.php rename to operations/phpwhois/whois.gtld.markmonitor.php diff --git a/phpwhois/whois.gtld.melbourneit.php b/operations/phpwhois/whois.gtld.melbourneit.php similarity index 100% rename from phpwhois/whois.gtld.melbourneit.php rename to operations/phpwhois/whois.gtld.melbourneit.php diff --git a/phpwhois/whois.gtld.moniker.php b/operations/phpwhois/whois.gtld.moniker.php similarity index 100% rename from phpwhois/whois.gtld.moniker.php rename to operations/phpwhois/whois.gtld.moniker.php diff --git a/phpwhois/whois.gtld.name.php b/operations/phpwhois/whois.gtld.name.php similarity index 100% rename from phpwhois/whois.gtld.name.php rename to operations/phpwhois/whois.gtld.name.php diff --git a/phpwhois/whois.gtld.nameintel.php b/operations/phpwhois/whois.gtld.nameintel.php similarity index 100% rename from phpwhois/whois.gtld.nameintel.php rename to operations/phpwhois/whois.gtld.nameintel.php diff --git a/phpwhois/whois.gtld.namejuice.php b/operations/phpwhois/whois.gtld.namejuice.php similarity index 100% rename from phpwhois/whois.gtld.namejuice.php rename to operations/phpwhois/whois.gtld.namejuice.php diff --git a/phpwhois/whois.gtld.nameking.php b/operations/phpwhois/whois.gtld.nameking.php similarity index 100% rename from phpwhois/whois.gtld.nameking.php rename to operations/phpwhois/whois.gtld.nameking.php diff --git a/phpwhois/whois.gtld.names4ever.php b/operations/phpwhois/whois.gtld.names4ever.php similarity index 100% rename from phpwhois/whois.gtld.names4ever.php rename to operations/phpwhois/whois.gtld.names4ever.php diff --git a/phpwhois/whois.gtld.namevault.php b/operations/phpwhois/whois.gtld.namevault.php similarity index 100% rename from phpwhois/whois.gtld.namevault.php rename to operations/phpwhois/whois.gtld.namevault.php diff --git a/phpwhois/whois.gtld.networksolutions.php b/operations/phpwhois/whois.gtld.networksolutions.php similarity index 100% rename from phpwhois/whois.gtld.networksolutions.php rename to operations/phpwhois/whois.gtld.networksolutions.php diff --git a/phpwhois/whois.gtld.nicco.php b/operations/phpwhois/whois.gtld.nicco.php similarity index 100% rename from phpwhois/whois.gtld.nicco.php rename to operations/phpwhois/whois.gtld.nicco.php diff --git a/phpwhois/whois.gtld.nicline.php b/operations/phpwhois/whois.gtld.nicline.php similarity index 100% rename from phpwhois/whois.gtld.nicline.php rename to operations/phpwhois/whois.gtld.nicline.php diff --git a/phpwhois/whois.gtld.onlinenic.php b/operations/phpwhois/whois.gtld.onlinenic.php similarity index 100% rename from phpwhois/whois.gtld.onlinenic.php rename to operations/phpwhois/whois.gtld.onlinenic.php diff --git a/phpwhois/whois.gtld.opensrs.php b/operations/phpwhois/whois.gtld.opensrs.php similarity index 100% rename from phpwhois/whois.gtld.opensrs.php rename to operations/phpwhois/whois.gtld.opensrs.php diff --git a/phpwhois/whois.gtld.ovh.php b/operations/phpwhois/whois.gtld.ovh.php similarity index 100% rename from phpwhois/whois.gtld.ovh.php rename to operations/phpwhois/whois.gtld.ovh.php diff --git a/phpwhois/whois.gtld.php b/operations/phpwhois/whois.gtld.php similarity index 100% rename from phpwhois/whois.gtld.php rename to operations/phpwhois/whois.gtld.php diff --git a/phpwhois/whois.gtld.psiusa.php b/operations/phpwhois/whois.gtld.psiusa.php similarity index 100% rename from phpwhois/whois.gtld.psiusa.php rename to operations/phpwhois/whois.gtld.psiusa.php diff --git a/phpwhois/whois.gtld.publicdomainregistry.php b/operations/phpwhois/whois.gtld.publicdomainregistry.php similarity index 100% rename from phpwhois/whois.gtld.publicdomainregistry.php rename to operations/phpwhois/whois.gtld.publicdomainregistry.php diff --git a/phpwhois/whois.gtld.register.php b/operations/phpwhois/whois.gtld.register.php similarity index 100% rename from phpwhois/whois.gtld.register.php rename to operations/phpwhois/whois.gtld.register.php diff --git a/phpwhois/whois.gtld.rrpproxy.php b/operations/phpwhois/whois.gtld.rrpproxy.php similarity index 100% rename from phpwhois/whois.gtld.rrpproxy.php rename to operations/phpwhois/whois.gtld.rrpproxy.php diff --git a/phpwhois/whois.gtld.schlund.php b/operations/phpwhois/whois.gtld.schlund.php similarity index 100% rename from phpwhois/whois.gtld.schlund.php rename to operations/phpwhois/whois.gtld.schlund.php diff --git a/phpwhois/whois.gtld.srsplus.php b/operations/phpwhois/whois.gtld.srsplus.php similarity index 100% rename from phpwhois/whois.gtld.srsplus.php rename to operations/phpwhois/whois.gtld.srsplus.php diff --git a/phpwhois/whois.gtld.tmagnic.php b/operations/phpwhois/whois.gtld.tmagnic.php similarity index 100% rename from phpwhois/whois.gtld.tmagnic.php rename to operations/phpwhois/whois.gtld.tmagnic.php diff --git a/phpwhois/whois.gtld.tvcorp.php b/operations/phpwhois/whois.gtld.tvcorp.php similarity index 100% rename from phpwhois/whois.gtld.tvcorp.php rename to operations/phpwhois/whois.gtld.tvcorp.php diff --git a/phpwhois/whois.gtld.wildwestdomains.php b/operations/phpwhois/whois.gtld.wildwestdomains.php similarity index 100% rename from phpwhois/whois.gtld.wildwestdomains.php rename to operations/phpwhois/whois.gtld.wildwestdomains.php diff --git a/phpwhois/whois.hu.php b/operations/phpwhois/whois.hu.php similarity index 100% rename from phpwhois/whois.hu.php rename to operations/phpwhois/whois.hu.php diff --git a/phpwhois/whois.icon.png b/operations/phpwhois/whois.icon.png similarity index 100% rename from phpwhois/whois.icon.png rename to operations/phpwhois/whois.icon.png diff --git a/phpwhois/whois.idna.php b/operations/phpwhois/whois.idna.php similarity index 100% rename from phpwhois/whois.idna.php rename to operations/phpwhois/whois.idna.php diff --git a/phpwhois/whois.ie.php b/operations/phpwhois/whois.ie.php similarity index 100% rename from phpwhois/whois.ie.php rename to operations/phpwhois/whois.ie.php diff --git a/phpwhois/whois.il.php b/operations/phpwhois/whois.il.php similarity index 100% rename from phpwhois/whois.il.php rename to operations/phpwhois/whois.il.php diff --git a/phpwhois/whois.in.php b/operations/phpwhois/whois.in.php similarity index 100% rename from phpwhois/whois.in.php rename to operations/phpwhois/whois.in.php diff --git a/phpwhois/whois.info.php b/operations/phpwhois/whois.info.php similarity index 100% rename from phpwhois/whois.info.php rename to operations/phpwhois/whois.info.php diff --git a/phpwhois/whois.int.php b/operations/phpwhois/whois.int.php similarity index 100% rename from phpwhois/whois.int.php rename to operations/phpwhois/whois.int.php diff --git a/phpwhois/whois.ip.afrinic.php b/operations/phpwhois/whois.ip.afrinic.php similarity index 100% rename from phpwhois/whois.ip.afrinic.php rename to operations/phpwhois/whois.ip.afrinic.php diff --git a/phpwhois/whois.ip.apnic.php b/operations/phpwhois/whois.ip.apnic.php similarity index 100% rename from phpwhois/whois.ip.apnic.php rename to operations/phpwhois/whois.ip.apnic.php diff --git a/phpwhois/whois.ip.arin.php b/operations/phpwhois/whois.ip.arin.php similarity index 100% rename from phpwhois/whois.ip.arin.php rename to operations/phpwhois/whois.ip.arin.php diff --git a/phpwhois/whois.ip.krnic.php b/operations/phpwhois/whois.ip.krnic.php similarity index 100% rename from phpwhois/whois.ip.krnic.php rename to operations/phpwhois/whois.ip.krnic.php diff --git a/phpwhois/whois.ip.lacnic.php b/operations/phpwhois/whois.ip.lacnic.php similarity index 100% rename from phpwhois/whois.ip.lacnic.php rename to operations/phpwhois/whois.ip.lacnic.php diff --git a/phpwhois/whois.ip.lib.php b/operations/phpwhois/whois.ip.lib.php similarity index 100% rename from phpwhois/whois.ip.lib.php rename to operations/phpwhois/whois.ip.lib.php diff --git a/phpwhois/whois.ip.php b/operations/phpwhois/whois.ip.php similarity index 100% rename from phpwhois/whois.ip.php rename to operations/phpwhois/whois.ip.php diff --git a/phpwhois/whois.ip.ripe.php b/operations/phpwhois/whois.ip.ripe.php similarity index 100% rename from phpwhois/whois.ip.ripe.php rename to operations/phpwhois/whois.ip.ripe.php diff --git a/phpwhois/whois.ir.php b/operations/phpwhois/whois.ir.php similarity index 100% rename from phpwhois/whois.ir.php rename to operations/phpwhois/whois.ir.php diff --git a/phpwhois/whois.is.php b/operations/phpwhois/whois.is.php similarity index 100% rename from phpwhois/whois.is.php rename to operations/phpwhois/whois.is.php diff --git a/phpwhois/whois.it.php b/operations/phpwhois/whois.it.php similarity index 100% rename from phpwhois/whois.it.php rename to operations/phpwhois/whois.it.php diff --git a/phpwhois/whois.jp.php b/operations/phpwhois/whois.jp.php similarity index 100% rename from phpwhois/whois.jp.php rename to operations/phpwhois/whois.jp.php diff --git a/phpwhois/whois.lt.php b/operations/phpwhois/whois.lt.php similarity index 100% rename from phpwhois/whois.lt.php rename to operations/phpwhois/whois.lt.php diff --git a/phpwhois/whois.lu.php b/operations/phpwhois/whois.lu.php similarity index 100% rename from phpwhois/whois.lu.php rename to operations/phpwhois/whois.lu.php diff --git a/phpwhois/whois.ly.php b/operations/phpwhois/whois.ly.php similarity index 100% rename from phpwhois/whois.ly.php rename to operations/phpwhois/whois.ly.php diff --git a/phpwhois/whois.main.php b/operations/phpwhois/whois.main.php similarity index 100% rename from phpwhois/whois.main.php rename to operations/phpwhois/whois.main.php diff --git a/phpwhois/whois.me.php b/operations/phpwhois/whois.me.php similarity index 100% rename from phpwhois/whois.me.php rename to operations/phpwhois/whois.me.php diff --git a/phpwhois/whois.mobi.php b/operations/phpwhois/whois.mobi.php similarity index 100% rename from phpwhois/whois.mobi.php rename to operations/phpwhois/whois.mobi.php diff --git a/phpwhois/whois.museum.php b/operations/phpwhois/whois.museum.php similarity index 100% rename from phpwhois/whois.museum.php rename to operations/phpwhois/whois.museum.php diff --git a/phpwhois/whois.mx.php b/operations/phpwhois/whois.mx.php similarity index 100% rename from phpwhois/whois.mx.php rename to operations/phpwhois/whois.mx.php diff --git a/phpwhois/whois.name.php b/operations/phpwhois/whois.name.php similarity index 100% rename from phpwhois/whois.name.php rename to operations/phpwhois/whois.name.php diff --git a/phpwhois/whois.nl.php b/operations/phpwhois/whois.nl.php similarity index 100% rename from phpwhois/whois.nl.php rename to operations/phpwhois/whois.nl.php diff --git a/phpwhois/whois.nu.php b/operations/phpwhois/whois.nu.php similarity index 100% rename from phpwhois/whois.nu.php rename to operations/phpwhois/whois.nu.php diff --git a/phpwhois/whois.nz.php b/operations/phpwhois/whois.nz.php similarity index 100% rename from phpwhois/whois.nz.php rename to operations/phpwhois/whois.nz.php diff --git a/phpwhois/whois.org.php b/operations/phpwhois/whois.org.php similarity index 100% rename from phpwhois/whois.org.php rename to operations/phpwhois/whois.org.php diff --git a/phpwhois/whois.org.za.php b/operations/phpwhois/whois.org.za.php similarity index 100% rename from phpwhois/whois.org.za.php rename to operations/phpwhois/whois.org.za.php diff --git a/phpwhois/whois.parser.php b/operations/phpwhois/whois.parser.php similarity index 100% rename from phpwhois/whois.parser.php rename to operations/phpwhois/whois.parser.php diff --git a/phpwhois/whois.pl.php b/operations/phpwhois/whois.pl.php similarity index 100% rename from phpwhois/whois.pl.php rename to operations/phpwhois/whois.pl.php diff --git a/phpwhois/whois.pro.php b/operations/phpwhois/whois.pro.php similarity index 100% rename from phpwhois/whois.pro.php rename to operations/phpwhois/whois.pro.php diff --git a/phpwhois/whois.pt.php b/operations/phpwhois/whois.pt.php similarity index 100% rename from phpwhois/whois.pt.php rename to operations/phpwhois/whois.pt.php diff --git a/phpwhois/whois.ro.php b/operations/phpwhois/whois.ro.php similarity index 100% rename from phpwhois/whois.ro.php rename to operations/phpwhois/whois.ro.php diff --git a/phpwhois/whois.ru.php b/operations/phpwhois/whois.ru.php similarity index 100% rename from phpwhois/whois.ru.php rename to operations/phpwhois/whois.ru.php diff --git a/phpwhois/whois.rwhois.php b/operations/phpwhois/whois.rwhois.php similarity index 100% rename from phpwhois/whois.rwhois.php rename to operations/phpwhois/whois.rwhois.php diff --git a/phpwhois/whois.sc.php b/operations/phpwhois/whois.sc.php similarity index 100% rename from phpwhois/whois.sc.php rename to operations/phpwhois/whois.sc.php diff --git a/phpwhois/whois.se.php b/operations/phpwhois/whois.se.php similarity index 100% rename from phpwhois/whois.se.php rename to operations/phpwhois/whois.se.php diff --git a/phpwhois/whois.servers.php b/operations/phpwhois/whois.servers.php similarity index 100% rename from phpwhois/whois.servers.php rename to operations/phpwhois/whois.servers.php diff --git a/phpwhois/whois.si.php b/operations/phpwhois/whois.si.php similarity index 100% rename from phpwhois/whois.si.php rename to operations/phpwhois/whois.si.php diff --git a/phpwhois/whois.su.php b/operations/phpwhois/whois.su.php similarity index 100% rename from phpwhois/whois.su.php rename to operations/phpwhois/whois.su.php diff --git a/phpwhois/whois.tel.php b/operations/phpwhois/whois.tel.php similarity index 100% rename from phpwhois/whois.tel.php rename to operations/phpwhois/whois.tel.php diff --git a/phpwhois/whois.travel.php b/operations/phpwhois/whois.travel.php similarity index 100% rename from phpwhois/whois.travel.php rename to operations/phpwhois/whois.travel.php diff --git a/phpwhois/whois.uk.php b/operations/phpwhois/whois.uk.php similarity index 100% rename from phpwhois/whois.uk.php rename to operations/phpwhois/whois.uk.php diff --git a/phpwhois/whois.us.php b/operations/phpwhois/whois.us.php similarity index 100% rename from phpwhois/whois.us.php rename to operations/phpwhois/whois.us.php diff --git a/phpwhois/whois.utils.php b/operations/phpwhois/whois.utils.php similarity index 100% rename from phpwhois/whois.utils.php rename to operations/phpwhois/whois.utils.php diff --git a/phpwhois/whois.ve.php b/operations/phpwhois/whois.ve.php similarity index 100% rename from phpwhois/whois.ve.php rename to operations/phpwhois/whois.ve.php diff --git a/phpwhois/whois.ws.php b/operations/phpwhois/whois.ws.php similarity index 100% rename from phpwhois/whois.ws.php rename to operations/phpwhois/whois.ws.php diff --git a/phpwhois/whois.xxx.php b/operations/phpwhois/whois.xxx.php similarity index 100% rename from phpwhois/whois.xxx.php rename to operations/phpwhois/whois.xxx.php diff --git a/phpwhois/whois.zanet.php b/operations/phpwhois/whois.zanet.php similarity index 100% rename from phpwhois/whois.zanet.php rename to operations/phpwhois/whois.zanet.php From 50d94edb6a0c2ccb17ca4d869258b92c2e7bfa6b Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 12:46:12 -0600 Subject: [PATCH 02/11] fix select Classes to make project object oriented --- index.php | 12 +- operations/A.php | 1 + operations/AAAA.php | 1 + operations/All.php | 1 + operations/Mx.php | 1 + operations/OperationInterface.php | 1 + operations/Port.php | 22 ++++ operations/blacklist.php | 175 +++++++++++++++--------------- operations/getPort.php | 28 ----- operations/index.php | 53 ++++++++- 10 files changed, 171 insertions(+), 124 deletions(-) create mode 100644 operations/Port.php delete mode 100644 operations/getPort.php diff --git a/index.php b/index.php index b7b5793..aa79f3f 100644 --- a/index.php +++ b/index.php @@ -43,15 +43,15 @@
Domain:  diff --git a/operations/A.php b/operations/A.php index aa9caef..ea6d478 100644 --- a/operations/A.php +++ b/operations/A.php @@ -1,5 +1,6 @@ port = $port; + } + + function getOutput($hostname) { + $fp = fsockopen($hostname, $this->port, $errno, $errstr, 5); + if ($fp) { + $result = 'open'; + fclose($fp); + } else { + $result=$protocole.'closed';; + } + return '[{"Port '.$this->port.'": "Is '.$result.'"}]'; + } +} + +?> diff --git a/operations/blacklist.php b/operations/blacklist.php index 6e1a988..e9a3534 100644 --- a/operations/blacklist.php +++ b/operations/blacklist.php @@ -1,93 +1,96 @@ dnsbllookup($hostname); + } else{ + return self::ERROR_OBJECT; } } } diff --git a/operations/getPort.php b/operations/getPort.php deleted file mode 100644 index 7b41168..0000000 --- a/operations/getPort.php +++ /dev/null @@ -1,28 +0,0 @@ - "SSH", 25 => "SMTP", 53 => "DNS", 80 => "HTTP", 443 => "HTTPS", 465 => "SMTPS", 587 => "IMAP", 993 => "IMAPS", 5222 => "XMPP Jabber", 5269 => "Server Jabber"); - foreach ($ports as $port => $protocole) { - $fp = @fsockopen($hostname, $port, $errno, $errstr, 5); - if ($fp) { - $result.=$protocole."\": \" Port is open\",\""; - @fclose($fp); - } else { - $result.=$protocole."\": \" Port is closed\",\""; - } - } - echo "[{\""; - echo $hostname."\": \"\",\""; - echo $result; - echo "end of list\": \"end of list\"}]"; -} - -$domain=$_GET['domain']; -if(isset($domain) && $domain!=null){ - if(filter_var($domain,FILTER_VALIDATE_DOMAIN) or filter_var($domain,FILTER_VALIDATE_IP)){ - echo getPorts($domain); - }else{ - echo "Please enter a valid domain/IP"; - } -} -?> diff --git a/operations/index.php b/operations/index.php index b535f72..42da81e 100644 --- a/operations/index.php +++ b/operations/index.php @@ -5,9 +5,54 @@ header('Content-Type: application/json'); header("Access-Control-Allow-Origin: *"); +$domain = $_GET['domain']; +if(isset($domain) && $domain!=null){ -$object = new Ip; -$object->getDNS($_GET['domain']); - -print_r($object->getOutput) + if(filter_var($domain,FILTER_VALIDATE_DOMAIN) or filter_var($domain,FILTER_VALIDATE_IP)){ + switch ($_GET['request']) { + case 'a': + include_once('./A.php'); + $object = new A; + break; + case 'aaaa': + include_once('./AAAA.php'); + $object = new AAAA; + break; + case 'all': + include_once('./All.php'); + $object = new All; + break; + case 'blacklist': + include_once('./Blacklist.php'); + $object = new Blacklist; + break; + case 'port': + include_once('./Port.php'); + $object = new Port('80'); + break; + case 'whois': + include_once('./AAAA.php'); + $object = new AAAA; + break; + case 'hinfo': + include_once('./AAAA.php'); + $object = new AAAA; + break; + case 'mx': + include_once('./AAAA.php'); + $object = new AAAA; + break; + case 'txt': + include_once('./AAAA.php'); + $object = new AAAA; + break; + default: + # code... + break; + } + print_r($object->getOutput($domain)); + } else{ + echo '[{"error": "Please enter a valid domain/IP"}]'; + } +} ?> \ No newline at end of file From 547b3dab823c9b2a00e83554aaea3edb28e3c165 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 12:46:50 -0600 Subject: [PATCH 03/11] change blacklist file name --- operations/blacklist.php | 97 ---------------------------------------- 1 file changed, 97 deletions(-) delete mode 100644 operations/blacklist.php diff --git a/operations/blacklist.php b/operations/blacklist.php deleted file mode 100644 index e9a3534..0000000 --- a/operations/blacklist.php +++ /dev/null @@ -1,97 +0,0 @@ -dnsbllookup($hostname); - } else{ - return self::ERROR_OBJECT; - } - } -} -?> \ No newline at end of file From fa561adf9a7a8271987fa99d531b0f76367229fe Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 12:47:25 -0600 Subject: [PATCH 04/11] add blacklist file name --- operations/Blacklist.php | 97 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 operations/Blacklist.php diff --git a/operations/Blacklist.php b/operations/Blacklist.php new file mode 100644 index 0000000..e9a3534 --- /dev/null +++ b/operations/Blacklist.php @@ -0,0 +1,97 @@ +dnsbllookup($hostname); + } else{ + return self::ERROR_OBJECT; + } + } +} +?> \ No newline at end of file From 8976e626d651f2bc218b11a93feaa54f009a79c2 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 12:59:59 -0600 Subject: [PATCH 05/11] add reverse host lookup --- operations/Hinfo.php | 1 + operations/Mx.php | 2 +- operations/ReverseLookup.php | 10 ++++++++++ operations/Txt.php | 1 + operations/Whois.php | 18 ++++++++++++++++++ operations/getWhois.php | 12 ------------ operations/index.php | 32 ++++++++++++++++++-------------- 7 files changed, 49 insertions(+), 27 deletions(-) create mode 100644 operations/ReverseLookup.php create mode 100644 operations/Whois.php delete mode 100644 operations/getWhois.php diff --git a/operations/Hinfo.php b/operations/Hinfo.php index ad66420..72f9513 100644 --- a/operations/Hinfo.php +++ b/operations/Hinfo.php @@ -1,4 +1,5 @@ \ No newline at end of file diff --git a/operations/Txt.php b/operations/Txt.php index b1790bf..3559cb0 100644 --- a/operations/Txt.php +++ b/operations/Txt.php @@ -1,4 +1,5 @@ lookup($query); + $output = "[\n"; + $output .= json_encode($result['rawdata'], JSON_PRETTY_PRINT); + $output .= "\n]"; + return $output; + } +} +?> \ No newline at end of file diff --git a/operations/getWhois.php b/operations/getWhois.php deleted file mode 100644 index f50bd73..0000000 --- a/operations/getWhois.php +++ /dev/null @@ -1,12 +0,0 @@ -lookup($query); -echo "[\n"; -echo json_encode($result['rawdata'], JSON_PRETTY_PRINT); -echo "\n]"; -?> \ No newline at end of file diff --git a/operations/index.php b/operations/index.php index 42da81e..6891b53 100644 --- a/operations/index.php +++ b/operations/index.php @@ -26,28 +26,32 @@ include_once('./Blacklist.php'); $object = new Blacklist; break; - case 'port': - include_once('./Port.php'); - $object = new Port('80'); - break; - case 'whois': - include_once('./AAAA.php'); - $object = new AAAA; - break; case 'hinfo': - include_once('./AAAA.php'); - $object = new AAAA; + include_once('./Hinfo.php'); + $object = new Hinfo; break; case 'mx': - include_once('./AAAA.php'); - $object = new AAAA; + include_once('./Mx.php'); + $object = new Mx; + break; + case 'port': + include_once('./Port.php'); + $object = new Port($_GET['port']); + break; + case 'reverseLookup': + include_once('./ReverseLookup.php'); + $object = new ReverseLookup; break; case 'txt': - include_once('./AAAA.php'); + include_once('./Txt.php'); $object = new AAAA; break; + case 'whois': + include_once('./Whois.php'); + $object = new Whois; + break; default: - # code... + echo '[{"error": "Please check a valid DNS type"}]'; break; } print_r($object->getOutput($domain)); From 1c67f7e001014e7da82f925bca2c7f55040a7db6 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 13:55:31 -0600 Subject: [PATCH 06/11] fix some whoIs warnings --- index.php | 7 ++++--- javascript/main.js | 17 +++++++++++++---- operations/All.php | 5 ++++- operations/ReverseLookup.php | 9 +++++++-- operations/Whois.php | 2 +- operations/index.php | 2 +- operations/phpwhois/whois.client.php | 2 +- operations/phpwhois/whois.idna.php | 2 +- operations/phpwhois/whois.main.php | 2 +- 9 files changed, 33 insertions(+), 15 deletions(-) diff --git a/index.php b/index.php index aa79f3f..df6b705 100644 --- a/index.php +++ b/index.php @@ -42,18 +42,19 @@
Domain:  - - + + +
diff --git a/javascript/main.js b/javascript/main.js index 443918a..d7103ac 100644 --- a/javascript/main.js +++ b/javascript/main.js @@ -10,7 +10,7 @@ window.onload = function() { var requestNum = 0; //Choose the correct script to run based on dropdown selection document.getElementById("submit").onclick = function callRoute() { - returnDnsDetails(document.getElementById("domain").value, document.getElementById("file").value) + returnDnsDetails(document.getElementById("domain").value, document.getElementById("file").value, document.getElementById("port").value) } function requestTitle(callType){ @@ -33,7 +33,7 @@ window.onload = function() { case "whois": return "Who Is Lookup"; break; - case "hInfo": + case "hinfo": return "H Info Lookup"; break; case "blacklist": @@ -49,7 +49,7 @@ window.onload = function() { } //Get DNS Details - function returnDnsDetails(domain, callType) { + function returnDnsDetails(domain, callType, port) { //checks for valid input if (domain.length == 0) { document.getElementById("txtHint").innerHTML = " Please enter a valid domain"; @@ -70,7 +70,7 @@ window.onload = function() { } } document.getElementById("loading").innerHTML = '
' - xmlhttp.open("GET", "operations?domain=" + domain + "&request=" + callType, true); + xmlhttp.open("GET", "operations?domain=" + domain + "&request=" + callType + "&port=" + port, true); xmlhttp.send(); } @@ -118,4 +118,13 @@ window.onload = function() { .replace(/"/g, """) .replace(/'/g, "'"); } + } + +function showAdditionalFields() { + if(document.getElementById("file").value === 'port') { + document.getElementById("port-container").style.visibility="visible" ; + } else { + document.getElementById("port-container").style.visibility="hidden"; + } +} \ No newline at end of file diff --git a/operations/All.php b/operations/All.php index 7c36161..5119a11 100644 --- a/operations/All.php +++ b/operations/All.php @@ -3,7 +3,10 @@ class All implements OperationInterface{ public function getOutput($hostname){ - $response = dns_get_record ($hostname , DNS_ALL); + $response = @dns_get_record($hostname , DNS_ALL); + if($response == false) { + $response = @dns_get_record($hostname , DNS_ANY); + } return json_encode($response, JSON_PRETTY_PRINT); } } diff --git a/operations/ReverseLookup.php b/operations/ReverseLookup.php index 02fc619..9fbdf3e 100644 --- a/operations/ReverseLookup.php +++ b/operations/ReverseLookup.php @@ -3,8 +3,13 @@ class ReverseLookup implements OperationInterface{ public function getOutput($ip){ - $response = gethostbyaddr($ip); - return '[{"'.$ip.'": "'.$response.'"}]'; + if((bool)ip2long($ip)){ + $response = gethostbyaddr($ip); + return '[{"'.$ip.'": "'.$response.'"}]'; + } else { + return '[{"error": "Please enter a valid IP"}]'; + } + } } ?> \ No newline at end of file diff --git a/operations/Whois.php b/operations/Whois.php index 762b018..641e747 100644 --- a/operations/Whois.php +++ b/operations/Whois.php @@ -4,7 +4,7 @@ include_once('./phpwhois/whois.utils.php'); include_once('./OperationInterface.php'); -class Whois implements OperationInterface{ +class WhoisOutput implements OperationInterface{ public function getOutput($hostname){ $whois = new Whois(); $query = $_GET['domain']; diff --git a/operations/index.php b/operations/index.php index 6891b53..4e4e586 100644 --- a/operations/index.php +++ b/operations/index.php @@ -48,7 +48,7 @@ break; case 'whois': include_once('./Whois.php'); - $object = new Whois; + $object = new WhoisOutput; break; default: echo '[{"error": "Please check a valid DNS type"}]'; diff --git a/operations/phpwhois/whois.client.php b/operations/phpwhois/whois.client.php index 7ebbd9e..ecaf6a8 100644 --- a/operations/phpwhois/whois.client.php +++ b/operations/phpwhois/whois.client.php @@ -68,7 +68,7 @@ class WhoisClient { /* * Constructor function */ - function WhoisClient () { + function __construct () { // Load DATA array @require('whois.servers.php'); diff --git a/operations/phpwhois/whois.idna.php b/operations/phpwhois/whois.idna.php index ed2bae2..4aa3c0b 100644 --- a/operations/phpwhois/whois.idna.php +++ b/operations/phpwhois/whois.idna.php @@ -91,7 +91,7 @@ class idna_convert var $_strict_mode = false; // Behave strict or not // The constructor - function idna_convert($options = false) + function __construct($options = false) { $this->slast = $this->_sbase + $this->_lcount * $this->_vcount * $this->_tcount; if (function_exists('file_get_contents')) { diff --git a/operations/phpwhois/whois.main.php b/operations/phpwhois/whois.main.php index 241afea..b7895ac 100644 --- a/operations/phpwhois/whois.main.php +++ b/operations/phpwhois/whois.main.php @@ -48,7 +48,7 @@ class Whois extends WhoisClient /* * Constructor function */ - function Whois() + function __construct() { // Load DATA array @require('whois.servers.php'); From 1b219566889babd0842b2e83a9ed8c032f298bc5 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 14:04:44 -0600 Subject: [PATCH 07/11] fix some whoIs errors for php 7 --- operations/phpwhois/whois.parser.php | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/operations/phpwhois/whois.parser.php b/operations/phpwhois/whois.parser.php index 5ce273b..286b32b 100644 --- a/operations/phpwhois/whois.parser.php +++ b/operations/phpwhois/whois.parser.php @@ -366,8 +366,9 @@ function generic_parser_b ( $rawdata, $items = false, $dateformat='mdy', $hasreg $var = '$r'.getvarname($field); $itm = trim(substr($val,$pos+strlen($match))); - if ($itm!='') - eval($var.'="'.str_replace('"','\"',$itm).'";'); + if ($itm!='') { + $$var = str_replace('"','\"',$itm); + } } if (!$scanall) @@ -377,15 +378,20 @@ function generic_parser_b ( $rawdata, $items = false, $dateformat='mdy', $hasreg } } -if (empty($r)) - { - if ($hasreg) $r['registered'] = 'no'; - } +if (empty($r)){ + if ($hasreg) { + $r = []; + $r['registered'] = 'no'; + } +} else { - if ($hasreg) $r['registered'] = 'yes'; + if ($hasreg) { + $r = []; + $r['registered'] = 'yes'; + $r = format_dates($r, $dateformat); + } - $r = format_dates($r, $dateformat); } return $r; From d2278342520a654d2d8ac119f4395755ee07b65b Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 14:13:55 -0600 Subject: [PATCH 08/11] remove unecessary check --- operations/index.php | 97 +++++++++++++++++++++----------------------- 1 file changed, 47 insertions(+), 50 deletions(-) diff --git a/operations/index.php b/operations/index.php index 4e4e586..1a19ddc 100644 --- a/operations/index.php +++ b/operations/index.php @@ -6,57 +6,54 @@ header("Access-Control-Allow-Origin: *"); $domain = $_GET['domain']; -if(isset($domain) && $domain!=null){ +if(isset($domain) && $domain !=null){ - if(filter_var($domain,FILTER_VALIDATE_DOMAIN) or filter_var($domain,FILTER_VALIDATE_IP)){ - switch ($_GET['request']) { - case 'a': - include_once('./A.php'); - $object = new A; - break; - case 'aaaa': - include_once('./AAAA.php'); - $object = new AAAA; - break; - case 'all': - include_once('./All.php'); - $object = new All; - break; - case 'blacklist': - include_once('./Blacklist.php'); - $object = new Blacklist; - break; - case 'hinfo': - include_once('./Hinfo.php'); - $object = new Hinfo; - break; - case 'mx': - include_once('./Mx.php'); - $object = new Mx; - break; - case 'port': - include_once('./Port.php'); - $object = new Port($_GET['port']); - break; - case 'reverseLookup': - include_once('./ReverseLookup.php'); - $object = new ReverseLookup; - break; - case 'txt': - include_once('./Txt.php'); - $object = new AAAA; - break; - case 'whois': - include_once('./Whois.php'); - $object = new WhoisOutput; - break; - default: - echo '[{"error": "Please check a valid DNS type"}]'; - break; - } - print_r($object->getOutput($domain)); - } else{ - echo '[{"error": "Please enter a valid domain/IP"}]'; + switch ($_GET['request']) { + case 'a': + include_once('./A.php'); + $object = new A; + break; + case 'aaaa': + include_once('./AAAA.php'); + $object = new AAAA; + break; + case 'all': + include_once('./All.php'); + $object = new All; + break; + case 'blacklist': + include_once('./Blacklist.php'); + $object = new Blacklist; + break; + case 'hinfo': + include_once('./Hinfo.php'); + $object = new Hinfo; + break; + case 'mx': + include_once('./Mx.php'); + $object = new Mx; + break; + case 'port': + include_once('./Port.php'); + $object = new Port($_GET['port']); + break; + case 'reverseLookup': + include_once('./ReverseLookup.php'); + $object = new ReverseLookup; + break; + case 'txt': + include_once('./Txt.php'); + $object = new AAAA; + break; + case 'whois': + include_once('./Whois.php'); + $object = new WhoisOutput; + break; + default: + echo '[{"error": "Please check a valid DNS type"}]'; + break; } + print_r($object->getOutput($domain)); + } ?> \ No newline at end of file From 057ba349208d34aeec0c02e5303143d46857c053 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 14:34:00 -0600 Subject: [PATCH 09/11] return simple words in blacklist check --- operations/Blacklist.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/operations/Blacklist.php b/operations/Blacklist.php index e9a3534..7cf6391 100644 --- a/operations/Blacklist.php +++ b/operations/Blacklist.php @@ -64,10 +64,10 @@ function dnsbllookup($ip){ $listed = ''; foreach(self::LOOKUP_HOSTS as $host){ if(checkdnsrr($reverse_ip.".".$host.".","A")){ - $listed.=$host."\": \"✖✖✖✖✖✖✖✖\",\""; + $listed.=$host."\": \"FAIL. The domain is listed on a blacklist\",\""; } else { - $listed.=$host."\": \"✔\",\""; + $listed.=$host."\": \"OK\",\""; } } } From 2fa9ad15d03799331f1d02f99f03a08344e6fece Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 14:38:45 -0600 Subject: [PATCH 10/11] fix copy paste error --- operations/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/operations/index.php b/operations/index.php index 1a19ddc..da238d5 100644 --- a/operations/index.php +++ b/operations/index.php @@ -43,7 +43,7 @@ break; case 'txt': include_once('./Txt.php'); - $object = new AAAA; + $object = new Txt; break; case 'whois': include_once('./Whois.php'); From 5432c7f2ceb0f75b969a3fcb9fe22cb6b6f04ce1 Mon Sep 17 00:00:00 2001 From: Charles Barnes Date: Mon, 21 Jan 2019 14:50:38 -0600 Subject: [PATCH 11/11] add favicon --- favicon.ico | Bin 0 -> 1150 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 favicon.ico diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..a9aee386f6d378613a4a96e6f5e06d5a1e6ef598 GIT binary patch literal 1150 zcmeIxu}VU56vy#n2}P#dvZRtk3?dSTYH0`|$}NOM2#1E2Xt9POT7qj3m_+1I4uaqd z^bEa?Yj0rRpZ9Nst79pjd;aJA@8N$v7tKO^JpNEsk;}U0BMF_iyVQ_{ba!3tp+F*TvCiZZG2BLVy8h-a*lOGLhu78t!9rGxn z4G-@qVFydlS?WK<0^*o(@t*jG8nzHd2amW#3rXDI15c=81_kI@XR(4~OylSIS=X_T zE0i$>_3Hd(X#WoCsX#M*!80D*dXadJuB-XPEcCnPuno;iy{aW#o*`