[ SEA-GHOST MINI SHELL]

Path : /etc/yum/universal-hooks/pkgs/glibc/posttrans/
FILE UPLOADER :
Current File : //etc/yum/universal-hooks/pkgs/glibc/posttrans/100-glibc-restartsrv_httpd

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

# Copyright (c) 2023, cPanel, L.L.C.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

package ea_apache24_config_runtime::SOURCES::restartsrv_httpd;

use strict;
use warnings;

our $disable_flag_file = '/var/cpanel/ea4-disable-500-restartsrv_httpd-for-glibc';

run(@ARGV) unless caller();

sub run {
    my @args = @_;
    my ($path) = map( { m/^--pkg_list=(.*)$/ ? ($1) : () } @args );

    my $hard_restart = 0;
    if ( defined $path && -e $path ) {
        if ( open( my $fh, '<', $path ) ) {
            my @lines = <$fh>;
            close($fh);
            if ( grep { m/^ea-apache24$/ || m/^ea-apache24-mod[_\-]/ } @lines ) {
                $hard_restart = 1;
            }
        }
        else {
            warn "Failed to open “$path”: $!\n";
            $hard_restart = 1;    # err on the side of caution
        }
    }

    if( $0 =~ m{glibc-restartsrv_httpd$} ) {
        return 0 if -e $disable_flag_file;
        $hard_restart = 1
    }

    if ($hard_restart) {
        system('/usr/local/cpanel/scripts/restartsrv_httpd --stop');
        system('/usr/local/cpanel/scripts/restartsrv_httpd');
    }
    else {
        system('/usr/local/cpanel/scripts/restartsrv_httpd');
    }
}

1;

SEA-GHOST - SHELL CODING BY SEA-GHOST