Find Jobs
Hire Freelancers

Postfix delivery agent, storing message with index

$100-500 USD

Closed
Posted almost 19 years ago

$100-500 USD

Paid on delivery
Custom postfix delivery agent. May be based on "deliver" or "virtual" agents. Goal is to archive copies of emails, for short-term quarantine and long-term storage. Format based on mbox or mbx format, not maildir, and a simple index entry is stored as well, either in that same file or in a separate index. We want to store all email for a domain in a format of 1 file per day, with an index that allows us to quickly and easily access an individual message in the file. Each domain has it's own storage directory: ie; /mail/d/o/dom.com. Each email has a unique mailid, a 12 char string containing [A-Za-z0-9+-]. Given a domain, date, and mailid, we need to QUICKLY retrieve the particular message. (A mbox scan is too slow). Scenario 1. Postfix is running on a server "[login to view URL]" 2. Postfix receives email to "mailid-YEARMONTHDATE(at)[login to view URL]" YEARMONTHDATE is in the format 20050721 3. Postfix does a standard map lookup for "YEARMONTHDATE(at)[login to view URL]" and finds the mail storage directory Standard postfix map types must be supported (ie Btree, Hash, CDB). example: mailid_YEARMONTHDATE(at)[login to view URL] d/o/[login to view URL] May also support a PCRE or regex substition map, but must ensure that "." and other disallowed characters are replaced with '_' ie [login to view URL] would be stored in /d/_/[login to view URL] 4. Delivery agent prepends a top level directory, such as "/mail". 5. Delivery agent stores message in /mail/d/o/[login to view URL] 6. Some sort of index is stored into the same or a separate file, again, one index file per day. The index must be fast and small. It could be as simple as an association between the mailid, the size of the message and the offset from the beginning of the mailfile. 7. The message must be able to be quickly retrieved via a simple php script, given the domain, YEARMONTHDATE and mailid. ie, an http request: [login to view URL] ## Deliverables 1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. a) Either a standalone delivery agent, or a patch to "deliver" or virtual, suitable to being applied with patch(1). b) A simple php script demonstrating the retrieval methodology. 2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables): a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment. b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request. 3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement). ## Platform Linux (specifically Centos 4, a RHEL4 clone) Postfix 2.3 Snapshot 20050716 PHP 5 for the php script example showing the retrieval methodology.
Project ID: 3818330

About the project

2 proposals
Remote project
Active 19 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
2 freelancers are bidding on average $429 USD for this job
User Avatar
See private message.
$756.50 USD in 10 days
5.0 (2 reviews)
4.9
4.9
User Avatar
See private message.
$102 USD in 10 days
5.0 (13 reviews)
2.7
2.7

About the client

Flag of UNITED STATES
Cerritos, United States
5.0
7
Payment method verified
Member since Dec 23, 2003

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.