08-28-2019, 09:13 PM
I have just now checked in some changes for TIdIOHandlerSocketOpenSSL, more inline with the changes I described earlier rather than the changes you mention above, though.
Are you sure about that? According to RFC 2228, PBSZ "must be preceded by a successful security data exchange", same as CCC (PROT "must be preceded by a successful protection buffer size negotiation"). That implies that none of these commands can be sent until after a "successful security data exchange", which is performed using the ADAT command after an AUTH command, but TIdFTP does not currently support/use ADAT.
I haven't made any changes to TIdFTP yet, I'll have to look into that later. Feel free to open a ticket at https://github.com/IndySockets/Indy/issues so I don't forget about it.
(08-26-2019, 06:40 AM)PeakTibor Wrote: This specific VISA server does not accept the original sequence of commands in "SendDataSettings": SendPBSZ -> SendPROT -> CCC
And I think it may have right. PBSZ and PROT should/could be set before login, CCC can be issued only after login
Are you sure about that? According to RFC 2228, PBSZ "must be preceded by a successful security data exchange", same as CCC (PROT "must be preceded by a successful protection buffer size negotiation"). That implies that none of these commands can be sent until after a "successful security data exchange", which is performed using the ADAT command after an AUTH command, but TIdFTP does not currently support/use ADAT.
I haven't made any changes to TIdFTP yet, I'll have to look into that later. Feel free to open a ticket at https://github.com/IndySockets/Indy/issues so I don't forget about it.