[Ttssh2-commit] [4165] freeaddrinfoをTTXでフック出来るようにした。

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2010年 11月 24日 (水) 20:35:04 JST


Revision: 4165
          http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4165
Author:   doda
Date:     2010-11-24 20:35:04 +0900 (Wed, 24 Nov 2010)

Log Message:
-----------
freeaddrinfoをTTXでフック出来るようにした。

Modified Paths:
--------------
    trunk/teraterm/common/ttplugin.h
    trunk/teraterm/teraterm/WSAAsyncGetAddrInfo.c
    trunk/teraterm/teraterm/commlib.c
    trunk/teraterm/teraterm/ttplug.h
    trunk/teraterm/teraterm/ttwsk.c
    trunk/teraterm/teraterm/ttwsk.h


-------------- next part --------------
Modified: trunk/teraterm/common/ttplugin.h
===================================================================
--- trunk/teraterm/common/ttplugin.h	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/common/ttplugin.h	2010-11-24 11:35:04 UTC (rev 4165)
@@ -29,6 +29,8 @@
   TWSAAsyncGetHostByName FAR * PWSAAsyncGetHostByName;
   TWSACancelAsyncRequest FAR * PWSACancelAsyncRequest;
   TWSAGetLastError FAR * PWSAGetLastError;
+//  Tgetaddrinfo FAR * Pgetaddrinfo;
+  Tfreeaddrinfo FAR * Pfreeaddrinfo;
   TWSAAsyncGetAddrInfo FAR * PWSAAsyncGetAddrInfo;
 } TTXSockHooks;
 

Modified: trunk/teraterm/teraterm/WSAAsyncGetAddrInfo.c
===================================================================
--- trunk/teraterm/teraterm/WSAAsyncGetAddrInfo.c	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/teraterm/WSAAsyncGetAddrInfo.c	2010-11-24 11:35:04 UTC (rev 4165)
@@ -7,6 +7,7 @@
 #include <windows.h>
 #include <process.h>
 #include "WSAASyncGetAddrInfo.h"
+#include "ttwsk.h"
 
 static unsigned __stdcall getaddrinfo_thread(void FAR * p);
 
@@ -74,6 +75,7 @@
 	res = ga->res;
 
 	/* call getaddrinfo */
+//	gai = Pgetaddrinfo(hostname, portname, hints, res);
 	gai = getaddrinfo(hostname, portname, hints, res);
 
 	/* send value of gai as message to window hWnd */

Modified: trunk/teraterm/teraterm/commlib.c
===================================================================
--- trunk/teraterm/teraterm/commlib.c	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/teraterm/commlib.c	2010-11-24 11:35:04 UTC (rev 4165)
@@ -742,7 +742,7 @@
 			}
 			HAsync = 0;
 #ifndef NO_INET6
-			freeaddrinfo(cv->res0);
+			Pfreeaddrinfo(cv->res0);
 #endif /* NO_INET6 */
 			if ( cv->s!=INVALID_SOCKET ) {
 				Pclosesocket(cv->s);

Modified: trunk/teraterm/teraterm/ttplug.h
===================================================================
--- trunk/teraterm/teraterm/ttplug.h	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/teraterm/ttplug.h	2010-11-24 11:35:04 UTC (rev 4165)
@@ -22,7 +22,7 @@
       &Pioctlsocket, &Precv, &Pselect, &Psend, &Psetsockopt,     \
       &Psocket, &PWSAAsyncSelect, &PWSAAsyncGetHostByName,       \
       &PWSACancelAsyncRequest, &PWSAGetLastError,                \
-      &PWSAAsyncGetAddrInfo                                      \
+      /* &Pgetaddrinfo,*/ &Pfreeaddrinfo, &PWSAAsyncGetAddrInfo  \
     };                                                           \
     TTXInternalOpenTCP(&SockHooks);                              \
   } while (0)
@@ -38,7 +38,7 @@
       &Pioctlsocket, &Precv, &Pselect, &Psend, &Psetsockopt,     \
       &Psocket, &PWSAAsyncSelect, &PWSAAsyncGetHostByName,       \
       &PWSACancelAsyncRequest, &PWSAGetLastError,                \
-      &PWSAAsyncGetAddrInfo                                      \
+      /* &Pgetaddrinfo,*/ &Pfreeaddrinfo, &PWSAAsyncGetAddrInfo  \
     };                                                           \
     TTXInternalCloseTCP(&SockHooks);                             \
   } while (0)

Modified: trunk/teraterm/teraterm/ttwsk.c
===================================================================
--- trunk/teraterm/teraterm/ttwsk.c	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/teraterm/ttwsk.c	2010-11-24 11:35:04 UTC (rev 4165)
@@ -30,6 +30,8 @@
 TWSAGetLastError PWSAGetLastError;
 TWSAStartup PWSAStartup;
 TWSACleanup PWSACleanup;
+// Tgetaddrinfo Pgetaddrinfo;
+Tfreeaddrinfo Pfreeaddrinfo;
 TWSAAsyncGetAddrInfo PWSAAsyncGetAddrInfo;
 
 void CheckWinsock()
@@ -151,6 +153,10 @@
     if (PWSACleanup==NULL) Err = TRUE;
 
 #ifndef NO_INET6
+//    Pgetaddrinfo = (Tgetaddrinfo)GetProcAddress(HWinsock, "getaddrinfo");
+//    if (Pgetaddrinfo==NULL) Err = TRUE;
+
+    Pfreeaddrinfo = freeaddrinfo;
     PWSAAsyncGetAddrInfo = WSAAsyncGetAddrInfo;
 #endif /* NO_INET6 */
 

Modified: trunk/teraterm/teraterm/ttwsk.h
===================================================================
--- trunk/teraterm/teraterm/ttwsk.h	2010-11-24 11:24:22 UTC (rev 4164)
+++ trunk/teraterm/teraterm/ttwsk.h	2010-11-24 11:35:04 UTC (rev 4165)
@@ -53,6 +53,8 @@
   (HWND hWnd, unsigned int wMsg, const char FAR * hostname,
    const char FAR * portname, struct addrinfo FAR * hints,
    struct addrinfo FAR * FAR * res);
+// typedef int (PASCAL FAR *Tgetaddrinfo)(const char *name, const char *port, const struct addrinfo *hints, struct addrinfo **res);
+typedef void (PASCAL FAR *Tfreeaddrinfo)(struct addrinfo *ai);
 
 BOOL LoadWinsock();
 void FreeWinsock();
@@ -76,6 +78,8 @@
 extern TWSAStartup PWSAStartup;
 extern TWSACleanup PWSACleanup;
 extern TWSAAsyncGetAddrInfo PWSAAsyncGetAddrInfo;
+// extern Tgetaddrinfo Pgetaddrinfo;
+extern Tfreeaddrinfo Pfreeaddrinfo;
 
 #ifdef __cplusplus
 }



Ttssh2-commit メーリングリストの案内
Back to archive index