Update to bind-9.9.5b1
Signed-off-by: Tomas Hozza <thozza@redhat.com>
This commit is contained in:
parent
cfca698d2b
commit
abe4be5502
1
.gitignore
vendored
1
.gitignore
vendored
@ -40,3 +40,4 @@ bind-9.7.2b1.tar.gz
|
|||||||
/bind-9.9.4rc2.tar.gz
|
/bind-9.9.4rc2.tar.gz
|
||||||
/bind-9.9.4.tar.gz
|
/bind-9.9.4.tar.gz
|
||||||
/config-12.tar.bz2
|
/config-12.tar.bz2
|
||||||
|
/bind-9.9.5b1.tar.gz
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
diff -up bind-9.9.5b1/bin/dig/dighost.c.libidn bind-9.9.5b1/bin/dig/dighost.c
|
||||||
--- bind-9.7.0b1/bin/dig/dighost.c.libidn 2009-09-16 01:48:09.000000000 +0200
|
--- bind-9.9.5b1/bin/dig/dighost.c.libidn 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.0b1/bin/dig/dighost.c 2009-10-20 10:49:26.719056220 +0200
|
+++ bind-9.9.5b1/bin/dig/dighost.c 2014-01-06 13:48:34.591300772 +0100
|
||||||
@@ -44,6 +44,11 @@
|
@@ -44,6 +44,11 @@
|
||||||
#include <idn/api.h>
|
#include <idn/api.h>
|
||||||
#endif
|
#endif
|
||||||
@ -13,7 +13,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
#include <dns/byaddr.h>
|
#include <dns/byaddr.h>
|
||||||
#ifdef DIG_SIGCHASE
|
#ifdef DIG_SIGCHASE
|
||||||
#include <dns/callbacks.h>
|
#include <dns/callbacks.h>
|
||||||
@@ -153,6 +158,14 @@ static void idn_check_result(idn_result
|
@@ -158,6 +163,14 @@ static void idn_check_result(idn_result
|
||||||
int idnoptions = 0;
|
int idnoptions = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -25,10 +25,10 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
+ isc_boolean_t absolute);
|
+ isc_boolean_t absolute);
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
/*%
|
isc_socket_t *keep = NULL;
|
||||||
* Exit Codes:
|
isc_sockaddr_t keepaddr;
|
||||||
*
|
|
||||||
@@ -1184,6 +1197,9 @@ setup_system(void) {
|
@@ -1210,6 +1223,9 @@ setup_system(void) {
|
||||||
dig_searchlist_t *domain = NULL;
|
dig_searchlist_t *domain = NULL;
|
||||||
lwres_result_t lwresult;
|
lwres_result_t lwresult;
|
||||||
unsigned int lwresflags;
|
unsigned int lwresflags;
|
||||||
@ -38,7 +38,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
|
|
||||||
debug("setup_system()");
|
debug("setup_system()");
|
||||||
|
|
||||||
@@ -1242,8 +1258,15 @@ setup_system(void) {
|
@@ -1268,8 +1284,15 @@ setup_system(void) {
|
||||||
|
|
||||||
#ifdef WITH_IDN
|
#ifdef WITH_IDN
|
||||||
initialize_idn();
|
initialize_idn();
|
||||||
@ -55,7 +55,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
if (keyfile[0] != 0)
|
if (keyfile[0] != 0)
|
||||||
setup_file_key();
|
setup_file_key();
|
||||||
else if (keysecret[0] != 0)
|
else if (keysecret[0] != 0)
|
||||||
@@ -1957,12 +1980,18 @@ setup_lookup(dig_lookup_t *lookup) {
|
@@ -2028,12 +2051,18 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||||
idn_result_t mr;
|
idn_result_t mr;
|
||||||
char utf8_textname[MXNAME], utf8_origin[MXNAME], idn_textname[MXNAME];
|
char utf8_textname[MXNAME], utf8_origin[MXNAME], idn_textname[MXNAME];
|
||||||
#endif
|
#endif
|
||||||
@ -75,7 +75,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
REQUIRE(lookup != NULL);
|
REQUIRE(lookup != NULL);
|
||||||
INSIST(!free_now);
|
INSIST(!free_now);
|
||||||
|
|
||||||
@@ -1999,6 +2028,16 @@ setup_lookup(dig_lookup_t *lookup) {
|
@@ -2070,6 +2099,16 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||||
mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, lookup->textname,
|
mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, lookup->textname,
|
||||||
utf8_textname, sizeof(utf8_textname));
|
utf8_textname, sizeof(utf8_textname));
|
||||||
idn_check_result(mr, "convert textname to UTF-8");
|
idn_check_result(mr, "convert textname to UTF-8");
|
||||||
@ -92,7 +92,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -2018,6 +2057,15 @@ setup_lookup(dig_lookup_t *lookup) {
|
@@ -2089,6 +2128,15 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||||
lookup->origin = ISC_LIST_HEAD(search_list);
|
lookup->origin = ISC_LIST_HEAD(search_list);
|
||||||
lookup->need_search = ISC_FALSE;
|
lookup->need_search = ISC_FALSE;
|
||||||
}
|
}
|
||||||
@ -108,7 +108,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
#else
|
#else
|
||||||
if ((count_dots(lookup->textname) >= ndots) || !usesearch) {
|
if ((count_dots(lookup->textname) >= ndots) || !usesearch) {
|
||||||
lookup->origin = NULL; /* Force abs lookup */
|
lookup->origin = NULL; /* Force abs lookup */
|
||||||
@@ -2044,6 +2092,20 @@ setup_lookup(dig_lookup_t *lookup) {
|
@@ -2115,6 +2163,20 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||||
IDN_IDNCONV | IDN_LENCHECK, utf8_textname,
|
IDN_IDNCONV | IDN_LENCHECK, utf8_textname,
|
||||||
idn_textname, sizeof(idn_textname));
|
idn_textname, sizeof(idn_textname));
|
||||||
idn_check_result(mr, "convert UTF-8 textname to IDN encoding");
|
idn_check_result(mr, "convert UTF-8 textname to IDN encoding");
|
||||||
@ -129,7 +129,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
#else
|
#else
|
||||||
if (lookup->origin != NULL) {
|
if (lookup->origin != NULL) {
|
||||||
debug("trying origin %s", lookup->origin->origin);
|
debug("trying origin %s", lookup->origin->origin);
|
||||||
@@ -2099,6 +2161,13 @@ setup_lookup(dig_lookup_t *lookup) {
|
@@ -2170,6 +2232,13 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||||
result = dns_name_fromtext(lookup->name, &b,
|
result = dns_name_fromtext(lookup->name, &b,
|
||||||
dns_rootname, 0,
|
dns_rootname, 0,
|
||||||
&lookup->namebuf);
|
&lookup->namebuf);
|
||||||
@ -143,7 +143,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
#else
|
#else
|
||||||
len = strlen(lookup->textname);
|
len = strlen(lookup->textname);
|
||||||
isc_buffer_init(&b, lookup->textname, len);
|
isc_buffer_init(&b, lookup->textname, len);
|
||||||
@@ -3617,7 +3686,7 @@ destroy_libs(void) {
|
@@ -3784,7 +3853,7 @@ destroy_libs(void) {
|
||||||
void * ptr;
|
void * ptr;
|
||||||
dig_message_t *chase_msg;
|
dig_message_t *chase_msg;
|
||||||
#endif
|
#endif
|
||||||
@ -152,7 +152,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
isc_result_t result;
|
isc_result_t result;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -3656,6 +3725,10 @@ destroy_libs(void) {
|
@@ -3825,6 +3894,10 @@ destroy_libs(void) {
|
||||||
result = dns_name_settotextfilter(NULL);
|
result = dns_name_settotextfilter(NULL);
|
||||||
check_result(result, "dns_name_settotextfilter");
|
check_result(result, "dns_name_settotextfilter");
|
||||||
#endif
|
#endif
|
||||||
@ -163,7 +163,7 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
dns_name_destroy();
|
dns_name_destroy();
|
||||||
|
|
||||||
if (commctx != NULL) {
|
if (commctx != NULL) {
|
||||||
@@ -3834,6 +3907,79 @@ idn_check_result(idn_result_t r, const c
|
@@ -4003,6 +4076,79 @@ idn_check_result(idn_result_t r, const c
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* WITH_IDN */
|
#endif /* WITH_IDN */
|
||||||
@ -243,10 +243,10 @@ diff -up bind-9.7.0b1/bin/dig/dighost.c.libidn bind-9.7.0b1/bin/dig/dighost.c
|
|||||||
|
|
||||||
#ifdef DIG_SIGCHASE
|
#ifdef DIG_SIGCHASE
|
||||||
void
|
void
|
||||||
diff -up bind-9.7.0b1/bin/dig/Makefile.in.libidn bind-9.7.0b1/bin/dig/Makefile.in
|
diff -up bind-9.9.5b1/bin/dig/Makefile.in.libidn bind-9.9.5b1/bin/dig/Makefile.in
|
||||||
--- bind-9.7.0b1/bin/dig/Makefile.in.libidn 2009-09-22 10:47:55.000000000 +0200
|
--- bind-9.9.5b1/bin/dig/Makefile.in.libidn 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.0b1/bin/dig/Makefile.in 2009-10-20 10:50:06.201543709 +0200
|
+++ bind-9.9.5b1/bin/dig/Makefile.in 2014-01-06 13:31:27.764809004 +0100
|
||||||
@@ -46,10 +46,10 @@ DEPLIBS = ${DNSDEPLIBS} ${BIND9DEPLIBS}
|
@@ -48,10 +48,10 @@ DEPLIBS = ${DNSDEPLIBS} ${BIND9DEPLIBS}
|
||||||
${LWRESDEPLIBS}
|
${LWRESDEPLIBS}
|
||||||
|
|
||||||
LIBS = ${LWRESLIBS} ${DNSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \
|
LIBS = ${LWRESLIBS} ${DNSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \
|
||||||
@ -259,7 +259,7 @@ diff -up bind-9.7.0b1/bin/dig/Makefile.in.libidn bind-9.7.0b1/bin/dig/Makefile.i
|
|||||||
|
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
@@ -67,6 +67,8 @@ HTMLPAGES = dig.html host.html nslookup.
|
@@ -69,6 +69,8 @@ HTMLPAGES = dig.html host.html nslookup.
|
||||||
|
|
||||||
MANOBJS = ${MANPAGES} ${HTMLPAGES}
|
MANOBJS = ${MANPAGES} ${HTMLPAGES}
|
||||||
|
|
||||||
|
23
bind.spec
23
bind.spec
@ -3,9 +3,9 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
#%%global PATCHVER P1
|
#%%global PATCHVER P1
|
||||||
#%%global PREVER rc2
|
%global PREVER b1
|
||||||
#%%global VERSION %{version}%{PREVER}
|
%global VERSION %{version}%{PREVER}
|
||||||
%global VERSION %{version}
|
#%%global VERSION %{version}
|
||||||
#%%global VERSION %{version}-%{PATCHVER}
|
#%%global VERSION %{version}-%{PATCHVER}
|
||||||
|
|
||||||
%{?!SDB: %global SDB 1}
|
%{?!SDB: %global SDB 1}
|
||||||
@ -29,8 +29,8 @@
|
|||||||
Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server
|
Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server
|
||||||
Name: bind
|
Name: bind
|
||||||
License: ISC
|
License: ISC
|
||||||
Version: 9.9.4
|
Version: 9.9.5
|
||||||
Release: 11%{?PATCHVER}%{?PREVER}%{?dist}
|
Release: 0.1.%{?PATCHVER}%{?PREVER}%{?dist}
|
||||||
Epoch: 32
|
Epoch: 32
|
||||||
Url: http://www.isc.org/products/BIND/
|
Url: http://www.isc.org/products/BIND/
|
||||||
Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
@ -89,11 +89,6 @@ Patch134:bind97-rh669163.patch
|
|||||||
Patch137:bind99-rrl.patch
|
Patch137:bind99-rrl.patch
|
||||||
# Install dns/update.h header for bind-dyndb-ldap plugin
|
# Install dns/update.h header for bind-dyndb-ldap plugin
|
||||||
Patch138:bind-9.9.3-include-update-h.patch
|
Patch138:bind-9.9.3-include-update-h.patch
|
||||||
Patch139:bind99-ISC-Bugs-34738.patch
|
|
||||||
# upstream patch [ISC-Bugs #34870]
|
|
||||||
Patch140:bind99-ISC-Bugs-34870-v3.patch
|
|
||||||
# upstream applied patch for [ISC-Bugs #35073]
|
|
||||||
Patch141:bind99-ISC-Bugs-35073.patch
|
|
||||||
Patch142:bind99-ISC-Bugs-35080.patch
|
Patch142:bind99-ISC-Bugs-35080.patch
|
||||||
|
|
||||||
# SDB patches
|
# SDB patches
|
||||||
@ -308,9 +303,6 @@ popd
|
|||||||
%patch131 -p1 -b .multlib-conflict
|
%patch131 -p1 -b .multlib-conflict
|
||||||
%patch137 -p1 -b .rrl
|
%patch137 -p1 -b .rrl
|
||||||
%patch138 -p1 -b .update
|
%patch138 -p1 -b .update
|
||||||
%patch139 -p1 -b .journal
|
|
||||||
%patch140 -p1 -b .send_buffer
|
|
||||||
%patch141 -p1 -b .leak_35073
|
|
||||||
%patch142 -p1 -b .rbtdb_crash
|
%patch142 -p1 -b .rbtdb_crash
|
||||||
|
|
||||||
%if %{SDB}
|
%if %{SDB}
|
||||||
@ -840,8 +832,10 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%exclude %{_libdir}/*export.so
|
%exclude %{_libdir}/*export.so
|
||||||
%{_includedir}/bind9
|
%{_includedir}/bind9
|
||||||
%{_mandir}/man1/isc-config.sh.1*
|
%{_mandir}/man1/isc-config.sh.1*
|
||||||
|
%{_mandir}/man1/bind9-config.1*
|
||||||
%{_mandir}/man3/lwres*
|
%{_mandir}/man3/lwres*
|
||||||
%{_bindir}/isc-config.sh
|
%{_bindir}/isc-config.sh
|
||||||
|
%{_bindir}/bind9-config
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files lite-devel
|
%files lite-devel
|
||||||
@ -924,6 +918,9 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jan 06 2014 Tomas Hozza <thozza@redhat.com> 32:9.9.5-0.1.b1
|
||||||
|
- Update to bind-9.9.5b1
|
||||||
|
|
||||||
* Wed Dec 18 2013 Tomas Hozza <thozza@redhat.com> 32:9.9.4-11
|
* Wed Dec 18 2013 Tomas Hozza <thozza@redhat.com> 32:9.9.4-11
|
||||||
- Fix crash in rbtdb after two sucessive getoriginnode() calls
|
- Fix crash in rbtdb after two sucessive getoriginnode() calls
|
||||||
|
|
||||||
|
@ -1,17 +1,15 @@
|
|||||||
diff -up bind-9.7.2b1/bin/dig/dighost.c.rh570851 bind-9.7.2b1/bin/dig/dighost.c
|
diff -up bind-9.9.5b1/bin/dig/dighost.c.rh570851 bind-9.9.5b1/bin/dig/dighost.c
|
||||||
--- bind-9.7.2b1/bin/dig/dighost.c.rh570851 2010-08-10 12:55:14.219403986 +0200
|
--- bind-9.9.5b1/bin/dig/dighost.c.rh570851 2014-01-06 13:49:25.230380554 +0100
|
||||||
+++ bind-9.7.2b1/bin/dig/dighost.c 2010-08-10 12:56:40.716015777 +0200
|
+++ bind-9.9.5b1/bin/dig/dighost.c 2014-01-06 13:54:25.804839409 +0100
|
||||||
@@ -126,7 +126,8 @@ isc_boolean_t
|
@@ -131,6 +131,7 @@ isc_boolean_t
|
||||||
usesearch = ISC_FALSE,
|
|
||||||
showsearch = ISC_FALSE,
|
showsearch = ISC_FALSE,
|
||||||
qr = ISC_FALSE,
|
qr = ISC_FALSE,
|
||||||
- is_dst_up = ISC_FALSE;
|
is_dst_up = ISC_FALSE,
|
||||||
+ is_dst_up = ISC_FALSE,
|
+ verbose = ISC_FALSE,
|
||||||
+ verbose = ISC_FALSE;
|
keep_open = ISC_FALSE;
|
||||||
in_port_t port = 53;
|
in_port_t port = 53;
|
||||||
unsigned int timeout = 0;
|
unsigned int timeout = 0;
|
||||||
unsigned int extrabytes;
|
@@ -1257,10 +1258,24 @@ setup_system(void) {
|
||||||
@@ -1240,10 +1241,24 @@ setup_system(void) {
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -36,10 +34,10 @@ diff -up bind-9.7.2b1/bin/dig/dighost.c.rh570851 bind-9.7.2b1/bin/dig/dighost.c
|
|||||||
|
|
||||||
/* If user doesn't specify server use nameservers from resolv.conf. */
|
/* If user doesn't specify server use nameservers from resolv.conf. */
|
||||||
if (ISC_LIST_EMPTY(server_list))
|
if (ISC_LIST_EMPTY(server_list))
|
||||||
diff -up bind-9.7.2b1/bin/dig/host.c.rh570851 bind-9.7.2b1/bin/dig/host.c
|
diff -up bind-9.9.5b1/bin/dig/host.c.rh570851 bind-9.9.5b1/bin/dig/host.c
|
||||||
--- bind-9.7.2b1/bin/dig/host.c.rh570851 2010-08-10 12:57:16.032758098 +0200
|
--- bind-9.9.5b1/bin/dig/host.c.rh570851 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.2b1/bin/dig/host.c 2010-08-10 13:02:12.848559845 +0200
|
+++ bind-9.9.5b1/bin/dig/host.c 2014-01-06 13:49:25.241380571 +0100
|
||||||
@@ -659,6 +659,7 @@ parse_args(isc_boolean_t is_batchfile, i
|
@@ -672,6 +672,7 @@ parse_args(isc_boolean_t is_batchfile, i
|
||||||
|
|
||||||
lookup->servfail_stops = ISC_FALSE;
|
lookup->servfail_stops = ISC_FALSE;
|
||||||
lookup->comments = ISC_FALSE;
|
lookup->comments = ISC_FALSE;
|
||||||
@ -47,7 +45,7 @@ diff -up bind-9.7.2b1/bin/dig/host.c.rh570851 bind-9.7.2b1/bin/dig/host.c
|
|||||||
|
|
||||||
while ((c = isc_commandline_parse(argc, argv, optstring)) != -1) {
|
while ((c = isc_commandline_parse(argc, argv, optstring)) != -1) {
|
||||||
switch (c) {
|
switch (c) {
|
||||||
@@ -869,8 +870,8 @@ main(int argc, char **argv) {
|
@@ -882,8 +883,8 @@ main(int argc, char **argv) {
|
||||||
result = isc_app_start();
|
result = isc_app_start();
|
||||||
check_result(result, "isc_app_start");
|
check_result(result, "isc_app_start");
|
||||||
setup_libs();
|
setup_libs();
|
||||||
@ -57,10 +55,10 @@ diff -up bind-9.7.2b1/bin/dig/host.c.rh570851 bind-9.7.2b1/bin/dig/host.c
|
|||||||
result = isc_app_onrun(mctx, global_task, onrun_callback, NULL);
|
result = isc_app_onrun(mctx, global_task, onrun_callback, NULL);
|
||||||
check_result(result, "isc_app_onrun");
|
check_result(result, "isc_app_onrun");
|
||||||
isc_app_run();
|
isc_app_run();
|
||||||
diff -up bind-9.7.2b1/bin/dig/include/dig/dig.h.rh570851 bind-9.7.2b1/bin/dig/include/dig/dig.h
|
diff -up bind-9.9.5b1/bin/dig/include/dig/dig.h.rh570851 bind-9.9.5b1/bin/dig/include/dig/dig.h
|
||||||
--- bind-9.7.2b1/bin/dig/include/dig/dig.h.rh570851 2010-08-10 13:02:32.722244088 +0200
|
--- bind-9.9.5b1/bin/dig/include/dig/dig.h.rh570851 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.2b1/bin/dig/include/dig/dig.h 2010-08-10 13:02:48.465158159 +0200
|
+++ bind-9.9.5b1/bin/dig/include/dig/dig.h 2014-01-06 13:49:25.241380571 +0100
|
||||||
@@ -278,6 +278,7 @@ extern isc_boolean_t debugging, memdebug
|
@@ -281,6 +281,7 @@ extern isc_boolean_t keep_open;
|
||||||
extern char *progname;
|
extern char *progname;
|
||||||
extern int tries;
|
extern int tries;
|
||||||
extern int fatalexit;
|
extern int fatalexit;
|
||||||
@ -68,9 +66,9 @@ diff -up bind-9.7.2b1/bin/dig/include/dig/dig.h.rh570851 bind-9.7.2b1/bin/dig/in
|
|||||||
#ifdef WITH_IDN
|
#ifdef WITH_IDN
|
||||||
extern int idnoptions;
|
extern int idnoptions;
|
||||||
#endif
|
#endif
|
||||||
diff -up bind-9.7.2b1/lib/lwres/include/lwres/lwres.h.rh570851 bind-9.7.2b1/lib/lwres/include/lwres/lwres.h
|
diff -up bind-9.9.5b1/lib/lwres/include/lwres/lwres.h.rh570851 bind-9.9.5b1/lib/lwres/include/lwres/lwres.h
|
||||||
--- bind-9.7.2b1/lib/lwres/include/lwres/lwres.h.rh570851 2010-08-10 13:04:40.465780506 +0200
|
--- bind-9.9.5b1/lib/lwres/include/lwres/lwres.h.rh570851 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.2b1/lib/lwres/include/lwres/lwres.h 2010-08-10 13:05:57.559867830 +0200
|
+++ bind-9.9.5b1/lib/lwres/include/lwres/lwres.h 2014-01-06 13:49:25.241380571 +0100
|
||||||
@@ -243,6 +243,8 @@ typedef struct {
|
@@ -243,6 +243,8 @@ typedef struct {
|
||||||
lwres_uint8_t resdebug; /*%< non-zero if 'options debug' set */
|
lwres_uint8_t resdebug; /*%< non-zero if 'options debug' set */
|
||||||
lwres_uint8_t ndots; /*%< set to n in 'options ndots:n' */
|
lwres_uint8_t ndots; /*%< set to n in 'options ndots:n' */
|
||||||
@ -80,9 +78,9 @@ diff -up bind-9.7.2b1/lib/lwres/include/lwres/lwres.h.rh570851 bind-9.7.2b1/lib/
|
|||||||
} lwres_conf_t;
|
} lwres_conf_t;
|
||||||
|
|
||||||
#define LWRES_ADDRTYPE_V4 0x00000001U /*%< ipv4 */
|
#define LWRES_ADDRTYPE_V4 0x00000001U /*%< ipv4 */
|
||||||
diff -up bind-9.7.2b1/lib/lwres/lwconfig.c.rh570851 bind-9.7.2b1/lib/lwres/lwconfig.c
|
diff -up bind-9.9.5b1/lib/lwres/lwconfig.c.rh570851 bind-9.9.5b1/lib/lwres/lwconfig.c
|
||||||
--- bind-9.7.2b1/lib/lwres/lwconfig.c.rh570851 2010-08-10 13:06:08.051778429 +0200
|
--- bind-9.9.5b1/lib/lwres/lwconfig.c.rh570851 2013-12-12 06:59:59.000000000 +0100
|
||||||
+++ bind-9.7.2b1/lib/lwres/lwconfig.c 2010-08-10 13:09:53.972555776 +0200
|
+++ bind-9.9.5b1/lib/lwres/lwconfig.c 2014-01-06 13:49:25.241380571 +0100
|
||||||
@@ -237,6 +237,8 @@ lwres_conf_init(lwres_context_t *ctx) {
|
@@ -237,6 +237,8 @@ lwres_conf_init(lwres_context_t *ctx) {
|
||||||
confdata->resdebug = 0;
|
confdata->resdebug = 0;
|
||||||
confdata->ndots = 1;
|
confdata->ndots = 1;
|
||||||
@ -138,7 +136,7 @@ diff -up bind-9.7.2b1/lib/lwres/lwconfig.c.rh570851 bind-9.7.2b1/lib/lwres/lwcon
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (delim == EOF || delim == '\n')
|
if (delim == EOF || delim == '\n')
|
||||||
@@ -716,6 +736,12 @@ lwres_conf_print(lwres_context_t *ctx, F
|
@@ -717,6 +737,12 @@ lwres_conf_print(lwres_context_t *ctx, F
|
||||||
if (confdata->no_tld_query)
|
if (confdata->no_tld_query)
|
||||||
fprintf(fp, "options no_tld_query\n");
|
fprintf(fp, "options no_tld_query\n");
|
||||||
|
|
||||||
|
@ -1,61 +0,0 @@
|
|||||||
From 18df9e628ea10c7d607f43fcfd935e7924731f24 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Evan Hunt <each@isc.org>
|
|
||||||
Date: Mon, 9 Sep 2013 22:12:47 -0700
|
|
||||||
Subject: [PATCH] [master] strdup journal filename
|
|
||||||
|
|
||||||
3646. [bug] Journal filename string could be set incorrectly,
|
|
||||||
causing garbage in log messages. [RT #34738]
|
|
||||||
---
|
|
||||||
lib/dns/journal.c | 12 +++++++++---
|
|
||||||
1 file changed, 9 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/lib/dns/journal.c b/lib/dns/journal.c
|
|
||||||
index 08aabd5..46a52e1 100644
|
|
||||||
--- a/lib/dns/journal.c
|
|
||||||
+++ b/lib/dns/journal.c
|
|
||||||
@@ -307,7 +307,7 @@ struct dns_journal {
|
|
||||||
unsigned int magic; /*%< JOUR */
|
|
||||||
isc_mem_t *mctx; /*%< Memory context */
|
|
||||||
journal_state_t state;
|
|
||||||
- const char *filename; /*%< Journal file name */
|
|
||||||
+ char *filename; /*%< Journal file name */
|
|
||||||
FILE * fp; /*%< File handle */
|
|
||||||
isc_offset_t offset; /*%< Current file offset */
|
|
||||||
journal_header_t header; /*%< In-core journal header */
|
|
||||||
@@ -573,10 +573,13 @@ journal_open(isc_mem_t *mctx, const char *filename, isc_boolean_t write,
|
|
||||||
isc_mem_attach(mctx, &j->mctx);
|
|
||||||
j->state = JOURNAL_STATE_INVALID;
|
|
||||||
j->fp = NULL;
|
|
||||||
- j->filename = filename;
|
|
||||||
+ j->filename = isc_mem_strdup(mctx, filename);
|
|
||||||
j->index = NULL;
|
|
||||||
j->rawindex = NULL;
|
|
||||||
|
|
||||||
+ if (j->filename == NULL)
|
|
||||||
+ FAIL(ISC_R_NOMEMORY);
|
|
||||||
+
|
|
||||||
result = isc_stdio_open(j->filename, write ? "rb+" : "rb", &fp);
|
|
||||||
|
|
||||||
if (result == ISC_R_FILENOTFOUND) {
|
|
||||||
@@ -679,6 +682,8 @@ journal_open(isc_mem_t *mctx, const char *filename, isc_boolean_t write,
|
|
||||||
sizeof(journal_rawpos_t));
|
|
||||||
j->index = NULL;
|
|
||||||
}
|
|
||||||
+ if (j->filename != NULL)
|
|
||||||
+ isc_mem_free(j->mctx, j->filename);
|
|
||||||
if (j->fp != NULL)
|
|
||||||
(void)isc_stdio_close(j->fp);
|
|
||||||
isc_mem_putanddetach(&j->mctx, j, sizeof(*j));
|
|
||||||
@@ -1242,7 +1247,8 @@ dns_journal_destroy(dns_journal_t **journalp) {
|
|
||||||
isc_mem_put(j->mctx, j->it.target.base, j->it.target.length);
|
|
||||||
if (j->it.source.base != NULL)
|
|
||||||
isc_mem_put(j->mctx, j->it.source.base, j->it.source.length);
|
|
||||||
-
|
|
||||||
+ if (j->filename != NULL)
|
|
||||||
+ isc_mem_free(j->mctx, j->filename);
|
|
||||||
if (j->fp != NULL)
|
|
||||||
(void)isc_stdio_close(j->fp);
|
|
||||||
j->magic = 0;
|
|
||||||
--
|
|
||||||
1.8.3.1
|
|
||||||
|
|
@ -1,213 +0,0 @@
|
|||||||
diff -up bind-9.9.4/bin/dig/dighost.c.send_buffers bind-9.9.4/bin/dig/dighost.c
|
|
||||||
--- bind-9.9.4/bin/dig/dighost.c.send_buffers 2013-10-31 14:22:20.296811613 +0100
|
|
||||||
+++ bind-9.9.4/bin/dig/dighost.c 2013-10-31 14:57:00.336400190 +0100
|
|
||||||
@@ -194,6 +194,7 @@ isc_boolean_t validated = ISC_TRUE;
|
|
||||||
isc_entropy_t *entp = NULL;
|
|
||||||
isc_mempool_t *commctx = NULL;
|
|
||||||
isc_boolean_t debugging = ISC_FALSE;
|
|
||||||
+isc_boolean_t debugtiming = ISC_FALSE;
|
|
||||||
isc_boolean_t memdebugging = ISC_FALSE;
|
|
||||||
char *progname = NULL;
|
|
||||||
isc_mutex_t lookup_lock;
|
|
||||||
@@ -553,6 +554,12 @@ debug(const char *format, ...) {
|
|
||||||
|
|
||||||
if (debugging) {
|
|
||||||
fflush(stdout);
|
|
||||||
+ if (debugtiming) {
|
|
||||||
+ struct timeval tv;
|
|
||||||
+ (void)gettimeofday(&tv, NULL);
|
|
||||||
+ fprintf(stderr, "%ld.%06ld: ", (long)tv.tv_sec,
|
|
||||||
+ (long)tv.tv_usec);
|
|
||||||
+ }
|
|
||||||
va_start(args, format);
|
|
||||||
vfprintf(stderr, format, args);
|
|
||||||
va_end(args);
|
|
||||||
@@ -2416,8 +2423,10 @@ send_done(isc_task_t *_task, isc_event_t
|
|
||||||
|
|
||||||
for (b = ISC_LIST_HEAD(sevent->bufferlist);
|
|
||||||
b != NULL;
|
|
||||||
- b = ISC_LIST_HEAD(sevent->bufferlist))
|
|
||||||
+ b = ISC_LIST_HEAD(sevent->bufferlist)) {
|
|
||||||
ISC_LIST_DEQUEUE(sevent->bufferlist, b, link);
|
|
||||||
+ isc_mem_free(mctx, b);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
query = event->ev_arg;
|
|
||||||
query->waiting_senddone = ISC_FALSE;
|
|
||||||
@@ -2609,6 +2618,17 @@ send_tcp_connect(dig_query_t *query) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+static isc_buffer_t *
|
|
||||||
+clone_buffer(isc_buffer_t *source) {
|
|
||||||
+ isc_buffer_t *buffer;
|
|
||||||
+ buffer = isc_mem_allocate(mctx, sizeof(*buffer));
|
|
||||||
+ if (buffer == NULL)
|
|
||||||
+ fatal("memory allocation failure in %s:%d",
|
|
||||||
+ __FILE__, __LINE__);
|
|
||||||
+ *buffer = *source;
|
|
||||||
+ return (buffer);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/*%
|
|
||||||
* Send a UDP packet to the remote nameserver, possible starting the
|
|
||||||
* recv action as well. Also make sure that the timer is running and
|
|
||||||
@@ -2618,6 +2638,7 @@ static void
|
|
||||||
send_udp(dig_query_t *query) {
|
|
||||||
dig_lookup_t *l = NULL;
|
|
||||||
isc_result_t result;
|
|
||||||
+ isc_buffer_t *sendbuf;
|
|
||||||
|
|
||||||
debug("send_udp(%p)", query);
|
|
||||||
|
|
||||||
@@ -2664,14 +2685,16 @@ send_udp(dig_query_t *query) {
|
|
||||||
debug("recvcount=%d", recvcount);
|
|
||||||
}
|
|
||||||
ISC_LIST_INIT(query->sendlist);
|
|
||||||
- ISC_LIST_ENQUEUE(query->sendlist, &query->sendbuf, link);
|
|
||||||
+ sendbuf = clone_buffer(&query->sendbuf);
|
|
||||||
+ ISC_LIST_ENQUEUE(query->sendlist, sendbuf, link);
|
|
||||||
debug("sending a request");
|
|
||||||
TIME_NOW(&query->time_sent);
|
|
||||||
INSIST(query->sock != NULL);
|
|
||||||
query->waiting_senddone = ISC_TRUE;
|
|
||||||
- result = isc_socket_sendtov(query->sock, &query->sendlist,
|
|
||||||
- global_task, send_done, query,
|
|
||||||
- &query->sockaddr, NULL);
|
|
||||||
+ result = isc_socket_sendtov2(query->sock, &query->sendlist,
|
|
||||||
+ global_task, send_done, query,
|
|
||||||
+ &query->sockaddr, NULL,
|
|
||||||
+ ISC_SOCKFLAG_NORETRY);
|
|
||||||
check_result(result, "isc_socket_sendtov");
|
|
||||||
sendcount++;
|
|
||||||
}
|
|
||||||
@@ -2838,6 +2861,7 @@ static void
|
|
||||||
launch_next_query(dig_query_t *query, isc_boolean_t include_question) {
|
|
||||||
isc_result_t result;
|
|
||||||
dig_lookup_t *l;
|
|
||||||
+ isc_buffer_t *buffer;
|
|
||||||
|
|
||||||
INSIST(!free_now);
|
|
||||||
|
|
||||||
@@ -2861,9 +2885,15 @@ launch_next_query(dig_query_t *query, is
|
|
||||||
isc_buffer_putuint16(&query->slbuf, (isc_uint16_t) query->sendbuf.used);
|
|
||||||
ISC_LIST_INIT(query->sendlist);
|
|
||||||
ISC_LINK_INIT(&query->slbuf, link);
|
|
||||||
- ISC_LIST_ENQUEUE(query->sendlist, &query->slbuf, link);
|
|
||||||
- if (include_question)
|
|
||||||
- ISC_LIST_ENQUEUE(query->sendlist, &query->sendbuf, link);
|
|
||||||
+ if (!query->first_soa_rcvd) {
|
|
||||||
+ buffer = clone_buffer(&query->slbuf);
|
|
||||||
+ ISC_LIST_ENQUEUE(query->sendlist, buffer, link);
|
|
||||||
+ if (include_question) {
|
|
||||||
+ buffer = clone_buffer(&query->sendbuf);
|
|
||||||
+ ISC_LIST_ENQUEUE(query->sendlist, buffer, link);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
ISC_LINK_INIT(&query->lengthbuf, link);
|
|
||||||
ISC_LIST_ENQUEUE(query->lengthlist, &query->lengthbuf, link);
|
|
||||||
|
|
||||||
diff -up bind-9.9.4/bin/dig/host.c.send_buffers bind-9.9.4/bin/dig/host.c
|
|
||||||
--- bind-9.9.4/bin/dig/host.c.send_buffers 2013-10-31 14:22:20.270811568 +0100
|
|
||||||
+++ bind-9.9.4/bin/dig/host.c 2013-10-31 14:22:20.328811669 +0100
|
|
||||||
@@ -638,6 +638,8 @@ pre_parse_args(int argc, char **argv) {
|
|
||||||
case 'w': break;
|
|
||||||
case 'C': break;
|
|
||||||
case 'D':
|
|
||||||
+ if (debugging)
|
|
||||||
+ debugtiming = ISC_TRUE;
|
|
||||||
debugging = ISC_TRUE;
|
|
||||||
break;
|
|
||||||
case 'N': break;
|
|
||||||
diff -up bind-9.9.4/bin/dig/include/dig/dig.h.send_buffers bind-9.9.4/bin/dig/include/dig/dig.h
|
|
||||||
--- bind-9.9.4/bin/dig/include/dig/dig.h.send_buffers 2013-10-31 14:22:20.270811568 +0100
|
|
||||||
+++ bind-9.9.4/bin/dig/include/dig/dig.h 2013-10-31 14:22:20.328811669 +0100
|
|
||||||
@@ -275,7 +275,7 @@ extern isc_boolean_t validated;
|
|
||||||
extern isc_taskmgr_t *taskmgr;
|
|
||||||
extern isc_task_t *global_task;
|
|
||||||
extern isc_boolean_t free_now;
|
|
||||||
-extern isc_boolean_t debugging, memdebugging;
|
|
||||||
+extern isc_boolean_t debugging, debugtiming, memdebugging;
|
|
||||||
|
|
||||||
extern char *progname;
|
|
||||||
extern int tries;
|
|
||||||
diff -up bind-9.9.4/lib/isc/include/isc/namespace.h.send_buffers bind-9.9.4/lib/isc/include/isc/namespace.h
|
|
||||||
--- bind-9.9.4/lib/isc/include/isc/namespace.h.send_buffers 2013-09-05 07:09:08.000000000 +0200
|
|
||||||
+++ bind-9.9.4/lib/isc/include/isc/namespace.h 2013-10-31 14:22:20.328811669 +0100
|
|
||||||
@@ -106,6 +106,7 @@
|
|
||||||
#define isc_socket_sendv isc__socket_sendv
|
|
||||||
#define isc_socket_sendtov isc__socket_sendtov
|
|
||||||
#define isc_socket_sendto2 isc__socket_sendto2
|
|
||||||
+#define isc_socket_sendtov2 isc__socket_sendtov2
|
|
||||||
#define isc_socket_cleanunix isc__socket_cleanunix
|
|
||||||
#define isc_socket_permunix isc__socket_permunix
|
|
||||||
#define isc_socket_bind isc__socket_bind
|
|
||||||
diff -up bind-9.9.4/lib/isc/include/isc/socket.h.send_buffers bind-9.9.4/lib/isc/include/isc/socket.h
|
|
||||||
--- bind-9.9.4/lib/isc/include/isc/socket.h.send_buffers 2013-09-05 07:09:08.000000000 +0200
|
|
||||||
+++ bind-9.9.4/lib/isc/include/isc/socket.h 2013-10-31 14:22:20.328811669 +0100
|
|
||||||
@@ -866,6 +866,11 @@ isc_socket_sendtov(isc_socket_t *sock, i
|
|
||||||
isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
isc_sockaddr_t *address, struct in6_pktinfo *pktinfo);
|
|
||||||
isc_result_t
|
|
||||||
+isc_socket_sendtov2(isc_socket_t *sock, isc_bufferlist_t *buflist,
|
|
||||||
+ isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
+ isc_sockaddr_t *address, struct in6_pktinfo *pktinfo,
|
|
||||||
+ unsigned int flags);
|
|
||||||
+isc_result_t
|
|
||||||
isc_socket_sendto2(isc_socket_t *sock, isc_region_t *region,
|
|
||||||
isc_task_t *task,
|
|
||||||
isc_sockaddr_t *address, struct in6_pktinfo *pktinfo,
|
|
||||||
diff -up bind-9.9.4/lib/isc/unix/socket.c.send_buffers bind-9.9.4/lib/isc/unix/socket.c
|
|
||||||
--- bind-9.9.4/lib/isc/unix/socket.c.send_buffers 2013-10-31 14:22:20.293811608 +0100
|
|
||||||
+++ bind-9.9.4/lib/isc/unix/socket.c 2013-10-31 14:22:20.330811673 +0100
|
|
||||||
@@ -510,6 +510,11 @@ isc__socket_sendtov(isc_socket_t *sock,
|
|
||||||
isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
isc_sockaddr_t *address, struct in6_pktinfo *pktinfo);
|
|
||||||
ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
||||||
+isc__socket_sendtov2(isc_socket_t *sock, isc_bufferlist_t *buflist,
|
|
||||||
+ isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
+ isc_sockaddr_t *address, struct in6_pktinfo *pktinfo,
|
|
||||||
+ unsigned int flags);
|
|
||||||
+ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
||||||
isc__socket_sendto2(isc_socket_t *sock, isc_region_t *region,
|
|
||||||
isc_task_t *task,
|
|
||||||
isc_sockaddr_t *address, struct in6_pktinfo *pktinfo,
|
|
||||||
@@ -4796,15 +4801,25 @@ ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
||||||
isc__socket_sendv(isc_socket_t *sock, isc_bufferlist_t *buflist,
|
|
||||||
isc_task_t *task, isc_taskaction_t action, const void *arg)
|
|
||||||
{
|
|
||||||
- return (isc__socket_sendtov(sock, buflist, task, action, arg, NULL,
|
|
||||||
- NULL));
|
|
||||||
+ return (isc__socket_sendtov2(sock, buflist, task, action, arg, NULL,
|
|
||||||
+ NULL, 0));
|
|
||||||
}
|
|
||||||
|
|
||||||
ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
||||||
-isc__socket_sendtov(isc_socket_t *sock0, isc_bufferlist_t *buflist,
|
|
||||||
+isc__socket_sendtov(isc_socket_t *sock, isc_bufferlist_t *buflist,
|
|
||||||
isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
isc_sockaddr_t *address, struct in6_pktinfo *pktinfo)
|
|
||||||
{
|
|
||||||
+ return (isc__socket_sendtov2(sock, buflist, task, action, arg, address,
|
|
||||||
+ pktinfo, 0));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
||||||
+isc__socket_sendtov2(isc_socket_t *sock0, isc_bufferlist_t *buflist,
|
|
||||||
+ isc_task_t *task, isc_taskaction_t action, const void *arg,
|
|
||||||
+ isc_sockaddr_t *address, struct in6_pktinfo *pktinfo,
|
|
||||||
+ unsigned int flags)
|
|
||||||
+{
|
|
||||||
isc__socket_t *sock = (isc__socket_t *)sock0;
|
|
||||||
isc_socketevent_t *dev;
|
|
||||||
isc__socketmgr_t *manager;
|
|
||||||
@@ -4837,7 +4852,7 @@ isc__socket_sendtov(isc_socket_t *sock0,
|
|
||||||
buffer = ISC_LIST_HEAD(*buflist);
|
|
||||||
}
|
|
||||||
|
|
||||||
- return (socket_send(sock, dev, task, address, pktinfo, 0));
|
|
||||||
+ return (socket_send(sock, dev, task, address, pktinfo, flags));
|
|
||||||
}
|
|
||||||
|
|
||||||
ISC_SOCKETFUNC_SCOPE isc_result_t
|
|
@ -1,31 +0,0 @@
|
|||||||
diff --git a/bin/nsupdate/nsupdate.c b/bin/nsupdate/nsupdate.c
|
|
||||||
index 486c102..dc12a85 100644
|
|
||||||
--- a/bin/nsupdate/nsupdate.c
|
|
||||||
+++ b/bin/nsupdate/nsupdate.c
|
|
||||||
@@ -1566,16 +1566,20 @@ evaluate_realm(char *cmdline) {
|
|
||||||
#ifdef GSSAPI
|
|
||||||
char *word;
|
|
||||||
char buf[1024];
|
|
||||||
+ int n;
|
|
||||||
|
|
||||||
- word = nsu_strsep(&cmdline, " \t\r\n");
|
|
||||||
- if (word == NULL || *word == 0) {
|
|
||||||
- if (realm != NULL)
|
|
||||||
- isc_mem_free(mctx, realm);
|
|
||||||
+ if (realm != NULL) {
|
|
||||||
+ isc_mem_free(mctx, realm);
|
|
||||||
realm = NULL;
|
|
||||||
- return (STATUS_MORE);
|
|
||||||
}
|
|
||||||
|
|
||||||
- snprintf(buf, sizeof(buf), "@%s", word);
|
|
||||||
+ word = nsu_strsep(&cmdline, " \t\r\n");
|
|
||||||
+ if (word == NULL || *word == 0)
|
|
||||||
+ return (STATUS_MORE);
|
|
||||||
+
|
|
||||||
+ n = snprintf(buf, sizeof(buf), "@%s", word);
|
|
||||||
+ if (n < 0 || (size_t)n >= sizeof(buf))
|
|
||||||
+ fatal("realm is too long");
|
|
||||||
realm = isc_mem_strdup(mctx, buf);
|
|
||||||
if (realm == NULL)
|
|
||||||
fatal("out of memory");
|
|
Loading…
Reference in New Issue
Block a user