ispman/lib/ISPMan ApacheMan.pm,1.58,1.59 DomainMan.pm,1.59,1.60

Joerg Delker <[email protected]>
Newsgroups gmane.comp.isp.ispman.cvs
Message-ID <[email protected]>
Update of /cvsroot/ispman/ispman/lib/ISPMan
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5886/lib/ISPMan

Modified Files:
	ApacheMan.pm DomainMan.pm 
Log Message:
merged from rel_1_1-bugfixes
fixes [ 940099 ] and related
reseller/client is now limited to defaultHomedirectoryPath when creating domains
and limited to domain's Homedir when creating vhosts

Index: ApacheMan.pm
===================================================================
RCS file: /cvsroot/ispman/ispman/lib/ISPMan/ApacheMan.pm,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -d -r1.58 -r1.59
--- ApacheMan.pm	27 Apr 2004 22:19:11 -0000	1.58
+++ ApacheMan.pm	30 Apr 2004 23:40:54 -0000	1.59
@@ -277,6 +277,15 @@
    my $dn=$self->getVhostDN($domain, $ispmanVhostName);
    $r->param("dn", $dn);
    
+   #check homeDirectory for reseller/client
+   if ($self->{'session'} && $self->{'session'}->param("logintype") =~m/reseller|client/) {
+      my $domainHomeDirectoryPath=$domain_info->{"homeDirectory"};
+      if ($r->param("homeDirectory")!~m/^$domainHomeDirectoryPath/) {
+            print "Add Vhost aborted!\nHomeDirectory must be subdir of $domainHomeDirectoryPath.\n";
+	    return;
+      }
+   }
+      
    # check vhost limit
    my $domainMaxVhosts = $self->getDomainAttribute($domain,"ispmanMaxVhosts");
    my $domainVhostCount = $self->getVhostCount($domain);

Index: DomainMan.pm
===================================================================
RCS file: /cvsroot/ispman/ispman/lib/ISPMan/DomainMan.pm,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -d -r1.59 -r1.60
--- DomainMan.pm	17 Apr 2004 15:43:36 -0000	1.59
+++ DomainMan.pm	30 Apr 2004 23:40:54 -0000	1.60
@@ -154,7 +154,9 @@
    if ($r->param("createArecordForMail") && $r->param("ispmanDomainDefaultMailDropHost")) {
       $self->newDNSRecord($r->param("ispmanDomain"), "aRecord", "mail", $self->getHostIp($r->param("ispmanDomainDefaultMailDropHost")));
    }
-   if ($r->param("createVhost") && $r->param("ispmanDomainDefaultWebHost")) {
+   
+   # create default vhost for domain
+   if ($r->param("createVhost") eq "true" && $r->param("ispmanDomainDefaultWebHost")) {
       $r->param("ispmanVhostName", "www");
       $self->addVhost($r);
    }
@@ -216,15 +218,19 @@
    # reset $r->param("domain") for backword compatibility.
    $r->param("domain", $domain);
    
-
-   if ($self->{'session'}) {
-      if ($self->{'session'}->param("logintype") eq "reseller" or $self->{'session'}->param("logintype") eq "client" ) {
-      
+   # do some checks for resellers/clients
+   if ($self->{'session'} && $self->{'session'}->param("logintype") =~m/reseller|client/ ) {
+  
          my $ispmanClientInfo=$self->getClientById($r->param("ispmanClientId"));
          my $ispmanClientMaxDomainsLimit=$ispmanClientInfo->{'ispmanClientMaxDomains'};
          my $ispmanClientDomains=$self->getDomainsCount(sprintf("ispmanClientId=%s" , $r->param("ispmanClientId")));
 
-
+         # check if homeDirectory lies in defaultHomeDirectoryPath
+	 my $defaultHomeDirectoryPath=$self->getConf("defaultHomeDirectoryPath");
+	 if ($r->param("homeDirectory")!~m/^$defaultHomeDirectoryPath/) {
+            print "Add Domain aborted!\nHomeDirectory must be subdir of $defaultHomeDirectoryPath.\n";
+	    return
+	 }
 
          unless ($ispmanClientDomains < $ispmanClientMaxDomainsLimit) {
             $self->{'message'}="Max domains limit reached. Domain not added";



-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. 
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.