-
Content Count
1881 -
Joined
-
Last visited
-
Days Won
33
Everything posted by Angus Robertson
-
Delphi 12 Install file is missing in icsv9w (snapshot from today)
Angus Robertson replied to PeterPanettone's topic in ICS - Internet Component Suite
ICS V9.1 has major structural changes, hundreds of files are disappearing. You should read the svn log in the zip for full details. The release is almost finished and the readme will be done then. The relevant SVN comment: If you are using Delphi 10.4 or later, all existing version specific install groups and packages have gone, since that version of Delphi added a new package $auto suffix allowing the same packages to be used for future Delphi versions. So uninstall all ICS packages, and use one of the new install groups, IcsInstallFmx, IcsInstallVcl, IcsInstallVclFmx or CBIcsInstallVclFmx. These use packages IcsCommonNewRun/Design, IcsVclNewRun/Design and IcsFmxNewRun/Design, and build with the compiler version instead of a Delphi version, i.e. IcsCommonNewRun290.bpl. Angus -
FYI - Several Embarcadero services are currently unavailable
Angus Robertson replied to Keesver's topic in General Help
Because you installed from an ISO image or before the servers went down, GetIt servers provide much of the platform installation, Delphi, C++. etc. Had the same problem myself. Angus -
FYI - Several Embarcadero services are currently unavailable
Angus Robertson replied to Keesver's topic in General Help
https://www.theregister.com/2024/01/29/japan_government_floppy_disks/ https://www.floppydisk.com/ has bought up large stocks of floppies for those really in need. I used to carry boxes of 8in and 5in floppies around the world. Angus -
No exception handling with server crash
Angus Robertson posted a topic in ICS - Internet Component Suite
I've been using an ICS FTP server on several of my servers for 15 years or so, compiled using Delphi 2007, although the server component is compatible with all compilers. I'm now trying to convert more of my applications to D11. But when built with D11, the FTP server application crashes with a Windows heap corruption exception upon completion of any SSL FTP session, irrespective of what commands were processed during the session. The crash only happens when the application uses OpenSSL DLLs, win32 or Win64, if I build it with YuOpenSSL which links the C code into the app, it does not fail. Despite all my error handling efforts including Madexcept, the application is unable to catch the error, just got lots of Windows Error Reporting and Application Error events. The application itself logs activity, but the last thing logged is the FTP QUIT command, the application crashes before the log writes anything more to disk. What is strange, this crash only happens on server operating systems, specifically Windows Server 2012 and 2022, and only when accessing the server from another computer, not locally. The same problem has been reproduced in two different server applications, running interactively or as a Windows service. The SSL code is well tested and widely used, it's strange the crash only happens on Windows servers in such rare conditions, and that Madexcept can not catch the error, although it is not reported as being in the DLL. Faulting application name: magfserver.exe, version: 2.0.0.7, time stamp: 0x62f69268 Faulting module name: ntdll.dll, version: 10.0.20348.803, time stamp: 0xbee6f04c Exception code: 0xc0000374 Fault offset: 0x00000000001044a9 Faulting process ID: 0xe00 Faulting application start time: 0x01d8ae7494fc7fe2 Faulting application path: C:\magenta\fileserver\magfserver.exe Faulting module path: C:\Windows\SYSTEM32\ntdll.dll Any thoughts on why an application can fail in such rare but very specific circumstances? Angus -
No exception handling with server crash
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
I maintain and use DDService, but not Eurekalog. I've been using madExecept for many years, but only for logging errors, none of the restart stuff or emails. Strangely, my main web server has crashed twice during the last two nights, restarted within a few seconds, not happened since November and that was development bugs in ICS. Error was C0000005 buffer overrun. Using YUOpenSSL. But it could be hackers trying to exploit several low priority exploits in OpenSSL due to be fixed this week. Angus -
No exception handling with server crash
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
Thanks, I'll look at Application Recovery and Restart, if it applies to Windows Services. Mine are all set to restart if the application stops, and my services go to a lot of trouble to try and save logs and terminate cleanly on any unexpected errors, including emailing me, although I've delayed that now until the service restarts, since corruption sometimes meant the service locked solid instead of stopping and restarting meaning manual intervention. Keep meaning to write a second monitoring application, but these problems are so rare I never get around to it. Angus -
No exception handling with server crash
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
To be honest, I've not really thought about this problem in a long time, my original comment was about the FTP server, but I transfer thousands of files daily to and from my servers, so it's not an issue that needs much of my time. I do get a web server crash maybe once every couple of months, but I also get continual attacks on those servers, there are usually 100 or more IPs blocked for attacks. Sometimes they can be so heavy that even the firewall gives up, had to replace that. So hard to say if the problems are Delphi or OpenSSL related. All my servers have heavy logging, but only flushed to disk every few seconds, so usually lost during a crash. These are live, not experimental servers, if they stop my phone rings within a few minutes. Angus -
No exception handling with server crash
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
I've not seen the heap corruption error for a long time, but the four ICS servers applications (web, rest, ftp, proxy) installed on my public servers are all built with YuOpenSSL Win64. All my servers are single thread, although some FTP commands use a thread for lengthy commands. My Windows Server 2018 in particular has one Win64 server that won't start with the OpenSSL DLLs, yet other servers work, and it works on Server 2022, but I've not looked at that for 18 months since YuOpenSSL works fine. There are major OpenSSL changes in V9.1 that are almost ready for release, once that is out I'll do some more testing with the OpenSSL DLLs. And long term I do plan a new threaded web server, to allow more than one CPU to be used. Angus -
FYI - Several Embarcadero services are currently unavailable
Angus Robertson replied to Keesver's topic in General Help
I always install Delphi from ISOs, I have DVDs and CDs in a box going back to Delphi 1. The version I need today does not have an ISO... Angus -
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
Sorry, I think this topic should now be closed. He is going around in circles installing random packages not designed for his compiler, then wasting our time repeatedly asking why they don't work. And ignoring all our efforts to install ICS properly. He needs professional help, but this is not the correct place. I will no longer be responding. Angus -
FYI - Several Embarcadero services are currently unavailable
Angus Robertson replied to Keesver's topic in General Help
This may be a silly question, but did any Embarcadero.com servers ever come back? Two weeks ago... Trying to install a new version, the online installer complains get-it-olympus.embarcadero.com timeout. Angus -
TSslHttpCli Request aborted on timeout in thread
Angus Robertson replied to Mark Lobanov's topic in ICS - Internet Component Suite
Sorry, insufficient information to make any real comment for the errors. You need proper logging to see when you are making requests and when those responses arrive, which will help explain what is wrong. This is all much easier using the TSslHttpRest component that removes over half your code, and includes logging. You should try accessing the server using the OverbyteIcsHttpRestTst sample and see if that works better. Angus -
Another ICS user has already tried to do that with ICS V9, he sent me the modified WSocket unit but not the EpollTypes and EpollAPI units so I can not add it ICS V9. V10 does not use it. Angus
-
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
The OverByteIcsDXERun package built OK, but a post build command failed, probably because you have not extracted the ICS files into our directory structure, as required. Building OverbyteIcsPingTst.dpr says Success, so why post it? We don't need minute by minute progress on your development attempts. This is not a teaching forum. If you only want to run the samples, they are all available pre-built from https://wiki.overbyte.eu/wiki/index.php/ICS_Samples Angus -
ICS V9.0/V9.1 (soon) should support MacOS, but do not support Linux. There are some conditionals to make ICS ready for Linux and Android, and packages for both, I built them yesterday, will be in SVN later this week, but these are only to allow future Linux compatibility. ICS V10 will include full support for Linux, a very early version is at https://svn.overbyte.be/svn/icsv10/ but only has a couple of simple socket samples, it is Delphi 10.4 and later only. But there are hundreds of existing units that need converting to V10, which I plan to do later this year. Angus
-
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
Delphi XE is totally different to Delphi 7, the former is a unicode compiler, the latter is ANSI only thus the errors you reported. XE2 is also different since it supports FMX and MacOS. Until you have the packages in DXeInstall.groupproj installed, I'm not looking at any logs, since nothing is expected to work. If you don't have DXeInstall.groupproj , you need to the proper version of V9.0 as has been explained before. Angus -
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
I thought you were trying to build a ping sample on Delphi XE or maybe Delphi 7. Now you are talking about installing a Delphi 2007 package, using rad studio 8.0 according to the command line, which I think is XE. Why??? You should be installing the XE packages using DXeInstall.groupproj as explained in readme9. Angus -
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
Please read my previous message again. Do not attach screen shots and copies of our files to these messages. Even your text file named errors has no error information, just more source code. If you want support, you need to report the actual compiler errors, not just send copies of code I wrote back to us. Angus -
[Question/Feature] SSL/TLS fallback using magic bytes
Angus Robertson replied to FearDC's topic in ICS - Internet Component Suite
I get massive logs from so called internet research companies probing my servers, I have about 40 public IP4s in three subnets and any servers listening are attacked daily, the firewalls try to restrict how many ports and IPs can be accessed, but all public servers suffer. ICS has a TIcsBlackList component that most of my servers use, any HTTP request by IP address is immediately blocked for 24 hours and new connections closed, well known IP ranges are permanently blocked, etc. So checking for non-SSL connections on SSL ports would be a useful addition. I'll experiment adding it to TSslSocketServer. Angus -
ICS V9.0 - How to use it with Delphi 7 and Delphi XE Start without errors
Angus Robertson replied to PavelOu's topic in ICS - Internet Component Suite
If ICS is installed according to the instructions in readme9, the samples should compile. With Delphi 7, you use dpk not dproj. Beware De;phi 7 is no longer supported, but should still work, Delphi XE is also very old and has not been tested for many years since my license key expired and new keys are unavailable. Exactly what error is being returned by which sample? Please copy the textual error from the compiler, no attached files or screen shots. Angus -
TWSocketServer stop accepting connections
Angus Robertson replied to Eric Fleming Bonilha's topic in ICS - Internet Component Suite
I can read your messages, but you have still not asked anything about ICS, so this will be my last message here. I've never heard of PPPoW so won't be reading your other message. It is nothing to do with Delphi or ICS. ICS has never used github. Angus -
TWSocketServer stop accepting connections
Angus Robertson replied to Eric Fleming Bonilha's topic in ICS - Internet Component Suite
Sorry, we rarely read files, unless the message gives information about your actual problems about ICS, then we might ask for sample code to reproduce a specific problem or logs. We still have no idea what questions you are asking here. Angus -
USING ICS V9 on Delphi 12 on MacOS -- FREEZING
Angus Robertson replied to BytePlayer's topic in ICS - Internet Component Suite
The developers working on ICS do not have any Mac hardware, therefore we can not test if it works. Previous ICS versions have been known to work, and we have not deliberately broken MacOS support, but changes may have been introduced that have broken that support. We do test Windows FMX, and I added new FMX samples last year to test new components. You should start with the samples in the platform folder. Angus -
ICS has an old experimental Linux package that used to build without errors. I created a new Linux package, but this gives dozens of "Previous declaration was not marked with the 'overload' directive" errors. Is there a compiler directive or something I've missed for the new package? Ditto the Android package. Angus
-
Overload directive and Posix
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
This problem is with the new library packages I produced for ICS v9, not v10, to allow fixing Posix bugs in ICS v9. Specifically using Lib suffix: $(Auto) to avoid compiler specific packages. I fixed several Android bugs with the older library, but can no longer build Android or Linux with the new library. So IcsAndroidD110.dproj was OK, IcsAndroid.dproj gives the overload error. Both are in the SVN, the newer one is not yet zipped, pending a lot of other package changes. Angus