The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Определить длину строки в MTA Exim 4.50"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Определить длину строки в MTA Exim 4.50" 
Сообщение от astenax emailИскать по авторуВ закладки(ok) on 03-Ноя-05, 11:56  (MSK)
Как можно определить длину строки средствами самого Exim? Кто-нибудь сталкивался с такой необходимостью?
  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "Определить длину строки в MTA Exim 4.50" 
Сообщение от SubGun emailИскать по авторуВ закладки(ok) on 03-Ноя-05, 15:18  (MSK)
Неа. А для чего тебе?
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Определить длину строки в MTA Exim 4.50" 
Сообщение от astenax emailИскать по авторуВ закладки(??) on 03-Ноя-05, 15:53  (MSK)
>Неа. А для чего тебе?

Просто необходимо проверять локального получателя. Локальный адрес состоит из 10 цифр. Вот и охота отбрасывать ообщения не подходящие под маску. Можно, конечно, воспользоваться regexp-ами, но они как-то криво работат. Правда, скорее всего это я чего-то не догоняю. Но когда тестирую вот такой фильтр /^23453\d{4}$/ с помощью программы pcretest, то все отлично работает. "Левые" адреса не пропускаются. Беру вставляю это выражение в конфиг:

divert_email:
    driver = redirect
    allow_fail = false
    allow_defer = false
    domains = +local_domains
    condition = ${if match {$local_part}{^23453\d{4}$}{yes}{no}}
    local_part_prefix = 23453
    data = ${lookup {$local_part_prefix} lsearch* {/etc/exim4/alias.conf}

И нихера не работает. При тестированиии exim -d -v 2345334265@somwhere.org получаю:

checking "condition"
LOG: MAIN PANIC
  failed to expand condition "${if match {$local_part}{^23453\d{4}$}{yes}{no}}" for divert_email router: missing or misplaced {
or }
divert_email router skipped: condition failure

Хотя по всем докам выражение ^23453\d{4}$ является верным и должно представлять из себя 10 цифр начинающихся с 23453. Вот поэтому я хотел бы проверит хотя бы длину строки, если по другому не получается сделать. Может быть еще какими-либо способами можно проверить корректность локального адреса?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру