Re: [twsocket] IPv6 support on TPing

2013-02-13 Thread Arno Garrels
Angus Robertson - Magenta Systems Ltd wrote:
 Ping IPv6 seems to be working now, do you want to test it?
 
 Trace Route to: ipv6.google.com
 Ping of 56 bytes took 29 msecs
 1 0ms  2a01:348:6:68c::2 PC19
 2 8ms  2a01:348:6:68c::1 gw-1677.lon-02.gb.sixxs.net
 311ms  2a01:348::4:0:3:1:1   gblon02.sixxs.net
 4 9ms  2a01:348:0:4::3::12a01:348:0:4::3::1
 511ms  2a01:348::36:1:1  xe-0-1-1.cs0.the.uk.goscomb.net
 6 9ms  2a01:348::24:1:1  xe-0-1-0.cs0.gs2.uk.goscomb.net
 713ms  2a01:348::40:1:1  xe-0-1-0-0.cs1.gs2.uk.goscomb.net
 812ms  2a01:348::41:1:1  xe-0-1-0.cs0.sov.uk.goscomb.net
 911ms  2a01:348::17:0:1  ge-1-1-5.rt0.sov.uk.goscomb.net
 1010ms  2a01:348::51:0:1 
 xe-0-0-1-0.rt0.thn.uk.goscomb.net 1194ms  2001:7f8:4::3b41:1 
 2001:7f8:4::3b41:1 12 8ms  2001:4860::1:0:15f   
 2001:4860::1:0:15f 13 9ms  2001:4860::8:0:2ddf  
 2001:4860::8:0:2ddf 1428ms  2001:4860::8:0:2ac4  
 2001:4860::8:0:2ac4 1528ms  2001:4860::2:0:87b   
 2001:4860::2:0:87b 1726ms  2a00:1450:400c:c06::67   
 wb-in-x67.1e100.net 
 Trace Route Completed

Cool, I'll be able to test it a bit next weekend.

-- 
Arno
 
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-02-13 Thread Mauro Ubeda

Ohh this is awesome! I'll try to test it as well, probably next week too.

Tks!

El 13/02/2013 02:21 p.m., Arno Garrels escribió:

Angus Robertson - Magenta Systems Ltd wrote:

Ping IPv6 seems to be working now, do you want to test it?

Trace Route to: ipv6.google.com
Ping of 56 bytes took 29 msecs
1 0ms  2a01:348:6:68c::2 PC19
2 8ms  2a01:348:6:68c::1 gw-1677.lon-02.gb.sixxs.net
311ms  2a01:348::4:0:3:1:1   gblon02.sixxs.net
4 9ms  2a01:348:0:4::3::12a01:348:0:4::3::1
511ms  2a01:348::36:1:1  xe-0-1-1.cs0.the.uk.goscomb.net
6 9ms  2a01:348::24:1:1  xe-0-1-0.cs0.gs2.uk.goscomb.net
713ms  2a01:348::40:1:1  xe-0-1-0-0.cs1.gs2.uk.goscomb.net
812ms  2a01:348::41:1:1  xe-0-1-0.cs0.sov.uk.goscomb.net
911ms  2a01:348::17:0:1  ge-1-1-5.rt0.sov.uk.goscomb.net
1010ms  2a01:348::51:0:1
xe-0-0-1-0.rt0.thn.uk.goscomb.net 1194ms  2001:7f8:4::3b41:1
2001:7f8:4::3b41:1 12 8ms  2001:4860::1:0:15f
2001:4860::1:0:15f 13 9ms  2001:4860::8:0:2ddf
2001:4860::8:0:2ddf 1428ms  2001:4860::8:0:2ac4
2001:4860::8:0:2ac4 1528ms  2001:4860::2:0:87b
2001:4860::2:0:87b 1726ms  2a00:1450:400c:c06::67
wb-in-x67.1e100.net
Trace Route Completed

Cool, I'll be able to test it a bit next weekend.



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-02-13 Thread Angus Robertson - Magenta Systems Ltd
 Cool, I'll be able to test it a bit next weekend.

No problem, just need to test it with XE3 and 64-bit, and find out why
the sample no longer runs on XP.  

Although we've always been used to a blocking ping, it transpires
Microsoft added async ping using a callback with Windows 2000, which I
have implemented. Unfortunately it does not seem to actually work, the
return code says ERROR_IO_PENDING but the callback never happens. 
Googling I've not found a single example in any language using the
callback or anyone that has ever made it work. 

But I have added my threaded ping to ICS, which is how the trace route
works. 

I'm also trying to get another SIXXS tunnel for my public server (until
the firmware in my firewall gets IPv6 support) so I can make ICS servers
available on IPv6. 

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-02-12 Thread Angus Robertson - Magenta Systems Ltd
   I'm doing some eval of this components but i found that  the 
 TPing component doesn't support IPv6 at the moment (ICS version 8).
 Am i right? or, may be i missed some component initialization call.

Ping IPv6 seems to be working now, do you want to test it?

Trace Route to: ipv6.google.com
Ping of 56 bytes took 29 msecs
 1 0ms  2a01:348:6:68c::2 PC19
 2 8ms  2a01:348:6:68c::1 gw-1677.lon-02.gb.sixxs.net
 311ms  2a01:348::4:0:3:1:1   gblon02.sixxs.net
 4 9ms  2a01:348:0:4::3::12a01:348:0:4::3::1
 511ms  2a01:348::36:1:1  xe-0-1-1.cs0.the.uk.goscomb.net
 6 9ms  2a01:348::24:1:1  xe-0-1-0.cs0.gs2.uk.goscomb.net
 713ms  2a01:348::40:1:1  xe-0-1-0-0.cs1.gs2.uk.goscomb.net
 812ms  2a01:348::41:1:1  xe-0-1-0.cs0.sov.uk.goscomb.net
 911ms  2a01:348::17:0:1  ge-1-1-5.rt0.sov.uk.goscomb.net
1010ms  2a01:348::51:0:1  xe-0-0-1-0.rt0.thn.uk.goscomb.net
1194ms  2001:7f8:4::3b41:12001:7f8:4::3b41:1
12 8ms  2001:4860::1:0:15f2001:4860::1:0:15f
13 9ms  2001:4860::8:0:2ddf   2001:4860::8:0:2ddf
1428ms  2001:4860::8:0:2ac4   2001:4860::8:0:2ac4
1528ms  2001:4860::2:0:87b2001:4860::2:0:87b
1726ms  2a00:1450:400c:c06::67wb-in-x67.1e100.net
Trace Route Completed

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] IPv6 support on TPing

2013-01-24 Thread Mauro Ubeda

Hello!
 I'm doing some eval of this components but i found that  the TPing 
component doesn't support IPv6 at the moment (ICS version 8).

Am i right? or, may be i missed some component initialization call.

Tks!
Mauro
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-01-24 Thread Arno Garrels
Mauro Ubeda wrote:
 Hello!
  I'm doing some eval of this components but i found that  the TPing
 component doesn't support IPv6 at the moment (ICS version 8).
 Am i right? 

Yes, you are right.

-- 
Arno
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-01-24 Thread Angus Robertson - Magenta Systems Ltd
  I'm doing some eval of this components but i found that  the 
 TPing component doesn't support IPv6 at the moment (ICS version 8).

I'm planning to update TPing to support IPv6 and the correct DLL in
February, I need for my applications. 

Angus
 

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support on TPing

2013-01-24 Thread Mauro Ubeda

Tks for your support!

El 24/01/2013 03:45 p.m., Arno Garrels escribió:

Mauro Ubeda wrote:

Hello!
  I'm doing some eval of this components but i found that  the TPing
component doesn't support IPv6 at the moment (ICS version 8).
Am i right?

Yes, you are right.



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2012-06-05 Thread Angus Robertson - Magenta Systems Ltd
 what is the status of IPv6 with ICS ?

Arno has put a lot of effort into adding IPv6 over the last year in ICS
v8, but I have been very slow to test it.  

