Changeset 146

Show
Ignore:
Timestamp:
02/03/03 15:51:46 (10 years ago)
Author:
ahu
Message:

hmf

Location:
trunk/pdns
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • trunk/pdns/ChangeLog

    r144 r146  
    99        - compression (Mark Bergsma) 
    1010        - SRV records (Ueli Heuer) 
     11 
    1112        - updated J root-server IP address in the recursor 
    1213        - added USR1 forced log output 
     
    1516        - added -lz (James H. Cloos Jr) to MySQL 
    1617        - added name to webserver (Daniel Meyer) 
    17         - fixed zone2sql root-zone issues 
     18        - fixed zone2sql root-zone issues (Brad Knowles) 
    1819         
    1920Changes since 2.9.3a: 
  • trunk/pdns/TODO

    r128 r146  
    22bugs: 
    33        pdns.conf-dist contains old descriptions 
     4 
     5        dynmessenger.cc unused variable warning 
     6 
    47 
    58Things we will not do but hope other people will: 
     
    1114 
    1215Big things: 
    13         - Add recursion 
    14  
    1516        - new plan 
    1617Like in the old days but with a twist - additional processing is done on a 
     
    1920 
    2021TODO: 
    21         learn syncres not to expire its roots 
    22                 put a watch on that 
    2322        learn syncres to load its roots from disk too or at completime 
    24         be able to reduce logging 
    2523        get a way to nuke the cache/parts of the cache 
    26         learn syncres that it should serve answers from its cache 
    27            immediately on a non-rd query 
    28  
    29  
    30          
    31                  
    32 How will this work. Anything that has an RD bit goes to syncres. We need to 
    33 send 5 things: "qname, qtype, socket on which to send the answer,id,flags". 
    34 PowerDNS then forgets all about it. 
    35  
    36 The recursor receives these questions and goes prowling for the right 
    37 answers. In this, it uses the main PDNS query cache. So we need either a 
    38 full socket to communicate with or two pipes. 
    39  
    40 Communications can be a stream, but access must be strictly serialized! 
    41  
    42 Each query 'upwards' consists of a marker and a tuple, PDNS replies with 
    43 serialized DNSResourceRecords, ending with an empty line. 
    44  
    45 typical communication might be: 
    46  
    47         qdomain    qt  socket    id   remote 
    48 -> www.powerdns.com 1   10       123 5.4.3.2 
    49 <- Q: www.powerdns.com CNAME 
    50 -> . 
    51 <- Q: www.powerdns.com A 
    52 -> . 
    53 <- Q: www.powerdns.com NS 
    54 -> . 
    55 <- Q: powerdns.com NS 
    56 -> . 
    57 <- Q: com NS 
    58 -> COM|NS|A.GTLD-SERVERS.NET.. 
    59 -> COM|NS|B.GTLD-SERVERS.NET.. 
    60 -> . 
    61 <- Q: A.GTLD-SERVERS.NET A 
    62 -> A.GTLD-SERVERS.NET|A|1.2.3.4 
    63 <- A: powerdns.com 5 
    64 <- powerdns.com|NS|dns-eu1.powerdns.net 
    65 <- powerdns.com|NS|dns-us1.powerdns.net 
    66 <- . 
    67  
    68            qdomain   qtype socket    id remote   rcode 
    69 <- P: www.powerdns.com 1   10       123 5.4.3.2    0     <- reply packet 
    70 <- www.powerdns.com|A|1.2.3.4 
    71 <- powerdns.com|NS|dns-eu1.powerdns.net 
    72 <- powerdns.com|NS|dns-us1.powerdns.net 
    73 <. 
    74  
    75   
    76  
    77         Answers pushed upwards are inserted in the query cache with a 
    78 'unauth' flag. 
    79  
    80         so, we need a syncres communicator which is executed with as 
    81 parameter the fd it will find a socket on for its perusal. 
    82  
    83  
    84  
    8524 
    8625        - Add support for TSIG 
  • trunk/pdns/pdns.spec

    r128 r146  
    11Buildroot: /tmp/pdns 
    22Name: pdns-static 
    3 Version: 2.9.4 
     3Version: 2.9.5 
    44Release: 1 
    55Summary: extremely powerful and versatile nameserver 
  • trunk/pdns/pdns/backends/bind/bindbackend.cc

    r115 r146  
    1616    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
    1717*/ 
    18 // $Id: bindbackend.cc,v 1.13 2003/01/03 21:29:36 ahu Exp $  
     18// $Id: bindbackend.cc,v 1.14 2003/02/03 14:51:46 ahu Exp $  
    1919#include <errno.h> 
    2020#include <string> 
     
    806806} 
    807807 
     808bool BindBackend::isMaster(const string &name, const string &ip) 
     809{ 
     810  for(map<u_int32_t,BBDomainInfo>::iterator j=us->d_bbds.begin();j!=us->d_bbds.end();++j)  
     811    if(j->second.d_name==name) 
     812      return j->second.d_master==ip; 
     813  return false; 
     814} 
     815 
    808816class BindFactory : public BackendFactory 
    809817{ 
     
    826834 
    827835 
     836 
     837 
    828838//! Magic class that is activated when the dynamic library is loaded 
    829839class BindLoader 
  • trunk/pdns/pdns/backends/bind/bindbackend.hh

    r92 r146  
    195195  void rediscover(string *status=0); 
    196196  static HuffmanCodec s_hc; 
     197 
     198  bool isMaster(const string &name, const string &ip); 
    197199private: 
    198200  class handle 
  • trunk/pdns/pdns/docs/pdns.sgml

    r144 r146  
    1212    </author> 
    1313     
    14     <PubDate>v2.1 $Date: 2003/02/03 10:35:36 $</PubDate> 
     14    <PubDate>v2.1 $Date: 2003/02/03 14:51:46 $</PubDate> 
    1515     
    1616    <Abstract> 
     
    8282        file. 
    8383      </para> 
    84       <sect2 id="changelog-2-9-5"><title>Version 2.9.5 [not released yet]</title>        
     84      <sect2 id="changelog-2-9-5"><title>Version 2.9.5</title>   
     85        <para> 
     86          Released on 2002-02-03. 
     87        </para> 
    8588        <para> 
    8689          This version is almost entirely about recursion with major changes to both the pdns recursor, which is renamed to  
     
    153156            <listitem> 
    154157              <para> 
    155                 Dropped non-lazy recursion, nobody was using it. 
     158                Dropped non-lazy recursion, nobody was using it. Lazy recursion became even more lazy after Dan Bernstein pointed out that additional 
     159                processing is not vital, so PowerDNS does its best to do additional processing on recursive queries, but does not scream murder if it does 
     160                not succeed. Due to caching, the next identical query will be successfully additionally processed. 
    156161              </para> 
    157162            </listitem> 
     
    181186            <listitem> 
    182187              <para> 
    183                 SIGUSR1 now forces the recursor to print out statistics to the log now. 
     188                SIGUSR1 now forces the recursor to print out statistics to the log. 
    184189              </para> 
    185190            </listitem>