[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-mailutils] POP3d enhancements
From: |
Alain Magloire |
Subject: |
Re: [bug-mailutils] POP3d enhancements |
Date: |
Fri, 10 Oct 2003 10:43:04 -0400 (EDT) |
LOGIN-DELAY:
> > We could do this by creating a pipe(2) between the child and the parent
> [...]
>
The pipe(2) thing seems to work with some drawbacks:
- It will not work if pop3d is started via xinetd, the children pop3d
as no parent to talk to.
- pipe(2) only guarantee a write(2) to be atomic if it does not
exceed PIPE_BUF size, the race condition here would be rare.
> Won't it be simpler to keep a DBM database? Each record in the database
> would have the form (username ; timestamp of the last logout). Children
> would be updating it and the master process would be only reading it.
> The locking/concurrency issues will be solved authomatically by the DBM
> library.
Given the reasons above, the code was not commited yet.
What do you think? Do you want to try the DBM thing? or even with
the drawback we want to put the scheme in.
EXPIRE:
- drawback, suddenly doing QUIT takes a while longer any message
that was downloaded(RETR) will be rewritten to have a new header
X-Expire: time(2)
- the pop3d can not inforce this totally, it can only inforce it
when the user logs again and at the update state(QUIT) we check
for timestamp(X-Expire) on every message and delete the expired.
An external program(cron/at) could be run to clear the expired
Code not commited.
feedbacks ?