I got my ICS web server listening on multiple IP addresses including IPv6
last week, and am slowly testing the other components and demos.  The
OverbyteIcsTcpSrvIPv6 demo is the starting point. 

Currently there is no overnight zip of the SVN repository, but I'll fix
that this week.  Beware the V8 directory structure is being changed this
week, so it's quite dynamic at the moment. 

svn://svn.overbyte.be/ics/branches/icsipv6

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2012-06-05 Thread François Piette
 what is the status of IPv6 with ICS ?

Already working, thanks to Arno !
See SVN repository branch icsipv6.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be




--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2012-06-05 Thread Paul

Thanks to all

I'll check is this weekend

Paul



- Original Message - 
From: François Piette francois.pie...@skynet.be

To: 'ICS support mailing' twsocket@elists.org
Sent: Tuesday, June 05, 2012 9:54 AM
Subject: Re: [twsocket] Ipv6



what is the status of IPv6 with ICS ?


Already working, thanks to Arno !
See SVN repository branch icsipv6.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be




--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be 


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] Ipv6

2012-06-04 Thread Paul

Hi,

what is the status of IPv6 with ICS ?

Thanks,

Paul


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-12 Thread Arno Garrels
In order to be able to set TWSocket.SocketFamily to anything
else but sfIPv4 you have to tell TWSocket to use winsock DLL v2.2
by setting both properties ReqVerLow and ReqVerHigh to 2.
These are the defaults in ICS IPv6, however if you update
old projects with TWSocket components dropped on forms
they still use winsock v1.1 and SocketFamily can't be changed.  

-- 
Arno Garrels


 Arno Garrels wrote:
 
 There's an IPv6-branch at:
 svn://svn.overbyte.be/ics/branches/icsipv6
 Both user and password = ics
 It lacks recent changes of trunk (a few weeks) and is still
 experimental. Feedback is welcome.
 
 I just merged all recent changes from trunk (actually those from march
 to now), so it's again in sync with current ICSv7.

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-11 Thread Arno Garrels
Arno Garrels wrote:

 There's an IPv6-branch at:
 svn://svn.overbyte.be/ics/branches/icsipv6
 Both user and password = ics
 It lacks recent changes of trunk (a few weeks) and is still
 experimental. Feedback is welcome.

I just merged all recent changes from trunk (actually those from march
to now), so it's again in sync with current ICSv7.

-- 
Arno Garrels 
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-08 Thread Éric Fleming Bonilha

Arno,

On this subject, does ICS team plans to release official support for IPv6?

Eric

-Mensagem Original- 
From: Arno Garrels 
Sent: Tuesday, June 07, 2011 3:16 PM 
To: ICS support mailing 
Subject: Re: [twsocket] IPv6 support ? 


Max Terentiev wrote:


Does ICS v6-v7 support IPv6 ?


Current ICSv7 doeas not.

There's an IPv6-branch at:
svn://svn.overbyte.be/ics/branches/icsipv6
Both user and password = ics
It lacks recent changes of trunk (a few weeks) and is still 
experimental. Feedback is welcome.


--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-08 Thread Francois PIETTE

On this subject, does ICS team plans to release official support for IPv6?


Arno already done most of the work, so yes it is intended to release it 
someday.

We need testers and you are welcome to participate.

As you probably know, Embarcadero is preparing the next release. ICS must be 
ready and we expect a lot of work in the comming months so IPv6 is not the 
major priority.


--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] IPv6 support ?

2011-06-07 Thread Max Terentiev
Hi,

 

Does ICS v6-v7 support IPv6 ?

 

Can't find any info about it at overbyte.be

 

Thanx !

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-07 Thread Fastream Technologies
There was an effort but IIRC it needs testing. You can download the source
from the SVN repository.
Regards,

SZ
On Tue, Jun 7, 2011 at 18:20, Max Terentiev maxterent...@mail.ru wrote:

 Hi,



 Does ICS v6-v7 support IPv6 ?



 Can't find any info about it at overbyte.be



 Thanx !

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support ?

2011-06-07 Thread Arno Garrels
Max Terentiev wrote:

 Does ICS v6-v7 support IPv6 ?

Current ICSv7 doeas not.

There's an IPv6-branch at:
svn://svn.overbyte.be/ics/branches/icsipv6
Both user and password = ics
It lacks recent changes of trunk (a few weeks) and is still 
experimental. Feedback is welcome.

-- 
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-25 Thread Fastream Technologies
Ok, managed the SVN. Now what should I do for an IPv4 ICS client/server to
upgrade to IPv6? I saw almost no documentation in the source. Can
applications support both protocols with no modification or must one make a
separate listening/target IP per v4 and v6?

Regards,

SZ

On Wed, Nov 24, 2010 at 2:59 PM, Fastream Technologies
ga...@fastream.comwrote:

 Arno, Thanks for the detailed explanation.

 SZ

 On Wed, Nov 24, 2010 at 2:03 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Hi Arno,
 
  On Tue, Nov 23, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de
  wrote:
 
  Fastream Technologies wrote:
  Ok, somehow the packages got mixed and the defines were wrong.
  Anyway, can you try to compile the latest IPv6 package with
  NO_ADV_MT defined? It bombs in web server component!
 
  Thanks, it's fixed now and checked in.
 
 
  I have made a comparison in Tortoise SVN by selecting the download
  folder and right clicking but it did not show any changes for the
  Httpsrv.pas!

 I don't know what you are comparing. After an Update your local work
 copy already contains the change. Note that Update does not silently
 overwrite your own local changes, if there where conflicts TortoiseSVN
 prompts you to resolve them. If there are no conflicts changes are
 merged with your local copy, so you do not have to do a full checkout
 to get latest changes.

 The TortoiseSVN log view is the best place to compare versions.
 Right click the root checkout directory and select TortoisSVN | Show Log
 in order to see the history of everything. The last change is on top
 of the list. The bottom listview lists files changed with a single
 check-in,
 just double click a file entry there and TortouseSVN will download
 previous
 version or both and start your favorite differ.

 That also works with single files of your work copy, just right click a
 single file in Windows Explorer and select TortoisSVN | Show Log or
 simply TortoisSVN | Diff with previous version.

 If you made local changes just select TortoisSVN | Check for
 Modifications
 to get a list of all locally changed files or TortoisSVN | Diff for a
 single file.

 --
 Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-25 Thread Arno Garrels
Fastream Technologies wrote:
 Ok, managed the SVN. Now what should I do for an IPv4 ICS
 client/server to upgrade to IPv6? I saw almost no documentation in
 the source. Can applications support both protocols with no
 modification or must one make a separate listening/target IP per v4
 and v6? 

I added some experimental multi-listen stuff.
See OverbyteIcsTcpSrv1IPv6 demo, especially TTcpSrvForm.WMAppStartup
and TTcpSrvForm.WSocketServer1BeforeClientCreate.

It works fine, however its design is not the best so will most
likely change. For instance, a listening socket cannot be closed 
separately without closing all other listening sockets as well,
or if one socket fails to listen in new method TcpMultiListen
the already listening sockets are closed (and an exception
is raised). 

-- 
Arno Garrels

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-25 Thread Fastream Technologies
Hello,

On Thu, Nov 25, 2010 at 5:04 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Ok, managed the SVN. Now what should I do for an IPv4 ICS
  client/server to upgrade to IPv6? I saw almost no documentation in
  the source. Can applications support both protocols with no
  modification or must one make a separate listening/target IP per v4
  and v6?

 I added some experimental multi-listen stuff.
 See OverbyteIcsTcpSrv1IPv6 demo, especially TTcpSrvForm.WMAppStartup
 and TTcpSrvForm.WSocketServer1BeforeClientCreate.

 It works fine, however its design is not the best so will most
 likely change. For instance, a listening socket cannot be closed
 separately without closing all other listening sockets as well,
 or if one socket fails to listen in new method TcpMultiListen
 the already listening sockets are closed (and an exception
 is raised).

 --
 Arno Garrels

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


