|
41 | 41 |
|
42 | 42 | // Set domain to lowercase and remove www prefix |
43 | 43 | $v_domain = preg_replace("/^www\./i", "", $_POST['v_domain']); |
44 | | - $v_domain = escapeshellarg($v_domain); |
45 | 44 | $v_domain = strtolower($v_domain); |
46 | 45 |
|
47 | 46 | // Define domain ip address |
|
118 | 117 |
|
119 | 118 | // Add web domain |
120 | 119 | if (empty($_SESSION['error_msg'])) { |
121 | | - exec (HESTIA_CMD."v-add-web-domain ".$user." ".$v_domain." ".$v_ip." 'no' ".$aliases." ".$proxy_ext, $output, $return_var); |
| 120 | + exec (HESTIA_CMD."v-add-web-domain ".$user." ".escapeshellarg($v_domain)." ".$v_ip." 'no' ".$aliases." ".$proxy_ext, $output, $return_var); |
122 | 121 | check_return_code($return_var,$output); |
123 | 122 | unset($output); |
124 | 123 | $domain_added = empty($_SESSION['error_msg']); |
125 | 124 | } |
126 | 125 |
|
127 | 126 | // Add DNS domain |
128 | 127 | if (($_POST['v_dns'] == 'on') && (empty($_SESSION['error_msg']))) { |
129 | | - exec (HESTIA_CMD."v-add-dns-domain ".$user." ".$v_domain." ".$v_public_ip." '' '' '' '' '' '' '' '' 'no'", $output, $return_var); |
| 128 | + exec (HESTIA_CMD."v-add-dns-domain ".$user." ".escapeshellarg($v_domain)." ".$v_public_ip." '' '' '' '' '' '' '' '' 'no'", $output, $return_var); |
130 | 129 | check_return_code($return_var,$output); |
131 | 130 | unset($output); |
132 | 131 | } |
133 | 132 |
|
134 | 133 | // Add DNS for domain aliases |
135 | 134 | if (($_POST['v_dns'] == 'on') && (empty($_SESSION['error_msg']))) { |
136 | 135 | foreach ($aliases_arr as $alias) { |
137 | | - if ($alias != "www.".$_POST['v_domain']) { |
| 136 | + if ($alias != "www.".$v_domain) { |
138 | 137 | $alias = escapeshellarg($alias); |
139 | 138 | exec (HESTIA_CMD."v-add-dns-on-web-alias ".$user." ".$alias." ".$v_ip." 'no'", $output, $return_var); |
140 | 139 | check_return_code($return_var,$output); |
|
145 | 144 |
|
146 | 145 | // Add mail domain |
147 | 146 | if (($_POST['v_mail'] == 'on') && (empty($_SESSION['error_msg']))) { |
148 | | - exec (HESTIA_CMD."v-add-mail-domain ".$user." ".$v_domain, $output, $return_var); |
| 147 | + exec (HESTIA_CMD."v-add-mail-domain ".$user." ".escapeshellarg($v_domain), $output, $return_var); |
149 | 148 | check_return_code($return_var,$output); |
150 | 149 | unset($output); |
151 | 150 | } |
152 | 151 |
|
153 | 152 | // Delete proxy support |
154 | 153 | if ((!empty($_SESSION['PROXY_SYSTEM'])) && ($_POST['v_proxy'] == 'off') && (empty($_SESSION['error_msg']))) { |
155 | 154 | $ext = escapeshellarg($ext); |
156 | | - exec (HESTIA_CMD."v-delete-web-domain-proxy ".$user." ".$v_domain." 'no'", $output, $return_var); |
| 155 | + exec (HESTIA_CMD."v-delete-web-domain-proxy ".$user." ".escapeshellarg($v_domain)." 'no'", $output, $return_var); |
157 | 156 | check_return_code($return_var,$output); |
158 | 157 | unset($output); |
159 | 158 | } |
160 | 159 |
|
161 | 160 | // Add Lets Encrypt support |
162 | 161 | if ((!empty($_POST['v_letsencrypt'])) && (empty($_SESSION['error_msg']))) { |
163 | | - exec (HESTIA_CMD."v-schedule-letsencrypt-domain ".$user." ".$v_domain, $output, $return_var); |
| 162 | + exec (HESTIA_CMD."v-schedule-letsencrypt-domain ".$user." ".escapeshellarg($v_domain), $output, $return_var); |
164 | 163 | check_return_code($return_var,$output); |
165 | 164 | unset($output); |
166 | 165 | } else { |
|
195 | 194 | } |
196 | 195 |
|
197 | 196 | $v_ssl_home = escapeshellarg($_POST['v_ssl_home']); |
198 | | - exec (HESTIA_CMD."v-add-web-domain-ssl ".$user." ".$v_domain." ".$tmpdir." ".$v_ssl_home." 'no'", $output, $return_var); |
| 197 | + exec (HESTIA_CMD."v-add-web-domain-ssl ".$user." ".escapeshellarg($v_domain)." ".$tmpdir." ".$v_ssl_home." 'no'", $output, $return_var); |
199 | 198 | check_return_code($return_var,$output); |
200 | 199 | unset($output); |
201 | 200 | } |
|
204 | 203 | // Add web stats |
205 | 204 | if ((!empty($_POST['v_stats'])) && ($_POST['v_stats'] != 'none' ) && (empty($_SESSION['error_msg']))) { |
206 | 205 | $v_stats = escapeshellarg($_POST['v_stats']); |
207 | | - exec (HESTIA_CMD."v-add-web-domain-stats ".$user." ".$v_domain." ".$v_stats, $output, $return_var); |
| 206 | + exec (HESTIA_CMD."v-add-web-domain-stats ".$user." ".escapeshellarg($v_domain)." ".$v_stats, $output, $return_var); |
208 | 207 | check_return_code($return_var,$output); |
209 | 208 | unset($output); |
210 | 209 | } |
|
216 | 215 | $fp = fopen($v_stats_password, "w"); |
217 | 216 | fwrite($fp, $_POST['v_stats_password']."\n"); |
218 | 217 | fclose($fp); |
219 | | - exec (HESTIA_CMD."v-add-web-domain-stats-user ".$user." ".$v_domain." ".$v_stats_user." ".$v_stats_password, $output, $return_var); |
| 218 | + exec (HESTIA_CMD."v-add-web-domain-stats-user ".$user." ".escapeshellarg($v_domain)." ".$v_stats_user." ".$v_stats_password, $output, $return_var); |
220 | 219 | check_return_code($return_var,$output); |
221 | 220 | unset($output); |
222 | 221 | unlink($v_stats_password); |
|
286 | 285 | $fp = fopen($v_ftp_password, "w"); |
287 | 286 | fwrite($fp, $v_ftp_user_data['v_ftp_password']."\n"); |
288 | 287 | fclose($fp); |
289 | | - exec (HESTIA_CMD."v-add-web-domain-ftp ".$user." ".$v_domain." ".$v_ftp_user." ".$v_ftp_password . " " . $v_ftp_path, $output, $return_var); |
| 288 | + exec (HESTIA_CMD."v-add-web-domain-ftp ".$user." ".escapeshellarg($v_domain)." ".$v_ftp_user." ".$v_ftp_password . " " . $v_ftp_path, $output, $return_var); |
290 | 289 | check_return_code($return_var,$output); |
291 | 290 | unset($output); |
292 | 291 | unlink($v_ftp_password); |
293 | 292 | if ((!empty($v_ftp_user_data['v_ftp_email'])) && (empty($_SESSION['error_msg']))) { |
294 | 293 | $to = $v_ftp_user_data['v_ftp_email']; |
295 | 294 | $subject = __("FTP login credentials"); |
296 | | - $from = __('MAIL_FROM',$_POST['v_domain']); |
297 | | - $mailtext = __('FTP_ACCOUNT_READY',$_POST['v_domain'],$user,$v_ftp_user_data['v_ftp_user'],$v_ftp_user_data['v_ftp_password']); |
| 295 | + $from = __('MAIL_FROM', $v_domain ); |
| 296 | + $mailtext = __('FTP_ACCOUNT_READY',$v_domain,$user,$v_ftp_user_data['v_ftp_user'],$v_ftp_user_data['v_ftp_password']); |
298 | 297 | send_email($to, $subject, $mailtext, $from); |
299 | 298 | unset($v_ftp_email); |
300 | 299 | } |
|
323 | 322 | } |
324 | 323 |
|
325 | 324 | if (!empty($_SESSION['error_msg']) && $domain_added) { |
326 | | - $_SESSION['ok_msg'] = __('WEB_DOMAIN_CREATED_OK',htmlentities($_POST[v_domain]),htmlentities($_POST[v_domain])); |
| 325 | + $_SESSION['ok_msg'] = __('WEB_DOMAIN_CREATED_OK',htmlentities($v_domain),htmlentities($v_domain)); |
327 | 326 | $_SESSION['flash_error_msg'] = $_SESSION['error_msg']; |
328 | | - $url = '/edit/web/?domain='.strtolower(preg_replace("/^www\./i", "", $_POST['v_domain'])); |
| 327 | + $url = '/edit/web/?domain='.strtolower(preg_replace("/^www\./i", "", $v_domain)); |
329 | 328 | header('Location: ' . $url); |
330 | 329 | exit; |
331 | 330 | } |
332 | 331 | } |
333 | 332 |
|
334 | 333 | // Flush field values on success |
335 | 334 | if (empty($_SESSION['error_msg'])) { |
336 | | - $_SESSION['ok_msg'] = __('WEB_DOMAIN_CREATED_OK',htmlentities($_POST['v_domain']),htmlentities($_POST['v_domain'])); |
| 335 | + $_SESSION['ok_msg'] = __('WEB_DOMAIN_CREATED_OK',htmlentities($v_domain),htmlentities($v_domain)); |
337 | 336 | unset($v_domain); |
338 | 337 | unset($v_aliases); |
339 | 338 | unset($v_ssl); |
|
0 commit comments