Browse Subversion Repository
Diff of /branches/ssh_chacha20poly1305/ttssh2/ttxssh/ssh.c
Parent Directory
| Revision Log
| Patch
| 7415 |
|
|
| 7416 |
|
|
| 7417 |
#define WM_SENDING_FILE (WM_USER + 1) |
#define WM_SENDING_FILE (WM_USER + 1) |
| 7418 |
|
#define WM_CHANNEL_CLOSE (WM_USER + 2) |
| 7419 |
|
|
| 7420 |
typedef struct scp_dlg_parm { |
typedef struct scp_dlg_parm { |
| 7421 |
Channel_t *c; |
Channel_t *c; |
| 7431 |
case WM_INITDIALOG: |
case WM_INITDIALOG: |
| 7432 |
return FALSE; |
return FALSE; |
| 7433 |
|
|
| 7434 |
|
// SCPファイル受信(remote-to-local)時、使用する。 |
| 7435 |
|
case WM_CHANNEL_CLOSE: |
| 7436 |
|
{ |
| 7437 |
|
scp_dlg_parm_t *parm = (scp_dlg_parm_t *)wp; |
| 7438 |
|
|
| 7439 |
|
ssh2_channel_send_close(parm->pvar, parm->c); |
| 7440 |
|
} |
| 7441 |
|
return TRUE; |
| 7442 |
|
break; |
| 7443 |
|
|
| 7444 |
case WM_SENDING_FILE: |
case WM_SENDING_FILE: |
| 7445 |
{ |
{ |
| 7446 |
scp_dlg_parm_t *parm = (scp_dlg_parm_t *)wp; |
scp_dlg_parm_t *parm = (scp_dlg_parm_t *)wp; |
| 7679 |
int rate, ProgStat; |
int rate, ProgStat; |
| 7680 |
DWORD stime; |
DWORD stime; |
| 7681 |
int elapsed, prev_elapsed; |
int elapsed, prev_elapsed; |
| 7682 |
|
scp_dlg_parm_t parm; |
| 7683 |
|
|
| 7684 |
InitDlgProgress(hWnd, IDC_PROGBAR, &ProgStat); |
InitDlgProgress(hWnd, IDC_PROGBAR, &ProgStat); |
| 7685 |
|
|
| 7760 |
ShowWindow(c->scp.progress_window, SW_HIDE); |
ShowWindow(c->scp.progress_window, SW_HIDE); |
| 7761 |
|
|
| 7762 |
cancel_abort: |
cancel_abort: |
| 7763 |
ssh2_channel_send_close(pvar, c); |
// チャネルのクローズを行いたいが、直接 ssh2_channel_send_close() を呼び出すと、 |
| 7764 |
|
// 当該関数がスレッドセーフではないため、SCP処理が正常に終了しない場合がある。 |
| 7765 |
|
// (2011.6.1 yutaka) |
| 7766 |
|
parm.c = c; |
| 7767 |
|
parm.pvar = pvar; |
| 7768 |
|
SendMessage(hWnd, WM_CHANNEL_CLOSE, (WPARAM)&parm, 0); |
| 7769 |
|
|
| 7770 |
return 0; |
return 0; |
| 7771 |
} |
} |
| 7772 |
|
|
|
|
Legend:
| Removed from v.4477 |
|
| changed lines |
| |
Added in v.4479 |
|
|
| |