ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: Ivan Zakharyaschev <imz@linux.ru.net>
To: "mandrake-russian@altlinux.ru" <mandrake-russian@altlinux.ru>
Subject: Re: [mdk-re] secure imap
Date: Thu May 10 01:46:01 2001
Message-ID: <Pine.LNX.4.33L.0105092310340.10202-100000@zephyrous.ru> (raw)
In-Reply-To: <3AF90300.E25E91D8@oberon.novocybersk.ru>

  Hello, Maxim!

On Wed, 9 May 2001, Maxim Savrilov wrote:

> Так вот, поднят imap через stunnel (все это работает через xinetd).
> Поднято все "из коробки". Все хорошо, но...

На всякий случай уточнение: это imap-2000c-ipl2mdk от University of
Washington?

> Когда пользователь получает письмо, прочитывает и удаляет его из Inbox,
> то из var/spool/mail/login оно не удаляется и что самое главное, не
> помечается как прочитанное. То-есть, если по удалении письма, зайти

Пометка "удалено" и настоящее выкидывание из ящика -- две разные вещи.
Выкидывание часто производится по воле клиента тогда, когда ящик
закрывается. Клиенты, в том числе и Netscape, обычно допускают настройку
этого поведения.

То, когда же ставится физически (т.е. записывается в файл ящика на диск)
пометка "прочитано", волновать не должно (равно как и пометка "удалено" и
то, когда происходит физическое выкидывание сообщений из файла). Все равно
в моделе доступа к ящику нет возможности проверить, когда изменения были
физически внесены в ящик: что сервер скажет клиенту, то клиент и должен
считать правдой. Сервер же может запоминать ("кэшировать") внесенные
изменения, а время от времени проводить синхронизацию с физическим
носителем. (Это может увеличить производительность сервера.)

В такой моделе нет места для прямого доступа с помощью mail -- и может
случится так, что открыв ящик mail'ом, Вы там увидите совсем не то, что
сервер выдает за правду.

> телнетом, то получишь сообщение "you have new mail". Самое поганое, что

Странно.

> после команды mail, и выхода из нее _без_ совершения каких либо
> операций
> с письмами (среди которых есть и то, которое пользователь уже "прочитал
> и удалил"), нетскапе, при нажатии кнопки get msg получает это письмо
> снова. Это решается с помощью команды Compact Folders в том же
> нетскапе,

imap-сервер (и библиотека c-client, на которой он основан) не расчитан на
параллельный доступ к ящикам формата mbox.  Поэтому сам он не
предоставляет одновременно нескольким клиентам один ящик, а если все-таки
одновременный доступ происходит, минуя его, то нужно ожидать всяких
глюков.

> но ведь раньше же такого не было! Раньше, это на MDK RE7.0 + Appendix +
> самособранный stunnel. Честно говоря, то больше всего достает

Вряд ли stunnel на все это как-то влияет.

> постоянное
> you have new mail, так как не знаешь, действительно ли это новая почта
> или проделки imap.

Вот это действительно очень странно! Я такого воспроизвести не могу. Там
именно _new_ mail? Эта проблема, на самом деле, не имеет отношения к
другой (рассинхронизации того, что видит mail, и того, что показывает
imap). Насколько я понимаю, выводы о new mail, просто mail или no mail
делаются только на основании трех атрибутов файла почтового ящика: size,
access time и modification time. (finger $USER точно так делает.) Эти
простые утилиты не лезут внутрь ящика и не разбираются во флагах. Это на
совести программ, работающих с почтой, правильно выставлять
access/modification time:

когда приходит новая почта (и, может быть, по-другому меняется состояние
ящика), touch --time=modify;

когда читается ящик (просто показывается список сообщений), touch
--time=access.

Соответственно, если access time > modify time, то сообщается о том,
что новый почты нет, если access time < modify time, то новая почта есть.

И imap-сервер исправно следует этим правилам: когда ящик открывается,
меняется access time, когда закрывается (или по-иному синхронизуется), то
modification time ставится на секунду меньше access time, что и заставляет
считать. что новой почты нет.

> Кто нибудь с таким сталкивался? Подскажите, куда копать, плиз!

Опишите, пожалуйста, в деталях, как воспроизвести Вашу ситуацию.
Поподробнее о конфигурации: какой клиент (какая версия), какие его
IMAP-настройки (способ удаления сообщений и пр.).

Понаблюдайте за access/modification time с помощью stat. Что говорит
lsattr /var/spool/mail/$USER?  На какой файловой системе ящик? (Совсем
странные мысли.) А так же ли наблюдается сообщение о new mail, если
пользоваться другими IMAP-клиентами? Какой MDA?

-- 
Best regards,
Ivan Zakhrayschev





  reply	other threads:[~2001-05-10  1:46 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-05-09 12:34 Maxim Savrilov
2001-05-10  1:46 ` Ivan Zakharyaschev [this message]
2001-05-10  9:07   ` Alexandre Redko
2001-05-11  1:01     ` Ivan Zakharyaschev
2001-05-12 16:55     ` Mikhail Zabaluev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.33L.0105092310340.10202-100000@zephyrous.ru \
    --to=imz@linux.ru.net \
    --cc=mandrake-russian@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git