> Say [EMAIL PROTECTED]  sends 100 emails to his co-workers. Currently each
> email would be copied to each users mailbox. We can configure our email
> system to put a SYMLINK in each users mailbox to a single copy of the
> email. Thus saving (99 * email size in HDD space).

>so what happens when the user who has the real email deletes it?
>it vanishes for all users?

When ANY user deletes a message all they are doing is deleting the symlink.
The orig is not affected in anyway (and is marked read only to besure.)


>or do you have it in a separate place to the side?

We have have a 3+ TB  NFS  volume where all the email resides.
Each message is stored indepentent of who it was for.
(a database knows all the headers, to's, from, etc).
But in the end it is just a single  BODY  as a file.


We have 5 out going SMTP servers, 5 Incoming SMTP servers
and 3   IMAP/POP3  servers.. (using NFS to see the email files)

We already have custom SMTP and POP3 software (written inhouse).

I've tried to avoid recreating the wheel on IMAP as Binc is
perfect for our needs, till now. [boy is the IMAP protocol complex.]


>In that case, how do you check to see that it no longer exists on the
system?
?? don't get the question

The email is deleted after 3 years (we can do a  find  and delete
all symlinks pointing to old email).
We have to keep a copy of ALL email that passes through.


>This is a bad idea.  If anything, you should use hardlinks instead of=20
>symlinks, but then you have to have all of your mail storage on the same=20
>fi>lesystem, which, if you're THIS concerned about the few bytes you'll
save=
>by doing this, you probably have your mail store spread out across
multiple=
>filesystems.

A few bytes...  a 9 MB PDF is emailed locally  to 100 people (900MB
storage).
Thats  almost  1 GB for ONE EMAIL MESSAGE!  When only a single
9 MB had to be stored. As you can imagine..we have 10,000 messages
sent locally per day.
Thats A LOT of HDD that is wasted. [%99 waste on messages with
several local destinations.]

We fill a couple 300GB drives every MONTH! Just in EMAIL.
We'd save thousands per year in HDD's using symlinks.

We can already do the symlinks and have a functional system, I'm just
wanting binc to do a little more by letting us filter the message before it
give to the user (so we can customize each users email, if needed).

We use several tags in our internal email for doing personalization.
%%full_name%%     %%company_name%%    %%corp_logo%%
Normally our outgoing SMTP server will replace them..
but if we do the SYMLINKS, we'd have to move that replacing
to the  IMAP/POP servers (since there is only one copy of the email.)


Hardlinks are for when the original is in danger of being deleted. The
originals
are perment and are never deleted. [at one time we were actually keeping a
copy of all email so that users could delete theirs while we kept a backup]


> At this point everything would work fine... BUT our email system is
>able to replace the To: xxx  header to      To: [email protected]
>so that pop3/imap  servers can insert ONLY that users email (like
>BCC but actually visable to the user). (to the users the email was
>just sent to them, as they can't see any other addresses. BCC is
>being cracked down on many many spam scripts.)
>
> Is there a HOOK in BincIMAP that could call a 3rd party script
>when it opens the email files. Bincimap opens  file
> /email/domain/user/Maildir/.cur/1234
> calls   (datafile as STDIN)   | /prog/replace.pl [EMAIL PROTECTED]
 (prog + login UID) Bincimap uses the STDOUT as if it were the
>file it just opened.



REPLY
>no, binc doesn't have that, however, I believe there has been
>some discussion on the list about such functionality in the past.
>Please browse the archives for more information.

In the Archive I seen something for  spam folder hooks...
but it wasn't supported. not much about hooks otherwise.


I think I'll have to modify my source and just recompile...
updates will be a pain. I don't see any other way... either we
edit the FS system so it runs a filter when giving the files to
a program  or we use a program that offers  message/file filtering.
-- don't know if any other imapd software has  fileopen hooks.




A suggestion if anyone was inclined to add something like..

if  /etc/bincimap.hooks  exists then

at each major sub / function call in the program
 a hook could be placed..
it could execute whatever command was in the config, if found.

end if

That way users could have it run any number of scripts
anywere in the prog as they wish. It would make the
spam filter people happy as well as make binc more
configurable.






Reply via email to