As you said the below function and the design that is forcing it is not
good. Perhaps we should have Addrv6 property which will be null if Addr (v4)
is filled and vice versa.

procedure TTcpSrvForm.WSocketServer1BeforeClientCreate(Sender: TObject;
  AListenSocketInfo: TListenSocketInfo; var AClientClass:
TWSocketClientClass);
begin
{ Use this event to get info about the listening socket accepted }
{ a connection. Optionally change the client class that will be  }
{ created.   }
if AListenSocketInfo  nil then begin
   { When listening with method TcpMultiListen AListenSocketInfo }
   { is assigned.}
   Display('BeforeClientCreate: Listening socket ' +
   AListenSocketInfo.FAddrStr + '/' +
   IntToStr(AListenSocketInfo.FPortNum));
end
else begin
{ If method Listen was called AListenSocketInfo is unassigned }
Display('BeforeClientCreate: Listening socket ' +
   TWSocketServer(Sender).Addr + '/' +
   IntToStr(TWSocketServer(Sender).PortNum));
end;
end;

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 multiple listening sockets

2010-11-25 Thread Fastream Technologies
Hello,

On Thu, Nov 25, 2010 at 6:31 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
 
  As you said the below function and the design that is forcing it is
  not good. Perhaps we should have Addrv6 property which will be null
  if Addr (v4) is filled and vice versa.

 That's not enough, you need the address and port at least.

 A clean design was to rewrite the TWSocketServer from scratch
 to support multiple listening sockets natively. However that would
 break a lot of user code and was not accepted by Francois already
 two years ago. Anything else will be more or less a hack IMO.

 --
 Arno Garrels
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


I think we can live with a single-IP-version design per component instance
as long as their events can be shared (compatible). For example, let's say
we can have a IPv4 THttpServer and an IPv6 one with the same events with
just a property difference (IPAddrVersion). Since Addr and Port are string,
there would not be a much change for application programmers (like us).

Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 multiple listening sockets

2010-11-25 Thread Arno Garrels
Please learn to quote: 
http://www.netmeister.org/news/learn2quote2.html#ss2.1

Fastream Technologies wrote:
 As you said the below function and the design that is forcing it is
 not good. Perhaps we should have Addrv6 property which will be null
 if Addr (v4) is filled and vice versa.
 
 That's not enough, you need the address and port at least.
 
 A clean design was to rewrite the TWSocketServer from scratch
 to support multiple listening sockets natively. However that would
 break a lot of user code and was not accepted by Francois already
 two years ago. Anything else will be more or less a hack IMO.

 I think we can live with a single-IP-version design per component
 instance as long as their events can be shared (compatible). 

Yes, that's no big problem, only the effort becomes bigger and bigger.
For a HTTP/HTTPS server, IPv4 and Ipv6, you already need four instances
of THttpServer. Anyway do not use the experimental multi-listen hack
in production it might be removed or at least be changed in future 
ICS-IPv6 versions.

-- 
Arno Garrels  



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 multiple listening sockets

2010-11-25 Thread Fastream Technologies
I have an idea. I think the only time we need multiple listening is with
0.0.0.0;::0 since this is for the all unassigned case in IIS. (In IIS you
cannot enter the IP your self now but select from a combo box.) We can add a
special string handler for the all IPv4/6 unassigned and do the second
listener socket creation just for that case in twsocketserver. If the IP is
0.0.0.0 it would not create the second socket and just listen for IPv4 for
backwards compatibility. If the Addr is AllIPv4-6 then we simply create
the second socket. How's this design?

Regards,

SZ

On Thu, Nov 25, 2010 at 8:19 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Please learn to quote:
 http://www.netmeister.org/news/learn2quote2.html#ss2.1

 Fastream Technologies wrote:
  As you said the below function and the design that is forcing it is
  not good. Perhaps we should have Addrv6 property which will be null
  if Addr (v4) is filled and vice versa.
 
  That's not enough, you need the address and port at least.
 
  A clean design was to rewrite the TWSocketServer from scratch
  to support multiple listening sockets natively. However that would
  break a lot of user code and was not accepted by Francois already
  two years ago. Anything else will be more or less a hack IMO.

  I think we can live with a single-IP-version design per component
  instance as long as their events can be shared (compatible).

 Yes, that's no big problem, only the effort becomes bigger and bigger.
 For a HTTP/HTTPS server, IPv4 and Ipv6, you already need four instances
 of THttpServer. Anyway do not use the experimental multi-listen hack
 in production it might be removed or at least be changed in future
 ICS-IPv6 versions.

 --
 Arno Garrels



 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-24 Thread Fastream Technologies
Hi Arno,

On Tue, Nov 23, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Ok, somehow the packages got mixed and the defines were wrong.
  Anyway, can you try to compile the latest IPv6 package with NO_ADV_MT
  defined? It bombs in web server component!

 Thanks, it's fixed now and checked in.


I have made a comparison in Tortoise SVN by selecting the download folder
and right clicking but it did not show any changes for the Httpsrv.pas!

Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-24 Thread Arno Garrels
Fastream Technologies wrote:
 Hi Arno,
 
 On Tue, Nov 23, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de
 wrote: 
 
 Fastream Technologies wrote:
 Ok, somehow the packages got mixed and the defines were wrong.
 Anyway, can you try to compile the latest IPv6 package with
 NO_ADV_MT defined? It bombs in web server component!
 
 Thanks, it's fixed now and checked in.
 
 
 I have made a comparison in Tortoise SVN by selecting the download
 folder and right clicking but it did not show any changes for the
 Httpsrv.pas!

I don't know what you are comparing. After an Update your local work
copy already contains the change. Note that Update does not silently
overwrite your own local changes, if there where conflicts TortoiseSVN
prompts you to resolve them. If there are no conflicts changes are
merged with your local copy, so you do not have to do a full checkout
to get latest changes. 

The TortoiseSVN log view is the best place to compare versions.
Right click the root checkout directory and select TortoisSVN | Show Log
in order to see the history of everything. The last change is on top
of the list. The bottom listview lists files changed with a single check-in,
just double click a file entry there and TortouseSVN will download previous
version or both and start your favorite differ. 

That also works with single files of your work copy, just right click a
single file in Windows Explorer and select TortoisSVN | Show Log or
simply TortoisSVN | Diff with previous version.

If you made local changes just select TortoisSVN | Check for Modifications
to get a list of all locally changed files or TortoisSVN | Diff for a 
single file.

-- 
Arno Garrels

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-24 Thread Fastream Technologies
Arno, Thanks for the detailed explanation.

SZ

On Wed, Nov 24, 2010 at 2:03 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Hi Arno,
 
  On Tue, Nov 23, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de
  wrote:
 
  Fastream Technologies wrote:
  Ok, somehow the packages got mixed and the defines were wrong.
  Anyway, can you try to compile the latest IPv6 package with
  NO_ADV_MT defined? It bombs in web server component!
 
  Thanks, it's fixed now and checked in.
 
 
  I have made a comparison in Tortoise SVN by selecting the download
  folder and right clicking but it did not show any changes for the
  Httpsrv.pas!

 I don't know what you are comparing. After an Update your local work
 copy already contains the change. Note that Update does not silently
 overwrite your own local changes, if there where conflicts TortoiseSVN
 prompts you to resolve them. If there are no conflicts changes are
 merged with your local copy, so you do not have to do a full checkout
 to get latest changes.

 The TortoiseSVN log view is the best place to compare versions.
 Right click the root checkout directory and select TortoisSVN | Show Log
 in order to see the history of everything. The last change is on top
 of the list. The bottom listview lists files changed with a single
 check-in,
 just double click a file entry there and TortouseSVN will download previous
 version or both and start your favorite differ.

 That also works with single files of your work copy, just right click a
 single file in Windows Explorer and select TortoisSVN | Show Log or
 simply TortoisSVN | Diff with previous version.

 If you made local changes just select TortoisSVN | Check for
 Modifications
 to get a list of all locally changed files or TortoisSVN | Diff for a
 single file.

 --
 Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-23 Thread Arno Garrels
