aboutsummaryrefslogtreecommitdiff
path: root/external/unbound/libunbound/python/doc/examples/example1a.rst
blob: 3c81547f294874c24be9036f2fb33b858445da83 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.. _example_resolve_name:

==============================
Resolve a name
==============================

This basic example shows how to create a context and resolve a host address (DNS record of A type).

::

	#!/usr/bin/python
	import unbound
	
	ctx = unbound.ub_ctx()
	ctx.resolvconf("/etc/resolv.conf")
	
	status, result = ctx.resolve("www.google.com")
	if status == 0 and result.havedata:
		print "Result.data:", result.data.address_list
	elif status != 0:
		print "Resolve error:", unbound.ub_strerror(status)

In contrast with C API, the source code is more compact while the performance of C implementation is preserved. 
The main advantage is that you need not take care about the deallocation and allocation of context and result structures; pyUnbound module do it automatically for you. 

If only domain name is given, the :meth:`unbound.ub_ctx.resolve` looks for A records in IN class.