      return NS_OK;
  }
 diff --git a/netwerk/dns/src/nsHostResolver.cpp b/netwerk/dns/src/nsHostResolver.cpp
-index 924159e..8dd5083 100644
+index 924159e..2308d89 100644
 --- a/netwerk/dns/src/nsHostResolver.cpp
 +++ b/netwerk/dns/src/nsHostResolver.cpp
 @@ -178,9 +178,9 @@ nsHostRecord::Create(const nsHostKey *key, nsHostRecord **result)

 
     // socket methods (these can only be called on the socket thread):
 
diff --git a/netwerk/dns/public/nsIDNSRecord.idl b/netwerk/dns/public/nsIDNSRecord.idl
index 4e6d68f..71b7b1f 100644
--- a/netwerk/dns/public/nsIDNSRecord.idl

             return NS_ERROR_NOT_AVAILABLE;
+        } else {
+            addr->raw.family = PR_AF_INET;
+            addr->inet.port = PR_htons(port);
+            memcpy(&addr->inet.ip, mHostRecord->hostent.h_addr_list[mIter++], 4);
+            PR_Unlock(mHostRecord->hostent_lock);
+            return NS_OK;
