MOON
Server: Apache
System: Linux host.communityeducationproject.org 3.10.0-1160.105.1.vz7.214.3 #1 SMP Tue Jan 9 19:45:01 MSK 2024 i686
User: ohiobwc (508)
PHP: 5.6.23
Disabled: show_source, system, passthru, popen, proc_open, allow_url_fopen
Upload Files
File: //scripts/eximconfgen
#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - eximconfgen                            Copyright(c) 2011 cPanel, Inc.
#                                                           All rights Reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited

use strict;
use Cpanel::Exim::Config ();

my $want_acls      = @ARGV && grep( /\-aclblock/,    @ARGV ) ? 1 : 0;
my $want_template  = @ARGV && grep( /\-template/,    @ARGV ) ? 1 : 0;
my %OPTS           = ();
my $use_alt_config = @ARGV && grep( /--local/,       @ARGV ) ? 1 : 0;
my $acl_dry_run    = @ARGV && grep( /--acl_dry_run/, @ARGV ) ? 1 : 0;
if ($use_alt_config) {
    foreach my $alt_config ( grep( /--local/, @ARGV ) ) {
        my ( $filetype, $file ) = $alt_config =~ /--([^=]+)=(.*)$/;
        $OPTS{$filetype} = $file;
    }
}
$OPTS{'acl_dry_run'} = 1 if $acl_dry_run;

my $exim_cfgobj = Cpanel::Exim::Config->new( 'fetch_acls' => $want_acls, %OPTS );

$exim_cfgobj->{'no_validate'}     = $want_acls;    #fetch_acls generates a template
$exim_cfgobj->{'no_ensure_setup'} = 1;

my %CFDATA = $exim_cfgobj->generate_config_file();

if ($want_acls) {
    print $CFDATA{'cf'}->{'ACLBLOCK'};
}
elsif ($want_template) {
    print $CFDATA{'template'};
}
else {
    print $CFDATA{'cfg'};
}