????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 3.147.104.221 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/sapi/phpdbg/ |
Upload File : |
/* * phpdbg_lexer.l */ #include "phpdbg.h" #include "phpdbg_cmd.h" #include "phpdbg_parser.h" #define LEX(v) (PHPDBG_G(lexer).v) #define YYCTYPE unsigned char #define YYSETCONDITION(x) LEX(state) = x; #define YYGETCONDITION() LEX(state) #define YYCURSOR LEX(cursor) #define YYMARKER LEX(marker) #define yyleng LEX(len) #define yytext ((char*) LEX(text)) #undef YYDEBUG #define YYDEBUG(a, b) #define YYFILL(n) #define NORMAL 0 #define RAW 1 #define INITIAL 2 ZEND_EXTERN_MODULE_GLOBALS(phpdbg); void phpdbg_init_lexer (phpdbg_param_t *stack, char *input TSRMLS_DC) { PHPDBG_G(parser_stack) = stack; YYSETCONDITION(INITIAL); LEX(text) = YYCURSOR = (unsigned char *) input; LEX(len) = strlen(input); } int phpdbg_lex (phpdbg_param_t* yylval) { TSRMLS_FETCH(); /* Slow, but this is not a major problem here. TODO: Use TSRMLS_DC */ restart: LEX(text) = YYCURSOR; /*!re2c re2c:yyfill:check = 0; T_TRUE 'true' T_YES 'yes' T_ON 'on' T_ENABLED 'enabled' T_FALSE 'false' T_NO 'no' T_OFF 'off' T_DISABLED 'disabled' T_EVAL 'ev' T_SHELL 'sh' T_IF 'if' T_RUN 'run' T_RUN_SHORT "r" WS [ \r\n\t]+ DIGITS [-]?[0-9\.]+ ID [^ \r\n\t:#\000]+ ADDR [0][x][a-fA-F0-9]+ OPCODE (ZEND_|zend_)([A-Za-z])+ INPUT [^\n\000]+ <!*> := yyleng = (size_t) YYCURSOR - (size_t) yytext; <*>[\n\000] { return 0; } <NORMAL>{T_IF}{WS} { YYSETCONDITION(RAW); phpdbg_init_param(yylval, EMPTY_PARAM); return T_IF; } <NORMAL>{ID}[:]{1}[//]{2} { phpdbg_init_param(yylval, STR_PARAM); yylval->str = zend_strndup(yytext, yyleng); yylval->len = yyleng; return T_PROTO; } <NORMAL>[#]{1} { return T_POUND; } <NORMAL>[:]{2} { return T_DCOLON; } <NORMAL>[:]{1} { return T_COLON; } <NORMAL>({T_YES}|{T_ON}|{T_ENABLED}|{T_TRUE}){WS} { phpdbg_init_param(yylval, NUMERIC_PARAM); yylval->num = 1; return T_TRUTHY; } <NORMAL>({T_NO}|{T_OFF}|{T_DISABLED}|{T_FALSE}){WS} { phpdbg_init_param(yylval, NUMERIC_PARAM); yylval->num = 0; return T_FALSY; } <NORMAL>{DIGITS} { phpdbg_init_param(yylval, NUMERIC_PARAM); yylval->num = atoi(yytext); return T_DIGITS; } <NORMAL>{ADDR} { phpdbg_init_param(yylval, ADDR_PARAM); yylval->addr = strtoul(yytext, 0, 16); return T_ADDR; } <NORMAL>{OPCODE} { phpdbg_init_param(yylval, OP_PARAM); yylval->str = zend_strndup(yytext, yyleng); yylval->len = yyleng; return T_OPCODE; } <NORMAL>{ID} { phpdbg_init_param(yylval, STR_PARAM); yylval->str = zend_strndup(yytext, yyleng); yylval->len = yyleng; return T_ID; } <RAW>{INPUT} { phpdbg_init_param(yylval, STR_PARAM); yylval->str = zend_strndup(yytext, yyleng); yylval->len = yyleng; return T_INPUT; } <*>{WS} { /* ignore whitespace */ goto restart; } <INITIAL>{T_EVAL}{WS} { YYSETCONDITION(RAW); phpdbg_init_param(yylval, EMPTY_PARAM); return T_EVAL; } <INITIAL>{T_SHELL}{WS} { YYSETCONDITION(RAW); phpdbg_init_param(yylval, EMPTY_PARAM); return T_SHELL; } <INITIAL>({T_RUN}|{T_RUN_SHORT}){WS} { YYSETCONDITION(RAW); phpdbg_init_param(yylval, EMPTY_PARAM); return T_RUN; } <INITIAL>. { YYSETCONDITION(NORMAL); YYCURSOR = LEX(text); goto restart; } */ }