
Fiche
dOOnet! projects

Spam Assassin :
* NOM
* SYNTHÈSE
* DESCRIPTION
* MÉTHODES
* CHOSES NÉCESSAIRES
* PLUS DE DOCUMENTATION
* VOIR ÉGALEMENT
* BOGUES
* AUTEURS
* COPYRIGHT
* DISPONIBILITÉ
NOM
Courrier : : SpamAssassin - détecteur de Spam et moteur de marge bénéficiaire bénéficiaire
SYNTHÈSE
mon $spamtest = courrier : : SpamAssassin->new () ; mon $mail = $spamtest->parse ($message) ; mon $status = $spamtest->check ($mail) ;
si ($status->is_spam ()) {$message = $status->rewrite_mail () ; } autrement {…}…
$status->finish () ; $mail->finish () ;
DESCRIPTION
Courrier : : SpamAssassin est un module pour identifier le Spam en utilisant plusieurs méthodes comprenant l'analyse des textes, Internet-basée temps réel met sur la liste noire, l'analyse statistique, et les algorithmes de brouillage Internet-basés.
En utilisant sa base de règle, il emploie un éventail d'essais heuristiques sur les en-têtes de courrier et le texte de corps pour identifier le « Spam », également connu sous le nom d'email non sollicité en vrac. Une fois identifié comme Spam, le courrier peut alors être étiqueté comme Spam pour filtrer plus tard en utilisant la propre application d'agent d'utilisateur du courrier de l'utilisateur ou à l'agent des transferts de courrier.
Si vous souhaitez employer une commande-ligne outil de filtre, essayer le spamassassin ou les outils de spamd/spamc fournis.
MÉTHODES
$t = courrier : : SpamAssassin->new ({=> d'OPT val,…})
Construit un nouveau courrier : : Objet de SpamAssassin. Vous pouvez passer
une référence d'informations parasites au constructeur qui peut
contenir les paires suivantes de valeur d'attribut.
corriger
C'est les options de correction employées pour déterminer la notation
de niveau. Elle existe pour permettre des sections de corrigent des messages
(appelés les « équipements ») à permettre ou
être neutralisés. Si c'est une corde, il est traité comme
liste virgule-délimitée des équipements de correction.
Si c'est une référence d'informations parasites, alors les clefs
sont traitées car la liste de corrigent des équipements et si
c'est une référence de rangée, alors les éléments
sont traitées pendant que la liste de corrigent des équipements.
Il y a également deux cas spéciaux : (1) si le cas spécial de la « information » est passé comme service de correction, alors tous les messages informationnels sont permis ; (2) si le cas spécial de « tous » est passé comme service de correction, alors toutes les fonctions de mise au point sont permises.
rules_filename
Le nom de fichier/annuaire aux règles de Spam-identification de charge
de. (facultatif)
site_rules_filename
L'annuaire pour charger la Spam-identification emplacement-spécifique
règne de. (facultatif)
userprefs_filename
Le nom de fichier pour charger des préférences de. (facultatif)
userstate_dir
L'état d'utilisateur d'annuaire est stocké le po (facultatif)
config_text
Le texte de toutes les règles et préférences. Si vous préférez
ne pas charger les règles à partir des dossiers, lus leur dans
vous-même et placer ceci à la place. En conséquence, ceci
dépassera les arrangements pour le rules_filename, le site_rules_filename,
et l'userprefs_filename.
languages_filename
Si vous voulez pouvoir employer la règle de langue-estimation UNWANTED_LANGUAGE_BODY,
et employez le config_text au lieu du rules_filename, du site_rules_filename,
et de l'userprefs_filename, vous devrez placer ceci. Ce devrait être le
chemin aux langues classent normalement trouvé dans l'annuaire de règles
de SpamAssassin.
local_tests_only
Si l'ensemble à 1, aucuns essais qui exigent l'accès d'Internet
sera exécuté. (défaut : 0)
pas les _copy_prefs
Si l'ensemble à 1, le dossier de préférences d'utilisateur
ne sera pas créé s'il n'existe pas déjà. (défaut
: 0)
save_pattern_hits
Si l'ensemble à 1, le coup de modèles peut être recherché
du courrier : : SpamAssassin : : Objet de PerMsgStatus. Utilisé pour
la correction.
home_dir_for_helpers
Si réglée, la variable d'environnement familial sera placée
à cette valeur quand en utilisant les applications d'essai qui exigent
leurs données de configuration, telles que le rasoir, le Pyzor et le
DCC.
username
Si réglé, l'attribut d'username emploiera ceci comme nom de l'utilisateur
courant. Autrement, le défaut est pris de l'environnement d'exécution
(IE. cet UID efficace des processus sous l'UNIX).
Si rien rules_filename, site_rules_filename, userprefs_filename, ou config_text est placé, le courrier : : Le module de SpamAssassin recherchera les dossiers de configuration dans les endroits installés habituels en utilisant les définitions ci-dessous variables qui peuvent être passées po.
PRÉFIXE
Utilisé comme racine pour certains chemins d'annuaire comme :
« __prefix__/etc/mail/spamassassin » « __prefix__/etc/spamassassin »
Défauts au « @@PREFIX@@ ».
DEF_RULES_DIR
Endroit où les règles de défaut sont installées.
Défauts au « @@DEF_RULES_DIR@@ ».
LOCAL_RULES_DIR
Endroit où les règles locales d'emplacement sont installées.
Défauts au « @@LOCAL_RULES_DIR@@ ».
LOCAL_STATE_DIR
Endroit de l'annuaire local d'état, principalement utilisé pour
installer des mises à jour par l'intermédiaire de la SA-mise à
jour. Défauts au « @@LOCAL_STATE_DIR@@ ».
analyser ($message, $parse_now)
Analyser renverra un courrier : : SpamAssassin : : L'objet de message avec juste
les en-têtes a analysé. En appelant cette fonction, il y a deux
paramètres facultatifs dans lesquels peut être passé : $message
est un undef (qui emploiera STDIN), une grandeur scalaire du message entier,
une référence de rangée du message avec 1 ligne par élément
de rangée, ou une goutte de dossier qui tient le contenu entier du message
; et $parse_now, aux lesquels indique si pour créer l'arbre de MIME analysent
le temps ou plus tard selon les besoins.
L'option de $parse_now, par défaut, est placée à faux (0). Ceci permet SpamAssassin ne doit pas produire de l'arbre des noeuds internes de données si l'information ne va pas être employée. C'est maniable, par exemple, en courant le spamassassin - d, qui a besoin seulement de l'en-tête et du corps primitifs qui est toujours analysé et stocké par cette fonction.
Pour plus d'information, voir svp le courrier : : SpamAssassin : : Message et courrier : : SpamAssassin : : Message : : COSSE de noeud.
$status = $f->check ($mail)
Vérifier un courrier, encapsulé dans un courrier : : SpamAssassin
: : Objet de message, pour déterminer si c'est Spam ou pas.
Renvoie un courrier : : SpamAssassin : : Objet de PerMsgStatus qui peut être employé pour examiner ou manoeuvrer le message de courrier.
Noter que le courrier : : L'objet de SpamAssassin peut être réutilisé pour d'autres messages sans affecter ce contrôle ; dans la terminologie d'OO, le courrier : : L'objet de SpamAssassin est une « usine ». Cependant, si vous faites ceci, être sûr d'appeler la méthode de finition () sur les objets de statut quand vous êtes faits avec eux.
$status = $f->check_message_text ($mailtext)
Vérifier un courrier, encapsulé dans une corde plate $mailtext,
pour déterminer si c'est Spam ou pas.
Autrement identique au contrôle () en haut.
$status = $f->learn ($mail, $id, $isspam, $forget)
Apprendre d'un courrier, encapsulé dans un courrier : : SpamAssassin
: : Objet de message.
Si $isspam est placé, on assume que le courrier est Spam, autrement on l'apprendra comme non-Spam.
Si $forget est placé, les attributs du courrier seront enlevés des bases de données de étude de non-Spam et de Spam.
$id est une corde facultative de message-identification, employée intérieurement pour étiqueter le message. Si c'est undef, la Message-Identification du message sera employée. Elle devrait être unique à ce message.
Renvoie un courrier : : SpamAssassin : : Objet de PerMsgLearner qui peut être employé pour manoeuvrer l'apprentissage pour chaque courrier.
Noter que le courrier : : L'objet de SpamAssassin peut être réutilisé pour d'autres messages sans affecter ce contrôle ; dans la terminologie d'OO, le courrier : : L'objet de SpamAssassin est une « usine ». Cependant, si vous faites ceci, être sûr d'appeler la méthode de finition () sur les objets d'étudiant quand vous êtes faits avec eux.
apprendre que () et contrôle () peut être couru en utilisant la même usine. l'init_learner () doit s'appeler avant d'employer cette méthode.
$f->init_learner ([{=> d'OPT val,…}])
Initialiser l'étude. Vous pouvez passer les paires suivantes d'attribuer-valeur
à cette méthode.
caller_will_untie
Si le code appelle cette méthode prendra soin d'untie'ing des bases de
données de Bayes (en appelant le finish_learner ()) (facultatif, défaut
0).
force_expire
Une course d'expiration devrait-elle être forcée pour se produire
immédiatement ? (facultatif, défaut 0).
learn_to_journal
Des données l'étude devrait-elle être écrite au journal,
au lieu de directement aux bases de données ? (facultatif, défaut
0).
wait_for_lock
Si pour attendre un à long terme des serrures pour accomplir (facultatif,
défaut 0).
opportunistic_expire_check_only
Pendant la synchro opportuniste de journal et expirent le contrôle, ne
font pas réellement l'expirer mais dos de rapport si il devrait se produire
(facultatif, défaut 0).
no_relearn
Si faisant une opération d'étude, et le message a été
déjà appris comme type opposé, ne pas réapprendre
le message.
$f->rebuild_learner_caches ({=> d'OPT val})
Reconstruire toutes les bases de données de cachette ; devrait s'appeler
après l'apprentissage. Les options incluent : bavard, qui produira le
diagnostic au stdout si ensemble à 1.
$f->finish_learner ()
Étude de finition.
$f->dump_bayes_db ()
Vider le contenu du DB de Bayes
$f->signal_user_changed ([{=> d'OPT val,…}])
Des signaux que l'utilisateur courant a changé (probablement en utilisant
le setuid), signifiant que SpamAssassin devrait fermer toutes les bases de données
de par-utilisateur il a ouvert, et rouvrir en utilisant ceux appropriés
pour le nouvel utilisateur.
Noter que ceci devrait s'appeler après lecture de n'importe quelle configuration de par-utilisateur, comme que les données peuvent dépasser quelques chemins ouverts dans cette méthode. Vous pouvez passer les paires suivantes d'attribuer-valeur :
username
L'username de l'utilisateur. Ceci sera employé pour l'attribut d'username.
user_dir
Un annuaire à employer comme « répertoire local »
pour les données de l'utilisateur courant, dépassant le défaut
de système. Cet annuaire doit être lisible et à affichage
par le processus. Noter que l'userstate_dir résultant sera le sous-répertoire
de .spamassassin de ce dir.
userstate_dir
Un annuaire à employer comme annuaire pour les données de l'utilisateur
courant, dépassant le défaut de système. Cet annuaire doit
être lisible et à affichage par le processus. Le défaut
est user_dir/.spamassassin.
$f->report_as_spam ($mail, $options)
Rapporter un courrier, encapsulé dans un courrier : : SpamAssassin :
: Objet de message, en tant que Spam humain-vérifié. Ceci soumettra
le message de courrier à de phase, de collaboration, des bases de données
de Spam-dresseur, permettant à d'autres utilisateurs de bloquer ce message.
Il soumettra également le courrier à l'étudiant bayésien de SpamAssassin.
Les options est une référence facultative à des informations parasites des options. Actuellement ceux-ci peuvent être :
pas le _report_to_dcc
Empêche le reportage du Spam au DCC.
pas le _report_to_pyzor
Empêche le reportage du Spam à Pyzor.
pas le _report_to_razor
Empêche le reportage du Spam au rasoir.
pas le _report_to_spamcop
Empêche le reportage du Spam à SpamCop.
$f->revoke_as_spam ($mail, $options)
Retirer un courrier, encapsulé dans un courrier : : SpamAssassin : :
Objet de message, en tant que jambon humain-vérifié (non-Spam).
Ceci retirera le message de courrier de de phase, de collaboration, des bases
de données de Spam-dresseur, permettant à d'autres utilisateurs
de bloquer ce message.
Il soumettra également le courrier à l'étudiant bayésien de SpamAssassin comme nonspam.
Les options est une référence facultative à des informations parasites des options. Actuellement ceux-ci peuvent être :
pas le _report_to_razor
Empêche le retrait du Spam au rasoir.
$f->add_address_to_whitelist ($addr)
Donné une corde contenant un email address, l'ajouter à la base
de données automatique de whitelist.
$f->add_all_addresses_to_whitelist ($mail)
Donné un message de courrier, trouver autant d'adresses en en-têtes
habituels (à, cc, etc.), et le corps de message, et les ajouter à
la base de données automatique de whitelist.
$f->remove_address_from_whitelist ($addr)
Donné une corde contenant un email address, l'enlever de la base de données
automatique de whitelist.
$f->remove_all_addresses_from_whitelist ($mail)
Donné un message de courrier, trouver autant d'adresses en en-têtes
habituels (à, cc, etc.), et le corps de message, et les enlever de la
base de données automatique de whitelist.
$f->add_address_to_blacklist ($addr)
Donné une corde contenant un email address, l'ajouter à la base
de données automatique de whitelist avec de hauts points, les mettant
efficacement sur la liste noire.
$f->add_all_addresses_to_blacklist ($mail)
Donné un message de courrier, les adresses de trouvaille dans des en-têtes
et les ajoutent à la base de données automatique de whitelist
avec de hauts points, les mettant efficacement sur la liste noire.
Noter qu'à et des adresses de cc ne sont pas employées.
$text = $f->remove_spamassassin_markup ($mail)
Renvoie le texte du message, avec n'importe quel texte SpamAssassin-supplémentaire
(tel que le rapport, ou des en-têtes de X-Spam-Statut) dépouillé.
Noter que l'objet de $mail n'est pas modifié.
$f->read_scoreonly_config ($filename)
Lire un dossier de configuration et analyser les préférences d'utilisateur
de lui.
Les préférences d'utilisateur sont comme définies dans le courrier : : SpamAssassin : : Page-manuel de Conf. En d'autres termes, elles incluent des options de marquage, points, whitelists et listes noires, et ainsi de suite, mais n'incluent pas des définitions de règle, des arrangements privilégiés, etc. à moins que des allow_user_rules soit permis ; et elles n'incluent jamais les arrangements d'administrateur.
$f->load_scoreonly_sql ($username)
Lire les paramaters de configuration de la base de données de SQL et
analyser les points de elle. Ceci entrera en vigueur seulement si le module
de Perl DBI est installé, et l'user_scores_dsn, l'user_scores_sql_username,
et l'user_scores_sql_password de paramètres de configuration sont placés
correctement.
L'username dans $username sera également employé pour l'attribut d'username du courrier : : Objet de SpamAssassin.
$f->load_scoreonly_ldap ($username)
Lire les paramaters de configuration d'un serveur de LDAP et analyser les points
de lui. Ceci entrera en vigueur seulement si le filet de Perl : : Des modules
de LDAP et d'URI sont installés, et l'user_scores_dsn, l'user_scores_ldap_username,
et l'user_scores_ldap_password de paramètres de configuration sont placés
correctement.
L'username dans $username sera également employé pour l'attribut d'username du courrier : : Objet de SpamAssassin.
$f->set_persistent_address_list_factory ($factoryobj)
Placer l'usine persistante de liste d'adresses, employée pour créer
des objets pour le persistant-stockage de l'algorithme automatique de whitelist
principal. Voir le courrier : : SpamAssassin : : PersistentAddrList pour l'api
que ces objets d'usine doivent mettre en application, et l'api les objets ils
produisent doit mettre en application.
$f->compile_now ($use_user_prefs, $keep_userstate)
Compiler tous les modèles, charger tous les dossiers de configuration,
et charger tous les modules possible-exigés de Perl.
Normalement, courrier : : SpamAssassin emploie l'évaluation paresseuse dans la mesure du possible, mais si vous projetez bifurquer () ou commencer un nouveau fil d'interprète de Perl pour traiter un message, ceci est suboptimal, car chaque processus/fil devra effectuer ces actions.
Appeler cette fonction dans le fil ou le processus principal pour effectuer les actions immédiatement, de sorte que les sous-processus pas aient dû.
Si $use_user_prefs est 0, ceci initialisera la configuration de SpamAssassin sans lire le dossier de configuration de par-utilisateur et il supposera que vous appellerez le read_scoreonly_config à un point postérieur.
Si $keep_userstate est vrai, le compile_now () retournera toutes les options de configuration qui ont un défaut avec le __userstate__ dans lui poteau-init (), et puis re-change l'option avant le renvoi. Ceci vous laisse changer $ENV {« MAISON »} en annuaire de la température, avoir le compile_now () et créer tous les dossiers là selon les besoins sans déranger les dossiers réels comme changés par une option de configuration. Par défaut, c'est handicapé.
$f->debug_diagnostics ()
Produire de l'information diagnostique, utile pour corriger des problèmes
de SpamAssassin.
$failed = $f->lint_rules ()
Vérifier la syntaxe de l'ensemble de règles courant. Renvoie le
nombre d'erreurs de syntaxe découvertes, ou 0 si la configuration est
valide.
$f->finish ()
Détruire cet objet, de sorte que c'ordure-lui soit rassemblé une
fois sorte de la portée. L'objet ne sera plus utilisable après
que cette méthode s'appelle.
$fullpath = $f->find_rule_support_file ($filename)
Trouver règle-soutiennent le dossier, tel que des langues ou triplets.txt,
dans règne au niveau système l'annuaire, et renvoie son plein
chemin s'il existe, ou undef s'il n'existe pas.
(Cet api a été ajouté dans SpamAssassin 3.1.1.)
$f->create_default_prefs ($filename, $username [, $userdir])
Les préférences de défaut de copy classent dans le répertoire
local pour l'usage postérieur et la modification, si elle déjà
n'existe pas et pas des _copy_prefs n'est pas de placer.
$f->copy_config ([$source], [$dest])
Utilisé pour des démons pour garder un courrier persistant : :
La configuration de l'objet de SpamAssassin correcte si commutant entre les
utilisateurs. Passer une référence associative de rangée
en tant que $source ou $dest, et placer l'autre au « undef » de
sorte que l'objet emploie sa configuration courante. c.-à-d. :
# créent l'objet avec la configuration ma $spamtest = courrier : : SpamAssassin->new (…) ;
configuration de secours de # à %conf_backup mon %conf_backup = () ; config de matrice de || de $spamtest->copy_config (, d'undef \ %conf_backup) « : l'erreur est retournée du copy_config ! \ n » ;
… bourrer, peut-être modifier les config, etc….
# remettent à zéro la configuration config de nouveau de $spamtest->copy_config (\ %conf_backup, undef) de || à matrice originale des « : l'erreur est retournée du copy_config ! \ n » ;
Noter que les teneurs des rangées associatives devraient être considérées opaques en appelant le code.
CHOSES NÉCESSAIRES
HTML : : Système d'analyseur : : Sgf
PLUS DE DOCUMENTATION
Voir également < http://spamassassin.apache.org/ > et le < http://wiki.apache.org/spamassassin/ > pour plus d'information.
VOIR ÉGALEMENT
Courrier : : SpamAssassin : : Courrier de Conf (3) : : SpamAssassin : : SA-mise à jour de spamassassin de PerMsgStatus (3) 1) ((1)
BOGUES
Voir le < http://issues.apache.org/SpamAssassin/ >
AUTEURS
Le projet < http://spamassassin.apache.org/ > de SpamAssassin (tm)
COPYRIGHT
SpamAssassin est distribué sous le permis d'Apache, la version 2.0, comme décrit dans le PERMIS de dossier inclus avec la distribution.
DISPONIBILITÉ
La dernière version de cette bibliothèque est susceptible d'être fournie par CPAN aussi bien que :
<gt> d'E<lt> http://spamassassin.apache.org/E ;
source : http://spamassassin.apache.org/full/3.1.x/doc/Mail_SpamAssassin.html
Dossier dOOnet! projects