Le filtre safehtml() permet à SPIP d'utiliser la librairie SafeHTML de
Roman Ivanov <http://pixel-apes.com/safehtml> ; appliqué à des contenus
"peu sûrs", il en élimine, plus puissamment que la fonction
interdire_scripts() de SPIP, tout ce qui pourrait être utilisé à des fins
de piratage type XSS (cross-site scripting), et il s'assure que les
balises html sont bien balancées : pas de <i> mal fermé, etc.
Dans la version de dév d'hier soir, ce filtre est appliqué en standard,
dans l'espace privé comme dans l'espace public :
- aux forums publics (y compris prévisualisation et suivi des forums)
- aux #DESCRIPTIF syndiqués
(Ce sont des choses qui peuvent encore évoluer)
Outre le renforcement de la sécurité, ce système permet d'éviter qu'un "{"
inséré dans un forum (ou dans un contenu syndiqué "riche") mette toute la
page en italique...
A part ça, c'est un filtre normal, qui peut s'appliquer dans les
squelettes à tout contenu de type HTML. Il a quelques bugs, qu'il faudra
résoudre : notamment une incompatibilité avec certains raccourcis SPIP
(je pense aux <embed ...> de fichiers flash), et la suppression de
certaines chaînes de caractères bizarres.
La librairie de départ étant sous licence BSD, il n'y a pas de problème
légal à la distribuer avec SPIP (j'ai supprimé toutefois son répertoire
de tests), ni même à la modifier si on veut (faire gaffe alors au risque
de fork).
J'ai aussi prévenu l'auteur, qui avait l'air content.
-- Fil