#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - scripts/activesync-invite-reply 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::activesync_invite_reply;
use strict;
use warnings;
use parent 'Cpanel::HelpfulScript';
use Cpanel::ActiveSync::InviteReply ();
use constant _OPTIONS => ();
unless ( caller() ) {
__PACKAGE__->new(@ARGV)->process() or exit 1;
}
=head1 NAME
activesync-invite-reply
=head1 USAGE
activesync-invite-reply [--help]
=head1 DESCRIPTION
Process an ActiveSync invite reply.
This utility is not meant to be run directly.
=cut
sub process {
alarm 60;
Cpanel::ActiveSync::InviteReply::logmsg('Processing an invite reply …');
my $message = do {
local $/;
readline STDIN;
};
if ( !$message ) {
Cpanel::ActiveSync::InviteReply::logmsg('Nothing came through on stdin');
return 1;
}
my $user = $ENV{REMOTE_USER} || die 'REMOTE_USER is not set';
my $http_auth = $ENV{HTTP_AUTHORIZATION} || die 'HTTP_AUTHORIZATION is not set';
if ( $message !~ /method=.?REPLY/i ) {
Cpanel::ActiveSync::InviteReply::logmsg('This does not appear to be an invite reply. You should pre-screen messages before launching this utility.');
return 1;
}
my $ok = eval { Cpanel::ActiveSync::InviteReply::process( $user, $http_auth, $message ) };
if ( my $exception = $@ ) {
Cpanel::ActiveSync::InviteReply::logmsg($exception);
}
return $ok;
}
1;
Mr. DellatioNx196 GaLers xh3LL Backd00r 1.0, Coded By Mr. DellatioNx196 - Bogor BlackHat