[Development] API review for a new QDnsResolver class
Peter Hartmann
peter.hartmann at nokia.com
Thu Nov 3 19:10:43 CET 2011
On 11/03/2011 04:12 PM, ext Thiago Macieira wrote:
> (...)
> The DNS query is not the problem. A query is always composed of a domain name
> being queried, along with the DNS class (Internet, no one uses anything else
> for real purposes) and the record type. For the record type, it's very easy to
> just list all types and also say that the user can use other types from the
> DNS documentation. See the ns_type enum in /usr/include/arpa/nameser.h [1].
Yes, the query is quite simple, that is why I was wondering whether we
need a class for it at all.
>
> The problem is the DNS reply. Each query type contains a different kind of data
> structure that would need to be parsed. It gets very complex very quickly if
> we want to present the data in a nice, C++ class.
I am wondering: According to Jeremy it would be best to have separate
classes for different record types; however the way QDnsReply is
designed it looks like a generic class for DNS replies with special
accessors for specific records like serviceRecords().
@Jeremy: Do you think this is feasible now? I.e. could we have all the
accessors combined in one class and have a generic accessor for the
QString cases?
Or would we have too many methods in the class for the special cases at
some point and we should rather have special classes?
Peter
>
> A 4 bytes containing an IPv4 address (QHostAddress)
> NS a domain name (QString)
> CNAME a domain name (QString)
> SOA two domain names and five integers
> PTR a domain name (QString)
> MX an integer and a domain name
> TXT text (QString)
> AAAA 16 bytes containing an IPv6 address (QHostAddress)
> SRV two integers and a domain name
> A6 an integer, an IPv6 address and a domain name
> DNAME a domain name (QString)
> TKEY, TSIG ?
>
> And that's just listing the ones that I thought we'd like to support. CNAME
> and DNAME are likely not to be the query, but they might appear as part of the
> reply.
>
> [1] a that suffers from the "creat" syndrome.
>
>
>
>
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development
--
Qt Developer Days 2011 – REGISTER NOW!
October 24 – 26, Munich
November 29 – December 1, San Francisco
Learn more and Register at http://qt.nokia.com/qtdevdays2011
More information about the Development
mailing list