diff -Nur --no-dereference smeserver-mod_dav-1.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/95Addmod_dav2ibays smeserver-mod_dav-1.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/95Addmod_dav2ibays --- smeserver-mod_dav-1.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/95Addmod_dav2ibays 2022-07-28 23:51:31.454000000 -0400 +++ smeserver-mod_dav-1.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/95Addmod_dav2ibays 2022-07-29 00:52:11.073000000 -0400 @@ -13,7 +13,7 @@ $OUT .= "\n # ibay $key disabled for httpd so no DAV access\n" if $access eq 'none'; next if $access eq 'none'; # true if have to be password accessible from somewhere. - my $satisfy = ($access eq 'global-pw-remote')? 'any': 'all'; + my $satisfy = ($access eq 'global-pw-remote')? 'RequireAny': 'RequireAll'; if ($properties{'ModDav'}) { if ($properties{'ModDav'} eq 'enabled') @@ -32,10 +32,10 @@ if ($dynamicContent eq 'enabled' && $secureEXEC eq 'enabled') { # we do not want PHP or CGI to be runt there for security reason - $OUT .= " \n"; + $OUT .= " \n"; $OUT .= " #disabling php\n"; $OUT .= " SetHandler !\n"; # could use also SetHandler none - $OUT .= " deny from all\n" if ( $properties{'ModDavHidePHP'} || 'enabled' ) eq 'enabled'; + $OUT .= " Require all denied\n" if ( $properties{'ModDavHidePHP'} || 'enabled' ) eq 'enabled'; $OUT .= " \n"; $OUT .= " Options -ExecCGI\n"; $OUT .= " RemoveHandler .cgi .php .php3 .php4 .php5 .phtml .pl .py .pyc .pyo\n"; @@ -54,15 +54,14 @@ $OUT .= " DirectoryIndex disabled\n\n" unless ( ($properties{'ModDavNoDirectoryIndex'}||"enabled" ) eq "disabled"); $OUT .= " #DirectoryIndex disabled : DavNoDirectoryIndex has been defined to force DirectoryIndex \n\n" if ( ($properties{'ModDavNoDirectoryIndex'}||"enabled" ) eq "disabled"); - $OUT .= " order deny,allow\n"; - $OUT .= " deny from all\n"; - $OUT .= " " . $ReadAllow . "\n"; $OUT .= " AuthName \"$properties{'Name'}\"\n"; $OUT .= " AuthBasicProvider external\n"; $OUT .= " AuthType Basic\n"; $OUT .= " AuthExternal pwauth\n"; - $OUT .= " " . $ReadRequire . "\n"; - $OUT .= " Satisfy $satisfy\n\n"; + $OUT .= " <$satisfy>\n"; + $OUT .= " " . $ReadRequire . "\n"; + $OUT .= " " . $ReadAllow . "\n"; + $OUT .= " \n\n"; # Ensure only valid users get to do stuff... update 2021/02: # GET, POST, PUT, DELETE, CONNECT, OPTIONS, PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK @@ -72,14 +71,15 @@ # however we put our limit to the whole folder with the Require user .... above, so the whole block under seems useless # unless we reduce it to one user, or are fool to enlarge to Require valid-user # $OUT .= " \n\n"; -# $OUT .= " Allow from all\n"; +# $OUT .= " #Require all granted\n"; # $OUT .= " Require user $userlist\n\n"; # $OUT .= " \n\n"; $OUT .= " \n"; - $OUT .= " " . $WriteRequire . "\n"; - $OUT .= " Satisfy All\n"; - $OUT .= " ". $WriteAllow ."\n"; + $OUT .= " \n"; + $OUT .= " " . $WriteRequire . "\n"; + $OUT .= " ". $WriteAllow ."\n"; + $OUT .= " \n"; $OUT .= " \n\n"; $OUT .= "\n"; } diff -Nur --no-dereference smeserver-mod_dav-1.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/21IbayWebDav smeserver-mod_dav-1.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/21IbayWebDav --- smeserver-mod_dav-1.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/21IbayWebDav 2022-07-28 23:51:31.454000000 -0400 +++ smeserver-mod_dav-1.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/21IbayWebDav 2022-07-29 00:03:53.101000000 -0400 @@ -14,8 +14,6 @@ $OUT .= "\n # ibay $key disabled for httpd so no DAV access\n" if $access eq 'none'; next if $access eq 'none'; # true if have to be password accessible from somewhere. - my $ispassibay = $access =~ /-pw/; - my $satisfy = ($access eq 'global-pw-remote')? 'any': 'all'; if ($properties{'ModDav'}) { if ($properties{'ModDav'} eq 'enabled') diff -Nur --no-dereference smeserver-mod_dav-1.1.old/root/usr/share/perl5/vendor_perl/esmith/DAV.pm smeserver-mod_dav-1.1/root/usr/share/perl5/vendor_perl/esmith/DAV.pm --- smeserver-mod_dav-1.1.old/root/usr/share/perl5/vendor_perl/esmith/DAV.pm 2022-07-28 23:51:31.457000000 -0400 +++ smeserver-mod_dav-1.1/root/usr/share/perl5/vendor_perl/esmith/DAV.pm 2022-07-29 00:09:32.842000000 -0400 @@ -67,22 +67,22 @@ sub getAllow { my ($mode, $key, $localAccess ) = @_; $localAccess = (defined $localAccess ) ? $localAccess : "127.0.0.1"; - my $ibay = $adb->get($key) or return "allow from 127.0.0.1"; - my %properties = $ibay->props or return "allow from 127.0.0.1"; + my $ibay = $adb->get($key) or return "Require ip 127.0.0.1"; + my %properties = $ibay->props or return "Require ip 127.0.0.1"; my $Public = $properties{'PublicAccess'} || 'none'; - my $allow = "allow from 127.0.0.1"; + my $allow = "Require ip 127.0.0.1"; if ($Public eq 'none') { $allow = "# allow from set to NONE"; } elsif ($Public =~ /(local|remote)/ ) { - $allow = "allow from " . $localAccess; + $allow = "Require ip " . $localAccess; } elsif ($Public =~ /global/) { - $allow = "allow from all"; + $allow = "Require all granted"; } return $allow; }