Fastream Technologies wrote:
 Ok, somehow the packages got mixed and the defines were wrong.
 Anyway, can you try to compile the latest IPv6 package with NO_ADV_MT
 defined? It bombs in web server component!

Thanks, it's fixed now and checked in.

-- 
Arno Garrels



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Arno Garrels
See subject.

-- 
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Dear Arno,

Here is the first impression with the new IPv6 code. Package compile with
our defines went well. However in the project, it gave the following error
on Winsock2.hpp:

http://www.fastream.com/ics/icsipv6error.png

Hope you can help. Our unit httpmtsrv inherits from Overbyteicshttpsrv.pas.
I do not think it includes the winsock2.pas directly.

Regards,

SZ

On Mon, Nov 22, 2010 at 11:35 AM, Arno Garrels arno.garr...@gmx.de wrote:

 See subject.

 --
 Arno Garrels


 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Also, as I have asked before, can you make:

procedure CheckDelaySetReady;   { 09/26/08 ML }

in httpprot.pas as virtual?

Regards,

SZ

On Mon, Nov 22, 2010 at 1:20 PM, Fastream Technologies
ga...@fastream.comwrote:

 Dear Arno,

 Here is the first impression with the new IPv6 code. Package compile with
 our defines went well. However in the project, it gave the following error
 on Winsock2.hpp:

 http://www.fastream.com/ics/icsipv6error.png

 Hope you can help. Our unit httpmtsrv inherits from Overbyteicshttpsrv.pas.
 I do not think it includes the winsock2.pas directly.

 Regards,

 SZ

 On Mon, Nov 22, 2010 at 11:35 AM, Arno Garrels arno.garr...@gmx.dewrote:

 See subject.

 --
 Arno Garrels


 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be





--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Arno Garrels
Fastream Technologies wrote:
 Also, as I have asked before, can you make:
 
procedure CheckDelaySetReady;   { 09/26/08
 ML } 
 
 in httpprot.pas as virtual?

Done in both trunk and IPv6.

 with our defines went well. However in the project, it gave the
 following error on Winsock2.hpp:
 
 http://www.fastream.com/ics/icsipv6error.png

Is Winsock in uses clause of HttpMTSrv.pas?
If yes, change it to OverbyteIcsWinsock.  

Do not include Winsock.h, Winsock.hpp but 
OverbyteIcsWinsock.hpp.

-- 
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Ok that's passed now with what you suggested. I now get the below AV:

http://www.fastream.com/ics/icsipv6error2.png

This is the first listening web server socket, for the admin interface...

Regards,

SZ

On Mon, Nov 22, 2010 at 2:40 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Arno Garrels wrote:
  Fastream Technologies wrote:
  Also, as I have asked before, can you make:
 
 procedure CheckDelaySetReady;   { 09/26/08
  ML }
 
  in httpprot.pas as virtual?
 
  Done in both trunk and IPv6.
 
  with our defines went well. However in the project, it gave the
  following error on Winsock2.hpp:
 
  http://www.fastream.com/ics/icsipv6error.png
 
  Is Winsock in uses clause of HttpMTSrv.pas?
  If yes, change it to OverbyteIcsWinsock.
 
  Do not include Winsock.h, Winsock.hpp but
  OverbyteIcsWinsock.hpp.

 Or Winsock2.h

 --
 Arno Garrels
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Arno Garrels
Fastream Technologies wrote:
 Ok that's passed now with what you suggested. I now get the below AV:
 
 http://www.fastream.com/ics/icsipv6error2.png
 
 This is the first listening web server socket, for the admin
 interface... 

This call stack makes no sense IMO.
TCustomSocksWSocket.Create calls
inherited Create{$IFDEF VCL}(AOwner){$ENDIF};
which is TCustomWSocket::Create
And there is nothing in TCustomSocksWSocket's constructor
that touched Classes::TList.

New ICS, old question: Are you sure that no old stuff
is linked? Check your paths again.

The C++ Builder webserv demo, for example, builds and 
runs just fine.

-- 
Arno Garrels   
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Hi again Arno,

Here is what I did:

- renamed the old ICS folder to something like ICS IPv4 backup
- checked out the code to a new folder with the old folder's name
- copied the old BCB2010 package's project files over so that I would not
have to re-enter all the defines
- cleared the project files of both the package and the application project

Still no joy! Any other ideas?

Regards,

SZ

On Mon, Nov 22, 2010 at 4:52 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Ok that's passed now with what you suggested. I now get the below AV:
 
  http://www.fastream.com/ics/icsipv6error2.png
 
  This is the first listening web server socket, for the admin
  interface...

 This call stack makes no sense IMO.
 TCustomSocksWSocket.Create calls
 inherited Create{$IFDEF VCL}(AOwner){$ENDIF};
 which is TCustomWSocket::Create
 And there is nothing in TCustomSocksWSocket's constructor
 that touched Classes::TList.

 New ICS, old question: Are you sure that no old stuff
 is linked? Check your paths again.

 The C++ Builder webserv demo, for example, builds and
 runs just fine.

 --
 Arno Garrels
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Arno Garrels
Fastream Technologies wrote:
 Hi again Arno,
 
 Here is what I did:
 
 - renamed the old ICS folder to something like ICS IPv4 backup
 - checked out the code to a new folder with the old folder's name
 - copied the old BCB2010 package's project files over so that I would
 not have to re-enter all the defines
 - cleared the project files of both the package and the application
 project 
 
 Still no joy! Any other ideas?

No, I still think it's a bad build. Rebuild the packages.
Add the ics\delphi\vc32\ directory to project option's debug path,
set a break point where you create the THttpServer object and step into
the various calls to inherited create, there's obviously something
wrong on your side.

Also try to build the C++ Builder demo group project, all demos should
build. Run the webserver and HttpTst demo both should run just fine.

-- 
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Hello,

On Mon, Nov 22, 2010 at 8:02 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Hi again Arno,
 
  Here is what I did:
 
  - renamed the old ICS folder to something like ICS IPv4 backup
  - checked out the code to a new folder with the old folder's name
  - copied the old BCB2010 package's project files over so that I would
  not have to re-enter all the defines
  - cleared the project files of both the package and the application
  project
 
  Still no joy! Any other ideas?

 No, I still think it's a bad build. Rebuild the packages.
 Add the ics\delphi\vc32\ directory to project option's debug path,
 set a break point where you create the THttpServer object and step into
 the various calls to inherited create, there's obviously something
 wrong on your side.

 Also try to build the C++ Builder demo group project, all demos should
 build. Run the webserver and HttpTst demo both should run just fine.

 --
 Arno Garrels
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


I have tried what you said but it still gives read of address .

This is the problematic line:

adminHTTPServer = new THttpServer(NULL);

Maybe you call it with a non-null parameter in your tests? But this should
also work because I need full control over when the instance is destructed!

Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Arno Garrels
Fastream Technologies wrote:
 
 I have tried what you said but it still gives read of address
 . 
 
 This is the problematic line:
 
 adminHTTPServer = new THttpServer(NULL);

I know :)

 
 Maybe you call it with a non-null parameter in your tests? But this
 should also work because I need full control over when the instance
 is destructed!

It has nothing to do with that.

Create a new VCL Forms application, drop a button on the form and
try this (proper includes and defines provided): 

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 THttpServer * httpsrv;
 breakpoint here == httpsrv = new THttpServer(NULL);
 delete httpsrv;
}

(works for me)

Start stepping into (F7) and I bet you'll notice some crazy jump
somewhere :)

-- 
Arno Garrels




--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 branch updated with latest changes from trunk Rev. #631

2010-11-22 Thread Fastream Technologies
Ok, somehow the packages got mixed and the defines were wrong. Anyway, can
you try to compile the latest IPv6 package with NO_ADV_MT defined? It bombs
in web server component!

Regards,

SZ

