hbedi       01/09/24 10:25:43

  Modified:    src/java/org/apache/james/dnsserver DNSServer.java
                        DNSServer.xinfo
  Log:
  Updated DNS Java library.
  Attempted to make the interface generic, but stopped short. Did not
  want to tie the interface to a specfic implementation.
  
  Revision  Changes    Path
  1.2       +23 -6     jakarta-james/src/java/org/apache/james/dnsserver/DNSServer.java
  
  Index: DNSServer.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-james/src/java/org/apache/james/dnsserver/DNSServer.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DNSServer.java    2001/05/11 09:15:46     1.1
  +++ DNSServer.java    2001/09/24 17:25:43     1.2
  @@ -21,9 +21,22 @@
   import org.apache.avalon.framework.configuration.Configuration;
   import org.apache.avalon.framework.configuration.ConfigurationException;
   import org.apache.avalon.framework.logger.AbstractLoggable;
  -import org.apache.james.transport.Resources;
   import org.apache.avalon.phoenix.Block;
  -import org.xbill.DNS.*;
  +import org.apache.james.transport.Resources;
  +import org.xbill.DNS.Cache;
  +import org.xbill.DNS.Credibility;
  +import org.xbill.DNS.DClass;
  +import org.xbill.DNS.ExtendedResolver;
  +import org.xbill.DNS.Header;
  +import org.xbill.DNS.MXRecord;
  +import org.xbill.DNS.Message;
  +import org.xbill.DNS.Name;
  +import org.xbill.DNS.RRset;
  +import org.xbill.DNS.Rcode;
  +import org.xbill.DNS.Record;
  +import org.xbill.DNS.Resolver;
  +import org.xbill.DNS.SetResponse;
  +import org.xbill.DNS.Type;
   
   /**
    * @version 1.0.0, 18/06/2000
  @@ -78,13 +91,13 @@
           final String serversArray[] = (String[])servers.toArray(new String[0]);
           resolver = new ExtendedResolver( serversArray );
   
  -        cache = new Cache ();
  +        cache = new Cache (DClass.IN);
   
           getLogger().info("DNSServer ...init end");
       }
   
       public Collection findMXRecords(String hostname) {
  -        Record answers[] = rawDNSLookup(hostname, false, Type.MX);
  +        Record answers[] = lookup(hostname, Type.MX);
   
           Collection servers = new Vector ();
           try {
  @@ -124,6 +137,10 @@
           }
       }
   
  +    public Record[] lookup(String name, short type) {
  +        return rawDNSLookup(name,false,type);
  +    }
  +
       private Record[] rawDNSLookup(String namestr, boolean querysent, short type) {
           Name name = new Name(namestr);
           short dclass = DClass.IN;
  @@ -132,7 +149,7 @@
           int answerCount = 0, n = 0;
           Enumeration e;
   
  -        SetResponse cached = cache.lookupRecords(name, type, dclass, 
dnsCredibility);
  +        SetResponse cached = cache.lookupRecords(name, type, dnsCredibility);
           if (cached.isSuccessful()) {
               RRset [] rrsets = cached.answers();
               answerCount = 0;
  @@ -150,7 +167,7 @@
                   }
               }
           }
  -        else if (cached.isNegative()) {
  +        else if (cached.isNXDOMAIN()) {
               return null;
           }
           else if (querysent) {
  
  
  
  1.2       +7 -0      
jakarta-james/src/java/org/apache/james/dnsserver/DNSServer.xinfo
  
  Index: DNSServer.xinfo
  ===================================================================
  RCS file: 
/home/cvs/jakarta-james/src/java/org/apache/james/dnsserver/DNSServer.xinfo,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DNSServer.xinfo   2001/05/11 09:15:46     1.1
  +++ DNSServer.xinfo   2001/09/24 17:25:43     1.2
  @@ -1,6 +1,13 @@
   <?xml version="1.0"?>
   
   <blockinfo>
  +  <meta>
  +    <contributors>
  +        <author name="Serge" email="[EMAIL PROTECTED]"/>
  +        <author name="Harmeet" email="[EMAIL PROTECTED]"/>
  +    </contributors>
  +  </meta>
  +
     <services>
       <service name="org.apache.james.services.DNSServer" version="1.0"/>
     </services>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to