In plugins/check_badrcptto, is there a particular reason $recipient->user isn't lowercased while $recipient->host is? Or was it just oversight?
Those are the rules in the RFC's. The local portion must be transparently passed (i.e. capitalization or special quoting preserved) but the host name is compared/transmitted in a case insensitive fashion.
John