1
0
mirror of https://github.com/owncloud/bookmarks.git synced 2025-02-08 07:54:13 +01:00

use parse_url to verify dn, because filter_var has issues with special chars

This commit is contained in:
Arthur Schiwon 2016-04-20 21:51:30 +02:00
parent 5ee85bb140
commit 28ff9ebabe
No known key found for this signature in database
GPG Key ID: 7424F1874854DF23

View File

@ -96,7 +96,8 @@ class BookmarkController extends ApiController {
}
// Check if it is a valid URL (after adding http(s) prefix)
if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) {
$urlData = parse_url($url);
if ($urlData === false || !isset($urlData['scheme']) || !isset($urlData['host'])) {
return new JSONResponse(array('status' => 'error'), Http::STATUS_BAD_REQUEST);
}
@ -133,7 +134,8 @@ class BookmarkController extends ApiController {
public function editBookmark($id = null, $url = "", $item = array(), $title = "", $is_public = false, $record_id = null, $description = "") {
// Check if it is a valid URL
if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) {
$urlData = parse_url($url);
if ($urlData === false || !isset($urlData['scheme']) || !isset($urlData['host'])) {
return new JSONResponse(array(), Http::STATUS_BAD_REQUEST);
}
@ -190,7 +192,8 @@ class BookmarkController extends ApiController {
public function clickBookmark($url = "") {
// Check if it is a valid URL
if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) {
$urlData = parse_url($url);
if ($urlData === false || !isset($urlData['scheme']) || !isset($urlData['host'])) {
return new JSONResponse(array(), Http::STATUS_BAD_REQUEST);
}