summaryrefslogtreecommitdiff
path: root/libunbound/python/doc/modules/unbound.rst
blob: 77e4cd1a17513fac6e68ffdccaf298c5ce5579ee (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
Unbound module documentation
================================

.. automodule:: unbound

Class ub_ctx
--------------
.. autoclass:: ub_ctx
	:members:
	:undoc-members:
	
	.. automethod:: __init__ 

Class ub_result
----------------------
.. autoclass:: ub_result
	:members:

	.. attribute:: qname

		The original question, name text string.

	.. attribute:: qtype

		The class asked for.

	.. attribute:: canonname

		Canonical name for the result (the final cname). May be empty if no canonical name exists.

	.. attribute:: answer_packet
		
		The DNS answer packet. Network formatted. Can contain DNSSEC types.

	.. attribute:: havedata
		
		If there is any data, this property is true. If false, there was no data (nxdomain may be true, rcode can be set).

	.. attribute:: secure
		
		True, if the result is validated securely.
	 	False, if validation failed or domain queried has no security info.
	 
	  	It is possible to get a result with no data (havedata is false),
	  	and secure is true. This means that the non-existence of the data
	  	was cryptographically proven (with signatures).

	.. attribute:: bogus
		
		If the result was not secure (secure==0), and this result is due  to a security failure, bogus is true.
	 	This means the data has been actively tampered with, signatures
	 	failed, expected signatures were not present, timestamps on 
	 	signatures were out of date and so on.
	 
	 	If secure==0 and bogus==0, this can happen if the data is not secure 
	 	because security is disabled for that domain name. 
	 	This means the data is from a domain where data is not signed.

	.. attribute:: nxdomain

		If there was no data, and the domain did not exist, this is true. 
		If it is false, and there was no data, then the domain name is purported to exist, but the requested data type is not available.

	.. attribute:: rcode
		
		DNS RCODE for the result. May contain additional error code if there was no data due to an error. 
		0 (RCODE_NOERROR) if okay. See predefined `RCODE_` constants.
	
		RCODE can be represented in display representation form (string) using :attr:`rcode_str` attribute.

Class ub_data
----------------------
.. autoclass:: ub_data
	:members:

Functions
----------------------
.. autofunction:: reverse
.. autofunction:: idn2dname
.. autofunction:: dname2idn

Predefined constants
-----------------------

**RCODE**
	* RCODE_FORMERR = 1
	* RCODE_NOERROR = 0
	* RCODE_NOTAUTH = 9
	* RCODE_NOTIMPL = 4
	* RCODE_NOTZONE = 10
	* RCODE_NXDOMAIN = 3
	* RCODE_NXRRSET = 8
	* RCODE_REFUSED = 5
	* RCODE_SERVFAIL = 2
	* RCODE_YXDOMAIN = 6
	* RCODE_YXRRSET = 7

**RR_CLASS**
	* RR_CLASS_ANY = 255
	* RR_CLASS_CH = 3
	* RR_CLASS_HS = 4
	* RR_CLASS_IN = 1
	* RR_CLASS_NONE = 254

**RR_TYPE**
	* RR_TYPE_A = 1
	* RR_TYPE_A6 = 38
	* RR_TYPE_AAAA = 28
	* RR_TYPE_AFSDB = 18
	* RR_TYPE_ANY = 255
	* RR_TYPE_APL = 42
	* RR_TYPE_ATMA = 34
	* RR_TYPE_AXFR = 252
	* RR_TYPE_CERT = 37
	* RR_TYPE_CNAME = 5
	* RR_TYPE_DHCID = 49
	* RR_TYPE_DLV = 32769
	* RR_TYPE_DNAME = 39
	* RR_TYPE_DNSKEY = 48
	* RR_TYPE_DS = 43
	* RR_TYPE_EID = 31
	* RR_TYPE_GID = 102
	* RR_TYPE_GPOS = 27
	* RR_TYPE_HINFO = 13
	* RR_TYPE_IPSECKEY = 45
	* RR_TYPE_ISDN = 20
	* RR_TYPE_IXFR = 251
	* RR_TYPE_KEY = 25
	* RR_TYPE_KX = 36
	* RR_TYPE_LOC = 29
	* RR_TYPE_MAILA = 254
	* RR_TYPE_MAILB = 253
	* RR_TYPE_MB = 7
	* RR_TYPE_MD = 3
	* RR_TYPE_MF = 4
	* RR_TYPE_MG = 8
	* RR_TYPE_MINFO = 14
	* RR_TYPE_MR = 9
	* RR_TYPE_MX = 15
	* RR_TYPE_NAPTR = 35
	* RR_TYPE_NIMLOC = 32
	* RR_TYPE_NS = 2
	* RR_TYPE_NSAP = 22
	* RR_TYPE_NSAP_PTR = 23
	* RR_TYPE_NSEC = 47
	* RR_TYPE_NSEC3 = 50
	* RR_TYPE_NSEC3PARAMS = 51
	* RR_TYPE_NULL = 10
	* RR_TYPE_NXT = 30
	* RR_TYPE_OPT = 41
	* RR_TYPE_PTR = 12
	* RR_TYPE_PX = 26
	* RR_TYPE_RP = 17
	* RR_TYPE_RRSIG = 46
	* RR_TYPE_RT = 21
	* RR_TYPE_SIG = 24
	* RR_TYPE_SINK = 40
	* RR_TYPE_SOA = 6
	* RR_TYPE_SRV = 33
	* RR_TYPE_SSHFP = 44
	* RR_TYPE_TSIG = 250
	* RR_TYPE_TXT = 16
	* RR_TYPE_UID = 101
	* RR_TYPE_UINFO = 100
	* RR_TYPE_UNSPEC = 103
	* RR_TYPE_WKS = 11
	* RR_TYPE_X25 = 19