Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Watcher 24.10.2019 02:39
допустим передали в форму поля login = ivan$a[$form:login] <- будут в dirty-цвете по-умолчанию $b[^taint[url][http://site]] <- будет в url-цвете $c[hello] <- будет в as-is цвете по-умолчанию $d[$a$b$c] <- будет из строк разных цветов # $d -> [ivanhttp://sitehello] ^ ^ ^ dirty url as-is $d[^untaint{$d}] <- untaint без указания типа, по-умолчанию красит все dirty-цвета в as-is # $d -> [ivanhttp://sitehello] ^ ^ ^ as-is url as-is $d[^taint[$d]] <- taint во-первых красит всю строк принудительно, (а не выборочно dirty-куски, как untaint) плюс у taint по-умолчанию без явного указания типа выставлено красить в dirty # $d -> [ivanhttp://sitehello] ^ ^ ^ d i r t y P.S.: С одной стороны поведение по-умолчанию (без указания цвета) у taint и untaint как противоположно: - taint типа принудительно все красит в dirty, или в выбранный цвет, или в as-is (чистый). - untaint только dirty-куски по умолчанию превращает в as-is а на деле семантика получается такая себе... иначе бы не было бы "жалоб на таинтизмы". фактически, когда-то на форуме был предложен более лаконичный синтаксис: ^taint[what][to][string] what - что красим? всю строку принудительно или выбранный цвет: all, dirty(tainted), as-is, url... to - в какой цвет красим? dirty(tainted), as-is, url... string - собственно строка такой синтаксис не только полностью заменяет все вариации taint и untaint, но и расширяет возможности, т.к. сейчас нельзя перекрасить только какой-то выборочный цвет внутри строки, кроме dirty-цвета.