On Mon, Nov 22, 2010 at 8:36 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
 
  I have tried what you said but it still gives read of address
  .
 
  This is the problematic line:
 
  adminHTTPServer = new THttpServer(NULL);

 I know :)

 
  Maybe you call it with a non-null parameter in your tests? But this
  should also work because I need full control over when the instance
  is destructed!

 It has nothing to do with that.

 Create a new VCL Forms application, drop a button on the form and
 try this (proper includes and defines provided):

 void __fastcall TForm1::Button1Click(TObject *Sender)
 {
  THttpServer * httpsrv;
  breakpoint here == httpsrv = new THttpServer(NULL);
  delete httpsrv;
 }

 (works for me)

 Start stepping into (F7) and I bet you'll notice some crazy jump
 somewhere :)

 --
 Arno Garrels





--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Fastream Technologies
Hello,

I wonder if the tests that were going to be made for IPv6 support is done. I
have time for help conducting them but our ISP does not provide IPv6
addressing.

Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Arno Garrels
Fastream Technologies wrote:
 Hello,
 
 I wonder if the tests that were going to be made for IPv6 support is
 done. I have time for help conducting them but our ISP does not
 provide IPv6 addressing.

1) It would be nice if you test compatibility with standard IPv4.
Does the new source break anything in your existing projects?
Note that there is one known breaking change. Since IPv6 requires Winsock2
API and Delphi's Winsock.pas lacks Winsock2 ICS IPv6 uses its own, incomplete
Winsock.pas. Delphi users have to replace Winsock by OverbyteIcsWinsock
in there uses clauses. 

2) IPv6 in the local network works fine. Since Vista IPv6 is installed 
 by default.

3) If your ISP doesn't provide native IPv6 they probably provide a 6to4 
tunnel which works smoothly.
However with 6to4 your IPv6 address changes whenever your IPv4 address 
changes. The solution is the free SixXS tunnel broker 
http://www.sixxs.net/. They provide you a static IPv6 subnet after one
week membership for free. The easiest way was if your router supports
those services, otherwise you have to install additional software.
My Fritz Box has built-in support for both 6to4 and SixXS.

-- 
Arno Garrels 


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Fastream Technologies
I will try to do the test ASAP, most probably on Tuesday. What is the
equivalent of 127.0.0.1 in IPv6?

Unfortunately we have a 5 years old router which does not support IPv6. The
reason we do not upgrade is because our office is so far from the telco
office that we have no chance of getting a speed faster than 4Mbps which is
what we already have. There are technologies like VDSL available but the
difference in cost is too much.

Regards,

SZ

On Sun, Oct 24, 2010 at 12:45 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Hello,
 
  I wonder if the tests that were going to be made for IPv6 support is
  done. I have time for help conducting them but our ISP does not
  provide IPv6 addressing.

 1) It would be nice if you test compatibility with standard IPv4.
 Does the new source break anything in your existing projects?
 Note that there is one known breaking change. Since IPv6 requires Winsock2
 API and Delphi's Winsock.pas lacks Winsock2 ICS IPv6 uses its own,
 incomplete
 Winsock.pas. Delphi users have to replace Winsock by OverbyteIcsWinsock
 in there uses clauses.

 2) IPv6 in the local network works fine. Since Vista IPv6 is installed
  by default.

 3) If your ISP doesn't provide native IPv6 they probably provide a 6to4
 tunnel which works smoothly.
 However with 6to4 your IPv6 address changes whenever your IPv4 address
 changes. The solution is the free SixXS tunnel broker
 http://www.sixxs.net/. They provide you a static IPv6 subnet after one
 week membership for free. The easiest way was if your router supports
 those services, otherwise you have to install additional software.
 My Fritz Box has built-in support for both 6to4 and SixXS.

 --
 Arno Garrels


 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Arno Garrels
Fastream Technologies wrote:
 I will try to do the test ASAP, most probably on Tuesday. What is the
 equivalent of 127.0.0.1 in IPv6?

Before you start testing IPv6 you should read:
http://en.wikipedia.org/wiki/IPv6

IPv6 localhost = ::1

-- 
Arno Garrels

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Fastream Technologies
Thanks and one last question: What is the IPv6 equivalent of 0.0.0.0 ?

SZ

On Sun, Oct 24, 2010 at 2:07 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  I will try to do the test ASAP, most probably on Tuesday. What is the
  equivalent of 127.0.0.1 in IPv6?

 Before you start testing IPv6 you should read:
 http://en.wikipedia.org/wiki/IPv6

 IPv6 localhost = ::1

 --
 Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 support for ICS web client and server

2010-10-24 Thread Arno Garrels
Fastream Technologies wrote:
 Thanks and one last question: What is the IPv6 equivalent of 0.0.0.0 ?

IPv6 unspezified address = :: or ::0.
Including ::1 they are the short representations, zeros may be omitted.

-- 
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-03 Thread Fastream Technologies
Hello,

We use TStringList quicksort/binary search routine I wrote for
caching--works so well that I can recommend.

Also, has anybody tested the IPv6 with listening/server components?

Best Regards,

SZ

On Wed, Jun 2, 2010 at 10:04 PM, Francois PIETTE
francois.pie...@skynet.bewrote:

 How fast/slow this implementation works with thousands of
 concurrent requests is of course untested. One DNS lookup may
 take one or even multiple seconds in the worst case.


 Shouldn't TWSocket have his own internal cache for DNS lookup ? Or maybe
 instead of more complex TWSocket, maybe a component dedicated to DNS lookup
 could have it. As simple strategy inside TWSocket would then be enough for
 most applications while high load applications could benefit from a caching
 component. This is also, imo, good design to offload a specific task to a
 specific class.

 Of course this could be done in each application.

 AVL tree used in SSL is a good candidate to build a cache system.


 --
 francois.pie...@overbyte.be
 http://www.overbyte.be

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-03 Thread Arno Garrels
Fastream Technologies wrote:
 Hello,
 
 We use TStringList quicksort/binary search routine I wrote for
 caching--works so well that I can recommend.

With many entries all TList-derrived classes are dog-slow 
compared with binary search trees for this purpose!

 
 Also, has anybody tested the IPv6 with listening/server components?

I just commited a few changes. The HTTP client and server should work
now. Please guys, give it a trial and report bugs or provide fixes.

Log: Setter of TCustomWSocket.Addr sets the correct internal socket family
if a host name equals either a valid IPv6 or IPv4 address, overriding
public property SocketFamily. THttpCli added property SocketFamily.

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-03 Thread Fastream Technologies
On Thu, Jun 3, 2010 at 3:43 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Hello,
 
  We use TStringList quicksort/binary search routine I wrote for
  caching--works so well that I can recommend.

 With many entries all TList-derrived classes are dog-slow
 compared with binary search trees for this purpose!

We are using Sorted=true; while adding items and no IndexOf() but our
own routine based on searching in a sorted stringlist.


 
  Also, has anybody tested the IPv6 with listening/server components?

 I just commited a few changes. The HTTP client and server should work
 now. Please guys, give it a trial and report bugs or provide fixes.

 Log: Setter of TCustomWSocket.Addr sets the correct internal socket family
 if a host name equals either a valid IPv6 or IPv4 address, overriding
 public property SocketFamily. THttpCli added property SocketFamily.

What happens if one sets 0.0.0.0 as listening IP? Does it cover the
IPv6 interface as well? I mean, our customers are seeking
simplicity--can they listen on both IPv's with single listening
socket?

Best Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-03 Thread Arno Garrels
Fastream Technologies wrote:

 We use TStringList quicksort/binary search routine I wrote for
 caching--works so well that I can recommend.
 
 With many entries all TList-derrived classes are dog-slow
 compared with binary search trees for this purpose!
 
 We are using Sorted=true; while adding items and no IndexOf() but our
 own routine based on searching in a sorted stringlist.

Yes that is how I compared a custom TObjectList (sorted, with binary 
search) and my AVL TObjectTree. Tested with 1 Million inserts, I 
decided to kill the test application after one or two minutes
while it was still inserting.

Here are the results of a binary search tree running on an old 
PentiumD:

