Running qpsmtpd-async 0.42rc1 on Solaris 2.9 (Yes, qpsmtpd runs rather well on that). Queueing (if any) is done by a homebrew Net::SMTP plugin. No qmail.

Like Solaris usually does (grr), "hostname" returns the host node name (no dots), not the FQDN. config/me contains the FQDN, but $self->qp->config("me") _still_ returns the node name. I see the "sub config" code uses `hostname` as the default, but shouldn't it be seeing the config file itself regardless? Other file-based config works as you'd expect.

On a slightly different subject, strftime %z isn't supported on Solaris. Which causes issues on Received lines etc. If you don't have %z, what's the best way to generate it? (I assume I'll have to do my own received_line_hook, but does this seem reasonable for a function to generate it?

use Time::Timezone;

sub getemailtimezone {
    my $tz = tz_local_offset() / 36;
    local($tzv);
    return $tzv if $tzv;
    if ($tz < 0) {
        $tzv = sprintf("-%04d", -$tz);
    } else {
        $tzv = sprintf("+%04d", $tz);
    }
    return $tzv;
}

Reply via email to