We are doing something similar but opening deliver a bit different (with the user name and -q). Before we put this in production would the following be correct (the previous open of deliver is commented out):
//$MP = "/usr/local/cyrus/bin/deliver -q $user"; $MP = "/usr/local/cyrus/bin/deliver $user IGNOREQUOTA"; $fp = popen($MP,"w"); fputs($fp, $toheader); fputs($fp, $fromheader); fputs($fp, $replytoheader); fputs($fp, $dateheader); fputs($fp, $subjectheader); fputs($fp, "$message"); pclose($fp); Thanks, Bob > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of Ken Murchison > Sent: Wednesday, June 09, 2004 3:17 PM > To: Jamie Davey > Cc: [EMAIL PROTECTED] > Subject: Re: deliver -q won't ignore quotas > > > Jamie Davey wrote: > > > Hi all > > > > I am trying to get a script (derived from the archives of this list) > > running that will deliver a warning mail to users who are in danger of > > breaching / have breached their mailbox quota. The script > determines the > > users affected by running the quota command and then tries to send them > > a mail using deliver with the -q directive to deliver regardless of > > their quota usage. It works fine for users who are approaching their > > full quota but not for those currently over it. > > > > I have run the script without the deliver portion and manually sent the > > mails, again using "deliver -q -l" and get a "452 4.2.2 Over quota" > > error which disregards the recipient. Is this a bug with > deliver or am I > > doing something wrong > > If you're going to speak LMTP directly (-l option), then no other > options apply and you need to add the IGNOREQUOTA protocol element > yourself (see below). Actually, if you're writing your own LMTP client, > then talk to lmtpd directly instead of using deliver as a pass-through > proxy. > > > > > # Warning messages > > if (@warn) { > > open(DELIVER, "| $deliverprog -q -l"); > > print DELIVER "MAIL FROM:<[EMAIL PROTECTED]>\n"; > > foreach $warnuser (@warn) { > > print DELIVER "RCPT TO:<$warnuser>\n"; > > This should be "RCPT TO:<$warnuser> IGNOREQUOTA\n" > > > > }; > > print DELIVER "DATA\n"; > > print DELIVER <<EOF; > > -- > Kenneth Murchison Oceana Matrix Ltd. > Software Engineer 21 Princeton Place > 716-662-8973 x26 Orchard Park, NY 14127 > --PGP Public Key-- http://www.oceana.com/~ken/ksm.pgp > --- > Cyrus Home Page: http://asg.web.cmu.edu/cyrus > Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu > List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html > --- Cyrus Home Page: http://asg.web.cmu.edu/cyrus Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html