Очередные улучшения либы c-client

  Казалось бы, с-client давно мёртв, поддержу IMAP4 допиливать даже не планируют, за последнии 6 лет выпустили всего пару исправлений совсем уж кривых багов. Однако, до сих пор ничего лучшего не появилось на замену. Ещё и php использует эту либу для работы с imap (разработку поддержки которого похоже забросили ещё в 5.0).
  В общем, пришлось по долгу службы снова поковырять сишный код (отчего у меня чуть не случился brain damage в связи с указателями на указатели) и налепить пару новых костылей.
  Первый patch для c-client позволяет использовать в поиске из php в imap_search() кавычки (экранируя) – искать что-то в роде “про \”весёлых\” детей”. Заплатка имеет недоделку в виде ограничения в 1024 символов на строку поиска, которую элементарно устранить заменив статический буфер на динамически выделяемый.
  Второй patch для c-client добавляет базовую поддержку критерия OR из спецификации IMAP4. Обработка синтаксиса круглых скобок, тем не менее, не включена в заплатку. Запилить критерий NOT по подобию, думаю, труда не составит.

Leave a Reply