class Net::SMTP

def mailfrom(from_addr)

+from_addr+ is +String+ or +Net::SMTP::Address+
def mailfrom(from_addr)
  addr = if requires_smtputf8(from_addr) && capable?("SMTPUTF8")
           Address.new(from_addr, "SMTPUTF8")
         else
           Address.new(from_addr)
         end
  getok((["MAIL FROM:<#{addr.address}>"] + addr.parameters).join(' '))
end