BIND 10 #1372: IXFR-out protocol handling: AXFR style IXFR
BIND 10 Development
do-not-reply at isc.org
Mon Nov 21 09:47:33 UTC 2011
#1372: IXFR-out protocol handling: AXFR style IXFR
-------------------------------------+-------------------------------------
Reporter: | Owner: jinmei
jinmei | Status: reviewing
Type: task | Milestone:
Priority: major | Sprint-20111122
Component: | Resolution:
xfrout | Sensitive: 0
Keywords: | Sub-Project: DNS
Defect Severity: N/A | Estimated Difficulty: 4
Feature Depending on Ticket: | Total Hours: 0
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:10 vorner]:
> > Actually, I thought in this case there is even *no client* as long as
> > the auth server does the right thing, so this bug should be a more
> > serious thing. That's why I thought it would make more sense to do
> > nothing for this case (and the case of unexpected request type). In
> > general, I agree an internal error would result in SERVFAIL.
> >
> > But in this specific case I'm also okay with following the general
> > practice if you prefer it.
>
> Well, what I think is, if such bad request gets to the xfrout, the auth
server already didn't do the right thing, it handed the connection. If
there's no client, then the answer would end up in a black hole. But if
there's and the server forgot to inform it about the bad request (which we
can probably expect, as it gave the handed the connection over), the
client should be told at last something. In such case, I believe we should
give it a SERVFAIL, as that one might mean a server bug as well as
anything else and a server bug is exactly what happened.
>
> Or, is there something I don't see in this?
Not necessarily, but I simply couldn't think of a case where these
things happen, except, of course, due to a very stupid bug in
b10-auth, and I thought that we should rather drop any state and
continue (or if it's lightweight even kill it and restart) should this
happen than trying to do anything more especially with someone via
a network.
In general, I personally think we shouldn't try to do too much if the
code identifies our internal bug, while we should return SERVFAIl if
it's a system error such as resource shortage or bad data in database
source.
Maybe we should discuss this as a general policy project-wide.
For this particular case, I'd rather close this ticket faster than
continuing the discussion (after all, this event shouldn't happen and
wouldn't matter much in practice, until/unless we really introduce a
bug in b10-auth). I've created a diff to change the behavior to
returning SERVFAIL (attaching to the ticket). If you still prefer
this behavior and the diff is okay, I'll introduce it and complete the
ticket; otherwise, if you rather defer the discussion in a generic
context, I'll complete this ticket without applying it.
(I believe we don't have any other open issue).
--
Ticket URL: <https://bind10.isc.org/ticket/1372#comment:11>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list