Subject: diffs: edns1 -00 -> -01

From: Paul A Vixie <[email-masked]>
Date: Mon, 16 Nov 1998 01:43:12 -0800

i'm about to submit edns1-01 to the drafts editor.  i will not be at the
DNSIND meeting since it overlaps with usenix-boston where i'm teaching a
bind tutorial.  the changes shown below are my understanding of the various
points folks have made here since the chicago meeting.  we've got time for
more edits if i got something wrong or somebody thought of something new.

note that in my concept of all this, edns0 should go to PS immediately
whereas edns1 should linger and get more discussion time.  whether that
means edns1 doesn't get rfc'd, or gets rfc'd as experimental, or gets
rfc'd as PS because nobody has any more comments right away, i dunno.

@@ -6,7 +6,7 @@
 
    DNSIND Working Group                                         Paul Vixie
    INTERNET-DRAFT                                                      ISC
-   <draft-dnsind-edns1-00.txt>                             September, 1998
+   <draft-dnsind-edns1-01.txt>                              November, 1998

                           Extensions to DNS (EDNS1)
@@ -149,7 +149,7 @@
    FM              ``First match'' flag.  Notable only when multiple
                    questions are present.  If set in a request, questions
                    will be processed in wire order and the first question
-                   whose answer would be NOERROR AND ANCOUNT>0 is treated
+                   whose answer would have NOERROR AND ANCOUNT>0 is treated
                    as if it were the only question in the query message.
                    Otherwise, questions can be processed in any order and
                    all possible answer records will be included in the
@@ -169,21 +169,34 @@
                    containing QNAME, and where QTYPE=ANY or QDCOUNT>1.  If
                    set in a request, the intermediate name server can only
                    answer using unexpired cached answers (either positive
-                   or negative) which were atomically acquired using the
-                   same QTYPE or set of QTYPEs present in the current
-                   question and where all such answers had the same TTL
-                   when first cached.
+                   or negative) which were atomically acquired using (a)
+                   the same QTYPE or set of QTYPEs present in the current
+                   question and whose TTLs were each minimized to the
+                   smallest among them when first cached, and (b) the same
+                   FM and LM settings present in the current question.
 
    LM              ``Longest match'' flag.  If this flag is present in a
                    query message, then for any question whose QNAME is not
                    fully matched by zone or cache data, the longest
                    trailing label-bounded suffix of the QNAME for which
                    zone or cache data is present will be eligible for use
-                   as an answer.  Note than an intervening wildcard name
+                   as an answer.  Note that an intervening wildcard name
                    shall supercede this behaviour and the rules described
-                   in [RFC1034 4.3.2, 4.3.3] shall apply.  Any of:
-                   QTYPE=ANY, or QCLASS=ANY, or QCOUNT>1, shall be
-                   considered an error if the LM flag is set.
+                   in [RFC1034 4.3.2, 4.3.3] shall apply, except that the
+                   DNAME of the answer will be the wildcard name rather
+                   than the QNAME.  Any of: QTYPE=ANY, or QCLASS=ANY, or
+                   QCOUNT>1, shall be considered an error if the LM flag is
+                   set.
+
+                   If LM is set in a request, then LM has meaning in the
+                   response as follows: If the content of the response
+                   would have been different without the LM flag being set
+                   on the request, then the response LM will be set; If the
+                   content of the response was not determined or affected
+                   by the request LM, then the response LM will be cleared.
+                   If the request LM was not set, then the response LM is
+                   not meaningful and should be set to zero by responders
+                   and ignored by requestors.
 
    Z               Set to zero by senders and ignored by receivers, unless
                    modified in a subsequent specification.
@@ -194,12 +207,20 @@
    be for the same QNAME and QCLASS; only the QTYPE is allowed to vary.  It
    is an error for QDCOUNT>1 and any QTYPE=ANY or QCLASS=ANY.

    5.2. RCODE and AA apply to all RRs in the answer section having the
    QNAME that is shared by all questions in the question section.  AA
    applies to all matching answers, and will not be set unless the exact
    original request was processed by an authoritative server and the
-   response forwarded in its entirety if at all, or unless iterative
-   requests are used as described in [5.3] and [5.4] below.
+   response forwarded in its entirety.
 
    5.3. If a multiple question request is processed by an intermediate
    server and the authority server does not support multiple questions, the
@@ -224,8 +237,8 @@
    6 - Acknowledgements
 
    Paul Mockapetris, Mark Andrews, Robert Elz, Don Lewis, Bob Halley,
-   Donald Eastlake, Rob Austein, Matt Crawford, and Randy Bush were each
-   instrumental in creating this specification.
+   Donald Eastlake, Rob Austein, Matt Crawford, Randy Bush, and Michael
+   Patton were each instrumental in creating this specification.
 
    7 - References

---

From: "Matt Crawford" <[email-masked]>
Date: Mon, 16 Nov 1998 11:01:16 -0600

> LM [...]
> Note that an intervening wildcard name shall supercede this
> behaviour and the rules described in [RFC1034 4.3.2, 4.3.3] shall
> apply, except that the DNAME of the answer will be the wildcard
> name rather than the QNAME.  [...]

DNAME is not a term that appears elsewhere in edns1 or on RFC1034.
I think "owner" would be the right word there.

> If LM is set in a request, then LM has meaning in the response as follows:

A fine idea.
				Matt