php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /usr/libexec/webmin/cluster-webmin/ |
files >> //usr/libexec/webmin/cluster-webmin/save_config.cgi |
#!/usr/bin/perl # Update the configuration for a module on multiple hosts require './cluster-webmin-lib.pl'; require '../config-lib.pl'; &ReadParse(); &error_setup($text{'config_err'}); # Get the current config @hosts = &list_webmin_hosts(); @servers = &list_servers(); ($getfrom) = grep { $_->{'id'} == $in{'_getfrom'} } @hosts; ($serv) = grep { $_->{'id'} == $getfrom->{'id'} } @servers; &remote_foreign_require($serv->{'host'}, "webmin", "webmin-lib.pl"); %fconfig = &remote_foreign_call($serv->{'host'}, "webmin", "foreign_config", $in{'mod'}); # Call the config parser $mdir = &module_root_directory($in{'mod'}); if (-r "$mdir/config_info.pl") { # Module has a custom config editor &foreign_require($in{'mod'}, "config_info.pl"); if (&foreign_defined($in{'mod'}, "config_save")) { $func++; &foreign_call($in{'mod'}, "config_save", \%fconfig); } } if (!$func) { # Use config.info to parse config inputs &parse_config(\%fconfig, "$mdir/config.info", $in{'mod'}); } # Write out to all hosts foreach $hid (split(/\0/, $in{'_host'})) { ($serv) = grep { $_->{'id'} == $hid } @servers; if ($hid != $getfrom->{'id'}) { &remote_foreign_require($serv->{'host'}, "webmin", "webmin-lib.pl"); } &remote_foreign_call($serv->{'host'}, "webmin", "save_module_config", \%fconfig, $in{'mod'}); } &redirect("edit_mod.cgi?mod=$in{'mod'}");y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`