|
E-MailRelay
|
A Filter class that passes the body of a message file to a remote process over the network and optionally stores the response back into the file. More...
#include <gspamfilter.h>
Inheritance diagram for GFilters::SpamFilter:
Collaboration diagram for GFilters::SpamFilter:Public Member Functions | |
| SpamFilter (GNet::EventState, GStore::FileStore &, Filter::Type, const Filter::Config &, const std::string &server_location, bool read_only, bool always_pass) | |
| Constructor. More... | |
| ~SpamFilter () override | |
| Destructor. More... | |
| SpamFilter (const SpamFilter &)=delete | |
| SpamFilter (SpamFilter &&)=delete | |
| SpamFilter & | operator= (const SpamFilter &)=delete |
| SpamFilter & | operator= (SpamFilter &&)=delete |
Public Member Functions inherited from GSmtp::Filter | |
| virtual | ~Filter ()=default |
| Destructor. | |
| virtual std::string | id () const =0 |
| Returns the id passed to the derived-class constructor. More... | |
| virtual bool | quiet () const =0 |
| Returns true if there is no need for logging. | |
| virtual void | start (const GStore::MessageId &)=0 |
| Starts the filter for the given message. More... | |
| virtual G::Slot::Signal< int > & | doneSignal () noexcept=0 |
| Returns a signal which is raised once start() has completed or failed. More... | |
| virtual void | cancel ()=0 |
| Aborts any incomplete filtering. | |
| virtual Result | result () const =0 |
| Returns the filter result, after the doneSignal() has been emitted. | |
| virtual std::string | response () const =0 |
| Returns a non-empty SMTP response string iff the filter failed, or an empty response if successful or abandoned. | |
| virtual int | responseCode () const =0 |
| An override for the SMTP response code for when the filter has failed. More... | |
| virtual std::string | reason () const =0 |
| Returns a non-empty reason string iff the filter failed, or an empty reason if successful or abandoned. | |
| virtual bool | special () const =0 |
| Returns true if the filter indicated special handling is required. | |
| std::string | str (Type type) const |
| Returns a diagnostic string for logging, including the filter result. More... | |
Additional Inherited Members | |
Public Types inherited from GSmtp::Filter | |
| enum class | Result { ok = 0 , abandon = 1 , fail = 2 } |
| enum class | Type { server , client , routing } |
Static Public Member Functions inherited from GSmtp::Filter | |
| static std::string_view | strtype (Type type) noexcept |
| Returns a type string for logging: "filter", "client-filter" or "routing-filter". More... | |
A Filter class that passes the body of a message file to a remote process over the network and optionally stores the response back into the file.
It parses the response's "Spam:" header to determine the overall pass/fail result, or it can optionally always pass.
Definition at line 41 of file gspamfilter.h.
| GFilters::SpamFilter::SpamFilter | ( | GNet::EventState | es, |
| GStore::FileStore & | file_store, | ||
| Filter::Type | , | ||
| const Filter::Config & | config, | ||
| const std::string & | server_location, | ||
| bool | read_only, | ||
| bool | always_pass | ||
| ) |
Constructor.
Definition at line 26 of file gspamfilter.cpp.
|
override |
Destructor.
Definition at line 43 of file gspamfilter.cpp.