Tree 1Mil inserts: 578 msec
Tree 1 worst case searches: 0 msec
Tree 10x iter over 1Mil: 625 msec
Tree Clear 1Mil: 375 msec

Iterating over trees is of course slower than over TList.  

 What happens if one sets 0.0.0.0 as listening IP? Does it cover the
 IPv6 interface as well? I mean, our customers are seeking
 simplicity--can they listen on both IPv's with single listening
 socket?

No, either IPv6 or IPv4. If you want to listen on multiple 
interfaces or different IP versions you have to create another 
listening socket as with SSL too. Also mapped IPv4 addresses are not 
supported (yet?)

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-03 Thread Francois PIETTE

We use TStringList quicksort/binary search routine I wrote for
caching--works so well that I can recommend.


With many entries all TList-derrived classes are dog-slow
compared with binary search trees for this purpose!


Confirmed. I recently had a project with such issue. The result where 
extremely bad with a simple TList and really super fast with Arno's AVL 
tree.


--
francois.pie...@overbyte.be
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Fastream Technologies
Hello,

Has the IPv6 async DNS resolving issue been resolved? How
many socket/threads?

Best Regards,

SZ

On Sun, May 30, 2010 at 6:26 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Angus Robertson - Magenta Systems Ltd wrote:
  FTP also still not supporting IPv6
 
  FTP needs the EPRT and EPSV commands to support IP6:
 
  http://tools.ietf.org/html/draft-ietf-ftpext-ftp-over-ipv6-01
 
  from 1998, but IP6 has been slow arriving.  The latest version of
  Serv-U supports these IP6 commands.
 
  I did check with my ISP about IP6, they have addresses allocated by
  RIPE but have not yet configured their network to use IP6.  I suspect
  it won't happen without a good commercial reason.

 To use and test IPv6 it is enough to have a IPv6 capable LAN or just
 one PC with IPv6, name resolution works fine with simple host
 files. My provider provides 6to4 tunnels.

 I opened a new svn branch with my current IPv6 changes:
 URL is svn://svn.overbyte.be/ics/branches/icsipv6
 User and password = ics.

 You and anybody else is invited to implement the FTP or other
 still missing parts.

 --
 Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Arno Garrels
Arno Garrels wrote:
 Fastream Technologies wrote:
 Hello,
 
 Has the IPv6 async DNS resolving issue been resolved? How
 many socket/threads?
 
 There is a (hopefully) thread-safe new class which provides
 async lookups. One global object of this class is allocated in
 unit initialization with the maximum number of threads that it
 may spawn currently set to the number of processors.´

How fast/slow this implementation works with thousands of 
concurrent requests is of course untested. One DNS lookup may 
take one or even multiple seconds in the worst case. Since once
the internal call to GetAddrInfo() is fired cancelation of this
request won't free this thread for new task (it has to wait until
GetAddrInfo() returned before it is able to pick another request
from the request queue). 

 
 --
 Arnio Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Fastream Technologies
Hello,

On Wed, Jun 2, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Arno Garrels wrote:
  Fastream Technologies wrote:
  Hello,
 
  Has the IPv6 async DNS resolving issue been resolved? How
  many socket/threads?
 
  There is a (hopefully) thread-safe new class which provides
  async lookups. One global object of this class is allocated in
  unit initialization with the maximum number of threads that it
  may spawn currently set to the number of processors.´

 How fast/slow this implementation works with thousands of
 concurrent requests is of course untested. One DNS lookup may
 take one or even multiple seconds in the worst case. Since once
 the internal call to GetAddrInfo() is fired cancelation of this
 request won't free this thread for new task (it has to wait until
 GetAddrInfo() returned before it is able to pick another request
 from the request queue).

 
  --
  Arnio Garrels


I do not have much free time these days but why don't you use the web stress
tester BCB source at http://www.fastream.com/webstresstester.php which can
open tens of thousands of concurrent connections for testing this new
feature?

Best Regards,

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Fastream Technologies
On Wed, Jun 2, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Arno Garrels wrote:
  Fastream Technologies wrote:
  Hello,
 
  Has the IPv6 async DNS resolving issue been resolved? How
  many socket/threads?
 
  There is a (hopefully) thread-safe new class which provides
  async lookups. One global object of this class is allocated in
  unit initialization with the maximum number of threads that it
  may spawn currently set to the number of processors.´

 How fast/slow this implementation works with thousands of
 concurrent requests is of course untested. One DNS lookup may
 take one or even multiple seconds in the worst case. Since once
 the internal call to GetAddrInfo() is fired cancelation of this
 request won't free this thread for new task (it has to wait until
 GetAddrInfo() returned before it is able to pick another request
 from the request queue).

 
  --
  Arnio Garrels


I think this approach could be ok for our reverse proxy where the number of
target servers is limited and we have built-in DNS cache.

But for content/forward proxy, under heavy load, this would cause a
bottleneck.

SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Arno Garrels
Fastream Technologies wrote:
 On Wed, Jun 2, 2010 at 7:33 PM, Arno Garrels arno.garr...@gmx.de
 wrote: 
 
 Arno Garrels wrote:
 Fastream Technologies wrote:
 Hello,
 
 Has the IPv6 async DNS resolving issue been resolved? How
 many socket/threads?
 
 There is a (hopefully) thread-safe new class which provides
 async lookups. One global object of this class is allocated in
 unit initialization with the maximum number of threads that it
 may spawn currently set to the number of processors.´
 
 How fast/slow this implementation works with thousands of
 concurrent requests is of course untested. One DNS lookup may
 take one or even multiple seconds in the worst case. Since once
 the internal call to GetAddrInfo() is fired cancelation of this
 request won't free this thread for new task (it has to wait until
 GetAddrInfo() returned before it is able to pick another request
 from the request queue).
 
 
 --
 Arnio Garrels
 
 
 I think this approach could be ok for our reverse proxy where the
 number of target servers is limited and we have built-in DNS cache.
 
 But for content/forward proxy, under heavy load, this would cause a
 bottleneck.

Question, how do you think Windows achives async behaviour?
For instance when you call API WSAAsyncGetHostByName().
Without using threads under the hood, it's AFAIK imposible.

--
Arno Garrels 

 
 SZ
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Re: [twsocket] IPv6 implementation details

2010-06-02 Thread Francois PIETTE

How fast/slow this implementation works with thousands of
concurrent requests is of course untested. One DNS lookup may
take one or even multiple seconds in the worst case.


Shouldn't TWSocket have his own internal cache for DNS lookup ? Or maybe 
instead of more complex TWSocket, maybe a component dedicated to DNS lookup 
could have it. As simple strategy inside TWSocket would then be enough for 
most applications while high load applications could benefit from a caching 
component. This is also, imo, good design to offload a specific task to a 
specific class.


Of course this could be done in each application.

AVL tree used in SSL is a good candidate to build a cache system.

--
francois.pie...@overbyte.be
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] Ipv6 Technical Preview Window 2000

2010-05-31 Thread Arno Garrels
Hi,

I would like to test ICS with the IPv6 Technical Preview for Window 2000,
however cannot find a working download link on the internet.
Can anybody help?

--
Arno Garrels


 

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6 Technical Preview Window 2000

2010-05-31 Thread Arno Garrels
Arno Garrels wrote:
 Hi,
 
 I would like to test ICS with the IPv6 Technical Preview for Window
 2000, however cannot find a working download link on the internet.
 Can anybody help?

Someone sent me this link:
http://www.microsoft.com/downloads/details.aspx?FamilyID=27b1e6a6-bbdd-43c9-af57-dae19795a088DisplayLang=en

Thanks a lot!

 
 --
 Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-30 Thread Arno Garrels
Angus Robertson - Magenta Systems Ltd wrote:
 FTP also still not supporting IPv6
 
 FTP needs the EPRT and EPSV commands to support IP6:
 
 http://tools.ietf.org/html/draft-ietf-ftpext-ftp-over-ipv6-01
 
 from 1998, but IP6 has been slow arriving.  The latest version of
 Serv-U supports these IP6 commands.
 
 I did check with my ISP about IP6, they have addresses allocated by
 RIPE but have not yet configured their network to use IP6.  I suspect
 it won't happen without a good commercial reason.

