home *** CD-ROM | disk | FTP | other *** search
/ Windows News 2006 October / wn148cd2.iso / Windows / S'informer / Netcraft / netcrafttoolbar.xpi / chrome / netcrafttoolbar.jar / content / dns.js < prev    next >
Text File  |  2005-08-04  |  1KB  |  50 lines

  1. /*
  2.  * NetcraftToolbar - DNS Helper Module
  3.  *
  4.  * Copyright (C) 2005 Netcraft Ltd
  5.  * http://toolbar.netcraft.com/ 
  6.  *
  7.  * $Id: chrome:content:dns.js,v 1.6 2005/06/21 13:56:25 jez Exp $
  8.  */
  9.  
  10. var ptDns = {
  11.  
  12.     _dns: Components.classes["@mozilla.org/network/dns-service;1"].
  13.     getService(Components.interfaces.nsIDNSService),
  14.  
  15.     dnsResolve: function (host) {
  16.     try {
  17.         return this._dns.resolve(host, 0).getNextAddrAsString();
  18.     } catch (e) {
  19.         return "";
  20.     }
  21.     },
  22.  
  23.     convertIP: function (ip) {
  24.     var octets = ip.split('.');
  25.     var num  = (octets[3] & 0xff);
  26.         num += (octets[2] & 0xff) * (1<< 8);
  27.         num += (octets[1] & 0xff) * (1<<16);
  28.         num += (octets[0] & 0xff) * (1<<24);
  29.  
  30.     return num;
  31.     },
  32.  
  33.     unroutableIP: function (ip) {
  34.     var top2 = ip.split('.');
  35.     var num = (
  36.         (top2[0]&0xff) * (1<<16) + (top2[1]&0xff) * (1<<8) + (top2[2]&0xff)
  37.     );
  38.     return (
  39.         ((num & 16711680) == 0) ||
  40.         ((num & 16711680) == 655360) ||
  41.         ((num & 16711680) == 8323072) ||
  42.         ((num & 16776960) == 11140608) ||
  43.         ((num & 16773120) == 11276288) ||
  44.         ((num & 16776960) == 12625920) ||
  45.         ((num & 16777215) == 12582914) ||
  46.         ((num & 14680064) == 14680064)
  47.     );
  48.     }
  49. }
  50.