Package dns :: Module query
[show private | hide private]
[frames | no frames]

Module dns.query

Talk to a DNS server.
Exceptions
BadResponse Raised if a query response does not respond to the question asked.
UnexpectedSource Raised if a query response comes from an unexpected address or port.

Function Summary
dns.message.Message object tcp(q, where, timeout, port, af)
Return the response obtained after sending a query via TCP.
dns.message.Message object udp(q, where, timeout, port, af)
Return the response obtained after sending a query via UDP.
generator of dns.message.Message objects. xfr(where, zone, rdtype, rdclass, timeout, port, keyring, keyname, relativize, af, lifetime)
Return a generator for the responses to a zone transfer.
  _compute_expiration(timeout)
  _connect(s, address)
  _net_read(sock, count, expiration)
Read the specified number of bytes from sock.
  _net_write(sock, data, expiration)
Write the specified data to the socket.
  _wait_for(ir, iw, ix, expiration)
  _wait_for_readable(s, expiration)
  _wait_for_writable(s, expiration)

Function Details

tcp(q, where, timeout=None, port=53, af=2)

Return the response obtained after sending a query via TCP.
Parameters:
q - the query
           (type=dns.message.Message object)
where - where to send the message
           (type=string)
timeout - The number of seconds to wait before the query times out. If None, the default, wait forever.
           (type=float)
port - The port to which to send the message. The default is 53.
           (type=int)
af - the address family to use. The default is socket.AF_INET.
           (type=int)
Returns:
dns.message.Message object

udp(q, where, timeout=None, port=53, af=2)

Return the response obtained after sending a query via UDP.
Parameters:
q - the query
           (type=dns.message.Message)
where - where to send the message
           (type=string)
timeout - The number of seconds to wait before the query times out. If None, the default, wait forever.
           (type=float)
port - The port to which to send the message. The default is 53.
           (type=int)
af - the address family to use. The default is socket.AF_INET.
           (type=int)
Returns:
dns.message.Message object

xfr(where, zone, rdtype=252, rdclass=1, timeout=None, port=53, keyring=None, keyname=None, relativize=True, af=2, lifetime=None)

Return a generator for the responses to a zone transfer.
Parameters:
where - where to send the message
           (type=string)
zone - The name of the zone to transfer
           (type=dns.name.Name object or string)
rdtype - The type of zone transfer. The default is dns.rdatatype.AXFR.
           (type=int or string)
rdclass - The class of the zone transfer. The default is dns.rdatatype.IN.
           (type=int or string)
timeout - The number of seconds to wait for each response message. If None, the default, wait forever.
           (type=float)
port - The port to which to send the message. The default is 53.
           (type=int)
keyring - The TSIG keyring to use
           (type=dict)
keyname - The name of the TSIG key to use
           (type=dns.name.Name object or string)
relativize - If True, all names in the zone will be relativized to the zone origin.
           (type=bool)
af - the address family to use. The default is socket.AF_INET.
           (type=int)
lifetime - The total number of seconds to spend doing the transfer. If None, the default, then there is no limit on the time the transfer may take.
           (type=float)
Returns:
generator of dns.message.Message objects.

_net_read(sock, count, expiration)

Read the specified number of bytes from sock. Keep trying until we either get the desired amount, or we hit EOF. A Timeout exception will be raised if the operation is not completed by the expiration time.

_net_write(sock, data, expiration)

Write the specified data to the socket. A Timeout exception will be raised if the operation is not completed by the expiration time.

Generated by Epydoc 2.1 on Thu Apr 1 12:10:11 2004 http://epydoc.sf.net