Delete symlinked file from sites-enabled , even if it has a different name
authorJamie Cameron <jcameron@webmin.com>
Tue, 23 Aug 2011 21:29:02 +0000 (14:29 -0700)
committerJamie Cameron <jcameron@webmin.com>
Tue, 23 Aug 2011 21:29:02 +0000 (14:29 -0700)
https://sourceforge.net/tracker/?func=detail&atid=117457&aid=3396813&group_id=17457

apache/apache-lib.pl

index e194ee9..6b61eae 100755 (executable)
@@ -1756,8 +1756,15 @@ local ($file) = @_;
 if ($config{'link_dir'}) {
        local $short = $file;
        $short =~ s/^.*\///;
-       local $linksrc = "$config{'link_dir'}/$short";
-       &unlink_logged($linksrc);
+       opendir(LINKDIR, $config{'link_dir'});
+       foreach my $f (readdir(LINKDIR)) {
+               if ($f ne "." && $f ne ".." &&
+                   (&resolve_links($config{'link_dir'}."/".$f) eq $file ||
+                    $short eq $f)) {
+                       &unlink_logged($config{'link_dir'}."/".$f);
+                       }
+               }
+       closedir(LINKDIR);
        }
 }