!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: nginx/1.23.4. PHP/5.6.40-65+ubuntu20.04.1+deb.sury.org+1 

uname -a: Linux foro-restaurado-2 5.15.0-1040-oracle #46-Ubuntu SMP Fri Jul 14 21:47:21 UTC 2023
aarch64
 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/home/scripts/pba/phc-read-only/plugins/tools/   drwxrwxr-x
Free 83.25 GB of 96.73 GB (86.06%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     debug_zval.cpp (1.73 KB)      -rw-rw-r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * phc -- the open source PHP compiler
 * See doc/license/README.license for licensing information
 *
 * After each statement, add a debug_zval_dump call to each variable in the statement.
 */

#include "AST_transform.h"
#include "process_ast/AST_unparser.h"
#include "pass_manager/Plugin_pass.h"
#include "parsing/Parse_buffer.h"
#include "process_ir/General.h"

using namespace AST;

class Debug_zval : public Transform
{

protected:
    // we use the pass manager to lower some constructs we create, so that we
    // can run after the HIR.
    Pass_manager* pm; 

    List<Statement*>* debugs;
public:

    Debug_zval (Pass_manager* pm) : pm(pm)
    {
        debugs = new List<Statement*> ();
    }

    void post_statement (Statement *in, List<Statement*>* out)
    {
        out->push_back (in);
        out->push_back_all (debugs);
        debugs->clear ();
    }

    Variable* post_variable (Variable* var)
    {
        // printf ("$var: ");
        (*debugs 
            << "printf (\"\\" << var << ": \");"
        ).to_pass (s("rse"), var); // TODO do relative to current pass

        // Replace $x[] with just $x
        Variable* dumped_var = var;
        if (var->array_indices->size () == 1 && var->array_indices->front() == NULL)
        {
            dumped_var = var->clone ();
            dumped_var->array_indices->pop_front ();
        }

        // debug_zval_dump ($var);
        (*debugs 
            << "debug_zval_dump (" << dumped_var << ");"
        ).to_pass (s("rse"), var); // TODO do relative to current pass

        return var;
    }
};

extern "C" void load (Pass_manager* pm, Plugin_pass* pass)
{
    pm->add_before_named_pass (pass, s("AST-to-HIR"));
}

extern "C" void run_ast (AST::PHP_script* in, Pass_manager* pm, String* option)
{
    // We run the pass manager again on the generated code. We need to make sure
    // we dont cause infinite recursion
    in->transform_children (new Debug_zval (pm));
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by HackingTool | HackingTool | Generation time: 0.0043 ]--