Mini Shell

Direktori : /scripts/
Upload File :
Current File : //scripts/update_dkim_keys

#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/update_dkim_keys                Copyright 2022 cPanel, L.L.C.
#                                                           All rights reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited

#

package Script::Update::DKIM::Keys;

use strict;
use warnings;

use Cpanel::Config::Users ();
use Cpanel::DKIM          ();
use Cpanel::Logger        ();

__PACKAGE__->script(@ARGV) unless caller();

sub script {
    my ($class) = @_;

    my $logger = Cpanel::Logger->new();

    # This logic is left out of Cpanel::DKIM::Transaction because
    # full DKIM setup for every user is an exceptional case, not logic
    # we need to load every time we make a DKIM change.
    for my $username ( sort( Cpanel::Config::Users::getcpusers() ) ) {
        next if !Cpanel::DKIM::has_dkim( user => $username );

        $logger->info("Regenerating DKIM keys for user “$username” …");

        my ( $status, $msg ) = Cpanel::DKIM::setup_domain_keys(
            user => $username,
        );

        $logger->warn($msg) if !$status;
    }

    $logger->info('The system will now update each hosted domain’s DKIM validity cache.');

    require 'scripts/refresh-dkim-validity-cache';    ## no critic qw(RequireBarewordIncludes)

    scripts::refresh_dkim_validity_cache->new('--all-domains')->run();

    return;
}

1;

Zerion Mini Shell 1.0