| 7222 |
#define PASSWD_MAXLEN 150 |
#define PASSWD_MAXLEN 150 |
| 7223 |
|
|
| 7224 |
struct change_password { |
struct change_password { |
| 7225 |
|
PTInstVar pvar; |
| 7226 |
char passwd[PASSWD_MAXLEN]; |
char passwd[PASSWD_MAXLEN]; |
| 7227 |
char new_passwd[PASSWD_MAXLEN]; |
char new_passwd[PASSWD_MAXLEN]; |
| 7228 |
}; |
}; |
| 7231 |
{ |
{ |
| 7232 |
char retype_passwd[PASSWD_MAXLEN]; |
char retype_passwd[PASSWD_MAXLEN]; |
| 7233 |
static struct change_password *cp; |
static struct change_password *cp; |
| 7234 |
|
LOGFONT logfont; |
| 7235 |
|
HFONT font; |
| 7236 |
|
static HFONT DlgChgPassFont; |
| 7237 |
|
char uimsg[MAX_UIMSG]; |
| 7238 |
|
static PTInstVar pvar; |
| 7239 |
|
|
| 7240 |
|
|
| 7241 |
switch (msg) { |
switch (msg) { |
| 7242 |
case WM_INITDIALOG: |
case WM_INITDIALOG: |
| 7243 |
cp = (struct change_password *)lParam; |
cp = (struct change_password *)lParam; |
| 7244 |
|
pvar = cp->pvar; |
| 7245 |
|
|
| 7246 |
|
font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0); |
| 7247 |
|
GetObject(font, sizeof(LOGFONT), &logfont); |
| 7248 |
|
|
| 7249 |
|
if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgChgPassFont, pvar)) { |
| 7250 |
|
SendDlgItemMessage(dlg, IDC_OLD_PASSWD_LABEL, WM_SETFONT, (WPARAM)DlgChgPassFont, MAKELPARAM(TRUE,0)); |
| 7251 |
|
} |
| 7252 |
|
else { |
| 7253 |
|
DlgChgPassFont = NULL; |
| 7254 |
|
} |
| 7255 |
|
|
| 7256 |
|
GetWindowText(dlg, uimsg, sizeof(uimsg)); |
| 7257 |
|
UTIL_get_lang_msg("DLG_PASSCHG_TITLE", pvar, uimsg); |
| 7258 |
|
SetWindowText(dlg, pvar->ts->UIMsg); |
| 7259 |
|
|
| 7260 |
|
GetDlgItemText(dlg, IDC_PASSWD_CHANGEREQ_MSG, uimsg, sizeof(uimsg)); |
| 7261 |
|
UTIL_get_lang_msg("DLG_PASSCHG_MESSAGE", pvar, uimsg); |
| 7262 |
|
SetDlgItemText(dlg, IDC_PASSWD_CHANGEREQ_MSG, pvar->ts->UIMsg); |
| 7263 |
|
|
| 7264 |
|
GetDlgItemText(dlg, IDC_OLD_PASSWD_LABEL, uimsg, sizeof(uimsg)); |
| 7265 |
|
UTIL_get_lang_msg("DLG_PASSCHG_OLDPASSWD", pvar, uimsg); |
| 7266 |
|
SetDlgItemText(dlg, IDC_OLD_PASSWD_LABEL, pvar->ts->UIMsg); |
| 7267 |
|
|
| 7268 |
|
GetDlgItemText(dlg, IDC_NEW_PASSWD_LABEL, uimsg, sizeof(uimsg)); |
| 7269 |
|
UTIL_get_lang_msg("DLG_PASSCHG_NEWPASSWD", pvar, uimsg); |
| 7270 |
|
SetDlgItemText(dlg, IDC_NEW_PASSWD_LABEL, pvar->ts->UIMsg); |
| 7271 |
|
|
| 7272 |
|
GetDlgItemText(dlg, IDC_CONFIRM_PASSWD_LABEL, uimsg, sizeof(uimsg)); |
| 7273 |
|
UTIL_get_lang_msg("DLG_PASSCHG_CONFIRMPASSWD", pvar, uimsg); |
| 7274 |
|
SetDlgItemText(dlg, IDC_CONFIRM_PASSWD_LABEL, pvar->ts->UIMsg); |
| 7275 |
|
|
| 7276 |
return TRUE; |
return TRUE; |
| 7277 |
|
|
| 7278 |
case WM_COMMAND: |
case WM_COMMAND: |
| 7279 |
switch (LOWORD(wParam)) { |
switch (LOWORD(wParam)) { |
| 7280 |
case IDOK: |
case IDOK: |
| 7281 |
SendMessage(GetDlgItem(dlg, IDC_PASSWD), WM_GETTEXT , sizeof(cp->passwd), (LPARAM)cp->passwd); |
SendMessage(GetDlgItem(dlg, IDC_OLD_PASSWD), WM_GETTEXT , sizeof(cp->passwd), (LPARAM)cp->passwd); |
| 7282 |
SendMessage(GetDlgItem(dlg, IDC_NEW_PASSWD), WM_GETTEXT , sizeof(cp->new_passwd), (LPARAM)cp->new_passwd); |
SendMessage(GetDlgItem(dlg, IDC_NEW_PASSWD), WM_GETTEXT , sizeof(cp->new_passwd), (LPARAM)cp->new_passwd); |
| 7283 |
SendMessage(GetDlgItem(dlg, IDC_CONFIRM_PASSWD), WM_GETTEXT , sizeof(retype_passwd), (LPARAM)retype_passwd); |
SendMessage(GetDlgItem(dlg, IDC_CONFIRM_PASSWD), WM_GETTEXT , sizeof(retype_passwd), (LPARAM)retype_passwd); |
| 7284 |
|
|
| 7285 |
if (strcmp(cp->new_passwd, retype_passwd) == 0) { |
if (strcmp(cp->new_passwd, retype_passwd) == 0) { |
| 7286 |
EndDialog(dlg, 1); // dialog close |
EndDialog(dlg, 1); // dialog close |
| 7287 |
|
|
| 7288 |
|
if (DlgChgPassFont != NULL) { |
| 7289 |
|
DeleteObject(DlgChgPassFont); |
| 7290 |
|
DlgChgPassFont = NULL; |
| 7291 |
|
} |
| 7292 |
|
|
| 7293 |
return TRUE; |
return TRUE; |
| 7294 |
} |
} |
| 7295 |
MessageBox(NULL, "Mismatch; try again.", "ERROR", MB_OK | MB_ICONEXCLAMATION); |
MessageBox(NULL, "Mismatch; try again.", "ERROR", MB_OK | MB_ICONEXCLAMATION); |
| 7297 |
|
|
| 7298 |
case IDCANCEL: |
case IDCANCEL: |
| 7299 |
EndDialog(dlg, 0); // dialog close |
EndDialog(dlg, 0); // dialog close |
| 7300 |
|
|
| 7301 |
|
if (DlgChgPassFont != NULL) { |
| 7302 |
|
DeleteObject(DlgChgPassFont); |
| 7303 |
|
DlgChgPassFont = NULL; |
| 7304 |
|
} |
| 7305 |
|
|
| 7306 |
return TRUE; |
return TRUE; |
| 7307 |
} |
} |
| 7308 |
} |
} |
| 7324 |
|
|
| 7325 |
notify_verbose_message(pvar, "SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ was received.", LOG_LEVEL_VERBOSE); |
notify_verbose_message(pvar, "SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ was received.", LOG_LEVEL_VERBOSE); |
| 7326 |
|
|
| 7327 |
|
cp.pvar = pvar; |
| 7328 |
DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_SSHPASSWD_INPUT), pvar->cv->HWin, passwd_change_dialog, (LPARAM)&cp); |
DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_SSHPASSWD_INPUT), pvar->cv->HWin, passwd_change_dialog, (LPARAM)&cp); |
| 7329 |
|
|
| 7330 |
// 6byte(サイズ+パディング+タイプ)を取り除いた以降のペイロード |
// 6byte(サイズ+パディング+タイプ)を取り除いた以降のペイロード |