Viewing File: /usr/local/cpanel/base/backend/webdiskvbs.cgi

#!/usr/local/cpanel/3rdparty/bin/perl
#                                      Copyright 2024 WebPros International, LLC
#                                                           All rights reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited

use cPstrict;
use Cpanel::Encoder::URI  ();
use Cpanel::Encoder::Tiny ();

my ( $domain, $ssl, $port ) = split( /\|/, Cpanel::Encoder::URI::uri_decode_str( $ENV{'QUERY_STRING'} ) );

# Output encode the values
$domain = Cpanel::Encoder::Tiny::safe_html_encode_str($domain);

# Normalize values
$ssl  = int($ssl);
$port = int($port);
$port = $port ? $port : $ssl ? '2078' : '2077';

my $url       = ( $ssl ? 'https://' : 'http://' ) . $domain . ':' . $port . '/';
my $secure    = $ssl ? 'Secure ' : '';
my $txtsecure = $ssl ? 'Secure ' : '';
my $usecure   = $ssl ? 'Secure_' : '';

print <<EOM;
Content-Type: application/download; name="${domain} ${secure}WebDisk.vbs";
Content-Disposition: attachment; filename="${domain} ${secure}WebDisk.vbs";

EOM

open( my $wdisk_fh, '<', '/usr/local/cpanel/base/backend/webdisk.vbs' ) or die $!;
while ( readline($wdisk_fh) ) {
    s/\%domain\%/$domain/g;
    s/\%url\%/$url/g;
    s/\%txtsecure\%/$txtsecure/g;
    s/\%secure\%/$secure/g;
    s/\%usecure\%/$usecure/g;
    print;
}
close($wdisk_fh);
Back to Directory File Manager