Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 5,861
» Latest member: auroragrace
» Forum threads: 2,139
» Forum posts: 10,407

Full Statistics

Online Users
There are currently 325 online users.
» 2 Member(s) | 321 Guest(s)
Bing, Google, Austinkl, jimmy11

Latest Threads
Cookies with the SameSite...
Forum: IntraWeb General Discussion
Last Post: valmeras
Yesterday, 06:59 PM
» Replies: 0
» Views: 26
303 Redirect and Response...
Forum: IntraWeb General Discussion
Last Post: ALW2019
03-26-2024, 02:30 PM
» Replies: 0
» Views: 66
smmFunctions.pas
Forum: IntraWeb General Discussion
Last Post: Mikael Nilsson
03-26-2024, 10:33 AM
» Replies: 0
» Views: 70
TIWjQDBGrid paging
Forum: IntraWeb General Discussion
Last Post: troberts
03-26-2024, 04:06 AM
» Replies: 0
» Views: 90
iw15.5.10 does not addres...
Forum: IntraWeb General Discussion
Last Post: rudyPos
03-25-2024, 12:09 PM
» Replies: 0
» Views: 125
Problem with cache and 40...
Forum: IntraWeb General Discussion
Last Post: troberts
03-25-2024, 01:54 AM
» Replies: 0
» Views: 97
IWModalWindow from differ...
Forum: IntraWeb General Discussion
Last Post: bjoernb
03-24-2024, 10:52 PM
» Replies: 0
» Views: 110
jQGrid css and js files
Forum: IntraWeb General Discussion
Last Post: medzoom
03-22-2024, 07:06 PM
» Replies: 2
» Views: 2,511
iwSelect list update in a...
Forum: IntraWeb General Discussion
Last Post: joelcc
03-20-2024, 08:07 PM
» Replies: 0
» Views: 138
IntraWeb Certificate Mana...
Forum: IntraWeb General Discussion
Last Post: DavidChiq
03-19-2024, 06:27 PM
» Replies: 1
» Views: 2,083

 
  where is "My Keys"?
Posted by: DelphiGuruSam - 01-17-2024, 08:24 PM - Forum: IntraWeb General Discussion - No Replies

AtZ says I have a Delphi XE2 key and to go to "Product" then "My Keys".  Help! How do I do this?

Print this item

  both HTTP and HTTPS in same IW service app?
Posted by: chiswilson - 01-17-2024, 12:04 AM - Forum: IntraWeb General Discussion - Replies (4)

Hi all-
Quick question, I think the answer is Yes, but I just wanted to confirm...
Can one single IW application (service) support both HTTP and HTTPS ?

(Im using http.sys, not OpenSSL)

Thanks.

Print this item

  Access to priority support - How does it work?
Posted by: wieczy - 01-16-2024, 12:09 PM - Forum: IntraWeb General Discussion - Replies (1)

Hi,

How does Priority Support work? I have the Intraweb Ultimate with 2 years of support. Am I in the right place?

If so: https://www.atozed.com/forums/thread-3725.html


Best regards

wieczy

Print this item

  ExecuteJS and CallbackResponse.AddJavaScriptToExecute
Posted by: RenSword - 01-15-2024, 12:53 AM - Forum: IntraWeb General Discussion - Replies (2)

Is there any difference between ExecuteJS() and CallbackResponse.AddJavaScriptToExecute()?

Print this item

  TIWSSLOptions::SetPortA
Posted by: JuergenS - 01-14-2024, 10:37 AM - Forum: IntraWeb General Discussion - Replies (5)

Edition: IntraWeb Ultimate Edition
IntraWeb Version: 15.5.5
C++Builder: 12

[ilink32 Fehler] Error: Nicht auflösbares externes '__fastcall Iwservercontrollerbase::TIWSSLOptions::SetPortA(const int)' referenziert von ...\WIN32\DEBUG\SERVERCONTROLLER.OBJ
[ilink32 Fehler] Error: Linken kann nicht ausgeführt werden

As of version IW15.5.4, the port property function has been changed in IWServerControllerBase.hpp:
old: __property int Port = {read=FPort, write=FPort, default=0};
new: __property int Port = {read=FPort, write=SetPort, default=0};

