public override async Task ExecuteAsync(CancellationToken cancellationToken)
        {
            if (_connection.IsEncrypted)
            {
                await _channel.SendMessageAsync(GetBadMessage("STARTTLS already complete"), cancellationToken);

                return;
            }

            await _channel.SendMessageAsync(GetOkMessage("STARTTLS completed, begin TLS negotiation"), cancellationToken);

            await _connection.NegotiateTlsAsync();

            await _channel.EndCommandWithoutResponseAsync(this, cancellationToken);
        }
Exemple #2
0
        public override async Task ExecuteAsync(CancellationToken token)
        {
            await _channel.SendReplyAsync(SmtpReplyCode.Greeting, "Ready to start TLS", token);

            await _connection.NegotiateTlsAsync();
        }