X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/2e8324fc5624af5e4d3de5955bf781cf8a7c027c..8e1feb2760e62b619e3226572dca19001a192bd8:/puttygen.c diff --git a/puttygen.c b/puttygen.c index 44fc98fa..6f5d8164 100644 --- a/puttygen.c +++ b/puttygen.c @@ -93,7 +93,7 @@ struct PassphraseProcStruct { */ static int CALLBACK PassphraseProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { - static char *passphrase; + static char *passphrase = NULL; struct PassphraseProcStruct *p; switch (msg) { @@ -121,6 +121,7 @@ static int CALLBACK PassphraseProc(HWND hwnd, UINT msg, if (p->comment) SetDlgItemText(hwnd, 101, p->comment); *passphrase = 0; + SetDlgItemText(hwnd, 102, passphrase); return 0; case WM_COMMAND: switch (LOWORD(wParam)) { @@ -134,7 +135,7 @@ static int CALLBACK PassphraseProc(HWND hwnd, UINT msg, EndDialog (hwnd, 0); return 0; case 102: /* edit box */ - if (HIWORD(wParam) == EN_CHANGE) { + if ((HIWORD(wParam) == EN_CHANGE) && passphrase) { GetDlgItemText (hwnd, 102, passphrase, PASSPHRASE_MAXLEN-1); passphrase[PASSPHRASE_MAXLEN-1] = '\0'; } @@ -314,7 +315,7 @@ static void setupbigedit1(HWND hwnd, int id, struct RSAKey *key) { buffer = smalloc(strlen(dec1)+strlen(dec2)+ strlen(key->comment)+30); sprintf(buffer, "%d %s %s %s", - ssh1_bignum_bitcount(key->modulus), + bignum_bitcount(key->modulus), dec1, dec2, key->comment); SetDlgItemText(hwnd, id, buffer); sfree(dec1); @@ -325,7 +326,7 @@ static void setupbigedit1(HWND hwnd, int id, struct RSAKey *key) { static void setupbigedit2(HWND hwnd, int id, struct ssh2_userkey *key) { unsigned char *pub_blob; char *buffer, *p; - int pub_len, buflen; + int pub_len; int i; pub_blob = key->alg->public_blob(key->data, &pub_len);