Archived
1
0

Merge branch 'master' of ssh://github.com/majestrate/nntpchan

This commit is contained in:
Jeff Becker 2018-12-07 08:51:34 -05:00
commit 3b492579b8
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

View File

@ -295,12 +295,20 @@ func (self *nntpArticle) Newsgroup() string {
} }
func (self *nntpArticle) Name() string { func (self *nntpArticle) Name() string {
from := self.headers.Get("From", "anonymous <a@no.n>") const defname = "Anonymous"
idx := strings.Index(from, "<") from := strings.TrimSpace(self.headers.Get("From", ""))
if idx > 1 { if from == "" {
return from[:idx] return defname
} }
return "[Invalid From header]" a, e := mail.ParseAddress(from)
if e != nil {
return fmt.Sprintf("[Invalid From header: %v]", e)
}
name := strings.TrimSpace(a.Name)
if name == "" {
return defname
}
return name
} }
func (self *nntpArticle) Addr() (addr string) { func (self *nntpArticle) Addr() (addr string) {
@ -327,13 +335,15 @@ func (self *nntpArticle) Addr() (addr string) {
} }
func (self *nntpArticle) Email() string { func (self *nntpArticle) Email() string {
from := self.headers.Get("From", "anonymous <a@no.n>") from := strings.TrimSpace(self.headers.Get("From", ""))
idx := strings.Index(from, "<") if from == "" {
if idx > 2 { return ""
return from[:idx-2]
} }
return "[Invalid From header]" a, e := mail.ParseAddress(from)
if e != nil {
return fmt.Sprintf("[Invalid From header: %v]", e)
}
return a.Address
} }
func (self *nntpArticle) Subject() string { func (self *nntpArticle) Subject() string {