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
635
Issues
635
List
Boards
Labels
Service Desk
Milestones
Merge Requests
108
Merge Requests
108
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
733b16eb
Commit
733b16eb
authored
Dec 22, 1999
by
Michael Graff
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
priority rendering
parent
491319c3
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
153 additions
and
115 deletions
+153
-115
bin/named/client.c
bin/named/client.c
+4
-4
bin/named/xfrout.c
bin/named/xfrout.c
+3
-5
bin/tests/dispatch_tcp_test.c
bin/tests/dispatch_tcp_test.c
+4
-4
bin/tests/dispatch_test.c
bin/tests/dispatch_test.c
+4
-4
bin/tests/sdig.c
bin/tests/sdig.c
+1
-2
bin/tests/tkey_test.c
bin/tests/tkey_test.c
+8
-9
bin/tests/wire_test.c
bin/tests/wire_test.c
+5
-10
lib/dns/include/dns/message.h
lib/dns/include/dns/message.h
+6
-1
lib/dns/message.c
lib/dns/message.c
+105
-63
lib/dns/resolver.c
lib/dns/resolver.c
+2
-2
lib/dns/xfrin.c
lib/dns/xfrin.c
+6
-6
lib/dns/zone.c
lib/dns/zone.c
+5
-5
No files found.
bin/named/client.c
View file @
733b16eb
...
...
@@ -323,11 +323,11 @@ ns_client_send(ns_client_t *client) {
client
->
opt
=
NULL
;
}
result
=
dns_message_rendersection
(
client
->
message
,
DNS_SECTION_QUESTION
,
0
,
0
);
DNS_SECTION_QUESTION
,
0
);
if
(
result
!=
ISC_R_SUCCESS
)
goto
done
;
result
=
dns_message_rendersection
(
client
->
message
,
DNS_SECTION_ANSWER
,
0
,
0
);
DNS_SECTION_ANSWER
,
0
);
if
(
result
==
ISC_R_NOSPACE
)
{
client
->
message
->
flags
|=
DNS_MESSAGEFLAG_TC
;
goto
renderend
;
...
...
@@ -335,7 +335,7 @@ ns_client_send(ns_client_t *client) {
if
(
result
!=
ISC_R_SUCCESS
)
goto
done
;
result
=
dns_message_rendersection
(
client
->
message
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
DNS_SECTION_AUTHORITY
,
0
);
if
(
result
==
ISC_R_NOSPACE
)
{
client
->
message
->
flags
|=
DNS_MESSAGEFLAG_TC
;
goto
renderend
;
...
...
@@ -343,7 +343,7 @@ ns_client_send(ns_client_t *client) {
if
(
result
!=
ISC_R_SUCCESS
)
goto
done
;
result
=
dns_message_rendersection
(
client
->
message
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
DNS_SECTION_ADDITIONAL
,
0
);
if
(
result
!=
ISC_R_SUCCESS
&&
result
!=
ISC_R_NOSPACE
)
goto
done
;
renderend:
...
...
bin/named/xfrout.c
View file @
733b16eb
...
...
@@ -15,7 +15,7 @@
* SOFTWARE.
*/
/* $Id: xfrout.c,v 1.3
1 1999/12/21 00:33:17 marka
Exp $ */
/* $Id: xfrout.c,v 1.3
2 1999/12/22 03:22:56 explorer
Exp $ */
#include <config.h>
...
...
@@ -1281,10 +1281,8 @@ sendstream(xfrout_ctx_t *xfr)
if
((
xfr
->
client
->
attributes
&
NS_CLIENTATTR_TCP
)
!=
0
)
{
CHECK
(
dns_message_renderbegin
(
msg
,
&
xfr
->
txbuf
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
));
CHECK
(
dns_message_renderend
(
msg
));
isc_buffer_used
(
&
xfr
->
txbuf
,
&
used
);
...
...
bin/tests/dispatch_tcp_test.c
View file @
733b16eb
...
...
@@ -212,16 +212,16 @@ start_response(void)
rdataset
.
attributes
|=
DNS_RDATASETATTR_QUESTION
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(QUESTION)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ANSWER)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ADDITIONAL)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(AUTHORITY)"
);
printf
(
"--- adding response
\n
"
);
...
...
bin/tests/dispatch_test.c
View file @
733b16eb
...
...
@@ -188,16 +188,16 @@ start_response(clictx_t *cli, char *query, isc_task_t *task)
cli
->
rdataset
.
attributes
|=
DNS_RDATASETATTR_QUESTION
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(QUESTION)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ANSWER)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ADDITIONAL)"
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(AUTHORITY)"
);
printf
(
"--- adding response
\n
"
);
...
...
bin/tests/sdig.c
View file @
733b16eb
...
...
@@ -355,8 +355,7 @@ main(int argc, char *argv[]) {
check_result
(
result
,
"dns_message_renderbegin()"
);
if
(
edns0
)
add_opt
(
message
,
(
isc_uint16_t
)
bufsize
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_QUESTION
,
0
);
check_result
(
result
,
"dns_message_rendersection()"
);
result
=
dns_message_renderend
(
message
);
check_result
(
result
,
"dns_message_renderend()"
);
...
...
bin/tests/tkey_test.c
View file @
733b16eb
...
...
@@ -189,13 +189,13 @@ buildquery(void) {
result
=
dns_message_renderbegin
(
query
,
&
qbuffer
);
CHECK
(
"dns_message_renderbegin"
,
result
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_QUESTION
,
0
);
CHECK
(
"dns_message_rendersection(question)"
,
result
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_ANSWER
,
0
);
CHECK
(
"dns_message_rendersection(answer)"
,
result
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_AUTHORITY
,
0
);
CHECK
(
"dns_message_rendersection(auth)"
,
result
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
query
,
DNS_SECTION_ADDITIONAL
,
0
);
CHECK
(
"dns_message_rendersection(add)"
,
result
);
result
=
dns_message_renderend
(
query
);
CHECK
(
"dns_message_renderend"
,
result
);
...
...
@@ -229,14 +229,13 @@ buildquery2(void) {
result
=
dns_message_renderbegin
(
query2
,
&
qbuffer
);
CHECK
(
"dns_message_renderbegin"
,
result
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_QUESTION
,
0
);
CHECK
(
"dns_message_rendersection(question)"
,
result
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_ANSWER
,
0
);
CHECK
(
"dns_message_rendersection(answer)"
,
result
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_AUTHORITY
,
0
);
CHECK
(
"dns_message_rendersection(auth)"
,
result
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
query2
,
DNS_SECTION_ADDITIONAL
,
0
);
CHECK
(
"dns_message_rendersection(add)"
,
result
);
result
=
dns_message_renderend
(
query2
);
CHECK
(
"dns_message_renderend"
,
result
);
...
...
bin/tests/wire_test.c
View file @
733b16eb
...
...
@@ -157,24 +157,19 @@ main(int argc, char *argv[]) {
result
=
dns_message_renderbegin
(
message
,
&
source
);
CHECKRESULT
(
result
,
"dns_message_renderbegin() failed"
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_QUESTION
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(QUESTION) failed"
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_ANSWER
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ANSWER) failed"
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_AUTHORITY
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(AUTHORITY) failed"
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_ADDITIONAL
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(ADDITIONAL) failed"
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_TSIG
,
0
,
0
);
result
=
dns_message_rendersection
(
message
,
DNS_SECTION_TSIG
,
0
);
CHECKRESULT
(
result
,
"dns_message_rendersection(TSIG) failed"
);
dns_message_renderend
(
message
);
...
...
lib/dns/include/dns/message.h
View file @
733b16eb
...
...
@@ -138,6 +138,11 @@ typedef int dns_section_t;
#define DNS_MESSAGE_INTENTPARSE 1
/* parsing messages */
#define DNS_MESSAGE_INTENTRENDER 2
/* rendering */
/*
* Control behavior of rendering
*/
#define DNS_MESSAGERENDER_ORDERED 0x0001
/* don't change order */
typedef
struct
dns_msgblock
dns_msgblock_t
;
struct
dns_message
{
...
...
@@ -394,7 +399,7 @@ dns_message_renderrelease(dns_message_t *msg, unsigned int space);
dns_result_t
dns_message_rendersection
(
dns_message_t
*
msg
,
dns_section_t
section
,
unsigned
int
priority
,
unsigned
int
options
);
unsigned
int
options
);
/*
* Render all names, rdatalists, etc from the given section at the
* specified priority or higher.
...
...
lib/dns/message.c
View file @
733b16eb
...
...
@@ -1441,9 +1441,40 @@ dns_message_renderreserve(dns_message_t *msg, unsigned int space)
return
(
DNS_R_SUCCESS
);
}
static
inline
isc_boolean_t
wrong_priority
(
dns_rdataset_t
*
rds
,
int
pass
)
{
int
pass_needed
;
/*
* If we are not rendering class IN, this ordering is bogus.
*/
if
(
rds
->
rdclass
!=
dns_rdataclass_in
)
return
(
ISC_FALSE
);
switch
(
rds
->
type
)
{
case
dns_rdatatype_a
:
case
dns_rdatatype_aaaa
:
case
dns_rdatatype_a6
:
pass_needed
=
3
;
break
;
case
dns_rdatatype_sig
:
case
dns_rdatatype_key
:
pass_needed
=
2
;
break
;
default:
pass_needed
=
1
;
}
if
(
pass_needed
>=
pass
)
return
(
ISC_FALSE
);
return
(
ISC_TRUE
);
}
dns_result_t
dns_message_rendersection
(
dns_message_t
*
msg
,
dns_section_t
sectionid
,
unsigned
int
priority
,
unsigned
int
options
)
unsigned
int
options
)
{
dns_namelist_t
*
section
;
dns_name_t
*
name
,
*
next_name
;
...
...
@@ -1451,9 +1482,7 @@ dns_message_rendersection(dns_message_t *msg, dns_section_t sectionid,
unsigned
int
count
,
total
;
dns_result_t
result
;
isc_buffer_t
st
;
/* for rollbacks */
(
void
)
priority
;
/* XXXMLG implement */
(
void
)
options
;
/* XXXMLG implement */
int
pass
;
REQUIRE
(
DNS_MESSAGE_VALID
(
msg
));
REQUIRE
(
msg
->
buffer
!=
NULL
);
...
...
@@ -1461,9 +1490,11 @@ dns_message_rendersection(dns_message_t *msg, dns_section_t sectionid,
section
=
&
msg
->
sections
[
sectionid
];
name
=
ISC_LIST_HEAD
(
*
section
);
if
(
name
==
NULL
)
return
(
DNS_R_SUCCESS
);
if
((
sectionid
==
DNS_SECTION_ADDITIONAL
)
&&
(
options
&
DNS_MESSAGERENDER_ORDERED
)
==
0
)
pass
=
3
;
else
pass
=
1
;
/*
* Shrink the space in the buffer by the reserved amount.
...
...
@@ -1471,66 +1502,77 @@ dns_message_rendersection(dns_message_t *msg, dns_section_t sectionid,
msg
->
buffer
->
length
-=
msg
->
reserved
;
total
=
0
;
while
(
name
!=
NULL
)
{
next_name
=
ISC_LIST_NEXT
(
name
,
link
);
rdataset
=
ISC_LIST_HEAD
(
name
->
list
);
while
(
rdataset
!=
NULL
)
{
next_rdataset
=
ISC_LIST_NEXT
(
rdataset
,
link
);
if
(
rdataset
->
attributes
&
DNS_RDATASETATTR_RENDERED
)
{
rdataset
=
next_rdataset
;
continue
;
}
st
=
*
(
msg
->
buffer
);
count
=
0
;
result
=
dns_rdataset_towire
(
rdataset
,
name
,
&
msg
->
cctx
,
msg
->
buffer
,
&
count
);
do
{
name
=
ISC_LIST_HEAD
(
*
section
);
if
(
name
==
NULL
)
return
(
DNS_R_SUCCESS
);
total
+=
count
;
while
(
name
!=
NULL
)
{
next_name
=
ISC_LIST_NEXT
(
name
,
link
);
/*
* If out of space, record stats on what we rendered
* so far, and return that status.
*
* XXXMLG Need to change this when
* dns_rdataset_towire() can render partial
* sets starting at some arbitary point in the set.
* This will include setting a bit in the
* rdataset to indicate that a partial rendering
* was done, and some state saved somewhere
* (probably in the message struct)
* to indicate where to continue from.
*/
if
(
result
!=
DNS_R_SUCCESS
)
{
INSIST
(
st
.
used
<
65536
);
dns_compress_rollback
(
&
msg
->
cctx
,
(
isc_uint16_t
)
st
.
used
);
*
(
msg
->
buffer
)
=
st
;
/* rollback */
msg
->
buffer
->
length
+=
msg
->
reserved
;
msg
->
counts
[
sectionid
]
+=
total
;
return
(
result
);
rdataset
=
ISC_LIST_HEAD
(
name
->
list
);
while
(
rdataset
!=
NULL
)
{
next_rdataset
=
ISC_LIST_NEXT
(
rdataset
,
link
);
if
(
rdataset
->
attributes
&
DNS_RDATASETATTR_RENDERED
)
goto
next
;
if
(((
options
&
DNS_MESSAGERENDER_ORDERED
)
==
0
)
&&
(
sectionid
==
DNS_SECTION_ADDITIONAL
)
&&
wrong_priority
(
rdataset
,
pass
))
goto
next
;
st
=
*
(
msg
->
buffer
);
count
=
0
;
result
=
dns_rdataset_towire
(
rdataset
,
name
,
&
msg
->
cctx
,
msg
->
buffer
,
&
count
);
total
+=
count
;
/*
* If out of space, record stats on what we rendered
* so far, and return that status.
*
* XXXMLG Need to change this when
* dns_rdataset_towire() can render partial
* sets starting at some arbitary point in the set.
* This will include setting a bit in the
* rdataset to indicate that a partial rendering
* was done, and some state saved somewhere
* (probably in the message struct)
* to indicate where to continue from.
*/
if
(
result
!=
DNS_R_SUCCESS
)
{
INSIST
(
st
.
used
<
65536
);
dns_compress_rollback
(
&
msg
->
cctx
,
(
isc_uint16_t
)
st
.
used
);
*
(
msg
->
buffer
)
=
st
;
/* rollback */
msg
->
buffer
->
length
+=
msg
->
reserved
;
msg
->
counts
[
sectionid
]
+=
total
;
return
(
result
);
}
/*
* If we have rendered pending data, ensure that the
* AD bit is not set.
*/
if
(
rdataset
->
trust
==
dns_trust_pending
&&
(
sectionid
==
DNS_SECTION_ANSWER
||
sectionid
==
DNS_SECTION_AUTHORITY
))
msg
->
flags
&=
~
DNS_MESSAGEFLAG_AD
;
rdataset
->
attributes
|=
DNS_RDATASETATTR_RENDERED
;
next:
rdataset
=
next_rdataset
;
}
/*
* If we have rendered pending data, ensure that the
* AD bit is not set.
*/
if
(
rdataset
->
trust
==
dns_trust_pending
&&
(
sectionid
==
DNS_SECTION_ANSWER
||
sectionid
==
DNS_SECTION_AUTHORITY
))
msg
->
flags
&=
~
DNS_MESSAGEFLAG_AD
;
rdataset
->
attributes
|=
DNS_RDATASETATTR_RENDERED
;
rdataset
=
next_rdataset
;
name
=
next_name
;
}
name
=
next_name
;
}
}
while
(
--
pass
!=
0
);
msg
->
buffer
->
length
+=
msg
->
reserved
;
msg
->
counts
[
sectionid
]
+=
total
;
...
...
@@ -1622,7 +1664,7 @@ dns_message_renderend(dns_message_t *msg)
result
=
dns_tsig_sign
(
msg
);
if
(
result
!=
DNS_R_SUCCESS
)
return
(
result
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_TSIG
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_TSIG
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
return
(
result
);
}
...
...
@@ -1631,7 +1673,7 @@ dns_message_renderend(dns_message_t *msg)
result
=
dns_dnssec_signmessage
(
msg
,
msg
->
sig0key
);
if
(
result
!=
DNS_R_SUCCESS
)
return
(
result
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_SIG0
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_SIG0
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
return
(
result
);
}
...
...
lib/dns/resolver.c
View file @
733b16eb
...
...
@@ -750,7 +750,7 @@ resquery_send(resquery_t *query) {
goto
cleanup_message
;
result
=
dns_message_rendersection
(
fctx
->
qmessage
,
DNS_SECTION_QUESTION
,
0
,
0
);
DNS_SECTION_QUESTION
,
0
);
if
(
result
!=
ISC_R_SUCCESS
)
goto
cleanup_message
;
...
...
@@ -785,7 +785,7 @@ resquery_send(resquery_t *query) {
*/
result
=
dns_message_rendersection
(
fctx
->
qmessage
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
DNS_SECTION_ADDITIONAL
,
0
);
if
(
result
!=
ISC_R_SUCCESS
)
goto
cleanup_message
;
...
...
lib/dns/xfrin.c
View file @
733b16eb
...
...
@@ -15,7 +15,7 @@
* SOFTWARE.
*/
/* $Id: xfrin.c,v 1.3
3 1999/12/13 07:57:36 marka
Exp $ */
/* $Id: xfrin.c,v 1.3
4 1999/12/22 03:22:59 explorer
Exp $ */
#include <config.h>
...
...
@@ -690,11 +690,11 @@ static dns_result_t
render
(
dns_message_t
*
msg
,
isc_buffer_t
*
buf
)
{
dns_result_t
result
;
CHECK
(
dns_message_renderbegin
(
msg
,
buf
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_TSIG
,
0
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
));
CHECK
(
dns_message_rendersection
(
msg
,
DNS_SECTION_TSIG
,
0
));
CHECK
(
dns_message_renderend
(
msg
));
result
=
DNS_R_SUCCESS
;
failure:
...
...
lib/dns/zone.c
View file @
733b16eb
...
...
@@ -15,7 +15,7 @@
* SOFTWARE.
*/
/* $Id: zone.c,v 1.
49 1999/12/16 23:29:06
explorer Exp $ */
/* $Id: zone.c,v 1.
50 1999/12/22 03:22:59
explorer Exp $ */
#include <config.h>
...
...
@@ -2274,16 +2274,16 @@ dns_notify(dns_name_t *name, isc_sockaddr_t *addr, dns_rdatatype_t type,
result
=
dns_message_renderbegin
(
msg
,
&
target
);
if
(
result
!=
DNS_R_SUCCESS
)
goto
cleanup
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_QUESTION
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
goto
cleanup
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ANSWER
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
goto
cleanup
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_AUTHORITY
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
goto
cleanup
;
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
,
0
);
result
=
dns_message_rendersection
(
msg
,
DNS_SECTION_ADDITIONAL
,
0
);
if
(
result
!=
DNS_R_SUCCESS
)
goto
cleanup
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment