From 44027136c4f4f2dccada3402e22dd2e6b913fe2c Mon Sep 17 00:00:00 2001 From: Serghey Rodin Date: Wed, 22 Feb 2012 00:39:44 +0200 Subject: [PATCH] optimized shared function --- bin/v_add_db_host | 2 +- bin/v_add_web_domain | 2 +- func/shared.func | 26 ++++++++++++++++++-------- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/bin/v_add_db_host b/bin/v_add_db_host index 049804928..84354ba8d 100755 --- a/bin/v_add_db_host +++ b/bin/v_add_db_host @@ -75,7 +75,7 @@ esac # Adding host to conf echo "$new_str" >> $V_DB/$type.conf -chmod 640 $V_DB/$type.conf +chmod 660 $V_DB/$type.conf #----------------------------------------------------------# diff --git a/bin/v_add_web_domain b/bin/v_add_web_domain index 14cf6408d..0acd0ce85 100755 --- a/bin/v_add_web_domain +++ b/bin/v_add_web_domain @@ -162,7 +162,7 @@ chown root:$user /var/log/httpd/domains/$domain.* chown root:apache $conf # Changing file permissions -chmod 640 $conf +chmod 660 $conf chmod 551 $V_HOME/$user/web/$domain chmod 751 $V_HOME/$user/web/$domain/private chmod 751 $V_HOME/$user/web/$domain/cgi-bin diff --git a/func/shared.func b/func/shared.func index 87ae89f63..a585c4c66 100644 --- a/func/shared.func +++ b/func/shared.func @@ -319,7 +319,15 @@ format_validation() { fi } - + # Defining format_boolean function + format_bool() { + val="$1" + if [ "$val" != 'yes' ] && [ "$val" != 'no' ]; then + echo "Error: $var is out of range" + log_event 'debug' "$E_INVALID $V_EVENT" + exit $E_INVALID + fi + } # Defining format_ext function format_ext() { @@ -365,6 +373,8 @@ format_validation() { # Checking variable format case $var in + antispam) format_bool "$v" ;; + antivirus) format_bool "$v" ;; dom_alias) format_dom "$v" ;; auth_pass) format_pwd "$v" ;; auth_user) format_usr "$v" ;; @@ -458,15 +468,15 @@ is_package_full() { limit=$(grep "^$1=" $V_USERS/$user/user.conf | cut -f 2 -d \' ) # Switching on case "$1" in - WEB_DOMAINS) used=$(wc -l $V_USERS/$user/web.conf|cut -f1 -d ' ');; + WEB_DOMAINS) used=$(wc -l $V_USERS/$user/web.conf|cut -f1 -d \ );; WEB_ALIASES) used=$(grep "DOMAIN='$domain'" $V_USERS/$user/web.conf |\ - awk -F "ALIAS='" '{print $2}' | cut -f 1 -d "'" |\ + awk -F "ALIAS='" '{print $2}' | cut -f 1 -d \' |\ tr ',' '\n'| wc -l );; - DNS_DOMAINS) used=$(wc -l $V_USERS/$user/dns.conf|cut -f1 -d ' ');; - DNS_RECORDS) used=$(wc -l $V_USERS/$user/dns/$domain|cut -f1 -d ' ');; - MAIL_DOMAINS) used=$(wc -l $V_USERS/$user/mail.conf|cut -f1 -d ' ');; - DATABASES) used=$(wc -l $V_USERS/$user/db.conf|cut -f1 -d ' ');; - CRON_JOBS) used=$(wc -l $V_USERS/$user/cron.conf|cut -f1 -d ' ');; + DNS_DOMAINS) used=$(wc -l $V_USERS/$user/dns.conf|cut -f1 -d \ );; + DNS_RECORDS) used=$(wc -l $V_USERS/$user/dns/$domain|cut -f1 -d \ );; + MAIL_DOMAINS) used=$(wc -l $V_USERS/$user/mail.conf|cut -f1 -d \ );; + DATABASES) used=$(wc -l $V_USERS/$user/db.conf|cut -f1 -d \ );; + CRON_JOBS) used=$(wc -l $V_USERS/$user/cron.conf|cut -f1 -d \ );; esac if [ "$used" -ge "$limit" ]; then