To use and test IPv6 it is enough to have a IPv6 capable LAN or just
one PC with IPv6, name resolution works fine with simple host
files. My provider provides 6to4 tunnels.

I opened a new svn branch with my current IPv6 changes: 
URL is svn://svn.overbyte.be/ics/branches/icsipv6
User and password = ics.

You and anybody else is invited to implement the FTP or other
still missing parts. 

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
Hi,

When new property SocketFamily is set to sfAny method 
DnsLookup may now return a list containing both IPv4 and IPv6
strings. Looks like Windows always returns IPv6 first.
The top item is also copied to string FDnsResult.
Should I change this order?

BTW.: I wrote some helper classes to emulate the 
WSAAsyncGetHostByxx functions.
While I was testing them I got strange AV's upon debugging 
and stepping thru the multi-threaded code. Took me several days
to prove that this is not caused by my code but either a 
debugger bug (my favorite) or some other condition (driver, 
root kit or whatsoever).

I made a very simple test case which triggers the AV on different
hardware and Windows versions in both D7 and D2010 here.
However some German testers were not able to reproduce the issue,
very strange.


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

const
  WM_TEST = WM_USER + 1;

type

  TMyThread = class(TThread)
  protected
FWindowHandle: HWND;
procedure Execute; override;
  public
constructor Create(AHWnd: HWND); reintroduce;
  end;

  TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
  private
procedure WmTest(var Msg: TMessage); message WM_TEST;
  public
{ Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TMyThread }

constructor TMyThread.Create(AHWnd: HWND);
begin
FWindowHandle := AHWnd;
inherited Create(FALSE);
end;

procedure TMyThread.Execute;
var
I : Integer;
begin
I := 0;
while not Terminated do
begin
Sleep(500);
SendMessage(FWindowHandle, WM_TEST, ThreadID, I);
Inc(I);
end;
end;

procedure TForm1.WmTest(var Msg: TMessage);
begin
Memo1.Lines.Add(IntToHex(Msg.WParam, 8) + ' ' + IntToStr(Msg.LParam));
end;

procedure TForm1.Button1Click(Sender: TObject);
var
Thread : TMyThread;
I : Integer;
begin
IsMultiThread := TRUE;
for I := 1 to 4 do // == Set a break point here and repeat pressing F8 
until the AV is raised.  
Thread := TMyThread.Create(Handle);
end;

end. 

   

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Fastream Technologies
Not sure if it is the same issue but with our proxy server code with many
threads, the debugger sometimes gives AV on Wndproc when step run too.

SZ

On Sat, May 29, 2010 at 11:38 AM, Arno Garrels arno.garr...@gmx.de wrote:

 Hi,

 When new property SocketFamily is set to sfAny method
 DnsLookup may now return a list containing both IPv4 and IPv6
 strings. Looks like Windows always returns IPv6 first.
 The top item is also copied to string FDnsResult.
 Should I change this order?

 BTW.: I wrote some helper classes to emulate the
 WSAAsyncGetHostByxx functions.
 While I was testing them I got strange AV's upon debugging
 and stepping thru the multi-threaded code. Took me several days
 to prove that this is not caused by my code but either a
 debugger bug (my favorite) or some other condition (driver,
 root kit or whatsoever).

 I made a very simple test case which triggers the AV on different
 hardware and Windows versions in both D7 and D2010 here.
 However some German testers were not able to reproduce the issue,
 very strange.


 unit Unit1;

 interface

 uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

 const
  WM_TEST = WM_USER + 1;

 type

  TMyThread = class(TThread)
  protected
FWindowHandle: HWND;
procedure Execute; override;
  public
constructor Create(AHWnd: HWND); reintroduce;
  end;

  TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
  private
procedure WmTest(var Msg: TMessage); message WM_TEST;
  public
{ Public-Deklarationen }
  end;

 var
  Form1: TForm1;

 implementation

 {$R *.dfm}

 { TMyThread }

 constructor TMyThread.Create(AHWnd: HWND);
 begin
FWindowHandle := AHWnd;
inherited Create(FALSE);
 end;

 procedure TMyThread.Execute;
 var
I : Integer;
 begin
I := 0;
while not Terminated do
begin
Sleep(500);
SendMessage(FWindowHandle, WM_TEST, ThreadID, I);
Inc(I);
end;
 end;

 procedure TForm1.WmTest(var Msg: TMessage);
 begin
Memo1.Lines.Add(IntToHex(Msg.WParam, 8) + ' ' + IntToStr(Msg.LParam));
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 var
Thread : TMyThread;
I : Integer;
 begin
IsMultiThread := TRUE;
for I := 1 to 4 do // == Set a break point here and repeat pressing F8
 until the AV is raised.
Thread := TMyThread.Create(Handle);
 end;

 end.




--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Francois PIETTE

When new property SocketFamily is set to sfAny method
DnsLookup may now return a list containing both IPv4 and IPv6
strings. Looks like Windows always returns IPv6 first.
The top item is also copied to string FDnsResult.
Should I change this order?


An idea: Give the opportunity for the developer to select the priority. 
Maybe splitting sfAny to two values: one with IPv6 priority and one with 
IPv4 priority. Maybe sfAny should be kept and mapped to Windows own default 
while the two new values could override Windows default. I think the 
component default should be IPv4 to get best backward compatibility.


--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
RTT wrote:
 Is happening here too, but only if I continue with the step over
 debugging (F8) after the 4 thread are created. Never happened while
 they are created. No idea if that's what you want to say with repeat
 pressing F8 until the AV is raised.
 The debugger will keep stepping the WmTest function, until the AV is
 raised. Windows Vista, and happens in both D7 and D2009.
 Usually stops in the thread inc(I) line, but not always.

Thanks for testing, I'm happy that someone else is able to reproduce 
the AV!  Yes, that is exactly what I do/get as well.

--
Arno Garrels 


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Francois PIETTE

I made a very simple test case which triggers the AV on different
hardware and Windows versions in both D7 and D2010 here.
However some German testers were not able to reproduce the issue,
very strange.


I cannot reproduce the issue.
I'm using Vista Ultimate 32 bit with all services packs installed except 
IE8.

I'm using Delphi 14.0.3513.24210 french.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Francois PIETTE

Currently I made one breaking change that IMO cannot be prevented without
tons of workaround code.
That is type change of TCustomWSocket public field/property sin from
TSockAddrIn to TSockAddrIn6. TSockAddrIn6 can be passed to all old
functions by typ casting it to TSockAddrIn and passing the size of 
TSockAddrIn.
However if anybody has an idea how to easily avoid this breaking change 
please

let me know.


Keep the current property as it is and use it for anything related to IPv4.
Create a new property sin6 : TSockAddrIn6 and use if for IPv6.

Anyone recompiling an existing program with IPv4 will have no change to do 
in his code.
Anyone willing to support IPv6 will have to do some changes, including this 
one.


Instead of creating two variables, maybe only create one, the one being the 
largest. Then map the properties sin and sin6 to the same location using 
getter and setter. Propably the variable could be a variant record with both 
types to makes the code clearer because this would remove most typecasts.


--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
Fastream Technologies wrote:
 Maybe it is another 64-bit Windows/debugger API issue? I am using
 Win7 Pro x64 and had been using 64-bit XP and Vista for 4 years...

I do not think it's related to 64-Bit Windows. I tested and got the AV
with Delphi 7 and Delphi 2010 on XP-Pro SP3 (fully patched), PentiumD
DualCore, as well as with Delphi 2010 on Win7 64-Bit, i5 QuadCore.
Tested on real machines. Both have VMware and Delphi 2010 installed.

--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Fastream Technologies
I said so because I had faced a WinXP/Vista x64 issue (BLUE SCREEN) which MS
fixed in Win7. I thought it might be something similar. BTW, did you see the
message I sent to you privately? It's been a while since I heard back from
you to my replies and I am beginning to think that it could be a spam filter
issue on your side.

