'Add a TSIG signature to the query.
@param keyring: The TSIG keyring to use; defaults to None.
@type keyring: dict
@param keyname: The name of the TSIG key to use; defaults to None.
The key must be defined in the keyring.  If a keyring is specified
but a keyname is not, then the key used will be the first key in the
keyring.  Note that the order of keys in a dictionary is not defined,
so applications should supply a keyname when a keyring is used, unless
they know the keyring contains only one key.
@param algorithm: The TSIG key algorithm to use.  The default
is dns.tsig.default_algorithm.
@type algorithm: string'

def use_tsig(self, keyring, keyname=None, algorithm=dns.tsig.default_algorithm):

    self.keyring = keyring
    if (keyname is None):
        self.keyname = self.keyring.keys()[0]
    else:
        self.keyname = keyname
    self.keyalgorithm = algorithm
