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;


. Der Editor möge doch doch das .pl dranhängen. Ein kleines Plugin schreibt man ja auch mal im Webif oder kopiert ein vorhandes dort x-mal.
Kommentar