Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-2067

Mail Component: Character "|" in recipient addresses causes failure

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 1.6.1, 2.0.0
    • 1.6.2, 2.1.0
    • camel-mail
    • None

    Description

      It looks like there is minor bug in regex used in MailBinding.java, it causes "|" to act as delimiter, splitting email address into 2 parts.

      For ex: Using email address as - first|last@test.com causes it to split into two parts:
      1) first
      2) last@test.com

      "|" is acceptable character in email as per wikipedia http://en.wikipedia.org/wiki/Email_address. I did not bother to read RFC specification.

      Here is snippet of code causing issue:

      private static void appendRecipientToMimeMessage(MimeMessage mimeMessage, String type, String recipient)
      throws MessagingException {

      // we support that multi recipient can be given as a string seperated by comma or semi colon
      String[] lines = recipient.split("[,|;]");
      for (String line : lines) {

      Regex above should either be "[,;]" or ";|,"

      Also, having email addresses separate out by , or ; seems to be issue as it can be part of name. ex: "firstName, I like comma <first.last@test.com>" is valid. Above code will still cause failure for such messages. Can camel support addresses as List/Array rather than comma delimited string?

      See Forum thread: http://www.nabble.com/Camel-Mail-Component%3A-%22|%22-in-email-causes-message-to-fail-td25883099.html

      Attachments

        Activity

          People

            davsclaus Claus Ibsen
            tide08 slad
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: