dnsjava is an implementation of the DNS protocol in Java. It supports all of the common record types. dnsjava provides both high and low level access to the resolver. The high level functions perform queries for records of a given name, type, and class, and return an array of records. A cache is used to reduce the number of queries sent. The low level functions allow direct manipulation of dns messages and records, as well as allowing additional resolver properties to be set. A 'dig' clone, dynamic update program, and basic server are also included. Extensions to the DNS protocol are supported as well (DNSSEC, TSIG, EDNS0).
DSWIM is a powerful informational tool for Debian's packaging system. Designed with an integrated approach it combines the functionality found in several other programs and scripts. This provides users with a centralized approach for querying the installation, allowing programmers the liberty of writing smaller and simpler code.