Update EnvelopeFromFormat documentation in msg.go

Expanded the documentation for the EnvelopeFromFormat method to clarify its purpose, usage, and compliance with RFC 5322. Added details on how the envelope from address is used in SMTP communication and validation requirements.
This commit is contained in:
Winni Neessen 2024-10-05 13:59:24 +02:00
parent 1dcdad9da1
commit 3d5435c138
Signed by: wneessen
GPG key ID: 385AC9889632126E

10
msg.go
View file

@ -398,8 +398,14 @@ func (m *Msg) EnvelopeFrom(from string) error {
return m.SetAddrHeader(HeaderEnvelopeFrom, from) return m.SetAddrHeader(HeaderEnvelopeFrom, from)
} }
// EnvelopeFromFormat takes a name and address, formats them RFC5322 compliant and stores them as // EnvelopeFromFormat sets the provided name and mail address as HeaderEnvelopeFrom for the Msg.
// the envelope FROM address header field //
// The HeaderEnvelopeFrom address is generally not included in the mail body but only used by the Client for the
// communication with the SMTP server. If the Msg has no "FROM" address set in the mail body, the msgWriter will
// try to use the envelope from address, if this has been set for the Msg. The provided name and address adre
// validated according to RFC 5322 and will return an error if the validation fails.
//
// https://datatracker.ietf.org/doc/html/rfc5322#section-3.4
func (m *Msg) EnvelopeFromFormat(name, addr string) error { func (m *Msg) EnvelopeFromFormat(name, addr string) error {
return m.SetAddrHeader(HeaderEnvelopeFrom, fmt.Sprintf(`"%s" <%s>`, name, addr)) return m.SetAddrHeader(HeaderEnvelopeFrom, fmt.Sprintf(`"%s" <%s>`, name, addr))
} }