[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Extending 'mbox:' URL
From: |
Sergey Poznyakoff |
Subject: |
Extending 'mbox:' URL |
Date: |
Tue, 15 Jan 2002 15:43:40 +0200 |
Bonjour,
I'd like to propose an extension to the existing 'mbox:' url format
that will allow to use mailspool hashing schemes. Such schemes reduce
the mailbox access time for sites with a big number of mail boxes.
Widely deployed hashing schemes are:
1. Indexing by first 'n' letters of a login name. For example, when
n=2 the mailbox for user 'gray' is '/var/spool/mail/g/r/gray'.
When n=0 this produces usual mailspool names.
2. Indexing by last 'n' letters of a login name. This provides a
better average distribution than the first method.
3. Hashing first 'n' letters of a username.
Here is the proposed url format:
mbox:path[;type=TYPE][;param=NUM][;user=USERNAME]
Keywords are:
type -- The hashing scheme type. E.g.: "index", "rev-index" and "hash"
for the three schemes described.
param -- Number of letters from the username to be used in hashing scheme.
user -- A username.
For example, the url
mbox:/var/spool/mail;type=index;param=2;user=gray
produces the following mailbox path:
/var/spool/mail/g/r/gray
When no keywords are used, the url coincides with the format currently in
use by mailutils.
If user= is used as the last keyword, the url allows for creating the mailbox
names by simply appending a username to the url, so any existing code like
sprintf (buf, "%s/%s", _PATH_MAILDIR, username)
could simply be rewritten as
sprintf (buf, "%s%s", maildir, username)
(Assuming maildir is in mbox: format).
I have prepared an implementation of this extension. Any objections
if I commit it?
Regards,
Sergey
- Extending 'mbox:' URL,
Sergey Poznyakoff <=