Regards,

SZ

On Sat, May 29, 2010 at 2:28 PM, Arno Garrels arno.garr...@gmx.de wrote:

 Fastream Technologies wrote:
  Maybe it is another 64-bit Windows/debugger API issue? I am using
  Win7 Pro x64 and had been using 64-bit XP and Vista for 4 years...

 I do not think it's related to 64-Bit Windows. I tested and got the AV
 with Delphi 7 and Delphi 2010 on XP-Pro SP3 (fully patched), PentiumD
 DualCore, as well as with Delphi 2010 on Win7 64-Bit, i5 QuadCore.
 Tested on real machines. Both have VMware and Delphi 2010 installed.

 --
 Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
Fastream Technologies wrote:
 I said so because I had faced a WinXP/Vista x64 issue (BLUE SCREEN)
 which MS fixed in Win7. I thought it might be something similar. BTW,
 did you see the message I sent to you privately? It's been a while
 since I heard back from you to my replies and I am beginning to think
 that it could be a spam filter issue on your side.

Last long weekend I was out of town for a few days and after reading 
your mails I thought you solved the problem yourself.

--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
Fastream Technologies wrote:
 Ok, no problem. BTW, we are very interested in OpenSSL accelerators

It's already included as an experimental feature since a while,
however there was zero feedback from developers owning accelerator 
hardware yet. All you need to test is a system with an accelerator
card, AFAIK Dell offers such boxes from the shelf.

 and IPv6 supports. Of course as much as I can find time, I wanted to
 help you out.

Turned out to be more work than initially planned. Maybe we should 
create a svn branch for it? 
 
--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Francois PIETTE
Turned out to be more work than initially planned. 
Maybe we should create a svn branch for it? 


What makes you think another branch would be useful ?

--
francois.pie...@overbyte.be
http://www.overbyte.be



--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Arno Garrels
Francois PIETTE wrote:
 Turned out to be more work than initially planned.
 Maybe we should create a svn branch for it?
 
 What makes you think another branch would be useful ?

Better testing before it's finally commited to the main 
branch. I did some general cleanup including removal of
all old conditional code. Winsock.pas can no longer be used
so I provide a custom version (v2) in OverbyteIcsWinsock.pas.
That means a semi-breaking change, since instead of including
winsock.pas, projects have to include/use OverbyteIcsWinsock.pas.
I also moved all stuff that is needed to load the libraries 
to OverbyteIcsWinsock.pas. The Interface and Implemaéntation 
section(s) of OverbyteIcsWinsock.pas are .inc files for
cleaner and easier crossplattform support.
I'm now implementing your idea to prevent the type change
of field sin however that also means plenty of ifs and thens
FTP also still not supporting IPv6 and most likely I overlooked
some required changes. Broadcasting is replaced in IPv6 by
Multicasting (I'm not very familiar with this stuff) however
seems to require another API to deal with interfaces.

--
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Francois PIETTE

Turned out to be more work than initially planned.
Maybe we should create a svn branch for it?


What makes you think another branch would be useful ?


Better testing before it's finally commited to the main 
branch. 


OK, go on.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] IPv6 implementation details

2010-05-29 Thread Angus Robertson - Magenta Systems Ltd
 FTP also still not supporting IPv6 

FTP needs the EPRT and EPSV commands to support IP6:

http://tools.ietf.org/html/draft-ietf-ftpext-ftp-over-ipv6-01

from 1998, but IP6 has been slow arriving.  The latest version of Serv-U
supports these IP6 commands.  

I did check with my ISP about IP6, they have addresses allocated by RIPE
but have not yet configured their network to use IP6.  I suspect it won't
happen without a good commercial reason. 

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Paul

Are there any plans for the near future ?

Paul


- Original Message - 
From: Francois Piette francois.pie...@skynet.be

To: ICS support mailing twsocket@elists.org
Sent: Tuesday, July 14, 2009 11:53 AM
Subject: Re: [twsocket] Ipv6



Any plans yet ?


Not yet.
btw: Does OpenSSL support IPv6 ?
--
francois.pie...@overbyte.be
Author of ICS (Internet Component Suite, freeware)
Author of MidWare (Multi-tier framework, freeware)
http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Arno Garrels
Paul wrote:
 Are there any plans for the near future ?

If ICS shall not die very soon it has to be implemented anyway!
I haven't yet got complains, however I agree that it should be 
put on top of the todo list.
IMO, it cannot be done without breaking existing user code.  

--
Arno Garrels

 
 Paul
 
 
 - Original Message -
 From: Francois Piette francois.pie...@skynet.be
 To: ICS support mailing twsocket@elists.org
 Sent: Tuesday, July 14, 2009 11:53 AM
 Subject: Re: [twsocket] Ipv6
 
 
 Any plans yet ?
 
 Not yet.
 btw: Does OpenSSL support IPv6 ?
 --
 francois.pie...@overbyte.be
 Author of ICS (Internet Component Suite, freeware)
 Author of MidWare (Multi-tier framework, freeware)
 http://www.overbyte.be
 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread randy
Hi , i'm using the MultipartHttpDownloader component in my application ,But
i want to know how to be able to download multiple Files

-- 
Many thanks

-

Yours Randy
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Hoby Smith
 Arno said...
 If ICS shall not die very soon it has to be implemented anyway!

Wow!  Scared of that statement!  What do you mean by that?  Is ICS in danger
of going away?

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Francois PIETTE
Hi , i'm using the MultipartHttpDownloader component in my application 
,But

i want to know how to be able to download multiple Files


As with regular HTTP client: use one component per file.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Francois PIETTE

If ICS shall not die very soon it has to be implemented anyway!


Wow!  Scared of that statement!  What do you mean by that?  
Is ICS in danger of going away?


Not at all.

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Arno Garrels
Hoby Smith wrote:
 Arno said...
 If ICS shall not die very soon it has to be implemented anyway!
 
 Wow!  Scared of that statement!  What do you mean by that?  Is ICS in
 danger of going away?

No, not as long as there are people using and supporting it actively.
However users will move to another component suite when they need basic
features not included in ICS. IMO IPv6 will become such a basic feature rather 
soon. Competitors of ICS already support IPv6.

--
Arno Garrels  


 



 
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Paul
I don't think it's very urgent, but the complaint I got from a US customer 
says that it's use is on the way.


Paul


- Original Message - 
From: Arno Garrels arno.garr...@gmx.de

No, not as long as there are people using and supporting it actively.
However users will move to another component suite when they need basic
features not included in ICS. IMO IPv6 will become such a basic feature 
rather soon. Competitors of ICS already support IPv6.


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Piotr Dałek
Hello!

 No, not as long as there are people using and supporting it actively.
 However users will move to another component suite when they need basic
 features not included in ICS. IMO IPv6 will become such a basic feature 
 rather soon. Competitors of ICS already support IPv6.

And IMAP4 : 

-- 
Piotr Dałek
enigmati...@interia.pl

--
Bezpłatne konto? Otwórz tutaj!
 http://link.interia.pl/f225a


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-15 Thread Arno Garrels
Piotr Dałek wrote:
 Hello!
 
 No, not as long as there are people using and supporting it actively.
 However users will move to another component suite when they need
 basic 
 features not included in ICS. IMO IPv6 will become such a basic
 feature rather soon. Competitors of ICS already support IPv6. 
 
 And IMAP4 :

I won't  call IMAP a basic feature but nice to have  anyway :-)

--
Arno Garrels


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] Ipv6

2009-07-14 Thread Paul

Any plans yet ?
I got my first complaint from a customer

Paul

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Ipv6

2009-07-14 Thread Francois Piette
 Any plans yet ?

Not yet.
btw: Does OpenSSL support IPv6 ?
--
francois.pie...@overbyte.be
Author of ICS (Internet Component Suite, freeware)
Author of MidWare (Multi-tier framework, freeware)
http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be