Changeset 1367

Show
Ignore:
Timestamp:
10/11/08 18:12:51 (2 months ago)
Author:
scitech
Message:

Fixed #1080: Active web folders should not be deletable by customer. Fixed #1554: MySQL quota calculation (thanks Feg)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/CHANGELOG

    r1366 r1367  
    11ispCP ω 1.0.0 Changelog 
    22~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
     3 
     42008-09-11 Daniel Andreca 
     5        - ENGINE: 
     6                * Fixed #1080: Active web folders should not be deletable by customer 
     7                * Fixed #1554: MySQL quota calculation (thanks Feg) 
    38 
    492008-09-10 Daniel Andreca 
  • trunk/configs/centos/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/centos/proftpd/Makefile

    r1269 r1367  
    3737        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3838        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     39 
     40        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     41        cp -R ./working $(SYSTEM_CONF)/proftpd 
     42        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     43                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     44        fi 
     45        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     46        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     47 
    3948        cp ./proftpd.conf $(ROOT_CONF) 
    4049        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
  • trunk/configs/centos/proftpd/proftpd.conf

    r1360 r1367  
    227227# 
    228228# </Anonymous> 
     229Include /etc/proftpd/ispcp/* 
  • trunk/configs/centos/proftpd/proftpd1.3.conf

    r1360 r1367  
    217217# 
    218218# </Anonymous> 
     219Include /etc/proftpd/ispcp/* 
  • trunk/configs/debian/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/debian/proftpd/Makefile

    r1343 r1367  
    3939        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    4040        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     41        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     42        cp -R ./working $(SYSTEM_CONF)/proftpd 
     43 
     44        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     45                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     46        fi 
     47        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     48        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
    4149 
    4250        # Debian 4.0 "Etch"? 
     
    4553                        mv /etc/proftpd.conf /etc/proftpd.conf.bak ; \ 
    4654                fi ; \ 
    47                 $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
    4855                cp ./proftpd1.3.conf $(SYSTEM_CONF)/proftpd/proftpd.conf ; \ 
    4956                cp ./proftpd1.3.conf $(ROOT_CONF)/proftpd/proftpd.conf ; \ 
     
    5259                        mv /etc/proftpd.conf /etc/proftpd.conf.bak ; \ 
    5360                fi ; \ 
    54                 $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
    5561                cp ./proftpd1.3.conf.lenny $(SYSTEM_CONF)/proftpd/proftpd.conf ; \ 
    5662                cp ./proftpd1.3.conf.lenny $(ROOT_CONF)/proftpd/proftpd.conf ; \ 
  • trunk/configs/debian/proftpd/proftpd.conf

    r1360 r1367  
    217217# 
    218218# </Anonymous> 
     219Include /etc/proftpd/ispcp/* 
  • trunk/configs/debian/proftpd/proftpd1.3.conf

    r1360 r1367  
    216216# 
    217217# </Anonymous> 
     218Include /etc/proftpd/ispcp/* 
  • trunk/configs/debian/proftpd/proftpd1.3.conf.lenny

    r1357 r1367  
    231231# 
    232232# </Anonymous> 
     233Include /etc/proftpd/ispcp/* 
  • trunk/configs/fedora/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/fedora/proftpd/Makefile

    r1118 r1367  
    3737        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3838        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     39 
     40        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     41        cp -R ./working $(SYSTEM_CONF)/proftpd 
     42 
     43        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     44                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     45        fi 
     46        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     47        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     48         
    3949        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
    4050        cp ./proftpd.conf $(ROOT_CONF) 
  • trunk/configs/fedora/proftpd/proftpd.conf

    r1360 r1367  
    229229# 
    230230# </Anonymous> 
     231Include /etc/proftpd/ispcp/* 
  • trunk/configs/freebsd/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /usr/local/etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /usr/local/etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/freebsd/proftpd/BSDmakefile

    r1118 r1367  
    3838        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3939        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     40 
     41        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     42        cp -R ./working $(SYSTEM_CONF)/proftpd 
     43 
     44        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     45                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     46        fi 
     47        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     48        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     49 
    4050        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
    4151        cp ./proftpd.conf $(ROOT_CONF) 
  • trunk/configs/freebsd/proftpd/proftpd.conf

    r1360 r1367  
    218218# 
    219219# </Anonymous> 
     220Include /usr/local/etc/proftpd/ispcp/* 
  • trunk/configs/gentoo/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/gentoo/proftpd/Makefile

    r1134 r1367  
    3838        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3939        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     40 
     41        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     42        cp -R ./working $(SYSTEM_CONF)/proftpd 
     43 
     44        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     45                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     46        fi 
     47        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     48        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     49 
    4050        cp ./proftpd.conf $(ROOT_CONF)/proftpd 
    4151        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
  • trunk/configs/gentoo/proftpd/proftpd.conf

    r1327 r1367  
    230230# 
    231231# </Anonymous> 
     232Include /etc/proftpd/ispcp/* 
  • trunk/configs/openbsd/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /usr/local/etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /usr/local/etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/openbsd/proftpd/BSDmakefile

    r1118 r1367  
    3737        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3838        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     39 
     40        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     41        cp -R ./working $(SYSTEM_CONF)/proftpd 
     42 
     43        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     44                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     45        fi 
     46        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     47        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     48 
    3949        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
    4050        cp ./proftpd.conf $(ROOT_CONF) 
  • trunk/configs/openbsd/proftpd/proftpd.conf

    r1360 r1367  
    218218# 
    219219# </Anonymous> 
     220Include /usr/local/etc/proftpd/ispcp/* 
  • trunk/configs/opensuse/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/opensuse/proftpd/Makefile

    r1118 r1367  
    3737        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3838        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd 
     39        cp -R ./backup $(SYSTEM_CONF)/proftpd 
    3940 
    40         cp -R ./backup $(SYSTEM_CONF)/proftpd 
     41        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     42        cp -R ./working $(SYSTEM_CONF)/proftpd 
     43 
     44        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     45                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     46        fi 
     47        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     48        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     49 
    4150        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd 
    4251        cp ./proftpd.conf $(ROOT_CONF)/proftpd 
  • trunk/configs/opensuse/proftpd/proftpd.conf

    r1360 r1367  
    219219# 
    220220# </Anonymous> 
     221Include /etc/proftpd/ispcp/* 
  • trunk/configs/redhat/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/redhat/proftpd/Makefile

    r1118 r1367  
    3737        $(SYSTEM_MAKE_DIRS) $(SYSTEM_CONF)/proftpd 
    3838        cp -R ./backup $(SYSTEM_CONF)/proftpd 
     39 
     40        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     41        cp -R ./working $(SYSTEM_CONF)/proftpd 
     42 
     43        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     44                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     45        fi 
     46        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     47        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     48 
    3949        cp ./proftpd.conf $(ROOT_CONF) ; \ 
    4050        cp ./proftpd.conf $(SYSTEM_CONF)/proftpd ; \ 
  • trunk/configs/redhat/proftpd/proftpd.conf

    r1360 r1367  
    218218# 
    219219# </Anonymous> 
     220Include /etc/proftpd/ispcp/* 
  • trunk/configs/redhat/proftpd/proftpd1.3.conf

    r1360 r1367  
    217217# 
    218218# </Anonymous> 
     219Include /etc/proftpd/ispcp/* 
  • trunk/configs/ubuntu/apache/parts/ispcp_base.tpl

    r773 r1367  
     1# httpd Data BEGIN. 
    12 
    23# 
    3 # This file will be replaced by ../httpd.conf when make is executed 
     4# wget-hack prevention 
    45# 
     6 
     7<IfModule mod_rewrite.c> 
     8    RewriteEngine on 
     9    RewriteCond %{HTTP_USER_AGENT} ^LWP::Simple 
     10    RewriteRule ^/.* http://%{REMOTE_ADDR}/ [L,E=nolog:1] 
     11</IfModule> 
     12 
     13# 
     14# Log processing. 
     15# 
     16 
     17LogFormat "%B" traff 
     18LogFormat "%v %b %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" ispcplog 
     19 
     20CustomLog "| /var/www/ispcp/engine/ispcp-apache-logger" ispcplog 
     21ErrorLog "| /var/www/ispcp/engine/ispcp-apache-logger -e" 
     22 
     23# 
     24# mod_cband configuration 
     25# 
     26 
     27<IfModule mod_cband.c> 
     28    CBandScoreFlushPeriod 10 
     29    CBandRandomPulse On 
     30</IfModule> 
     31 
     32# 
     33# let the customer decide what charset he likes to use 
     34# 
     35 
     36AddDefaultCharset Off 
     37 
     38# 
     39# Header End 
     40# 
     41 
     42# httpd [{IP}] virtual host entry BEGIN. 
     43# httpd [{IP}] virtual host entry END. 
     44 
     45# httpd Data END. 
  • trunk/configs/ubuntu/ispcp.conf

    r1364 r1367  
    159159FTPD_CONF_FILE = /etc/proftpd.conf 
    160160 
     161FTPD_CONF_DIR = /etc/proftpd/ispcp 
     162 
    161163# 
    162164# BIND data 
  • trunk/configs/ubuntu/proftpd/Makefile

    r1118 r1367  
    4040        cp -R ./backup $(SYSTEM_CONF)/proftpd 
    4141 
     42        cp -R ./parts $(SYSTEM_CONF)/proftpd 
     43        cp -R ./working $(SYSTEM_CONF)/proftpd 
     44 
     45        if [[ ! -d $(ROOT_CONF)/proftpd ]]; then \ 
     46                $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
     47        fi 
     48        $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd/ispcp; 
     49        cp ./root_domain.conf $(ROOT_CONF)/proftpd/ispcp; 
     50 
    4251        # if: Ubuntu 6.06 (dapper) 
    4352        # else: Ubuntu >= 6.10 
     
    4958                        mv /etc/proftpd.conf /etc/proftpd.conf.bak ; \ 
    5059                fi ; \ 
    51                 $(SYSTEM_MAKE_DIRS) $(ROOT_CONF)/proftpd ; \ 
    5260                cp ./proftpd1.3.conf $(SYSTEM_CONF)/proftpd/proftpd.conf ; \ 
    5361                cp ./proftpd1.3.conf $(ROOT_CONF)/proftpd/proftpd.conf ; \ 
  • trunk/configs/ubuntu/proftpd/proftpd.conf

    r1360 r1367  
    218218# 
    219219# </Anonymous> 
     220Include /etc/proftpd/ispcp/* 
  • trunk/configs/ubuntu/proftpd/proftpd1.3.conf

    r1360 r1367  
    217217# 
    218218# </Anonymous> 
     219Include /etc/proftpd/ispcp/* 
  • trunk/engine/ispcp-als-mngr

    r1288 r1367  
    19521952} 
    19531953 
     1954 
     1955################################################################################ 
     1956## 
     1957## alias proftpd data managment; 
     1958## 
     1959################################################################################ 
     1960 
     1961################################################################################ 
     1962## 
     1963## 
     1964## 
     1965sub als_add_proftpd_cfg_data { 
     1966        my ($als_data)   = @_; 
     1967        my ($rs, $rdata) = (undef, undef); 
     1968 
     1969        push_el(\@main::el, 'als_add_proftpd_cfg_data()', 'Starting...'); 
     1970 
     1971        if (!defined($als_data) || $als_data eq '') { 
     1972                push_el(\@main::el, 'als_add_proftpd_cfg_data()', 'ERROR: Undefined Input Data...'); 
     1973                return -1; 
     1974        } 
     1975 
     1976        # 
     1977        # Initial data we need; 
     1978        # 
     1979        my $als_name           = @$als_data[2]; 
     1980        my $als_mount_point    = @$als_data[4]; 
     1981        my $als_to             = @$als_data[8]; 
     1982 
     1983        my $conf_dir         = $main::cfg{'CONF_DIR'}; 
     1984        my $proftpd_conf_dir = $main::cfg{'FTPD_CONF_DIR'}; 
     1985        my $apache_www_dir   = $main::cfg{'APACHE_WWW_DIR'}; 
     1986 
     1987        my $tpl_dir          = "$conf_dir/proftpd/parts"; 
     1988        my $backup_dir       = "$conf_dir/proftpd/backup"; 
     1989        my $working_dir      = "$conf_dir/proftpd/working"; 
     1990        my $als_fname         = "$als_name.conf"; 
     1991        my $als_path         = "$apache_www_dir/$als_to$als_mount_point"; 
     1992        my $working_cfg      = "$working_dir/$als_fname"; 
     1993        my $sys_cfg          = "$proftpd_conf_dir/$als_fname"; 
     1994 
     1995        # 
     1996        # Let's get needed tags and templates; 
     1997        # 
     1998        my $entry = ''; 
     1999        ($rs, $entry) = get_tpl( 
     2000                $tpl_dir, 
     2001                'proftpd.conf.tpl' 
     2002        ); 
     2003        return $rs if ($rs != 0); 
     2004 
     2005        # 
     2006        # Let's prepare them; 
     2007        # 
     2008        my %tag_hash = ( 
     2009                '{PATH}'         => $als_path, 
     2010        ); 
     2011        ($rs, $entry) = prep_tpl( 
     2012                \%tag_hash, 
     2013                $entry 
     2014        ); 
     2015        return $rs if ($rs != 0); 
     2016 
     2017        # 
     2018        # Let's store generated data; 
     2019        # 
     2020        $rs = store_file($working_cfg, $entry, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); 
     2021        return $rs if ($rs != 0); 
     2022 
     2023        $rs = store_file($sys_cfg, $entry, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); 
     2024        return $rs if ($rs != 0); 
     2025 
     2026        push_el(\@main::el, 'als_add_proftpd_cfg_data()', 'Ending...'); 
     2027        return 0; 
     2028} 
     2029 
     2030################################################################################ 
     2031################################################################################ 
     2032## 
     2033## 
     2034## 
     2035sub als_del_proftpd_cfg_data { 
     2036        my ($als_data)   = @_; 
     2037        my ($rs, $rdata) = (undef, undef); 
     2038 
     2039        push_el(\@main::el, 'als_del_proftpd_cfg_data()', 'Starting...'); 
     2040        if (!defined($als_data) || $als_data eq '') { 
     2041                push_el(\@main::el, 'als_del_proftpd_cfg_data()', 'ERROR: Undefined Input Data...'); 
     2042                return -1; 
     2043        } 
     2044 
     2045        # 
     2046        # Initial data we need; 
     2047        # 
     2048 
     2049        my $als_name         = @$als_data[2]; 
     2050        my $conf_dir         = $main::cfg{'CONF_DIR'}; 
     2051        my $proftpd_conf_dir = $main::cfg{'FTPD_CONF_DIR'}; 
     2052        my $als_fname        = "$als_name.conf"; 
     2053        my $working_dir      = "$conf_dir/proftpd/working"; 
     2054        my $working_cfg      = "$working_dir/$als_fname"; 
     2055        my $sys_cfg          = "$proftpd_conf_dir/$als_fname"; 
     2056 
     2057        # 
     2058        # Let's remove .db files for this domain; 
     2059        # 
     2060        $rs = del_file($working_cfg); 
     2061        return $rs if ($rs != 0); 
     2062 
     2063        $rs = del_file($sys_cfg); 
     2064        return $rs if ($rs != 0); 
     2065 
     2066        push_el(\@main::el, 'als_del_proftpd_cfg_data()', 'Ending...'); 
     2067        return 0; 
     2068} 
     2069 
     2070################################################################################ 
     2071################################################################################ 
     2072## 
     2073## 
     2074## 
     2075sub als_add_proftpd_data { 
     2076        my ($als_data) = @_; 
     2077        my $rs         = undef; 
     2078 
     2079        push_el(\@main::el, 'als_add_proftpd_data()', 'Starting...'); 
     2080        if (!defined($als_data) || $als_data eq '') { 
     2081                push_el(\@main::el, 'als_add_proftpd_data()', 'ERROR: Undefined Input Data...'); 
     2082                return -1; 
     2083        } 
     2084        return 0 if ($main::cfg{'CMD_NAMED'} eq 'no'); 
     2085 
     2086        $rs = als_add_proftpd_cfg_data($als_data); 
     2087        return $rs if ($rs != 0); 
     2088 
     2089        push_el(\@main::el, 'als_add_proftpd_data()', 'Ending...'); 
     2090        return 0; 
     2091} 
     2092 
     2093################################################################################ 
     2094################################################################################ 
     2095## 
     2096## 
     2097## 
     2098sub als_change_proftpd_data { 
     2099        my ($als_data) = @_; 
     2100        my $rs         = undef; 
     2101 
     2102        push_el(\@main::el, 'als_change_proftpd_data()', 'Starting...'); 
     2103        if (!defined($als_data) || $als_data eq '') { 
     2104                push_el(\@main::el, 'als_change_proftpd_data()', 'ERROR: Undefined Input Data...'); 
     2105                return -1; 
     2106        } 
     2107        return 0 if ($main::cfg{'CMD_NAMED'} eq 'no'); 
     2108 
     2109        $rs = als_add_proftpd_data($als_data); 
     2110        return $rs if ($rs != 0); 
     2111 
     2112        push_el(\@main::el, 'als_change_proftpd_data()', 'Ending...'); 
     2113        return 0; 
     2114} 
     2115 
     2116################################################################################ 
     2117################################################################################ 
     2118## 
     2119## 
     2120## 
     2121sub als_del_proftpd_data { 
     2122        my ($als_data) = @_; 
     2123        my $rs         = undef; 
     2124 
     2125        push_el(\@main::el, 'als_del_proftpd_data()', 'Starting...'); 
     2126        if (!defined($als_data) || $als_data eq '') { 
     2127                push_el(\@main::el, 'als_del_proftpd_data()', 'ERROR: Undefined Input Data...'); 
     2128                return -1; 
     2129        } 
     2130        return 0 if ($main::cfg{'CMD_NAMED'} eq 'no'); 
     2131 
     2132        $rs = als_del_proftpd_cfg_data($als_data); 
     2133        return $rs if ($rs != 0); 
     2134 
     2135        push_el(\@main::el, 'als_del_proftpd_data()', 'Ending...'); 
     2136        return 0; 
     2137} 
     2138 
    19542139######################################################## 
    19552140# high level functions. 
     
    19702155                return -1; 
    19712156        } 
     2157 
    19722158        $rs = als_add_named_data($als_data); 
    19732159        return $rs if ($rs != 0); 
     
    19772163 
    19782164        $rs = als_add_mta_data($als_data); 
     2165        return $rs if ($rs != 0); 
     2166 
     2167        $rs = als_add_proftpd_data($als_data); 
    19792168        return $rs if ($rs != 0); 
    19802169 
     
    20052194        return $rs if ($rs != 0); 
    20062195 
     2196        $rs = als_change_proftpd_data($als_data); 
     2197        return $rs if ($rs != 0); 
     2198 
    20072199        push_el(\@main::el, 'als_change_data()', 'Ending...'); 
    20082200        return 0; 
     
    20292221 
    20302222        $rs = als_del_mta_data($als_data); 
     2223        return $rs if ($rs != 0); 
     2224 
     2225        $rs = als_del_proftpd_data($als_data); 
    20312226        return $rs if ($rs != 0); 
    20322227 
  • trunk/engine/ispcp-serv-mngr

    r1148 r1367  
    254254    } 
    255255 
     256    if ($main::changed_sub_cnt > 0 || $main::changed_als_cnt > 0) { 
     257 
     258        if ($main::cfg{'CMD_FTPD'} ne 'no') { 
     259 
     260            $cmd = $main::cfg{'CMD_FTPD'}; 
     261 
     262            sys_command_rs("$cmd restart"); 
     263 
     264        } 
     265 
     266    } 
     267 
    256268    if ($main::changed_mail_cnt > 0 || $main::changed_dmn_cnt > 0 || 
    257269        $main::changed_sub_cnt > 0 || $main::changed_als_cnt > 0) { 
  • trunk/engine/ispcp-sub-mngr

    r1288 r1367  
    20342034} 
    20352035 
    2036  
    2037  
    20382036sub sub_add_mta_data { 
    20392037 
     
    21192117} 
    21202118 
     2119sub sub_add_proftpd_cfg_data { 
     2120        my ($sub_data)   = @_; 
     2121        my ($rs, $rdata) = (undef, undef); 
     2122 
     2123        push_el(\@main::el, 'sub_add_proftpd_cfg_data()', 'Starting...'); 
     2124 
     2125        if (!defined($sub_data) || $sub_data eq '') { 
     2126                push_el(\@main::el, 'sub_add_proftpd_cfg_data()', 'ERROR: Undefined Input Data...'); 
     2127                return -1; 
     2128        } 
     2129 
     2130        # 
     2131        # Initial data we need; 
     2132        # 
     2133        my $sub_name         = @$sub_data[2]; 
     2134        my $sub_mount_point  = @$sub_data[3]; 
     2135        my $sub_to           = @$sub_data[6]; 
     2136 
     2137        my $conf_dir         = $main::cfg{'CONF_DIR'}; 
     2138        my $proftpd_conf_dir = $main::cfg{'FTPD_CONF_DIR'}; 
     2139        my $apache_www_dir   = $main::cfg{'APACHE_WWW_DIR'}; 
     2140 
     2141        my $tpl_dir          = "$conf_dir/proftpd/parts"; 
     2142        my $backup_dir       = "$conf_dir/proftpd/backup"; 
     2143        my $working_dir      = "$conf_dir/proftpd/working"; 
     2144        my $sub_fname        = "$sub_name.$sub_to.conf"; 
     2145        my $sub_path         = "$apache_www_dir/$sub_to$sub_mount_point"; 
     2146        my $working_cfg      = "$working_dir/$sub_fname"; 
     2147        my $sys_cfg          = "$proftpd_conf_dir/$sub_fname"; 
     2148 
     2149        # 
     2150        # Let's get needed tags and templates; 
     2151        # 
     2152        my $entry = ''; 
     2153        ($rs, $entry) = get_tpl( 
     2154                $tpl_dir, 
     2155                'proftpd.conf.tpl' 
     2156        ); 
     2157        return $rs if ($rs != 0); 
     2158 
     2159        my $seq = 0; 
     2160 
     2161        # 
     2162        # Let's prepare them; 
     2163        # 
     2164        my %tag_hash = ( 
     2165                '{PATH}' => $sub_path, 
     2166        ); 
     2167        ($rs, $entry) = prep_tpl( 
     2168                \%tag_hash, 
     2169            &n