summaryrefslogtreecommitdiffstats
path: root/usr/local/www/system_advanced_misc.php
diff options
context:
space:
mode:
authorChris Buechler <cmb@pfsense.org>2015-06-14 00:48:55 -0500
committerChris Buechler <cmb@pfsense.org>2015-06-14 02:19:23 -0500
commit26b8101b4f2d39e2f342237f7fa11ef9cce4b5f8 (patch)
treeedbe9789f3aac3de425df3d406cbeff948040bea /usr/local/www/system_advanced_misc.php
parent67d9685607eef7c679fda929ad4855be1b2f9dec (diff)
downloadpfsense-26b8101b4f2d39e2f342237f7fa11ef9cce4b5f8.zip
pfsense-26b8101b4f2d39e2f342237f7fa11ef9cce4b5f8.tar.gz
add input validation for proxy URL, port, user.
Conflicts: usr/local/www/system_advanced_misc.php
Diffstat (limited to 'usr/local/www/system_advanced_misc.php')
-rw-r--r--usr/local/www/system_advanced_misc.php12
1 files changed, 12 insertions, 0 deletions
diff --git a/usr/local/www/system_advanced_misc.php b/usr/local/www/system_advanced_misc.php
index 9d11b86..f6332c7 100644
--- a/usr/local/www/system_advanced_misc.php
+++ b/usr/local/www/system_advanced_misc.php
@@ -118,6 +118,18 @@ if ($_POST) {
$input_errors[] = gettext("/var Size must be numeric and should not be less than 60MB.");
}
+ if (!empty($_POST['proxyport']) && !is_port($_POST['proxyport'])) {
+ $input_errors[] = gettext("Proxy port must be a valid port number, 1-65535.");
+ }
+
+ if (!empty($_POST['proxyurl']) && !is_fqdn($_POST['proxyurl']) && !is_ipaddr($_POST['proxyurl'])) {
+ $input_errors[] = gettext("Proxy URL must be a valid IP address or FQDN.");
+ }
+
+ if (!empty($_POST['proxyuser']) && preg_match("/[^a-zA-Z0-9\.\-_@]/", $_POST['proxyuser'])) {
+ $input_errors[] = gettext("The proxy username contains invalid characters.");
+ }
+
if (!$input_errors) {
if ($_POST['harddiskstandby'] <> "") {
OpenPOWER on IntegriCloud