Jump to content

Fr0sT.Brutal

Members
  • Content Count

    2268
  • Joined

  • Last visited

  • Days Won

    46

Posts posted by Fr0sT.Brutal


  1. I have latest SVN version.

    First of all, `USE_SSL` is uncommented by default in defs.inc so a user has to edit defs file otherwise he can't control this option.

    Second, without `USE_SSL` ICS packages couldn't be built as following units have incorrect defines sections:
     

      OverbyteIcsSslX509Utils in '..\Source\OverbyteIcsSslX509Utils.pas',
      OverbyteIcsLibeayEx in '..\Source\OverbyteIcsLibeayEx.pas',
      OverbyteIcsProxy in '..\Source\OverbyteIcsProxy.pas',
      OverbyteIcsSslJose in '..\Source\OverbyteIcsSslJose.pas',
      OverbyteIcsSslHttpRest in '..\Source\OverbyteIcsSslHttpRest.pas',
      OverbyteIcsSslX509Certs in '..\Source\OverbyteIcsSslX509Certs.pas',
      OverbyteIcsIpStreamLog in '..\Source\OverbyteIcsIpStreamLog.pas',
      OverbyteIcsMailQueue in '..\Source\OverbyteIcsMailQueue.pas',
      OverbyteIcsHttpMulti in '..\Source\OverbyteIcsHttpMulti.pas',
      OverbyteIcsFtpMulti in '..\Source\OverbyteIcsFtpMulti.pas',

    Third, unit `OverbyteIcsHttpAppServer` can't be built as well as it uses `ClientCnx.HostTag` that is unavailable without SSL

    Fourth, `TSslWSocketClient` has `TriggerSslAlpnSelect` overridden method that is not virtual in base `TWSocketClient` so compiler produces build failure.


  2. Francois, of course this will do the trick but this means client code must meet some requirements which doesn't seem reliable to me.

    Angus, well, have exceptions raised and shown could sound bad but it's really much better than have them swallowed silently IMHO. Unawareness of errors could cause mysterious AVs and other non-relative errors in random places. And all systems that claim to be robust should have bg exceptions handler already ¯\_(ツ)_/¯


  3. Hi all,

    spent some time just now on investigating a weird bug, it happened to be a memory AV that wasn't reported or caught by my exception handlers. Finally I came to see TCustomWSocket.ASyncReceive which appeared to just silently swallow any exceptions that happen in TriggerDataAvailable. I suppose it should have HandleBackGroundException(E) shouldn't it?

     

    Ver.: 8.58

    File: OverbyteIcsWSocket.pas

    Line: 8427

×