home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / bind495a.zip / TODO < prev   
Text File  |  1995-06-19  |  10KB  |  188 lines

  1. $Id: TODO,v 8.3 1995/06/19 08:34:22 vixie Exp $
  2.  
  3. Things to do.  Each entry should contain the proposer, date proposed, and an
  4. explaination of what's being proposed.  New ones are added at the bottom.
  5. Note that the author/coordinator of BIND does not neccessarily endorse all
  6. of the proposals listed herein; if you did not get explicit "buy-in" then
  7. your changes may not be accepted even if they appear in proposal form here
  8. in this file.
  9.  
  10. [Mark.Andrews@dms.CSIRO.AU 14dec94]: rfc952/rfc1123 host name compliance:
  11.     -> Test domain names to ensure that the name conforms to the form
  12.        specified by RFC952 as modified by RFC1123.
  13.     -> WARN if the domain name does not meet the conditions set by 
  14.        rfc952/rfc1123 for the following resource records.
  15.         class == C_IN && type == T_A 
  16.         class == C_IN && type == T_MX
  17.     -> REJECT this records on the primary server.
  18.     -> CNAME which doesn't match pointing to the above is also
  19.        illegal but harder to check.
  20.  
  21. [paul@vix.com 30nov94]: cause NOTIFY to track the IETF process for it;
  22.     reorder ns_resp() again so that "Notify notimp" causes qdelete()
  23.     but the host source address checking and so on is still done.
  24.  
  25. [paul@vix.com 25apr93]: clean up #ifdef's and portability
  26.     feature #ifdef's should be limited to whole functions, which will be
  27.     called no matter what and would only be non-empty if the feature is
  28.     enabled.  allow feature ifdef's in .h files, though.
  29.  
  30.     portability #ifdef's should be limited to whole functions, too.  add
  31.     a new portability.c module that implements anything which varies from
  32.     system to system.
  33.  
  34.     add a second portability.h-like file that is included _before_ all the
  35.     system includes.  portability.h as it stands is included _after_ all
  36.     system includes, which is convenient for most things but not all.
  37.  
  38. [sater@cs.vu.nl 26apr93]: sortlist improvement
  39.     Improve the code around the sortlist area to better cope with parallel
  40.     networks of different speeds. The -i hack I sent to you could function
  41.     as inspiration only.
  42.  
  43. [kre@munnari.oz.au 26apr93]: add an INN style control interface
  44.     to replace sending signals.  With that expand debugging to
  45.     permit monitoring of actions taken on a single query
  46.     (query through control port, full traced as it occurs)
  47.     or all queries that reference some particular name or
  48.     zone, or which are forwarded, or asked, of some
  49.     particluar server.   Allow reloads & dumps of a single
  50.     zone, rather     than the whole universe.  Allow selective
  51.     cache pruning (to edit away bad data that's been obtained
  52.     from somewhere)
  53.  
  54. [kre@munnari.oz.au 26apr93]: add a syntax to zone files (non rfc
  55.     standard, but I don't care) to permit RR's to age away
  56.     at some particular time, and others to become active at
  57.     some particular time (probably with a syntax something
  58.     like     "<[date]"  or  "@[date]"   preceding, or in the
  59.     former case, replacing, the TTL field of the record).
  60.     Approaching "date" in the "<[date]" case, the TTL's on
  61.     the record would be decreased, so no data cached anywhere    
  62.     will remain valid after "date", after "date", this RR
  63.     would simply be inoperative (essentially identical to
  64.     a comment).  In the "@[date]" case (or perhaps ">[date]"
  65.     for symmetry) the RR would be ignored until "date" at
  66.     which time the "@[date]" field would simply be ignored.
  67.     Both annotations could be used together (with
  68.     appropriate interpretations depending on which date is
  69.     earlier than the other).   Annotations on RR's in a zone
  70.     would cause the SOA parameters to be automatically
  71.     adjusted in zone transfers (and SOA requests) so that
  72.     secondary servers would also hand out the same values
  73.     (dropping the TTL down low as a "<[date]" approaches,
  74.     and forcing a new zone transfer at "date").
  75.  
  76. [steve@uunet.uu.net 26apr93]: TXT RR improvements
  77.     - fix TXT records so that they can deal properly with multiple
  78.     strings (e.g., ``foo    IN    TXT    "aaa" "bbb"'').  This
  79.     results in a fair number of smallish changes throughout the
  80.     code and also throughout various tools (e.g., nslookup).
  81.  
  82. [kyle@uunet.uu.net 16may93]: need an option to die if primary zone file missing
  83.     as of 4.9, a server will not forward a query if it is itself on the
  84.     NS list for the relevant domain.  this means that if a primary server
  85.     cannot load its zone file, it will not be able to answer queries in
  86.     that zone -- it won't even forward them.  this is arguably correct,
  87.     since it prevents bad forwarding loops when two or more servers are
  88.     all unable to load the zone (primary or secondary, with secondary
  89.     failures being the more common).  what is needed is real loop detection
  90.     such that reasonable non-looping queries can be forwarded.  what we're
  91.     likely to actually get is an option that causes named to just syslog
  92.     and die if it can't load a primary zone file.  note that at present,
  93.     named is running somewhat bare-assed since an expired zone in a
  94.     secondary (or missing zone file in a primary) will cause that named
  95.     to return SERVFAIL for all queries to that zone.  if your screwed up
  96.     primary/secondary server is also the forwarding server for a collection
  97.     of hosts, those hosts will get SERVFAIL's back from queries to the
  98.     affected domains, and depending on the age of their resolvers, they
  99.     might not try other servers after they get the first SERVFAIL.
  100.     [ this entry was written by Paul Vixie after getting a problem report
  101.       from Kyle after uu.net disappeared in a brief but ugly way.  --vix ]
  102.  
  103. [paul@vix.com 05jun94]: things i'm expecting to fix someday:
  104.     -> finish STATS (b+tree?), remove older A_RR-based tagging
  105.     -> (more?) svr4 changes from wisner@well, marc@cam, istewart@datlog
  106.     -> switch completely to posix-style signals
  107.     -> xfrnets directives should aggregate
  108.     -> syntactic sugar to use "mtime" of file as soa serial number
  109.     -> better support for "firewalls" (zohar@ibm, minnich@dupont)
  110.     -> attributes in TXT RR (cpw@lanl)
  111.     -> fix database consistency problems during zone reloads (Bob Heiney)
  112.     -> preliminary support for variable width subnet masks
  113.     -> failover isn't working very well for hesiod queries (gshapiro)
  114.     -> dig needs to be able to turn on RES_INSECURE{1,2} options
  115.     -> clean out old RR's that lay within a newly loaded zone file (heiney)
  116.     -> automatically refresh root.cache from the root servers periodically
  117.     -> Makefiles should use/pass CFLAGS rather than modifying CC
  118.     -> use Berkeley DB rather than malloc() for all database ops
  119.     -> include files should be generated from templates
  120.     -> use nvi-style port/* hierarchy, fewer portability #ifdef's
  121.     -> make __res static, add procedural interface to replace "extern"'ing
  122.     -> add hesiod/yp capable versions of get{pw,serv,???}by*()
  123.     -> add hesiod/yp to get{net,host}by*()
  124.     -> do something like solaris' /etc/nsswitch.conf (but in resolv.conf)
  125.     -> we should only need one copy of binary->text, text->binary, and
  126.        packet marshalling/unmarshalling.  add general routines to -lresolv,
  127.        and rearrange the code to use them.
  128.     -> apps that want to do DNS queries should not have to learn res_query;
  129.        a higher level interface should be provided, that has its own cache
  130.        and/or shares with the server's DB-based one.
  131.     -> implement or integrate the next round of RFC's (coming soon).
  132.  
  133. [paul@vix.com 05jun95]: more things i'm expecting to fix someday:
  134.     -> add "ndc checkconf" (i.e., "named -v")
  135.  
  136. ## ++Copyright++ 1993
  137. ## -
  138. ## Copyright (c) 1993
  139. ##    The Regents of the University of California.  All rights reserved.
  140. ## 
  141. ## Redistribution and use in source and binary forms, with or without
  142. ## modification, are permitted provided that the following conditions
  143. ## are met:
  144. ## 1. Redistributions of source code must retain the above copyright
  145. ##    notice, this list of conditions and the following disclaimer.
  146. ## 2. Redistributions in binary form must reproduce the above copyright
  147. ##    notice, this list of conditions and the following disclaimer in the
  148. ##    documentation and/or other materials provided with the distribution.
  149. ## 3. All advertising materials mentioning features or use of this software
  150. ##    must display the following acknowledgement:
  151. ##     This product includes software developed by the University of
  152. ##     California, Berkeley and its contributors.
  153. ## 4. Neither the name of the University nor the names of its contributors
  154. ##    may be used to endorse or promote products derived from this software
  155. ##    without specific prior written permission.
  156. ## 
  157. ## THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  158. ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  159. ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  160. ## ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  161. ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  162. ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  163. ## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  164. ## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  165. ## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  166. ## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  167. ## SUCH DAMAGE.
  168. ## -
  169. ## Portions Copyright (c) 1993 by Digital Equipment Corporation.
  170. ## 
  171. ## Permission to use, copy, modify, and distribute this software for any
  172. ## purpose with or without fee is hereby granted, provided that the above
  173. ## copyright notice and this permission notice appear in all copies, and that
  174. ## the name of Digital Equipment Corporation not be used in advertising or
  175. ## publicity pertaining to distribution of the document or software without
  176. ## specific, written prior permission.
  177. ## 
  178. ## THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
  179. ## WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
  180. ## OF MERCHANTABILITY AND FITNESS.   IN NO EVENT SHALL DIGITAL EQUIPMENT
  181. ## CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  182. ## DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  183. ## PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
  184. ## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  185. ## SOFTWARE.
  186. ## -
  187. ## --Copyright--
  188.