public void ExtractEmailAddress_Extracts_from_MAIL_command()
        {
            var cmdText          = "MAIL from: <*****@*****.**>";
            var extractedAddress = SmtpUtilities.ExtractEmailAddress(cmdText);

            Assert.AreEqual("*****@*****.**", extractedAddress);
        }
        public void ExtractEmailAddress_Returns_null_for_invalid_address()
        {
            var cmdText          = "RCPT TO: <*****@*****.**"; // Missing >
            var extractedAddress = SmtpUtilities.ExtractEmailAddress(cmdText);

            Assert.Null(extractedAddress);
        }
        public void ExtractEmailAddress_Extracts_from_RCPT_command()
        {
            var cmdText          = "RCPT TO: <*****@*****.**>";
            var extractedAddress = SmtpUtilities.ExtractEmailAddress(cmdText);

            Assert.AreEqual("*****@*****.**", extractedAddress);
        }
        public override void MessageReceived(ClientMessage clientMessage)
        {
            base.MessageReceived(clientMessage);

            _client.Message.Recipients.Add(SmtpUtilities.ExtractEmailAddress(clientMessage.MessageText));

            _messager.SendMessage(_client, new OutboundMessageOK());

            _client.ChangeState(new AwaitingDataCommandState(_client, _messager, _mimeParser));
        }
Exemple #5
0
        public override void MessageReceived(ClientMessage clientMessage)
        {
            base.MessageReceived(clientMessage);

            var message = SmtpUtilities.ExtractAuthLogin(clientMessage.MessageText);

            _client.Group = Encoding.UTF8.GetString(Convert.FromBase64String(message));
            _messager.SendMessage(_client, new OutboundMessageAuthPassword());

            _client.ChangeState(new AwaitingAuthPasswordState(_client, _messager, _mimeParser));
        }
Exemple #6
0
        public override void MessageReceived(ClientMessage clientMessage)
        {
            base.MessageReceived(clientMessage);

            var sender = SmtpUtilities.ExtractEmailAddress(clientMessage.MessageText);

            _client.Message = new EmailMessage
            {
                Sender = sender,
                Group  = _client.Group
            };

            _messager.SendMessage(_client, new OutboundMessageOK());

            _client.ChangeState(new AwaitingRcptCommandState(_client, _messager, _mimeParser));
        }