eh
This commit is contained in:
parent
bcddab9af6
commit
59068bb961
@ -198,8 +198,6 @@ type ModEngine interface {
|
|||||||
AllowBan(pubkey string) bool
|
AllowBan(pubkey string) bool
|
||||||
// allow janitor
|
// allow janitor
|
||||||
AllowJanitor(pubkey string) bool
|
AllowJanitor(pubkey string) bool
|
||||||
// load a mod message
|
|
||||||
LoadMessage(msgid string) NNTPMessage
|
|
||||||
// execute 1 mod action line by a mod with pubkey
|
// execute 1 mod action line by a mod with pubkey
|
||||||
Execute(ev ModEvent, pubkey string)
|
Execute(ev ModEvent, pubkey string)
|
||||||
// do a mod event unconditionally
|
// do a mod event unconditionally
|
||||||
@ -227,10 +225,6 @@ func (self *modEngine) MarkSpam(msgid string) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *modEngine) LoadMessage(msgid string) NNTPMessage {
|
|
||||||
return self.store.GetMessage(msgid)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (self *modEngine) BanAddress(cidr string) (err error) {
|
func (self *modEngine) BanAddress(cidr string) (err error) {
|
||||||
return self.database.BanAddr(cidr)
|
return self.database.BanAddr(cidr)
|
||||||
}
|
}
|
||||||
@ -345,7 +339,7 @@ func (self *modEngine) AllowDelete(pubkey, msgid string) (allow bool) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (mod *modEngine) HandleMessage(msgid string) {
|
func (mod *modEngine) HandleMessage(msgid string) {
|
||||||
nntp := mod.store.GetMessage(msgid)
|
mod.store.GetMessage(msgid, func(nntp NNTPMessage) {
|
||||||
if nntp == nil {
|
if nntp == nil {
|
||||||
log.Println("failed to load", msgid, "in mod engine, missing message")
|
log.Println("failed to load", msgid, "in mod engine, missing message")
|
||||||
return
|
return
|
||||||
@ -361,6 +355,7 @@ func (mod *modEngine) HandleMessage(msgid string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (mod *modEngine) Do(ev ModEvent) {
|
func (mod *modEngine) Do(ev ModEvent) {
|
||||||
|
@ -75,7 +75,7 @@ type ArticleStore interface {
|
|||||||
// register signed message
|
// register signed message
|
||||||
RegisterSigned(msgid, pk string) error
|
RegisterSigned(msgid, pk string) error
|
||||||
|
|
||||||
GetMessage(msgid string) NNTPMessage
|
GetMessage(msgid string, visit func(NNTPMessage))
|
||||||
|
|
||||||
// get size of message on disk
|
// get size of message on disk
|
||||||
GetMessageSize(msgid string) (int64, error)
|
GetMessageSize(msgid string) (int64, error)
|
||||||
@ -584,7 +584,7 @@ func (self *articleStore) ProcessMessage(wr io.Writer, msg io.Reader, spamfilter
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *articleStore) GetMessage(msgid string) (nntp NNTPMessage) {
|
func (self *articleStore) GetMessage(msgid string, visit func(NNTPMessage)) {
|
||||||
r, err := self.OpenMessage(msgid)
|
r, err := self.OpenMessage(msgid)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
defer r.Close()
|
defer r.Close()
|
||||||
@ -597,7 +597,7 @@ func (self *articleStore) GetMessage(msgid string) (nntp NNTPMessage) {
|
|||||||
// inject pubkey for mod
|
// inject pubkey for mod
|
||||||
n.Headers().Set("X-PubKey-Ed25519", hdr.Get("X-PubKey-Ed25519"))
|
n.Headers().Set("X-PubKey-Ed25519", hdr.Get("X-PubKey-Ed25519"))
|
||||||
}
|
}
|
||||||
nntp = n
|
visit(n)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user