+ 894. [bug] A message intended to warn when the keyboard was being
+ used because of the lack of a suitable random device
+ was not being printed.
+
893. [func] Removed isc_file_test() and added isc_file_exists()
for the basic functionality that was being added
with isc_file_test().
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: dnssectool.c,v 1.28 2001/03/31 02:12:24 bwelling Exp $ */
+/* $Id: dnssectool.c,v 1.29 2001/06/08 22:07:16 tale Exp $ */
#include <config.h>
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);