Так работает, но
Maxx 14.02.2008 22:54
Так нет:
$s[^taint[sql][string's]]
^connect[$SQL.connect-string]{
$s
}
-> untaint in SQL language failed
Т.е. в файл можно, а в браузер нельзя??
я догадываюсь когда происходит преобразование, но не совсем понимаю, почему оно происходит таки при сохранении в файл, по идее sql-taint тогда уж должен происходить только при отправке реальных запросов в БД. Если же в файл можно то и в output должно быть также. Как пример мне нужно сгенерить sql-скрипт и выдать его в браузер, чтобы его оттуда можно было скопировать и вставить где нужно. Еще бывает нужно увидеть своими глазами, что ушло в БД as-is.
Вариант со сначала сохранением в файл, загрузкой из файла и выдачей в браузер, имхо. очень криво смотрится
Даже из приведенного вами примера видна некоторая неестественность ситуации. Если я хочу _просто_ положить строку в файл, сделав преобразование taint-sql, то зачем мне соединение с БД?
Если проблема именно в том, что преобразования разные под разные БД - то может дать программисту указать его явно, например ^taint[mysql|oracle|postgre...][....] и не требовать с него соединения (оставив поведение при указании "sql" как было для совместимости)?
там еще был вопрос как получить ^file.sql-string[]...