Hallo zusammen,
ich habe gerade ein "Garbage Collection"-Plugin ins SVN eingecheckt.
Das Plugin läuft alle 1000s einmal und LÖSCHT in %plugin_info sowie %plugin_subscribe alle Einträge, die nicht mit solchen Wörtern beginnen, die zu gleichnamigen Plugins in /etc/wiregate/plugin/generic/ korrespondieren.
Auch hier wieder: Have fun! - aber: auch wenn ich gerne helfe, Support wird nicht garantiert.
Grüße,
Fry
ich habe gerade ein "Garbage Collection"-Plugin ins SVN eingecheckt.
Das Plugin läuft alle 1000s einmal und LÖSCHT in %plugin_info sowie %plugin_subscribe alle Einträge, die nicht mit solchen Wörtern beginnen, die zu gleichnamigen Plugins in /etc/wiregate/plugin/generic/ korrespondieren.
Auch hier wieder: Have fun! - aber: auch wenn ich gerne helfe, Support wird nicht garantiert.
Grüße,
Fry
Code:
###################### # Garbage Collection # ###################### # Wiregate-Plugin # (c) 2012 Fry under the GNU Public License # $plugin_info{$plugname.'_cycle'}=0; return 'deaktiviert'; my $retval=''; chdir "/etc/wiregate/plugin/generic"; # Cleanup plugin_subscribe my @plugins=<*>; my $valid=join "|", map quotemeta, @plugins; for my $ga (keys %plugin_subscribe) { my @delme=grep !/^($valid)/, keys %{$plugin_subscribe{$ga}}; for my $v (@delme) { delete $plugin_subscribe{$ga}{$v}; $retval.=$ga.'->'.$v.', '; } } # Cleanup plugin_info push @plugins, "conf.d"; my $valid=join "|", map quotemeta, @plugins; my @delme=grep !/^($valid)/, keys %plugin_info; for my $v (@delme) { delete $plugin_info{$v}; $retval.=$v.', '; } $plugin_info{$plugname.'_cycle'}=1000; return $retval ? ('Geloescht: '.$retval) : undef;
Kommentar