|
|
|
@ -50,65 +50,87 @@ loop: |
|
|
|
|
|
|
|
if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); |
|
|
|
yych = *YYCURSOR; |
|
|
|
if (yych <= '>') { |
|
|
|
if (yych <= 0x19) { |
|
|
|
if (yych <= 0x00) goto yy16; |
|
|
|
if (yych == '\n') goto yy15; |
|
|
|
goto yy14; |
|
|
|
if (yych <= '[') { |
|
|
|
if (yych <= ')') { |
|
|
|
if (yych <= '\t') { |
|
|
|
if (yych <= 0x00) goto yy21; |
|
|
|
goto yy23; |
|
|
|
} else { |
|
|
|
if (yych <= '\n') goto yy2; |
|
|
|
if (yych <= 0x19) goto yy23; |
|
|
|
goto yy11; |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (yych <= '*') { |
|
|
|
if (yych <= ')') goto yy18; |
|
|
|
goto yy6; |
|
|
|
if (yych <= '/') { |
|
|
|
if (yych <= '*') goto yy7; |
|
|
|
if (yych <= '.') goto yy11; |
|
|
|
goto yy3; |
|
|
|
} else { |
|
|
|
if (yych != '/') goto yy18; |
|
|
|
if (yych == '?') goto yy9; |
|
|
|
goto yy11; |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (yych <= 0x7F) { |
|
|
|
if (yych <= '?') goto yy8; |
|
|
|
if (yych == '\\') goto yy4; |
|
|
|
goto yy18; |
|
|
|
if (yych <= 0xEC) { |
|
|
|
if (yych <= 0xC1) { |
|
|
|
if (yych <= '\\') goto yy5; |
|
|
|
if (yych <= 0x7F) goto yy11; |
|
|
|
goto yy23; |
|
|
|
} else { |
|
|
|
if (yych <= 0xDF) goto yy12; |
|
|
|
if (yych <= 0xE0) goto yy14; |
|
|
|
goto yy15; |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (yych <= 0xDF) { |
|
|
|
if (yych <= 0xBF) goto yy14; |
|
|
|
goto yy10; |
|
|
|
if (yych <= 0xF0) { |
|
|
|
if (yych <= 0xED) goto yy16; |
|
|
|
if (yych <= 0xEF) goto yy17; |
|
|
|
goto yy18; |
|
|
|
} else { |
|
|
|
if (yych <= 0xEF) goto yy12; |
|
|
|
if (yych <= 0xF7) goto yy13; |
|
|
|
goto yy14; |
|
|
|
if (yych <= 0xF3) goto yy19; |
|
|
|
if (yych <= 0xF4) goto yy20; |
|
|
|
goto yy23; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
yy2: |
|
|
|
YYCURSOR = YYMARKER; |
|
|
|
if (yyaccept <= 0) { |
|
|
|
goto yy4; |
|
|
|
} else { |
|
|
|
goto yy13; |
|
|
|
} |
|
|
|
yy3: |
|
|
|
yyaccept = 0; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= '-') goto yy3; |
|
|
|
if (yych <= '.') goto yy29; |
|
|
|
if (yych <= '/') goto yy30; |
|
|
|
yy3: |
|
|
|
#line 105 "ext/phar/phar_path_check.re" |
|
|
|
if (yych <= '-') goto yy4; |
|
|
|
if (yych <= '.') goto yy35; |
|
|
|
if (yych <= '/') goto yy36; |
|
|
|
yy4: |
|
|
|
#line 88 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
goto loop; |
|
|
|
} |
|
|
|
#line 93 "ext/phar/phar_path_check.c" |
|
|
|
yy4: |
|
|
|
#line 115 "ext/phar/phar_path_check.c" |
|
|
|
yy5: |
|
|
|
++YYCURSOR; |
|
|
|
#line 63 "ext/phar/phar_path_check.re" |
|
|
|
#line 72 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error = "back-slash"; |
|
|
|
return pcr_err_back_slash; |
|
|
|
} |
|
|
|
#line 101 "ext/phar/phar_path_check.c" |
|
|
|
yy6: |
|
|
|
#line 123 "ext/phar/phar_path_check.c" |
|
|
|
yy7: |
|
|
|
++YYCURSOR; |
|
|
|
#line 67 "ext/phar/phar_path_check.re" |
|
|
|
#line 76 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error = "star"; |
|
|
|
return pcr_err_star; |
|
|
|
} |
|
|
|
#line 109 "ext/phar/phar_path_check.c" |
|
|
|
yy8: |
|
|
|
#line 131 "ext/phar/phar_path_check.c" |
|
|
|
yy9: |
|
|
|
++YYCURSOR; |
|
|
|
#line 71 "ext/phar/phar_path_check.re" |
|
|
|
#line 80 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
if (**s == '/') { |
|
|
|
(*s)++; |
|
|
|
@ -117,39 +139,66 @@ yy8: |
|
|
|
*error = NULL; |
|
|
|
return pcr_use_query; |
|
|
|
} |
|
|
|
#line 121 "ext/phar/phar_path_check.c" |
|
|
|
yy10: |
|
|
|
++YYCURSOR; |
|
|
|
if ((yych = *YYCURSOR) <= 0x7F) goto yy11; |
|
|
|
if (yych <= 0xBF) goto yy27; |
|
|
|
#line 143 "ext/phar/phar_path_check.c" |
|
|
|
yy11: |
|
|
|
#line 88 "ext/phar/phar_path_check.re" |
|
|
|
yych = *++YYCURSOR; |
|
|
|
goto yy4; |
|
|
|
yy12: |
|
|
|
++YYCURSOR; |
|
|
|
if ((yych = *YYCURSOR) <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
yy13: |
|
|
|
#line 104 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error ="illegal character"; |
|
|
|
return pcr_err_illegal_char; |
|
|
|
} |
|
|
|
#line 132 "ext/phar/phar_path_check.c" |
|
|
|
yy12: |
|
|
|
#line 157 "ext/phar/phar_path_check.c" |
|
|
|
yy14: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy11; |
|
|
|
if (yych <= 0xBF) goto yy24; |
|
|
|
goto yy11; |
|
|
|
yy13: |
|
|
|
if (yych <= 0x9F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy34; |
|
|
|
goto yy13; |
|
|
|
yy15: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy11; |
|
|
|
if (yych <= 0xBF) goto yy19; |
|
|
|
goto yy11; |
|
|
|
yy14: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
goto yy11; |
|
|
|
yy15: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
goto yy11; |
|
|
|
if (yych <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy33; |
|
|
|
goto yy13; |
|
|
|
yy16: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0x9F) goto yy32; |
|
|
|
goto yy13; |
|
|
|
yy17: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy31; |
|
|
|
goto yy13; |
|
|
|
yy18: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x8F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy29; |
|
|
|
goto yy13; |
|
|
|
yy19: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0xBF) goto yy27; |
|
|
|
goto yy13; |
|
|
|
yy20: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
if (yych <= 0x7F) goto yy13; |
|
|
|
if (yych <= 0x8F) goto yy24; |
|
|
|
goto yy13; |
|
|
|
yy21: |
|
|
|
++YYCURSOR; |
|
|
|
#line 92 "ext/phar/phar_path_check.re" |
|
|
|
#line 91 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
if (**s == '/') { |
|
|
|
(*s)++; |
|
|
|
@ -163,84 +212,92 @@ yy16: |
|
|
|
*error = NULL; |
|
|
|
return pcr_is_ok; |
|
|
|
} |
|
|
|
#line 167 "ext/phar/phar_path_check.c" |
|
|
|
yy18: |
|
|
|
#line 216 "ext/phar/phar_path_check.c" |
|
|
|
yy23: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
goto yy3; |
|
|
|
yy19: |
|
|
|
goto yy13; |
|
|
|
yy24: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy20; |
|
|
|
if (yych <= 0xBF) goto yy21; |
|
|
|
yy20: |
|
|
|
YYCURSOR = YYMARKER; |
|
|
|
if (yyaccept <= 0) { |
|
|
|
goto yy3; |
|
|
|
} else { |
|
|
|
goto yy11; |
|
|
|
} |
|
|
|
yy21: |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych >= 0xC0) goto yy2; |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy20; |
|
|
|
if (yych >= 0xC0) goto yy20; |
|
|
|
++YYCURSOR; |
|
|
|
#line 85 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
goto loop; |
|
|
|
} |
|
|
|
#line 191 "ext/phar/phar_path_check.c" |
|
|
|
yy24: |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych >= 0xC0) goto yy2; |
|
|
|
yy26: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy20; |
|
|
|
if (yych >= 0xC0) goto yy20; |
|
|
|
++YYCURSOR; |
|
|
|
#line 82 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
goto loop; |
|
|
|
} |
|
|
|
#line 201 "ext/phar/phar_path_check.c" |
|
|
|
goto yy4; |
|
|
|
yy27: |
|
|
|
++YYCURSOR; |
|
|
|
#line 79 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
goto loop; |
|
|
|
} |
|
|
|
#line 208 "ext/phar/phar_path_check.c" |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych >= 0xC0) goto yy2; |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy29: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x00) goto yy33; |
|
|
|
if (yych <= '-') goto yy20; |
|
|
|
if (yych <= '.') goto yy32; |
|
|
|
if (yych <= '/') goto yy33; |
|
|
|
goto yy20; |
|
|
|
yy30: |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych >= 0xC0) goto yy2; |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy31: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy32: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy33: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy34: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x7F) goto yy2; |
|
|
|
if (yych <= 0xBF) goto yy26; |
|
|
|
goto yy2; |
|
|
|
yy35: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x00) goto yy39; |
|
|
|
if (yych <= '-') goto yy2; |
|
|
|
if (yych <= '.') goto yy38; |
|
|
|
if (yych <= '/') goto yy39; |
|
|
|
goto yy2; |
|
|
|
yy36: |
|
|
|
++YYCURSOR; |
|
|
|
#line 51 "ext/phar/phar_path_check.re" |
|
|
|
#line 60 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error = "double slash"; |
|
|
|
return pcr_err_double_slash; |
|
|
|
} |
|
|
|
#line 223 "ext/phar/phar_path_check.c" |
|
|
|
yy32: |
|
|
|
#line 280 "ext/phar/phar_path_check.c" |
|
|
|
yy38: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
if (yych <= 0x00) goto yy35; |
|
|
|
if (yych == '/') goto yy35; |
|
|
|
goto yy20; |
|
|
|
yy33: |
|
|
|
if (yych <= 0x00) goto yy41; |
|
|
|
if (yych == '/') goto yy41; |
|
|
|
goto yy2; |
|
|
|
yy39: |
|
|
|
++YYCURSOR; |
|
|
|
#line 59 "ext/phar/phar_path_check.re" |
|
|
|
#line 68 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error = "current directory reference"; |
|
|
|
return pcr_err_curr_dir; |
|
|
|
} |
|
|
|
#line 236 "ext/phar/phar_path_check.c" |
|
|
|
yy35: |
|
|
|
#line 293 "ext/phar/phar_path_check.c" |
|
|
|
yy41: |
|
|
|
++YYCURSOR; |
|
|
|
#line 55 "ext/phar/phar_path_check.re" |
|
|
|
#line 64 "ext/phar/phar_path_check.re" |
|
|
|
{ |
|
|
|
*error = "upper directory reference"; |
|
|
|
return pcr_err_up_dir; |
|
|
|
} |
|
|
|
#line 244 "ext/phar/phar_path_check.c" |
|
|
|
#line 301 "ext/phar/phar_path_check.c" |
|
|
|
} |
|
|
|
#line 108 "ext/phar/phar_path_check.re" |
|
|
|
|
|
|
|
|