ruby / net-smtp

This library provides functionality to send internet mail via SMTP, the Simple Mail Transfer Protocol.
Other
44 stars 30 forks source link

Support parameters for MAIL FROM and RCPT TO #18

Closed c960657 closed 2 years ago

c960657 commented 3 years ago

In Net::SMTP, add support for parameters for MAIL FROM and RCPT TO, such as SMTPUTF8 and REQUIRETLS.

I suggest extending Net::SMTP#mailfrom and Net::SMTP#rcpto so they accept an additional optional Array or Hash of parameters.

For Net::SMTP#send_message and Net::SMTP#open_message_stream, I suggest that in addition to a String email address (or arrays of Strings), these methods should accept a pair (or arrays of pairs) of [addr, params], where addr is the String email address, and params is an Array or Hash of parameters.

In order for the parameters to be useful, we should expose the capabilities reported by EHLO, so capable? should be made public.

tmtm commented 2 years ago

Thank you. But this code doesn't work properly.

For example:

Net::SMTP.start("127.0.0.1"){|m| m.send_message("test", "sender", ["rcpt", ["foo=bar"]])}

It treats that foo=bar as the recipient.

550 5.1.1 <foo=bar>: Recipient address rejected: User unknown in local recipient table (Net::SMTPFatalError)
c960657 commented 2 years ago

Implemented in #34.