|
From: David G. <dav...@po...> - 2008-11-19 00:02:23
|
Donal K. Fellows wrote: > TIP #162 IPv6 Sockets for Tcl Years back, I added IPv6 capability to a socket channel driver extension. I thought about that one quite a lot about 3 years ago. The big problem with adding v6 regards name resolution fundamentals. TCP/IP isn't the only networking layer there is, and it wouldn't be prudent to restrict the generic layer to IP naming concepts alone. It'll take me a bit to get up to speed again, but I can head this one. 1) real async multi-protocol (IP/dns,IPX/SAP,IrDA/IAS,AppleTalk,etc..) name resolver with support for all three types: static, dynamic and persistent resolution systems. Maybe fix Tcl_PosixError(), or the error message calls around it, so it can support the errors found in netdb.h so we can get back meaningful error messages that can distinguish HOST_NOT_FOUND from TRY_AGAIN instead of the current meaningless EINVAL. 2) A plugin system for extensions to insert new protocols at run-time or internally when compiled in. 3) Allow for calls such as the following: socket 3ffe:b80:185d:1::29 ftp socket -protocol spx FEDCBA98.1A2B3C5D7E9F 0453 When the IPX/SPX module has been installed -^ 4) Maybe update the windows channel driver code to use WSAEventSelect() with job pooling and get away from the ancient Win 3.1 holdover of WSAAsyncSelect() |