MMCT TEAM
Server IP : 103.53.40.154  /  Your IP : 3.145.63.148
Web Server : Apache
System : Linux md-in-35.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : ppcad7no ( 715)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /../scripts/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //../scripts/email_hold_maintenance
#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/email_hold_maintenance          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 scripts::email_hold_maintenance;

use strict;
use warnings;

use Cpanel::PIDFile ();

use Cpanel::Email::Accounts::HoldMaintenance ();
use Cpanel::Email::Accounts::Paths           ();
use Cpanel::FileUtils::Dir                   ();

=encoding utf-8

=head1 NAME

scripts::email_hold_maintenance

=head1 SYNOPSIS

    email_hold_maintenance --help

This script will remove the tracking file for email holds that have been released or
deleted from the mail queue.

=cut

use constant PIDFILE => '/var/run/email_hold_maintenance.pid';

use parent qw( Cpanel::HelpfulScript );

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

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

    return Cpanel::PIDFile->do(
        PIDFILE,
        sub {
            $self->run();
        }
    );
}

sub _OPTIONS { }

sub run {

    return if !-e $Cpanel::Email::Accounts::Paths::EMAIL_HOLDS_BASE_PATH;

    foreach my $sender ( @{ Cpanel::FileUtils::Dir::get_directory_nodes($Cpanel::Email::Accounts::Paths::EMAIL_HOLDS_BASE_PATH) } ) {
        Cpanel::Email::Accounts::HoldMaintenance::remove_hold_files_for_sender($sender);
    }

    return;
}

1;

MMCT - 2023