diff options
author | Lukas Fleischer <archlinux@cryptocrack.de> | 2013-03-05 11:22:44 +0100 |
---|---|---|
committer | Lukas Fleischer <archlinux@cryptocrack.de> | 2013-03-05 13:26:35 +0100 |
commit | 1f27b2fb9bcb61f4ea66dd15b69565428b36f639 (patch) | |
tree | 90350d4d7538410b04654280a1fd03a8e5decf1e | |
parent | 4bb6e8874237d6b81b46bbaf5726d6f15790594b (diff) |
pkgsubmit.php: Move URL protocol check down
Move all PKGBUILD field validations to a central location.
Also, change $pkgbuild[] to $new_pkgbuild[] in order to parse evaluated
PKGBUILD fields instead of raw ones.
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
-rw-r--r-- | web/html/pkgsubmit.php | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/web/html/pkgsubmit.php b/web/html/pkgsubmit.php index 685d5cb..d9bb6bc 100644 --- a/web/html/pkgsubmit.php +++ b/web/html/pkgsubmit.php @@ -211,20 +211,6 @@ if ($uid): } } - # TODO This is where other additional error checking can be - # performed. Examples: #md5sums == #sources?, md5sums of any - # included files match?, install scriptlet file exists? - # - - # Check for http:// or other protocol in url - # - if (!$error) { - $parsed_url = parse_url($pkgbuild['url']); - if (!$parsed_url['scheme']) { - $error = __("Package URL is missing a protocol (ie. http:// ,ftp://)"); - } - } - # Now, run through the pkgbuild array, and do "eval" and simple substituions. if (!$error) { while (list($k, $v) = each($pkgbuild)) { @@ -288,6 +274,18 @@ if ($uid): } } + # Check for http:// or other protocol in url + if (!$error) { + $parsed_url = parse_url($new_pkgbuild['url']); + if (!$parsed_url['scheme']) { + $error = __("Package URL is missing a protocol (ie. http:// ,ftp://)"); + } + } + + # TODO: This is where other additional error checking can be + # performed. Examples: #md5sums == #sources?, md5sums of any + # included files match?, install scriptlet file exists? + # The DB schema imposes limitations on number of allowed characters # Print error message when these limitations are exceeded if (!$error) { |