Opened 7 years ago

Closed 7 years ago

#2163 closed task (fixed)

[meta] use signed RRset "as is" in Message

Reported by: jinmei Owned by: UnAssigned
Priority: medium Milestone: Sprint-20120904
Component: libdns++ Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DNS Feature Depending on Ticket: scalable inmemory
Estimated Difficulty: meta Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description (last modified by jinmei)

I propose changing the way of handling "signed RRsets", ie.,
RRsets that are associate with RRSIG RRsets in the libdns++
Message, especially in the toWire() rendering.

Right now, we add a signed RRset by Message::addRRset() with
the sign argument being true, and the addRRset method
extracts the RRSIG by getRRsig() and inserts it into the internal
vector.

This behavior is suboptimal for the revised in-memory data source
architecture, because ZoneFinder::find() would have to dynamically
create two RRsets every time. Also, as we introduced the abstract
concept of "signed RRset", I personally believe it's cleaner if the
user of that concept (such as Message) can be agnostic about it as
much as possible, and let the RRset itself decide what to do
depending on whether it's signed or not.

Based on this observation and opinion I'm going to create a few
development tickets to change the behavior. In essence it shouldn't
be very complicated updates, but we'll need to update a certain amount
of code because it will probably affect many test cases.

The development tickets are:

  • #2164 introduce RRset::getSIGRdataCount()
  • #2165 update Message::addRRset() to be unaware of signedness
  • #2166 update RRset::toWire() so it will render RRSIGs, too

This work is related to the "one non trivial open issue" mentioned
in #2098.

Subtickets

Change History (4)

comment:1 Changed 7 years ago by jinmei

  • Description modified (diff)

comment:2 Changed 7 years ago by shane

  • Milestone changed from New Tasks to Next-Sprint-Proposed

comment:3 Changed 7 years ago by jelte

  • Milestone changed from Next-Sprint-Proposed to Sprint-20120821

comment:4 Changed 7 years ago by muks

  • Resolution set to fixed
  • Status changed from new to closed

Resolving as fixed as all its child-bugs are fixed.

Note: See TracTickets for help on using tickets.