Unfortunately, the pragma entry required to redirect the property functions SetPortA()/SetPortW is missing.
(please refer //-- user supplied --)

Print this item

  IdSMTP failed to connect using SSL
Posted by: BosseB - 01-13-2024, 07:55 AM - Forum: Indy General Discussion - Replies (2)

Back in 2018-2019 I wrote a commit emailer for our SVN server using Lazarus/FPC and Indy 10.6.2.
It retrieves the data from SVN and packages it into a message sent to the subscribed developers using a mailserver on my ISP.
I have created a specific email account on the ISP for this purpose and this requires SSL login for sending which is done using the code below.

The mailer has worked flawlessly for all the time since then until mid-December 2023 when the emails stopped coming.
Now I have finally found the logfiles for the mailer and this is what is reported upon each sending:

Code:
20240111 17:13:35.343 Connecting to mailserver
20240111 17:13:36.590 EXCEPTION: In SendSvnMessage = Error connecting with SSL.
error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version

So it seems to be a problem with SSL negotiations here and now I am at a loss as to where I can start finding the reason for this and a solution.

The actual code where the sending is done looks like this:

Code:
constructor TSvnMessage.Create;
begin
  FSvnUsers := TSvnUsers.Create;
  FSubscription := TStringList.Create;
  FSMTP := TIdSMTP.Create(nil);
  FSSLHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  FMailMessage := TIdMessage.Create(nil);
end;

function TSvnMessage.SendSvnMessage: boolean;
var
  sSubject: string;
  i: integer;
begin
  Result := false;
  try
    PrepareMessage;
    if (FMailMessage.Sender.Address = '') and (FMailMessage.From.Address = '') then
    begin
      LogError('No sender! Cannot send email!');
      exit;
    end;
    if FMailMessage.Recipients.Count = 0 then
    begin
      LogError('No recipients! Cannot send email!');
      exit;
    end;
    //Set up the SMTP transfer properties
    FSMTP.Port := FMailPort;
    FSMTP.Host := FMailServer;
    FSMTP.AuthType := satDefault;
    FSMTP.Username := FMailLogin;
    FSMTP.Password := FMailPwd;
    FSMTP.MailAgent := 'SVNMailer';
    if FMailUseSSL then
    begin
      FSMTP.IOHandler := FSSLHandler;
      FSMTP.UseTLS := utUseImplicitTLS;
      FSSLHandler.Port := FMailPort;
    end;
    FSMTP.ConnectTimeout := FMailTimeout;

    //Check message subject for illegal chars
    if Length(FMailMessage.Subject) > 76 then
    begin
      sSubject := FMailMessage.Subject;
      for i := 1 to Length(sSubject) do
      begin
        if Ord(sSubject[i]) > 127 then
          sSubject[i] := '?';
      end;
      FMailMessage.Subject := sSubject;
    end;

    //Now send message
    Log('Connecting to mailserver');
    FSMTP.Connect;
    if FSMTP.Connected then
    begin
      Log('Sending message');
      FSMTP.Send(FMailMessage);
      Log('Send done');
      FSMTP.Disconnect();
      Result := true;
    end;
  except
    on E: Exception do
    begin
      LogException('In SendSvnMessage = ' + E.Message);
    end;
  end;
end;

Since it has worked for these many years there must be some change either in the Windows Server 2016 where it runs or else in the mail server configuration, but where should I start looking?

For instance if the mail server requires a later version of SSL, how can I fix that in my program?

Note:
This is the same problem I was looking for a work-around to and asked here about earlier.
See thread Change report from send email to post to a php handler
I'd rather have the modification done in the existing mailer than going that route, though...

Print this item

  TIdHTTPServer with SChannel?
Posted by: cpstevenc - 01-13-2024, 06:41 AM - Forum: Indy General Discussion - Replies (12)

Using TIdHTTPServer with Delphi 11.3

I need to switch away from OpenSSL ( long story )

For client programs I use @ Delphi/Indy.SChannel/lib/Execute.IdSSLSChannel.pas at master · tothpaul/Delphi (github.com)

Which works well.

But there isn't A TidServerIoHandler version.

So pondering anything out there to deal with this?

Print this item

  idFTP with Secure Channel ?
Posted by: cpstevenc - 01-12-2024, 10:32 PM - Forum: Indy General Discussion - Replies (1)

I need to use Secure Channel.

I can NOT use OpenSSL ( long story, but 100% can not be openSSL based )

So I use Delphi/Indy.SChannel/lib at master · tothpaul/Delphi (github.com)

Which has worked well for tIDHttp and such.. 

Included here is a FileZilla log of what I see when using it to connect.

While it uses TLS 1.3 here, TLS 1.2 is allowed also. Just don't see anyway in FileZilla to force 1.2... which really i don't think matters here, as it would be SChannel object doing that work?

This is a program that just connects to a few servers and doesn't really need to know or care about every single conneciton type under the sun that could exist.

But I am failing to get far.

Using Delphi 11.3 with Indy that comes installed along with SChannel object.

I have zero say / control of the server.

And to mention again, OpenSSL is NOT an option. 

Problem could be in TIdSSLIOHandlerSocketSChannel possibly?

If it is, ill have to switch us sadly to another FTP component that can work with these servers and not be OpenSSL dependent.

Would be sad, as we've been using TIDFTP for 20 years or more now.


But I know I have to be missing some stuff here. But google searching and ChatGTP keeps getting me into unsable states also, so last resort was here.

Source Snippet , I get to list and it fails.
In the end I need to upload a file and download a file.

Code:
  IdFTP1 := tidftp.Create(nil);
  ssl := TIdSSLIOHandlerSocketSChannel.Create(nil);
  ssl.ReuseSocket := rsTrue; // <--- just added this recently , not sure need this at all, doesnt change anything

  IdFTP1.OnStatus := FTPStatus;
  IdFTP1.OnTLSNotAvailable := TLSNotAvailable;
  IdFTP1.OnTLSHandShakeFailed := TLSHandShakeFailed;
  IdFTP1.OnTLSNegCmdFailed := TLSNegCmdFailed;

  IdFTP1.IOHandler := ssl;
  IdFTP1.UseTLS := utUseExplicitTLS;
  IdFTP1.Passive := True;
  
  IdFTP1.Host := 'sever.com';
  IdFTP1.Username := 'user';
  IdFTP1.Password := 'pass;
  IdFTP1.Connect;

  if IdFTP1.SupportsTLS then
  begin
    Memo1.lines.add('TLS IS SUPPORTED');
    idftp1.DataPortProtection := ftpdpsPrivate;
  end
  else
    Memo1.lines.add('TLS IS NOT SUPPORTED');

  IdFTP1.list;  /// <--- generates error "session reuse required"
Code:
Trace: CRealControlSocket::DoClose(66)
Trace: CControlSocket::DoClose(66)
Trace: CFtpControlSocket::ResetOperation(66)
Trace: CControlSocket::ResetOperation(66)
Trace: CFileZillaEnginePrivate::ResetOperation(66)
Trace: CRealControlSocket::DoClose(66)
Trace: CControlSocket::DoClose(66)
Trace: CFtpControlSocket::ResetOperation(66)
Trace: CControlSocket::ResetOperation(66)
Trace: CFileZillaEnginePrivate::ResetOperation(66)
Trace: CControlSocket::DoClose(66)
Trace: CControlSocket::ResetOperation(66)
Trace: CFileZillaEnginePrivate::ResetOperation(66)
Trace: CFileZillaEnginePrivate::ResetOperation(0)
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 0
Status: Resolving address of some-ftp-server.com
Status: Connecting to xxx.yyy.zzz.151:21...
Status: Connection established, waiting for welcome message...
Trace: CFtpControlSocket::OnReceive()
Response: 220 (vsFTPd 3.0.5)
Trace: CFtpLogonOpData::ParseResponse() in state 1
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 2
Command: AUTH TLS
Trace: CFtpControlSocket::OnReceive()
Response: 234 Proceed with negotiation.
Trace: CFtpLogonOpData::ParseResponse() in state 2
Status: Initializing TLS...
Trace: tls_layer_impl::client_handshake()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshakep: About to send CLIENT HELLO
Trace: TLS handshakep: Sent CLIENT HELLO
Trace: tls_layer_impl::on_send()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshakep: Received HELLO RETRY REQUEST
Trace: TLS handshakep: Processed HELLO RETRY REQUEST
Trace: TLS handshakep: About to send CLIENT HELLO
Trace: TLS handshakep: Sent CLIENT HELLO
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshakep: Received SERVER HELLO
Trace: TLS handshakep: Processed SERVER HELLO
Trace: TLS handshakep: Received ENCRYPTED EXTENSIONS
Trace: TLS handshakep: Processed ENCRYPTED EXTENSIONS
Trace: TLS handshakep: Received CERTIFICATE REQUEST
Trace: TLS handshakep: Processed CERTIFICATE REQUEST
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: tls_layer_impl::on_read()
Trace: tls_layer_impl::continue_handshake()
Trace: TLS handshakep: Received CERTIFICATE
Trace: TLS handshakep: Processed CERTIFICATE
Trace: TLS handshakep: Received CERTIFICATE VERIFY
Trace: TLS handshakep: Processed CERTIFICATE VERIFY
Trace: TLS handshakep: Received FINISHED
Trace: TLS handshakep: Processed FINISHED
Trace: TLS handshakep: About to send CERTIFICATE
Trace: TLS handshakep: Sent CERTIFICATE
Trace: TLS handshakep: About to send FINISHED
Trace: TLS handshakep: Sent FINISHED
Trace: TLS Handshake successful
Trace: Protocol: TLS1.3, Key exchange: ECDHE-SECP256R1-RSA-PSS-RSAE-SHA384, Cipher: AES-256-GCM, MAC: AEAD, ALPN: ftp
Trace: tls_layer_impl::verify_certificate()
Trace: System trust store decision: true
Trace: Sending certificate_verification_event
Trace: CFtpControlSocket::SetAsyncRequestReply
Trace: set_verification_result(true)
Status: TLS connection established.
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 6
Command: USER <someusername>
Trace: CFtpControlSocket::OnReceive()
Trace: TLS handshakep: Received NEW SESSION TICKET
Trace: TLS handshakep: Processed NEW SESSION TICKET
Trace: gnutls_record_recv returned spurious EAGAIN
Trace: TLS handshakep: Received NEW SESSION TICKET
Trace: TLS handshakep: Processed NEW SESSION TICKET
Trace: gnutls_record_recv returned spurious EAGAIN
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 331 Please specify the password.
Trace: CFtpLogonOpData::ParseResponse() in state 6
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 6
Command: PASS *****
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 230 Login successful.
Trace: CFtpLogonOpData::ParseResponse() in state 6
Status: Server does not support non-ASCII characters.
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 11
Command: PBSZ 0
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 200 PBSZ set to 0.
Trace: CFtpLogonOpData::ParseResponse() in state 11
Trace: CControlSocket::SendNextCommand()
Trace: CFtpLogonOpData::Send() in state 12
Command: PROT P
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 200 PROT now Private.
Trace: CFtpLogonOpData::ParseResponse() in state 12
Status: Logged in
Trace: Measured latency of 7 ms
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpLogonOpData::Reset(0) in state 15
Trace: CFileZillaEnginePrivate::ResetOperation(0)
Trace: CControlSocket::SendNextCommand()
Trace: CFtpListOpData::Send() in state 0
Status: Retrieving directory listing...
Trace: CFtpChangeDirOpData::Send() in state 0
Trace: CFtpChangeDirOpData::Send() in state 1
Command: PWD
Trace: tls_layer_impl::on_read()
Trace: CFtpControlSocket::OnReceive()
Response: 257 "/upload" is the current directory
Trace: CFtpChangeDirOpData::ParseResponse() in state 1
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpChangeDirOpData::Reset(0) in state 1
Trace: CFtpListOpData::SubcommandResult(0) in state 1
Trace: CControlSocket::SendNextCommand()
Trace: CFtpListOpData::Send() in state 2
Trace: CFtpControlSocket::ResetOperation(0)
Trace: CControlSocket::ResetOperation(0)
Trace: CFtpListOpData::Reset(0) in state 2
Status: Directory listing of "/upload" successful
Trace: CFileZillaEnginePrivate::ResetOperation(0)

Print this item

  TIWjQDBGrid on IWBSModal windows
Posted by: Comograma - 01-11-2024, 04:55 PM - Forum: IntraWeb General Discussion - Replies (1)

I have several grids using TIWjQDBGrid component that shows data on a IWBSmodal window.
After TIWjQDBGrid was changed to use latest version of jQuery UI, the navigation buttons do not appear, are not showed.

I have a table with 50 records, with several pages, but the buttons aren't showed. They are there, because if I go with the mouse pointer and search for them in the place where they should be, I have a glance of them, but they are too small.

Also I always have the problem that I can only show the data on the grid, using a IWTimer to do a grid refresh and even so, I need two grid refreshs, one on then IWTimer1AsyncTimer event and another on the IWFrameRegionAsyncShow (of IWBSMoldal). If I remove one of them, the data is not showed.
What am I doing wrong? What am I missing? Maybe the files that I must download for this component to work properly, because I don't have RenderCDNFiles enabled.
If so, which files do I need and from where can I download them?

Also, how can I set the number of records that are showed by page?

I attach a simple test case, for maybe Alexandre or anyone could help.

Thanks



Attached Files
.zip   jQDBGrid_test.zip (Size: 212.82 KB / Downloads: 2)
Print this item

  IW 15.5.5 PerformAfterAsyncProcessing(); formClass is not defined
Posted by: ebob42 - 01-11-2024, 08:53 AM - Forum: IntraWeb General Discussion - Replies (7)

With IntraWeb 15.5.4 (and .5) for an ISAPI.DLL we sometimes get a JavaScript console error (in FireFox F12) that says:

Error in processAjaxExecute when evaluating: PerformAfterAsyncProcessing(); formClass is not defined

The error can be trace to the IWBase_xxxx.js file. 

This does not happen with IntraWeb 15.4.2. Any idea? We haven't changed anything else.

Note that it looks like everything on the page itself is still working, but I want to ensure everything is fine before we deploy this version.

Thanks in advance!

Groetjes, Bob Swart

Print this item