Страница 1 из 1

exim 4.68 перестали работать регекспы

Добавлено: 2007-12-17 9:38:56
cyrus_user
привет. вообщем жилось с регекспами долго и хорошо, пока не заметил следующее:
вот такое условие:

Код: Выделить всё

condition       = ${lookup {$sender_host_name}nwildlsearch{ACLDIR/20.black.dial}{1}{0}}
в ACLDIR/20.black.dial такая запись и для чистоты эксперимента продублируем с символом начала строки:

Код: Выделить всё

[0-9A-Za-z.-_]+\.adsl+
^[0-9A-Za-z.-_]+\.adsl+
проверяем её пригодность:

Код: Выделить всё

$ echo "lns-bzn-44-82-249-213-234.adsl.proxad.net" |egrep "[0-9A-Za-z.-_]+\.adsl+"
lns-bzn-44-82-249-213-234.adsl.proxad.net
однако, exim -bh 82.249.213.234

Код: Выделить всё

ненужное пропускаем, смотрим лишь наши записи:
>>> lns-bzn-44-82-249-213-234.adsl.proxad.net in "[0-9A-Za-z.-_]+\.adsl+"? no (end of list)
>>> lns-bzn-44-82-249-213-234.adsl.proxad.net in "^[0-9A-Za-z.-_]+\.adsl+"? no (end of list)
вот вопрос, где я торможу?

Re: exim 4.68 перестали работать регекспы

Добавлено: 2007-12-17 12:16:33
Morty
может хитрость в nwildlsearch ? (может попробовать просто wildlsearch)
http://www.lissyara.su/?id=1209 вот тема раскрыта
у меня wildlsearch c таким вот файлом

Код: Выделить всё

# dialup hosts
^\.*dsl\.*
^\.*dialup\.*
^\.*dialin\.*
^\.*pool\.*
^\.*peer\.*
^\.*dhcp\.*
^\.*dynamic\.*
^\.*cable\.*
^\.*ppp\.*

# expressions for digit in hosts
^\d+[-\.]\d+[-\.]\d+[-\.]
^\d{5,}

# by ded3axap
^.*([1-9]+)\\-([0-9]+)\\-([0-9]+)\\-([1-9]+).*
^.*([1-9]+).([0-9]+).([0-9]+).([1-9]+).*

Re: exim 4.68 перестали работать регекспы

Добавлено: 2007-12-17 12:27:05
cyrus_user
Morty писал(а):может хитрость в nwildlsearch ? (может попробовать просто wildlsearch)
так точно, спасибо.

Re: exim 4.68 перестали работать регекспы

Добавлено: 2007-12-18 7:09:53
cyrus_user
хех, невнимательно я дочитал про wildsearch.. раскрытие строки до любое совпадения это было сильно. практически все входящие письма за ночь утекли в inbox/spam :)
сижу правлю регекспы

Re: exim 4.68 перестали работать регекспы

Добавлено: 2007-12-18 11:55:30
Morty
:D
главное что проблему нашел , а то ведь бывает как заклинет -))) по себе знаю