[comp.protocols.appletalk] "popper" POP3 server mod

moyman@ECN.PURDUE.EDU (James M Moya) (12/12/90)

popper generally works in the following manner:

When the server is queried (with whatever front-end app) to download mail
for a user, it creates a temp file called ".user.pop", mode 666 (in
/usr/spool/mail for most). Reads/copies the mail from it's "normal"
location (/usr/spool/mail/user for most) into that temp file. Downloads the
mail from the temp file to the mac.  After a successful downloading of the
mail popper zeroes out the temp file. It stays there until it is used once
again to download mail. 

Not really wanting mode 666 files laying around I removed the "ifdef"s from
the following (pop_dropcopy.c):

#ifdef DEBUG
    if (!p->debug)
        unlink (p->temp_drop);
#endif DEBUG

Which then removes the temp file after it is used... I poked around a bit
and this didn't seem unreasonable (or break anything). Anybody know
something I am missing (or "feature" I am losing) for doing this...
--moya

--Mike Moya 
--Macintosh Systems and Networking
--Engineering Computer Network, Purdue University
--moyman@ecn.purdue.edu or ..!pur-ee!moyman

marc@PostImage.COM (Marc Boucher) (12/28/90)

moyman@ECN.PURDUE.EDU (James M Moya) writes:

>popper generally works in the following manner:

>When the server is queried (with whatever front-end app) to download mail
>for a user, it creates a temp file called ".user.pop", mode 666 (in
>/usr/spool/mail for most). Reads/copies the mail from it's "normal"
>location (/usr/spool/mail/user for most) into that temp file. Downloads the
>mail from the temp file to the mac.  After a successful downloading of the
>mail popper zeroes out the temp file. It stays there until it is used once
>again to download mail. 

>Not really wanting mode 666 files laying around I removed the "ifdef"s from
>the following (pop_dropcopy.c):

>#ifdef DEBUG
>    if (!p->debug)
>        unlink (p->temp_drop);
>#endif DEBUG

I did the same, and noticed no undesirable side effects.
You will probably want to do the same thing to:

#ifdef DEBUG                                        
            if (!p->debug) (void)unlink (temp_xmit);
#endif DEBUG

in pop_xmit.c.

>Which then removes the temp file after it is used... I poked around a bit
>and this didn't seem unreasonable (or break anything). Anybody know
>something I am missing (or "feature" I am losing) for doing this...
>--moya

Marc.

-- 
Marc Boucher                    Internet: mboucher@PostImage.COM BIX: mboucher
Dir., Informatique              Telephone: (514) 489-8989        FAX: 489-0242
(H) PostImage Inc.              6265 St-Jacques O., Montreal Qc CANADA H4B 1T8