Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
BIND
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
633
Issues
633
List
Boards
Labels
Service Desk
Milestones
Merge Requests
104
Merge Requests
104
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ISC Open Source Projects
BIND
Commits
b46b2438
Commit
b46b2438
authored
Feb 07, 2019
by
Mark Andrews
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '867-rrtypes-missing-from-named' into 'master'
Resolve "rrtypes missing from named" Closes
#867
See merge request
!1490
parents
b61c254d
b06c5f8c
Pipeline
#9714
passed with stages
in 58 seconds
Changes
10
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
123 additions
and
96 deletions
+123
-96
CHANGES
CHANGES
+1
-1
bin/tests/system/genzone.sh
bin/tests/system/genzone.sh
+6
-6
bin/tests/system/rrchecker/typelist.good
bin/tests/system/rrchecker/typelist.good
+1
-1
bin/tests/system/xfer/dig1.good
bin/tests/system/xfer/dig1.good
+6
-6
bin/tests/system/xfer/dig2.good
bin/tests/system/xfer/dig2.good
+6
-6
doc/arm/Bv9ARM-book.xml
doc/arm/Bv9ARM-book.xml
+27
-0
lib/dns/rdata/generic/amtrelay_260.c
lib/dns/rdata/generic/amtrelay_260.c
+65
-65
lib/dns/rdata/generic/amtrelay_260.h
lib/dns/rdata/generic/amtrelay_260.h
+5
-5
lib/dns/tests/rdata_test.c
lib/dns/tests/rdata_test.c
+4
-4
util/copyrights
util/copyrights
+2
-2
No files found.
CHANGES
View file @
b46b2438
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
names specified on the command line without
names specified on the command line without
trailing dots. [GL !1478]
trailing dots. [GL !1478]
5158. [protocol] Add support for A
TM
RELAY and ZONEMD. [GL #867]
5158. [protocol] Add support for A
MT
RELAY and ZONEMD. [GL #867]
5157. [bug] Nslookup now errors out if there are extra command
5157. [bug] Nslookup now errors out if there are extra command
line arguments. [GL #207]
line arguments. [GL #207]
...
...
bin/tests/system/genzone.sh
View file @
b46b2438
...
@@ -463,12 +463,12 @@ doa01 DOA ( 1234567890 1234567890 1 "image/gif"
...
@@ -463,12 +463,12 @@ doa01 DOA ( 1234567890 1234567890 1 "image/gif"
doa02 DOA 0 1 2 "" aHR0cHM6Ly93d3cuaXNjLm9yZy8=
doa02 DOA 0 1 2 "" aHR0cHM6Ly93d3cuaXNjLm9yZy8=
; type 260
; type 260
a
tmrelay01 ATM
RELAY 0 0 0
a
mtrelay01 AMT
RELAY 0 0 0
a
tmrelay02 ATM
RELAY 0 1 0
a
mtrelay02 AMT
RELAY 0 1 0
a
tmrelay03 ATM
RELAY 0 0 1 0.0.0.0
a
mtrelay03 AMT
RELAY 0 0 1 0.0.0.0
a
tmrelay04 ATM
RELAY 0 0 2 ::
a
mtrelay04 AMT
RELAY 0 0 2 ::
a
tmrelay05 ATM
RELAY 0 0 3 example.net.
a
mtrelay05 AMT
RELAY 0 0 3 example.net.
a
tmrelay06 ATM
RELAY
\#
2 0004
a
mtrelay06 AMT
RELAY
\#
2 0004
; type 261 -- 32767 (unassigned)
; type 261 -- 32767 (unassigned)
...
...
bin/tests/system/rrchecker/typelist.good
View file @
b46b2438
...
@@ -74,6 +74,6 @@ URI
...
@@ -74,6 +74,6 @@ URI
CAA
CAA
AVC
AVC
DOA
DOA
A
TM
RELAY
A
MT
RELAY
TA
TA
DLV
DLV
bin/tests/system/xfer/dig1.good
View file @
b46b2438
...
@@ -11,18 +11,18 @@ aaaa01.example. 3600 IN AAAA ::1
...
@@ -11,18 +11,18 @@ aaaa01.example. 3600 IN AAAA ::1
aaaa02.example. 3600 IN AAAA fd92:7065:b8e:ffff::5
aaaa02.example. 3600 IN AAAA fd92:7065:b8e:ffff::5
afsdb01.example. 3600 IN AFSDB 0 hostname.example.
afsdb01.example. 3600 IN AFSDB 0 hostname.example.
afsdb02.example. 3600 IN AFSDB 65535 .
afsdb02.example. 3600 IN AFSDB 65535 .
amtrelay01.example. 3600 IN AMTRELAY 0 0 0
amtrelay02.example. 3600 IN AMTRELAY 0 1 0
amtrelay03.example. 3600 IN AMTRELAY 0 0 1 0.0.0.0
amtrelay04.example. 3600 IN AMTRELAY 0 0 2 ::
amtrelay05.example. 3600 IN AMTRELAY 0 0 3 example.net.
amtrelay06.example. 3600 IN AMTRELAY \# 2 0004
apl01.example. 3600 IN APL !1:10.0.0.1/32 1:10.0.0.0/24
apl01.example. 3600 IN APL !1:10.0.0.1/32 1:10.0.0.0/24
apl02.example. 3600 IN APL
apl02.example. 3600 IN APL
atma01.example. 3600 IN ATMA +61200000000
atma01.example. 3600 IN ATMA +61200000000
atma02.example. 3600 IN ATMA +61200000000
atma02.example. 3600 IN ATMA +61200000000
atma03.example. 3600 IN ATMA 1234567890abcdef
atma03.example. 3600 IN ATMA 1234567890abcdef
atma04.example. 3600 IN ATMA fedcba0987654321
atma04.example. 3600 IN ATMA fedcba0987654321
atmrelay01.example. 3600 IN ATMRELAY 0 0 0
atmrelay02.example. 3600 IN ATMRELAY 0 1 0
atmrelay03.example. 3600 IN ATMRELAY 0 0 1 0.0.0.0
atmrelay04.example. 3600 IN ATMRELAY 0 0 2 ::
atmrelay05.example. 3600 IN ATMRELAY 0 0 3 example.net.
atmrelay06.example. 3600 IN ATMRELAY \# 2 0004
avc.example. 3600 IN AVC "foo:bar"
avc.example. 3600 IN AVC "foo:bar"
caa01.example. 3600 IN CAA 0 issue "ca.example.net; policy=ev"
caa01.example. 3600 IN CAA 0 issue "ca.example.net; policy=ev"
caa02.example. 3600 IN CAA 128 tbs "Unknown"
caa02.example. 3600 IN CAA 128 tbs "Unknown"
...
...
bin/tests/system/xfer/dig2.good
View file @
b46b2438
...
@@ -11,18 +11,18 @@ aaaa01.example. 3600 IN AAAA ::1
...
@@ -11,18 +11,18 @@ aaaa01.example. 3600 IN AAAA ::1
aaaa02.example. 3600 IN AAAA fd92:7065:b8e:ffff::5
aaaa02.example. 3600 IN AAAA fd92:7065:b8e:ffff::5
afsdb01.example. 3600 IN AFSDB 0 hostname.example.
afsdb01.example. 3600 IN AFSDB 0 hostname.example.
afsdb02.example. 3600 IN AFSDB 65535 .
afsdb02.example. 3600 IN AFSDB 65535 .
amtrelay01.example. 3600 IN AMTRELAY 0 0 0
amtrelay02.example. 3600 IN AMTRELAY 0 1 0
amtrelay03.example. 3600 IN AMTRELAY 0 0 1 0.0.0.1
amtrelay04.example. 3600 IN AMTRELAY 0 0 2 ::
amtrelay05.example. 3600 IN AMTRELAY 0 0 3 example.net.
amtrelay06.example. 3600 IN AMTRELAY \# 2 0004
apl01.example. 3600 IN APL !1:10.0.0.1/32 1:10.0.0.1/24
apl01.example. 3600 IN APL !1:10.0.0.1/32 1:10.0.0.1/24
apl02.example. 3600 IN APL
apl02.example. 3600 IN APL
atma01.example. 3600 IN ATMA +61200000000
atma01.example. 3600 IN ATMA +61200000000
atma02.example. 3600 IN ATMA +61200000000
atma02.example. 3600 IN ATMA +61200000000
atma03.example. 3600 IN ATMA 1234567890abcdef
atma03.example. 3600 IN ATMA 1234567890abcdef
atma04.example. 3600 IN ATMA fedcba0987654321
atma04.example. 3600 IN ATMA fedcba0987654321
atmrelay01.example. 3600 IN ATMRELAY 0 0 0
atmrelay02.example. 3600 IN ATMRELAY 0 1 0
atmrelay03.example. 3600 IN ATMRELAY 0 0 1 0.0.0.1
atmrelay04.example. 3600 IN ATMRELAY 0 0 2 ::
atmrelay05.example. 3600 IN ATMRELAY 0 0 3 example.net.
atmrelay06.example. 3600 IN ATMRELAY \# 2 0004
avc.example. 3600 IN AVC "foo:bar"
avc.example. 3600 IN AVC "foo:bar"
caa01.example. 3600 IN CAA 0 issue "ca.example.net; policy=ev"
caa01.example. 3600 IN CAA 0 issue "ca.example.net; policy=ev"
caa02.example. 3600 IN CAA 128 tbs "Unknown"
caa02.example. 3600 IN CAA 128 tbs "Unknown"
...
...
doc/arm/Bv9ARM-book.xml
View file @
b46b2438
...
@@ -13129,6 +13129,20 @@ view external {
...
@@ -13129,6 +13129,20 @@ view external {
</para>
</para>
</entry>
</entry>
</row>
</row>
<row rowsep="0">
<entry colname="1">
<para>
AMTRELAY
</para>
</entry>
<entry colname="2">
<para>
Automatic Multicast Tunneling Relay
discovery record.
Work in progress draft-ietf-mboned-driad-amt-discovery.
</para>
</entry>
</row>
<row rowsep="0">
<row rowsep="0">
<entry colname="1">
<entry colname="1">
<para>
<para>
...
@@ -14086,6 +14100,19 @@ view external {
...
@@ -14086,6 +14100,19 @@ view external {
</para>
</para>
</entry>
</entry>
</row>
</row>
<row rowsep="0">
<entry colname="1">
<para>
ZONEMD
</para>
</entry>
<entry colname="2">
<para>
Zone Meta Data.
Work in progress draft-wessels-dns-zone-digest.
</para>
</entry>
</row>
</tbody>
</tbody>
</tgroup>
</tgroup>
</informaltable>
</informaltable>
...
...
lib/dns/rdata/generic/a
tm
relay_260.c
→
lib/dns/rdata/generic/a
mt
relay_260.c
View file @
b46b2438
...
@@ -10,17 +10,17 @@
...
@@ -10,17 +10,17 @@
*/
*/
#ifndef RDATA_GENERIC_A
TM
RELAY_260_C
#ifndef RDATA_GENERIC_A
MT
RELAY_260_C
#define RDATA_GENERIC_A
TM
RELAY_260_C
#define RDATA_GENERIC_A
MT
RELAY_260_C
#include <string.h>
#include <string.h>
#include <isc/net.h>
#include <isc/net.h>
#define RRTYPE_A
TM
RELAY_ATTRIBUTES (0)
#define RRTYPE_A
MT
RELAY_ATTRIBUTES (0)
static
inline
isc_result_t
static
inline
isc_result_t
fromtext_a
tm
relay
(
ARGS_FROMTEXT
)
{
fromtext_a
mt
relay
(
ARGS_FROMTEXT
)
{
isc_token_t
token
;
isc_token_t
token
;
dns_name_t
name
;
dns_name_t
name
;
isc_buffer_t
buffer
;
isc_buffer_t
buffer
;
...
@@ -30,7 +30,7 @@ fromtext_atmrelay(ARGS_FROMTEXT) {
...
@@ -30,7 +30,7 @@ fromtext_atmrelay(ARGS_FROMTEXT) {
unsigned
char
addr6
[
16
];
unsigned
char
addr6
[
16
];
isc_region_t
region
;
isc_region_t
region
;
REQUIRE
(
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
type
==
dns_rdatatype_a
mt
relay
);
UNUSED
(
type
);
UNUSED
(
type
);
UNUSED
(
rdclass
);
UNUSED
(
rdclass
);
...
@@ -120,7 +120,7 @@ fromtext_atmrelay(ARGS_FROMTEXT) {
...
@@ -120,7 +120,7 @@ fromtext_atmrelay(ARGS_FROMTEXT) {
}
}
static
inline
isc_result_t
static
inline
isc_result_t
totext_a
tm
relay
(
ARGS_TOTEXT
)
{
totext_a
mt
relay
(
ARGS_TOTEXT
)
{
isc_region_t
region
;
isc_region_t
region
;
dns_name_t
name
;
dns_name_t
name
;
char
buf
[
sizeof
(
"0 255 "
)];
char
buf
[
sizeof
(
"0 255 "
)];
...
@@ -131,7 +131,7 @@ totext_atmrelay(ARGS_TOTEXT) {
...
@@ -131,7 +131,7 @@ totext_atmrelay(ARGS_TOTEXT) {
UNUSED
(
tctx
);
UNUSED
(
tctx
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
REQUIRE
(
rdata
->
length
>=
2
);
REQUIRE
(
rdata
->
length
>=
2
);
if
((
rdata
->
data
[
1
]
&
0x7f
)
>
3U
)
if
((
rdata
->
data
[
1
]
&
0x7f
)
>
3U
)
...
@@ -182,11 +182,11 @@ totext_atmrelay(ARGS_TOTEXT) {
...
@@ -182,11 +182,11 @@ totext_atmrelay(ARGS_TOTEXT) {
}
}
static
inline
isc_result_t
static
inline
isc_result_t
fromwire_a
tm
relay
(
ARGS_FROMWIRE
)
{
fromwire_a
mt
relay
(
ARGS_FROMWIRE
)
{
dns_name_t
name
;
dns_name_t
name
;
isc_region_t
region
;
isc_region_t
region
;
REQUIRE
(
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
type
==
dns_rdatatype_a
mt
relay
);
UNUSED
(
type
);
UNUSED
(
type
);
UNUSED
(
rdclass
);
UNUSED
(
rdclass
);
...
@@ -233,10 +233,10 @@ fromwire_atmrelay(ARGS_FROMWIRE) {
...
@@ -233,10 +233,10 @@ fromwire_atmrelay(ARGS_FROMWIRE) {
}
}
static
inline
isc_result_t
static
inline
isc_result_t
towire_a
tm
relay
(
ARGS_TOWIRE
)
{
towire_a
mt
relay
(
ARGS_TOWIRE
)
{
isc_region_t
region
;
isc_region_t
region
;
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
REQUIRE
(
rdata
->
length
!=
0
);
REQUIRE
(
rdata
->
length
!=
0
);
UNUSED
(
cctx
);
UNUSED
(
cctx
);
...
@@ -246,13 +246,13 @@ towire_atmrelay(ARGS_TOWIRE) {
...
@@ -246,13 +246,13 @@ towire_atmrelay(ARGS_TOWIRE) {
}
}
static
inline
int
static
inline
int
compare_a
tm
relay
(
ARGS_COMPARE
)
{
compare_a
mt
relay
(
ARGS_COMPARE
)
{
isc_region_t
region1
;
isc_region_t
region1
;
isc_region_t
region2
;
isc_region_t
region2
;
REQUIRE
(
rdata1
->
type
==
rdata2
->
type
);
REQUIRE
(
rdata1
->
type
==
rdata2
->
type
);
REQUIRE
(
rdata1
->
rdclass
==
rdata2
->
rdclass
);
REQUIRE
(
rdata1
->
rdclass
==
rdata2
->
rdclass
);
REQUIRE
(
rdata1
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata1
->
type
==
dns_rdatatype_a
mt
relay
);
REQUIRE
(
rdata1
->
length
>=
2
);
REQUIRE
(
rdata1
->
length
>=
2
);
REQUIRE
(
rdata2
->
length
>=
2
);
REQUIRE
(
rdata2
->
length
>=
2
);
...
@@ -263,132 +263,132 @@ compare_atmrelay(ARGS_COMPARE) {
...
@@ -263,132 +263,132 @@ compare_atmrelay(ARGS_COMPARE) {
}
}
static
inline
isc_result_t
static
inline
isc_result_t
fromstruct_a
tm
relay
(
ARGS_FROMSTRUCT
)
{
fromstruct_a
mt
relay
(
ARGS_FROMSTRUCT
)
{
dns_rdata_a
tmrelay_t
*
atm
relay
=
source
;
dns_rdata_a
mtrelay_t
*
amt
relay
=
source
;
isc_region_t
region
;
isc_region_t
region
;
uint32_t
n
;
uint32_t
n
;
REQUIRE
(
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
type
==
dns_rdatatype_a
mt
relay
);
REQUIRE
(
source
!=
NULL
);
REQUIRE
(
source
!=
NULL
);
REQUIRE
(
a
tm
relay
->
common
.
rdtype
==
type
);
REQUIRE
(
a
mt
relay
->
common
.
rdtype
==
type
);
REQUIRE
(
a
tm
relay
->
common
.
rdclass
==
rdclass
);
REQUIRE
(
a
mt
relay
->
common
.
rdclass
==
rdclass
);
UNUSED
(
type
);
UNUSED
(
type
);
UNUSED
(
rdclass
);
UNUSED
(
rdclass
);
RETERR
(
uint8_tobuffer
(
a
tm
relay
->
precedence
,
target
));
RETERR
(
uint8_tobuffer
(
a
mt
relay
->
precedence
,
target
));
n
=
(
a
tmrelay
->
discovery
?
0x80
:
0
)
|
atm
relay
->
gateway_type
;
n
=
(
a
mtrelay
->
discovery
?
0x80
:
0
)
|
amt
relay
->
gateway_type
;
RETERR
(
uint8_tobuffer
(
n
,
target
));
RETERR
(
uint8_tobuffer
(
n
,
target
));
switch
(
a
tm
relay
->
gateway_type
)
{
switch
(
a
mt
relay
->
gateway_type
)
{
case
0
:
case
0
:
return
(
ISC_R_SUCCESS
);
return
(
ISC_R_SUCCESS
);
case
1
:
case
1
:
n
=
ntohl
(
a
tm
relay
->
in_addr
.
s_addr
);
n
=
ntohl
(
a
mt
relay
->
in_addr
.
s_addr
);
return
(
uint32_tobuffer
(
n
,
target
));
return
(
uint32_tobuffer
(
n
,
target
));
case
2
:
case
2
:
return
(
mem_tobuffer
(
target
,
a
tm
relay
->
in6_addr
.
s6_addr
,
16
));
return
(
mem_tobuffer
(
target
,
a
mt
relay
->
in6_addr
.
s6_addr
,
16
));
break
;
break
;
case
3
:
case
3
:
dns_name_toregion
(
&
a
tm
relay
->
gateway
,
&
region
);
dns_name_toregion
(
&
a
mt
relay
->
gateway
,
&
region
);
return
(
isc_buffer_copyregion
(
target
,
&
region
));
return
(
isc_buffer_copyregion
(
target
,
&
region
));
break
;
break
;
default:
default:
return
(
mem_tobuffer
(
target
,
a
tmrelay
->
data
,
atm
relay
->
length
));
return
(
mem_tobuffer
(
target
,
a
mtrelay
->
data
,
amt
relay
->
length
));
}
}
}
}
static
inline
isc_result_t
static
inline
isc_result_t
tostruct_a
tm
relay
(
ARGS_TOSTRUCT
)
{
tostruct_a
mt
relay
(
ARGS_TOSTRUCT
)
{
isc_region_t
region
;
isc_region_t
region
;
dns_rdata_a
tmrelay_t
*
atm
relay
=
target
;
dns_rdata_a
mtrelay_t
*
amt
relay
=
target
;
dns_name_t
name
;
dns_name_t
name
;
uint32_t
n
;
uint32_t
n
;
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
REQUIRE
(
target
!=
NULL
);
REQUIRE
(
target
!=
NULL
);
REQUIRE
(
rdata
->
length
>=
2
);
REQUIRE
(
rdata
->
length
>=
2
);
a
tm
relay
->
common
.
rdclass
=
rdata
->
rdclass
;
a
mt
relay
->
common
.
rdclass
=
rdata
->
rdclass
;
a
tm
relay
->
common
.
rdtype
=
rdata
->
type
;
a
mt
relay
->
common
.
rdtype
=
rdata
->
type
;
ISC_LINK_INIT
(
&
a
tm
relay
->
common
,
link
);
ISC_LINK_INIT
(
&
a
mt
relay
->
common
,
link
);
dns_name_init
(
&
a
tm
relay
->
gateway
,
NULL
);
dns_name_init
(
&
a
mt
relay
->
gateway
,
NULL
);
a
tm
relay
->
data
=
NULL
;
a
mt
relay
->
data
=
NULL
;
dns_name_init
(
&
name
,
NULL
);
dns_name_init
(
&
name
,
NULL
);
dns_rdata_toregion
(
rdata
,
&
region
);
dns_rdata_toregion
(
rdata
,
&
region
);
a
tm
relay
->
precedence
=
uint8_fromregion
(
&
region
);
a
mt
relay
->
precedence
=
uint8_fromregion
(
&
region
);
isc_region_consume
(
&
region
,
1
);
isc_region_consume
(
&
region
,
1
);
a
tm
relay
->
gateway_type
=
uint8_fromregion
(
&
region
);
a
mt
relay
->
gateway_type
=
uint8_fromregion
(
&
region
);
a
tmrelay
->
discovery
=
(
atm
relay
->
gateway_type
&
0x80
)
!=
0
;
a
mtrelay
->
discovery
=
(
amt
relay
->
gateway_type
&
0x80
)
!=
0
;
a
tm
relay
->
gateway_type
&=
0x7f
;
a
mt
relay
->
gateway_type
&=
0x7f
;
isc_region_consume
(
&
region
,
1
);
isc_region_consume
(
&
region
,
1
);
switch
(
a
tm
relay
->
gateway_type
)
{
switch
(
a
mt
relay
->
gateway_type
)
{
case
0
:
case
0
:
break
;
break
;
case
1
:
case
1
:
n
=
uint32_fromregion
(
&
region
);
n
=
uint32_fromregion
(
&
region
);
a
tm
relay
->
in_addr
.
s_addr
=
htonl
(
n
);
a
mt
relay
->
in_addr
.
s_addr
=
htonl
(
n
);
isc_region_consume
(
&
region
,
4
);
isc_region_consume
(
&
region
,
4
);
break
;
break
;
case
2
:
case
2
:
memmove
(
a
tm
relay
->
in6_addr
.
s6_addr
,
region
.
base
,
16
);
memmove
(
a
mt
relay
->
in6_addr
.
s6_addr
,
region
.
base
,
16
);
isc_region_consume
(
&
region
,
16
);
isc_region_consume
(
&
region
,
16
);
break
;
break
;
case
3
:
case
3
:
dns_name_fromregion
(
&
name
,
&
region
);
dns_name_fromregion
(
&
name
,
&
region
);
RETERR
(
name_duporclone
(
&
name
,
mctx
,
&
a
tm
relay
->
gateway
));
RETERR
(
name_duporclone
(
&
name
,
mctx
,
&
a
mt
relay
->
gateway
));
isc_region_consume
(
&
region
,
name_length
(
&
name
));
isc_region_consume
(
&
region
,
name_length
(
&
name
));
break
;
break
;
default:
default:
if
(
region
.
length
!=
0
)
{
if
(
region
.
length
!=
0
)
{
a
tm
relay
->
data
=
mem_maybedup
(
mctx
,
region
.
base
,
a
mt
relay
->
data
=
mem_maybedup
(
mctx
,
region
.
base
,
region
.
length
);
region
.
length
);
if
(
a
tm
relay
->
data
==
NULL
)
{
if
(
a
mt
relay
->
data
==
NULL
)
{
return
(
ISC_R_NOMEMORY
);
return
(
ISC_R_NOMEMORY
);
}
}
}
}
a
tm
relay
->
length
=
region
.
length
;
a
mt
relay
->
length
=
region
.
length
;
}
}
a
tm
relay
->
mctx
=
mctx
;
a
mt
relay
->
mctx
=
mctx
;
return
(
ISC_R_SUCCESS
);
return
(
ISC_R_SUCCESS
);
}
}
static
inline
void
static
inline
void
freestruct_a
tm
relay
(
ARGS_FREESTRUCT
)
{
freestruct_a
mt
relay
(
ARGS_FREESTRUCT
)
{
dns_rdata_a
tmrelay_t
*
atm
relay
=
source
;
dns_rdata_a
mtrelay_t
*
amt
relay
=
source
;
REQUIRE
(
source
!=
NULL
);
REQUIRE
(
source
!=
NULL
);
REQUIRE
(
a
tmrelay
->
common
.
rdtype
==
dns_rdatatype_atm
relay
);
REQUIRE
(
a
mtrelay
->
common
.
rdtype
==
dns_rdatatype_amt
relay
);
if
(
a
tm
relay
->
mctx
==
NULL
)
if
(
a
mt
relay
->
mctx
==
NULL
)
return
;
return
;
if
(
a
tm
relay
->
gateway_type
==
3
)
if
(
a
mt
relay
->
gateway_type
==
3
)
dns_name_free
(
&
a
tmrelay
->
gateway
,
atm
relay
->
mctx
);
dns_name_free
(
&
a
mtrelay
->
gateway
,
amt
relay
->
mctx
);
if
(
a
tm
relay
->
data
!=
NULL
)
if
(
a
mt
relay
->
data
!=
NULL
)
isc_mem_free
(
a
tmrelay
->
mctx
,
atm
relay
->
data
);
isc_mem_free
(
a
mtrelay
->
mctx
,
amt
relay
->
data
);
a
tm
relay
->
mctx
=
NULL
;
a
mt
relay
->
mctx
=
NULL
;
}
}
static
inline
isc_result_t
static
inline
isc_result_t
additionaldata_a
tm
relay
(
ARGS_ADDLDATA
)
{
additionaldata_a
mt
relay
(
ARGS_ADDLDATA
)
{
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
UNUSED
(
rdata
);
UNUSED
(
rdata
);
UNUSED
(
add
);
UNUSED
(
add
);
...
@@ -398,19 +398,19 @@ additionaldata_atmrelay(ARGS_ADDLDATA) {
...
@@ -398,19 +398,19 @@ additionaldata_atmrelay(ARGS_ADDLDATA) {
}
}
static
inline
isc_result_t
static
inline
isc_result_t
digest_a
tm
relay
(
ARGS_DIGEST
)
{
digest_a
mt
relay
(
ARGS_DIGEST
)
{
isc_region_t
region
;
isc_region_t
region
;
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
dns_rdata_toregion
(
rdata
,
&
region
);
dns_rdata_toregion
(
rdata
,
&
region
);
return
((
digest
)(
arg
,
&
region
));
return
((
digest
)(
arg
,
&
region
));
}
}
static
inline
bool
static
inline
bool
checkowner_a
tm
relay
(
ARGS_CHECKOWNER
)
{
checkowner_a
mt
relay
(
ARGS_CHECKOWNER
)
{
REQUIRE
(
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
type
==
dns_rdatatype_a
mt
relay
);
UNUSED
(
name
);
UNUSED
(
name
);
UNUSED
(
type
);
UNUSED
(
type
);
...
@@ -421,9 +421,9 @@ checkowner_atmrelay(ARGS_CHECKOWNER) {
...
@@ -421,9 +421,9 @@ checkowner_atmrelay(ARGS_CHECKOWNER) {
}
}
static
inline
bool
static
inline
bool
checknames_a
tm
relay
(
ARGS_CHECKNAMES
)
{
checknames_a
mt
relay
(
ARGS_CHECKNAMES
)
{
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
tm
relay
);
REQUIRE
(
rdata
->
type
==
dns_rdatatype_a
mt
relay
);
UNUSED
(
rdata
);
UNUSED
(
rdata
);
UNUSED
(
owner
);
UNUSED
(
owner
);
...
@@ -433,7 +433,7 @@ checknames_atmrelay(ARGS_CHECKNAMES) {
...
@@ -433,7 +433,7 @@ checknames_atmrelay(ARGS_CHECKNAMES) {
}
}
static
inline
int
static
inline
int
casecompare_a
tm
relay
(
ARGS_COMPARE
)
{
casecompare_a
mt
relay
(
ARGS_COMPARE
)
{
isc_region_t
region1
;
isc_region_t
region1
;
isc_region_t
region2
;
isc_region_t
region2
;
dns_name_t
name1
;
dns_name_t
name1
;
...
@@ -441,7 +441,7 @@ casecompare_atmrelay(ARGS_COMPARE) {
...
@@ -441,7 +441,7 @@ casecompare_atmrelay(ARGS_COMPARE) {
REQUIRE
(
rdata1
->
type
==
rdata2
->
type
);
REQUIRE
(
rdata1
->
type
==
rdata2
->
type
);
REQUIRE
(
rdata1
->
rdclass
==
rdata2
->
rdclass
);
REQUIRE
(
rdata1
->
rdclass
==
rdata2
->
rdclass
);
REQUIRE
(
rdata1
->
type
==
dns_rdatatype_a
tm
relay
);