Koozali.org: home of the SME Server

CRON DAEMON ERROR

hackersoft

CRON DAEMON ERROR
« on: March 13, 2007, 07:05:23 AM »
Anyone receiving messages similar to this one?:

Code: [Select]
Some errors has been found while checking. Please perform a manual check on this machine (nisws1)
/etc/cron.daily/0check4updates:

Cannot find a valid baseurl for repo: updates
Error: Cannot find a valid baseurl for repo: updates
/etc/cron.daily/conf-mod_ssl:

ERROR in /etc/e-smith/templates//home/e-smith/ssl.crt: Program fragment delivered error <<ERROR: Date::Manip unable to determine TimeZone.
at /usr/lib/perl5/vendor_perl/5.8.5/Date/Manip.pm line 3495
    Date::Manip::Date_TimeZone called at /usr/lib/perl5/vendor_perl/5.8.5/Date/Manip.pm line 661
    Date::Manip::Date_Init() called at /usr/lib/perl5/vendor_perl/5.8.5/Date/Manip.pm line 1395
    Date::Manip::ParseDate('Jul 14 08:51:43 GMT 2007\x{a}') called at /etc/e-smith/templates//home/e-smith/ssl.crt line 21
    eval 'package esmith::__TEMPLATE__::3; ;
#line 1 /etc/e-smith/templates//home/e-smith/ssl.crt

    use constant KEYLIFEINDAYS => 365;
    use Date::Manip;
    use Cwd;
    my $here = getcwd;

    my $FQDN = "$SystemName.$DomainName";
    my $crt = "/home/e-smith/ssl.crt/$FQDN.crt";
    my $key = "/home/e-smith/ssl.key/$FQDN.key";
    my $defaultCity = $ldap{defaultCity};
    my $defaultCompany = $ldap{defaultCompany};
    my $defaultDepartment = $ldap{defaultDepartment};
    my $email = "admin\\@$FQDN";

    if ( -f $crt )
    {
        my $expire = `openssl x509 -enddate -noout -in $crt`;
        $expire =~ s/^notAfter=//;
        $expire =~ s#(\\d{4}) (\\w{3})#$2 $1#;

        if ( Date_Cmp(\'today\', ParseDate($expire)) < 0 ) {
            my $expected_issuer = \'/C=--\' .
                              \'/ST=----\';
            $expected_issuer .= \'/L=\' . ($defaultCity ? $defaultCity : \'Newbury\');
            $expected_issuer .= \'/O=\' . ($defaultCompany ? $defaultCompany : \'My Company Ltd\');
            $expected_issuer .= "/OU=$defaultDepartment" if $defaultDepartment;
            $expected_issuer .= "/CN=$FQDN" .
                                  "/emailAddress=$email";
            my $issuer = `openssl x509 -issuer -noout -in $crt`;
            chomp $issuer;
            $issuer =~ s/^issuer= //;
            if ($issuer eq $expected_issuer)
        {
            # Old key file is still good. Read it out - processTemplate will work
            # out that it hasn\'t changed, and leave the old one in place
            open(C, "$crt") or die "Couldn\'t open crt file: $!";
            my @crt = <C>;
            chomp @crt;
            $OUT = join "\\n", @crt;
            close(C);
            return;
        }
    }
    }
    # go to somewhere private and safe where we can run programs
    # as root
    unless (-e "/tmp/ssl")
    {
    mkdir "/tmp/ssl", 0700;
    }
    chdir "/tmp/ssl" or die "Couldn\'t change to secure directory: $!";

    $SIG{ALRM} = sub { die "whoops, $program pipe broke" };

    unless (open(SSL,"-|"))
    {
    my $pid = open(RSACERT, "|-");
    if ($pid)
    {
        # parent

        # anonymous sub to crop a variable to a specified size
        my $cropLeft = sub {
        my ($var, $len) = @_;
        if (length($var) > $len)
        {
            $var = substr($var, 0, $len);
        }
        return $var;
        };

        # crop fields that are too long for X509:
        $defaultCity = &$cropLeft($defaultCity, 128);
        $defaultCompany = &$cropLeft($defaultCompany, 64);
        $defaultDepartment = &$cropLeft($defaultDepartment, 64);
        $FQDN = &$cropLeft($FQDN, 64);
        $email = &$cropLeft($email, 40);

        foreach (
            "--",
            "----",
            "$defaultCity",
            "$defaultCompany",
            "$defaultDepartment",
            "$FQDN",
            "$email"
            )
        {
        print RSACERT "$_\\n";
        }
        close(RSACERT) || die "RSACERT kid exited $?";
        exit (0);
    }
    else
    {
        # child
        exec("/usr/bin/openssl",
        qw(req -new -key),
        $key,
        qw(-x509 -days), KEYLIFEINDAYS,
        qw(-set_serial), time(),
        )
            || die "can\'t exec program: $!";
        # NOTREACHED
    }
    }
    while (<SSL>)
    {
    $OUT .= $_;
    }
    close(SSL) or die "Closing openssl pipe reported: $!";
    chdir $here;
;' called at /usr/lib/perl5/vendor_perl/5.8.5/Text/Template.pm line 319
    Text::Template::fill_in('Text::Template=HASH(0x9dfea88)', 'HASH', 'ARRAY(0x9df5390)', 'PACKAGE', 'esmith::__TEMPLATE__::3', 'BROKEN', 'CODE(0x9ded02c)', 'UNTAINT', 1, ...) called at /usr/lib/perl5/vendor_perl/5.8.5/Text/Template.pm line 382
    Text::Template::fill_in_file('/etc/e-smith/templates//home/e-smith/ssl.crt', 'HASH', 'ARRAY(0x9df5390)', 'PACKAGE', 'esmith::__TEMPLATE__::3', 'BROKEN', 'CODE(0x9ded02c)', 'UNTAINT', 1, ...) called at /usr/lib/perl5/site_perl/esmith/templates.pm line 528
    esmith::templates::processTemplate('HASH(0x9e0081c)') called at /etc/e-smith/templates//home/e-smith/ssl.pem/40crt line 10
    eval 'package esmith::__TEMPLATE__::1; ;
#line 1 /etc/e-smith/templates//home/e-smith/ssl.pem/40crt

    my $domain = $DomainName || "localdomain";
    my $hostname = $SystemName || "localhost";

    my $crt = $modSSL{\'crt\'};
    unless ($crt)
    {
    $crt = "/home/e-smith/ssl.crt/$hostname.$domain.crt";
    use esmith::templates;
    esmith::templates::processTemplate({
        TEMPLATE_PATH => "/home/e-smith/ssl.crt/crt",
        OUTPUT_FILENAME => $crt,
        });
    }
    open(CRT, $crt) or die "Could not open crt file: $!";
    my @crt = <CRT>;
    chomp @crt;
    $OUT = join "\\n", @crt;
    close CRT;
;' called at /usr/lib/perl5/vendor_perl/5.8.5/Text/Template.pm line 319
    Text::Template::fill_in('Text::Template=HASH(0x9ded1b8)', 'HASH', 'ARRAY(0x9c9b324)', 'PACKAGE', 'esmith::__TEMPLATE__::1', 'BROKEN', 'CODE(0x9d26a60)', 'UNTAINT', 1, ...) called at /usr/lib/perl5/vendor_perl/5.8.5/Text/Template.pm line 382
    Text::Template::fill_in_file('/etc/e-smith/templates//home/e-smith/ssl.pem/40crt', 'HASH', 'ARRAY(0x9c9b324)', 'PACKAGE', 'esmith::__TEMPLATE__::1', 'BROKEN', 'CODE(0x9d26a60)', 'UNTAINT', 1, ...) called at /usr/lib/perl5/site_perl/esmith/templates.pm line 528
    esmith::templates::processTemplate('HASH(0x9b15b2c)') called at /sbin/e-smith/expand-template line 45>> at template line 1
WARNING in /etc/e-smith/templates//home/e-smith/ssl.pem/40crt: ERROR: Template processing failed for //home/e-smith/ssl.crt/nisws1.niva-is.net.crt: 1 fragment generated errors
at /etc/e-smith/templates//home/e-smith/ssl.pem/40crt line 10
WARNING: Template processing succeeded for //home/e-smith/ssl.pem/nisws1.niva-is.net.pem: 1 fragment generated warnings
at /sbin/e-smith/expand-template line 45


Is it a bug? I'm getting e-mails like that from my SME box after the latest updates... Any idea?

Offline bpivk

  • *
  • 908
  • +0/-0
    • http://www.bezigrad.com
CRON DAEMON ERROR
« Reply #1 on: March 13, 2007, 10:48:23 AM »
Bugtracker is your friend.
"It should just work" if it doesn't report it. Thanks!