> > (It loses the (To|Cc): qpsmtpd at perl.org, so it's really annoying to
> > reply to.)
> That's a carbon-based error (i.e. /I/ am deleting it).  Since I am
> using a newsreader (and I'm not on the list), if I leave that header
> in, I get a warning message from the listserve software.  I'll stop
> deleting the cc: and just ignore the warnings from now on.

Lets take this off list.  Send me the warning message.

> > Um.  Not sure about this problem.  My test instance doesn't seem to
> > touch that.  I hope its not something I broke.
> 
> I didn't have much time to debug it; maybe I'll get back to it on
> Tuesday (if there aren't any other fires to put out, like losing both
> T-1's to the phone switch).

Fire!  Fire!

> My code permits VRFY only from specified IP addresses/blocks, and does
> a direct query into the user database.  The only reason I call it a
> "crude hack" is that I implemented it using
> 
>       *Qpsmtpd::SMTP::vrfy = \&my_vrfy;
> 
> which is not what I would call an elegant interface... ;)

That's just Perl.  :)  Not really too awful.  

Considering how verify isn't really implemented at all right now:

sub vrfy {
  shift->respond(252, "Just try sending a mail and we'll see how it turns out ..
.");
}

That should probably be:

sub vrfy {
    my $self = shift;
    my ($rc, $msg) = $self->run_hooks("vrfy");
    if ($rc == DONE) {
      return 1;
    }
    elsif ($rc == DENY) {
      $self->respond(554, $msg || "Access Denied");
      $self->reset_transaction();
      return 1;
    }
    elsif ($rc == OK) {
      $self->respond(250, $msg || "User OK")
      return 1;
    } 
    else # $rc == DECLINED or anything else
      $self->respond(252, "Just try sending a mail and we'll see how it turns out 
...");
      return 1;
     }
}

(if someone else sanity checks that, I'll apply it.)


-R

Reply via email to