From: Brian Wellington Date: Fri, 8 Jun 2001 23:27:29 +0000 (+0000) Subject: pullup: X-Git-Tag: v9.1.3rc2~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d3c52f670ae7877d75aadf62a83bb3591ecf5e57;p=thirdparty%2Fbind9.git pullup: 894. [bug] When using the DNSSEC tools, a message intended to warn when the keyboard was being used because of the lack of a suitable random device was not being printed. --- diff --git a/CHANGES b/CHANGES index 12ecfd942fa..943aed02b87 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ + 894. [bug] When using the DNSSEC tools, a message intended to warn + when the keyboard was being used because of the lack + of a suitable random device was not being printed. 892. [bug] The server could attempt to refresh a zone that was being loaded, causing an assertion failure. diff --git a/bin/dnssec/dnssectool.c b/bin/dnssec/dnssectool.c index 87c082359e9..f4669fb7445 100644 --- a/bin/dnssec/dnssectool.c +++ b/bin/dnssec/dnssectool.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: dnssectool.c,v 1.26.2.1 2001/01/09 22:31:35 bwelling Exp $ */ +/* $Id: dnssectool.c,v 1.26.2.2 2001/06/08 23:27:29 bwelling Exp $ */ #include @@ -267,23 +267,26 @@ setup_entropy(isc_mem_t *mctx, const char *randomfile, isc_entropy_t **ectx) { result = isc_entropy_create(mctx, ectx); if (result != ISC_R_SUCCESS) fatal("could not create entropy object"); - if (randomfile != NULL && strcasecmp(randomfile, "keyboard") != 0) { + +#ifdef PATH_RANDOMDEV + if (randomfile == NULL) { + result = isc_entropy_createfilesource(*ectx, PATH_RANDOMDEV); + if (result == ISC_R_SUCCESS) + return; + } +#endif + + if (randomfile != NULL && strcasecmp(randomfile, "keyboard") == 0) { + wantkeyboard = ISC_TRUE; + randomfile = NULL; + } + + if (randomfile != NULL) { result = isc_entropy_createfilesource(*ectx, randomfile); if (result != ISC_R_SUCCESS) fatal("could not open randomdev %s: %s", randomfile, isc_result_totext(result)); - } - else { -#ifdef PATH_RANDOMDEV - if (randomfile == NULL) { - result = isc_entropy_createfilesource(*ectx, - PATH_RANDOMDEV); - if (result == ISC_R_SUCCESS) - return; - } - else -#endif - wantkeyboard = ISC_TRUE; + } else { result = isc_entropy_createcallbacksource(*ectx, kbdstart, kbdget, kbdstop, &kbd, &source);