- removed edns patch to keep compatibility with vanilla bind (#275091,

comment #20)
This commit is contained in:
Adam Tkac 2007-11-26 19:26:22 +00:00
parent 565c3b28dc
commit 27efb4347e
2 changed files with 5 additions and 106 deletions

View File

@ -1,103 +0,0 @@
diff -up bind-9.5.0a7/lib/dns/view.c.edns bind-9.5.0a7/lib/dns/view.c
--- bind-9.5.0a7/lib/dns/view.c.edns 2007-06-19 01:47:42.000000000 +0200
+++ bind-9.5.0a7/lib/dns/view.c 2007-11-15 12:32:12.000000000 +0100
@@ -179,6 +179,7 @@ dns_view_create(isc_mem_t *mctx, dns_rda
view->flush = ISC_FALSE;
view->dlv = NULL;
view->maxudp = 0;
+ view->edns = ISC_TRUE;
dns_fixedname_init(&view->dlv_fixed);
result = dns_order_create(view->mctx, &view->order);
diff -up bind-9.5.0a7/lib/dns/resolver.c.edns bind-9.5.0a7/lib/dns/resolver.c
--- bind-9.5.0a7/lib/dns/resolver.c.edns 2007-10-19 19:15:53.000000000 +0200
+++ bind-9.5.0a7/lib/dns/resolver.c 2007-11-15 12:32:44.000000000 +0100
@@ -1509,10 +1509,12 @@ resquery_send(resquery_t *query) {
* The ADB does not know about servers with "edns no". Check this,
* and then inform the ADB for future use.
*/
- if ((query->addrinfo->flags & DNS_FETCHOPT_NOEDNS0) == 0 &&
- peer != NULL &&
- dns_peer_getsupportedns(peer, &useedns) == ISC_R_SUCCESS &&
- !useedns)
+ if (((query->addrinfo->flags & DNS_FETCHOPT_NOEDNS0) == 0 ||
+ (query->options & DNS_FETCHOPT_NOEDNS0) == 0) &&
+ (!(res->view->edns) ||
+ (peer != NULL &&
+ dns_peer_getsupportedns(peer, &useedns) == ISC_R_SUCCESS &&
+ !useedns)))
{
query->options |= DNS_FETCHOPT_NOEDNS0;
dns_adb_changeflags(fctx->adb,
diff -up bind-9.5.0a7/lib/dns/include/dns/view.h.edns bind-9.5.0a7/lib/dns/include/dns/view.h
--- bind-9.5.0a7/lib/dns/include/dns/view.h.edns 2007-06-19 01:47:42.000000000 +0200
+++ bind-9.5.0a7/lib/dns/include/dns/view.h 2007-11-15 12:32:12.000000000 +0100
@@ -137,6 +137,7 @@ struct dns_view {
dns_name_t * dlv;
dns_fixedname_t dlv_fixed;
isc_uint16_t maxudp;
+ isc_boolean_t edns;
/*
* Configurable data for server use only,
diff -up bind-9.5.0a7/lib/isccfg/namedconf.c.edns bind-9.5.0a7/lib/isccfg/namedconf.c
--- bind-9.5.0a7/lib/isccfg/namedconf.c.edns 2007-09-26 05:22:45.000000000 +0200
+++ bind-9.5.0a7/lib/isccfg/namedconf.c 2007-11-15 12:32:12.000000000 +0100
@@ -618,6 +618,7 @@ options_clauses[] = {
{ "deallocate-on-exit", &cfg_type_boolean, CFG_CLAUSEFLAG_OBSOLETE },
{ "directory", &cfg_type_qstring, CFG_CLAUSEFLAG_CALLBACK },
{ "dump-file", &cfg_type_qstring, 0 },
+ { "edns", &cfg_type_boolean, 0 },
{ "fake-iquery", &cfg_type_boolean, CFG_CLAUSEFLAG_OBSOLETE },
{ "files", &cfg_type_size, 0 },
{ "has-old-clients", &cfg_type_boolean, CFG_CLAUSEFLAG_OBSOLETE },
diff -up bind-9.5.0a7/doc/misc/options.edns bind-9.5.0a7/doc/misc/options
--- bind-9.5.0a7/doc/misc/options.edns 2007-10-22 00:15:34.000000000 +0200
+++ bind-9.5.0a7/doc/misc/options 2007-11-15 12:34:04.000000000 +0100
@@ -97,6 +97,7 @@ options {
<integer>] | <ipv4_address> [port <integer>] | <ipv6_address>
[port <integer>] ); ... };
dump-file <quoted_string>;
+ edns <boolean>;
edns-udp-size <integer>;
empty-contact <string>;
empty-server <string>;
diff -up bind-9.5.0a7/bin/named/config.c.edns bind-9.5.0a7/bin/named/config.c
--- bind-9.5.0a7/bin/named/config.c.edns 2007-10-19 19:15:53.000000000 +0200
+++ bind-9.5.0a7/bin/named/config.c 2007-11-15 12:34:33.000000000 +0100
@@ -137,6 +137,7 @@ options {\n\
acache-enable no;\n\
acache-cleaning-interval 60;\n\
max-acache-size 16M;\n\
+ edns yes;\n\
dnssec-enable yes;\n\
dnssec-validation no; /* Make yes for 9.5. */ \n\
dnssec-accept-expired no;\n\
diff -up bind-9.5.0a7/bin/named/server.c.edns bind-9.5.0a7/bin/named/server.c
--- bind-9.5.0a7/bin/named/server.c.edns 2007-10-18 03:37:49.000000000 +0200
+++ bind-9.5.0a7/bin/named/server.c 2007-11-15 12:32:12.000000000 +0100
@@ -1669,7 +1669,12 @@ configure_view(dns_view_t *view, const c
dns_resolver_setclientsperquery(view->resolver,
cfg_obj_asuint32(obj),
max_clients_per_query);
-
+
+ obj = NULL;
+ result = ns_config_get(maps, "edns", &obj);
+ INSIST(result == ISC_R_SUCCESS);
+ view->edns = cfg_obj_asboolean(obj);
+
obj = NULL;
result = ns_config_get(maps, "dnssec-enable", &obj);
INSIST(result == ISC_R_SUCCESS);
diff -up bind-9.5.0a7/bin/named/named.conf.5.edns bind-9.5.0a7/bin/named/named.conf.5
--- bind-9.5.0a7/bin/named/named.conf.5.edns 2007-10-22 00:15:32.000000000 +0200
+++ bind-9.5.0a7/bin/named/named.conf.5 2007-11-15 12:32:12.000000000 +0100
@@ -160,6 +160,7 @@ options {
datasize \fIsize\fR;
directory \fIquoted_string\fR;
dump\-file \fIquoted_string\fR;
+ edns \fIboolean\fR;
files \fIsize\fR;
heartbeat\-interval \fIinteger\fR;
host\-statistics \fIboolean\fR; // not implemented

View File

@ -21,7 +21,7 @@ Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) serv
Name: bind
License: ISC
Version: 9.5.0
Release: 18.2.%{RELEASEVER}%{?dist}
Release: 18.3.%{RELEASEVER}%{?dist}
Epoch: 32
Url: http://www.isc.org/products/BIND/
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -62,7 +62,6 @@ Patch63: bind-9.4.0-dnssec-directory.patch
Patch69: bind-9.5.0-generate-xml.patch
Patch71: bind-9.5-overflow.patch
Patch72: bind-9.5-dlz-64bit.patch
Patch80: bind-9.5-edns.patch
Patch83: bind-9.5-random_ports.patch
# SDB patches
@ -256,7 +255,6 @@ cp -fp contrib/dbus/{dbus_mgr.h,dbus_service.h} bin/named/include/named
%patch72 -p1 -b .64bit
%endif
%patch73 -p1 -b .libidn
%patch80 -p1 -b .edns
%patch83 -p1 -b .ports
:;
@ -667,6 +665,10 @@ rm -rf ${RPM_BUILD_ROOT}
%{_sbindir}/bind-chroot-admin
%changelog
* Mon Nov 26 2007 Adam Tkac <atkac redhat com> 32:9.5.0-18.3.a7
- removed edns patch to keep compatibility with vanilla bind
(#275091, comment #20)
* Wed Nov 21 2007 Adam Tkac <atkac redhat com> 32:9.5.0-18.2.a7
- use system port selector instead ISC's (#391931)