Granados.Poderosa.SFTP.SFTPClient.Init C# (CSharp) Метод

Init() публичный Метод

Initialize
Send SSH_FXP_INIT and receive SSH_FXP_VERSION.
Timeout has occured. Invalid status An exception which was thrown while processing the response.
public Init ( ) : void
Результат void
        public void Init()
        {
            WaitReady();
            CheckStatus();

            SFTPPacket packet =
                new SFTPPacket(SFTPPacketType.SSH_FXP_INIT)
                    .WriteInt32(SFTP_VERSION);

            bool result = false;

            _eventHandler.ClearResponseBuffer();
            Transmit(packet);
            _eventHandler.WaitResponse(
                (packetType, dataReader) => {
                    if (packetType == SFTPPacketType.SSH_FXP_VERSION) {
                        int version = dataReader.ReadInt32();
                        Debug.WriteLine("SFTP: SSH_FXP_VERSION => " + version);

                        result = true;   // OK, received SSH_FXP_VERSION

                        while (dataReader.RemainingDataLength > 4) {
                            string extensionText = dataReader.ReadUTF8String();
                            Debug.WriteLine("SFTP: SSH_FXP_VERSION => " + extensionText);
                        }

                        return true;    // processed
                    }

                    return false;   // ignored
                },
                _protocolTimeout
            );

            // sanity check
            if (!Volatile.Read(ref result)) {
                throw new SFTPClientException("Missing SSH_FXP_VERSION");
            }
        }