|
|
| version 1.3, 2005/02/09 20:11:35 | version 1.6, 2007/01/08 08:52:21 |
|---|---|
| Line 3 | Line 3 |
| #include "np2.h" | #include "np2.h" |
| #include "scrnmng.h" | #include "scrnmng.h" |
| #include "sstp.h" | #include "sstp.h" |
| #if defined(OSLANG_UTF8) || defined(OSLANG_UCS2) | |
| #include "oemtext.h" | |
| #endif | |
| static HWND sstphwnd = NULL; | static HWND sstphwnd = NULL; |
| Line 14 static char sstprcv[0x1000]; | Line 17 static char sstprcv[0x1000]; |
| static DWORD sstppos = 0; | static DWORD sstppos = 0; |
| static void (*sstpproc)(HWND, char *) = NULL; | static void (*sstpproc)(HWND, char *) = NULL; |
| static const char sendermes[] = \ | static const OEMCHAR sendermes[] = \ |
| "SEND SSTP/1.2\r\n" \ | OEMTEXT("SEND SSTP/1.2\r\n") \ |
| "Sender: Neko Project II\r\n" \ | OEMTEXT("Sender: Neko Project II\r\n") \ |
| "Script: \\h\\s0%s\\e\r\n" \ | OEMTEXT("Script: \\h\\s0%s\\e\r\n") \ |
| "Option: notranslate\r\n" \ | OEMTEXT("Option: notranslate\r\n") \ |
| "Charset: Shift_JIS\r\n" \ | OEMTEXT("Charset: Shift_JIS\r\n") \ |
| "\r\n"; | OEMTEXT("\r\n"); |
| static HANDLE check_sakura(void) { | static HANDLE check_sakura(void) { |
| HANDLE hsakura; | HANDLE hsakura; |
| hsakura = OpenMutex(MUTEX_ALL_ACCESS, FALSE, OEMTEXT("sakura")); | hsakura = OpenMutex(MUTEX_ALL_ACCESS, FALSE, _T("sakura")); |
| if (hsakura != NULL) { | if (hsakura != NULL) { |
| CloseHandle(hsakura); | CloseHandle(hsakura); |
| } | } |
| Line 37 static HANDLE check_sakura(void) { | Line 40 static HANDLE check_sakura(void) { |
| // ------------------------------------------------------------------ Async... | // ------------------------------------------------------------------ Async... |
| BOOL sstp_send(char *msg, void (*proc)(HWND hWnd, char *msg)) { | BOOL sstp_send(const OEMCHAR *msg, void (*proc)(HWND hWnd, char *msg)) { |
| sockaddr_in s_in; | sockaddr_in s_in; |
| Line 55 BOOL sstp_send(char *msg, void (*proc)(H | Line 58 BOOL sstp_send(char *msg, void (*proc)(H |
| return(FAILURE); | return(FAILURE); |
| } | } |
| SPRINTF(sstpstr, sendermes, msg); | #if defined(OSLANG_UTF8) || defined(OSLANG_UCS2) |
| OEMCHAR oem[0x1000]; | |
| OEMSPRINTF(oem, sendermes, msg); | |
| oemtext_oemtosjis(sstpstr, NELEMENTS(sstpstr), oem, -1); | |
| #else | |
| OEMSPRINTF(sstpstr, sendermes, msg); | |
| #endif | |
| sstprcv[0] = 0; | sstprcv[0] = 0; |
| sstppos = 0; | sstppos = 0; |
| Line 96 sstp_senderror:; | Line 105 sstp_senderror:; |
| void sstp_connect(void) { | void sstp_connect(void) { |
| if (hSocket != INVALID_SOCKET) { | if (hSocket != INVALID_SOCKET) { |
| send(hSocket, sstpstr, strlen(sstpstr), 0); | send(hSocket, sstpstr, (int)strlen(sstpstr), 0); |
| } | } |
| } | } |
| Line 176 int sstp_result(void) { | Line 185 int sstp_result(void) { |
| // 関数一発、送信逃げ。 | // 関数一発、送信逃げ。 |
| BOOL sstp_sendonly(char *msg) { | BOOL sstp_sendonly(const OEMCHAR *msg) { |
| WSAData lwsadata; | WSAData lwsadata; |
| SOCKET lSocket; | SOCKET lSocket; |
| Line 192 BOOL sstp_sendonly(char *msg) { | Line 201 BOOL sstp_sendonly(char *msg) { |
| s_in.sin_port = htons(np2oscfg.sstpport); | s_in.sin_port = htons(np2oscfg.sstpport); |
| if (connect(lSocket, (sockaddr *)&s_in, sizeof(s_in)) | if (connect(lSocket, (sockaddr *)&s_in, sizeof(s_in)) |
| != SOCKET_ERROR) { | != SOCKET_ERROR) { |
| SPRINTF(msgstr, sendermes, msg); | #if defined(OSLANG_UTF8) || defined(OSLANG_UCS2) |
| send(lSocket, msgstr, strlen(msgstr), 0); | OEMCHAR oem[0x1000]; |
| OEMSPRINTF(oem, sendermes, msg); | |
| oemtext_oemtosjis(msgstr, NELEMENTS(msgstr), oem, -1); | |
| #else | |
| OEMSPRINTF(msgstr, sendermes, msg); | |
| #endif | |
| send(lSocket, msgstr, (int)strlen(msgstr), 0); | |
| ret = SUCCESS; | ret = SUCCESS; |
| } | } |
| closesocket(lSocket); | closesocket(lSocket); |