Windows file selectors contain an edit box as well as the Browse
[u/mdw/putty] / pageant.c
index 73e950c..1b282ab 100644 (file)
--- a/pageant.c
+++ b/pageant.c
@@ -128,24 +128,6 @@ static void *get_keylist1(void);
 static void *get_keylist2(void);
 
 /*
- * We need this to link with the RSA code, because rsaencrypt()
- * pads its data with random bytes. Since we only use rsadecrypt()
- * and the signing functions, which are deterministic, this should
- * never be called.
- *
- * If it _is_ called, there is a _serious_ problem, because it
- * won't generate true random numbers. So we must scream, panic,
- * and exit immediately if that should happen.
- */
-int random_byte(void)
-{
-    MessageBox(main_hwnd, "Internal Error", APPNAME, MB_OK | MB_ICONERROR);
-    exit(0);
-    /* this line can't be reached but it placates MSVC's warnings :-) */
-    return 0;
-}
-
-/*
  * Blob structure for passing to the asymmetric SSH2 key compare
  * function, prototyped here.
  */
@@ -231,7 +213,7 @@ static int CALLBACK AboutProc(HWND hwnd, UINT msg,
            return 0;
          case 101:
            EnableWindow(hwnd, 0);
-           DialogBox(instance, MAKEINTRESOURCE(214), NULL, LicenceProc);
+           DialogBox(instance, MAKEINTRESOURCE(214), hwnd, LicenceProc);
            EnableWindow(hwnd, 1);
            SetActiveWindow(hwnd);
            return 0;
@@ -1948,6 +1930,11 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
     }
 
     /*
+     * Initialise the random number generator.
+     */
+    random_init();
+
+    /*
      * Initialise storage for short-term passphrase cache.
      */
     passphrases = newtree234(NULL);