@@ -82,6 +82,9 @@ public function createHttpRequest()
82
82
83
83
// path & query
84
84
$ requestUrl = isset ($ _SERVER ['REQUEST_URI ' ]) ? $ _SERVER ['REQUEST_URI ' ] : '/ ' ;
85
+ if (!$ this ->binary && (!preg_match (self ::CHARS , rawurldecode ($ requestUrl )) || preg_last_error ())) {
86
+ // TODO: invalid request
87
+ }
85
88
$ requestUrl = Strings::replace ($ requestUrl , $ this ->urlFilters ['url ' ]);
86
89
$ tmp = explode ('? ' , $ requestUrl , 2 );
87
90
$ path = Url::unescape ($ tmp [0 ], '%/?# ' );
@@ -98,10 +101,8 @@ public function createHttpRequest()
98
101
}
99
102
$ url ->setScriptPath ($ path );
100
103
101
- // GET, POST, COOKIE
104
+ // POST, COOKIE
102
105
$ useFilter = (!in_array (ini_get ('filter.default ' ), array ('' , 'unsafe_raw ' )) || ini_get ('filter.default_flags ' ));
103
-
104
- $ query = $ url ->getQueryParameters ();
105
106
$ post = $ useFilter ? filter_input_array (INPUT_POST , FILTER_UNSAFE_RAW ) : (empty ($ _POST ) ? array () : $ _POST );
106
107
$ cookies = $ useFilter ? filter_input_array (INPUT_COOKIE , FILTER_UNSAFE_RAW ) : (empty ($ _COOKIE ) ? array () : $ _COOKIE );
107
108
@@ -112,7 +113,7 @@ public function createHttpRequest()
112
113
113
114
// remove invalid characters
114
115
if (!$ this ->binary ) {
115
- $ list = array (& $ query , & $ post , & $ cookies );
116
+ $ list = array (& $ post , & $ cookies );
116
117
while (list ($ key , $ val ) = each ($ list )) {
117
118
foreach ($ val as $ k => $ v ) {
118
119
if (is_string ($ k ) && (!preg_match (self ::CHARS , $ k ) || preg_last_error ())) {
@@ -129,7 +130,6 @@ public function createHttpRequest()
129
130
}
130
131
unset($ list , $ key , $ val , $ k , $ v );
131
132
}
132
- $ url ->setQuery ($ query );
133
133
134
134
135
135
// FILES and create FileUpload objects
0 commit comments