Opened 9 years ago

Closed 9 years ago

#751 closed enhancement (complete)

Take out dependency on DNS from asiolink

Reported by: stephen Owned by: ocean
Priority: low Milestone: Sprint-20110419
Component: Unclassified Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity:
Sub-Project: Feature Depending on Ticket:
Estimated Difficulty: 6.0 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

The asiolink library is a low-level asynchronous I/O library: it should be able to use it for any I/O - it should know nothing about DNS.

Subtickets

Change History (9)

comment:1 Changed 9 years ago by ocean

  • Owner set to ocean
  • Status changed from new to assigned

comment:2 Changed 9 years ago by shane

  • Estimated Difficulty changed from 0.0 to 6
  • Priority changed from major to minor

comment:3 Changed 9 years ago by ocean

  • Owner changed from ocean to UnAssigned
  • Status changed from assigned to reviewing

Main modification:

  • Move DNS related code out of asiolink library to asiodns library
  • For consistency, add a namespace isc to asiolink library.
  • Move some modules' dependency on libasiolink to libasiodns
Last edited 9 years ago by ocean (previous) (diff)

comment:4 Changed 9 years ago by stephen

  • Owner changed from UnAssigned to stephen

comment:5 follow-up: Changed 9 years ago by stephen

  • Owner changed from stephen to ocean

I've made (and pushed) a small change to src/lib/Makefile.am to build asiodns before resolve (as the tests in the latter depend on the former).

src/lib/asiolink/qid_gen.{cc,h}
These (and the associated test) really belong in asiodns. They are only used by IOFetch (now in asiodns) and are nothing to do with I/O.

src/lib/asiolink/asiodef.{cc,h,msg}
These define symbols only used in IOFetch and as such should really be moved to asiodns. The $NAMESPACE in asiodef.msg should be altered to isc::asiodns and arguably the $PREFIX for the symbols in asiodef.msg should be changed from ASIO_ to ASIODNS_. (The last change will mean that io_fetch.* will need to be altered.) As the build succeeds with the code where it is, I suggest not extending this ticket; instead create a new ticket for this change.

comment:6 in reply to: ↑ 5 Changed 9 years ago by ocean

Replying to stephen:

I've made (and pushed) a small change to src/lib/Makefile.am to build asiodns before resolve (as the tests in the latter depend on the former).

src/lib/asiolink/qid_gen.{cc,h}
These (and the associated test) really belong in asiodns. They are only used by IOFetch (now in asiodns) and are nothing to do with I/O.

Done

src/lib/asiolink/asiodef.{cc,h,msg}
These define symbols only used in IOFetch and as such should really be moved to asiodns. The $NAMESPACE in asiodef.msg should be altered to isc::asiodns and arguably the $PREFIX for the symbols in asiodef.msg should be changed from ASIO_ to ASIODNS_. (The last change will mean that io_fetch.* will need to be altered.) As the build succeeds with the code where it is, I suggest not extending this ticket; instead create a new ticket for this change.

Done. I have changed the ASIO_ to ASIODNS_ since it is quite a trivial task.

I also moved some contents of lib/asiolink/README to lib/asiodns/README

comment:7 Changed 9 years ago by ocean

  • Owner changed from ocean to stephen

comment:8 follow-up: Changed 9 years ago by stephen

  • Owner changed from stephen to ocean

The $NAMESPACE in asiodef.msg should be "isc::asiodns", not "asiodns". However, the rest looks good, so please merge once you've made that change - I don't need to see it again.

comment:9 in reply to: ↑ 8 Changed 9 years ago by ocean

  • Resolution set to complete
  • Status changed from reviewing to closed

Replying to stephen:

The $NAMESPACE in asiodef.msg should be "isc::asiodns", not "asiodns". However, the rest looks good, so please merge once you've made that change - I don't need to see it again.

Done and has merged to master

Note: See TracTickets for help on using tickets.