#!/usr/bin/perl # update.cgi # Find and install modules that need updating require './webmin-lib.pl'; &ReadParse(); &error_setup($text{'update_err'}); # Display the results and maybe take action $| = 1; $theme_no_table = 1; &ui_print_header(undef, $text{'update_title'}, ""); print "<b>",&text('update_info'),"</b><p>\n"; # Fetch updates @urls = $in{'source'} == 0 ? ( $update_url ) : split(/\r?\n/, $in{'other'}); $count = 0; foreach $url (@urls) { # Get updates from this URL, and filter to those for this system $checksig = $in{'checksig'} ? 2 : $url eq $update_url ? 2 : 1; ($updates, $host, $port, $page, $ssl) = &fetch_updates($url, $in{'upuser'}, $in{'uppass'}, $checksig); $updates = &filter_updates($updates, undef, $in{'third'}, $in{'missing'}); $count += scalar(@$updates); foreach $u (@$updates) { # Get module or theme's details my %minfo = &get_module_info($u->[0]); my %tinfo = &get_theme_info($u->[0]); my %info = %minfo ? %minfo : %tinfo; # Skip if we already have the version, perhaps from an earlier # update in this run my $nver = $u->[1]; $nver =~ s/^(\d+\.\d+)\..*$/$1/; next if (%info && $info{'version'} && $info{'version'} >= $nver); if ($in{'show'}) { # Just tell the user what would be done print &text('update_mshow', "<b>$u->[0]</b>", "<b>$u->[1]</b>"), "<br>\n"; print " " x 10; print "$text{'update_fixes'} : " if ($info{'longdesc'}); print $u->[4],"<p>\n"; $donemodule{$u->[0]} = 1; } else { # Actually do the update .. my (@mdescs, @mdirs, @msizes); print &text('update_mok', "<b>$u->[0]</b>", "<b>$u->[1]</b>"), "<br>\n"; print " " x 10; print "$text{'update_fixes'} : " if ($info{'longdesc'}); print $u->[4],"<br>\n"; ($mhost, $mport, $mpage, $mssl) = &parse_http_url($u->[2], $host, $port, $page, $ssl); ($mfile = $mpage) =~ s/^(.*)\///; $mtemp = &transname($mfile); $progress_callback_url = $u->[2]; $progress_callback_prefix = " " x 10; &retry_http_download($mhost, $mport, $mpage, $mtemp, undef, \&progress_callback, $mssl, $in{'upuser'}, $in{'uppass'}); $irv = &check_update_signature($mhost, $mport, $mpage, $mssl, $in{'upuser'}, $in{'uppass'}, $mtemp, $checksig); $irv ||= &install_webmin_module($mtemp, 1, 0, [ $base_remote_user ]); print " " x 10; if (!ref($irv)) { print &text('update_failed', $irv),"<p>\n"; } else { print &text('update_mdesc', "<b>$irv->[0]->[0]</b>", "<b>$irv->[2]->[0]</b>"),"<p>\n"; $donemodule{$irv->[0]->[0]} = 1; } } } } print &text('update_none'),"<br>\n" if (!$count); # Check if a new version of webmin itself is available $version = &get_latest_webmin_version(); if ($version > &get_webmin_version()) { print "<b>",&text('update_version', $version),"</b><p>\n"; } &ui_print_footer("", $text{'index_return'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
subdir | Folder | 0755 |
|
|
CHANGELOG | File | 12.02 KB | 0644 |
|
acme_tiny.py | File | 11.24 KB | 0755 |
|
adminupgrade | File | 299 B | 0644 |
|
backup_config.pl | File | 1.97 KB | 0755 |
|
bootup.cgi | File | 1.04 KB | 0755 |
|
cache.cgi | File | 1.47 KB | 0755 |
|
cgi_args.pl | File | 159 B | 0755 |
|
change_access.cgi | File | 1.34 KB | 0755 |
|
change_advanced.cgi | File | 3 KB | 0755 |
|
change_anon.cgi | File | 712 B | 0755 |
|
change_bind.cgi | File | 4.8 KB | 0755 |
|
change_ca.cgi | File | 674 B | 0755 |
|
change_debug.cgi | File | 1.38 KB | 0755 |
|
change_lang.cgi | File | 558 B | 0755 |
|
change_lock.cgi | File | 554 B | 0755 |
|
change_log.cgi | File | 2.38 KB | 0755 |
|
change_mobile.cgi | File | 940 B | 0755 |
|
change_os.cgi | File | 1.85 KB | 0755 |
|
change_osdn.cgi | File | 1.54 KB | 0755 |
|
change_overlay.cgi | File | 1.16 KB | 0755 |
|
change_proxy.cgi | File | 1.09 KB | 0755 |
|
change_referers.cgi | File | 633 B | 0755 |
|
change_session.cgi | File | 4.77 KB | 0755 |
|
change_ssl.cgi | File | 3.03 KB | 0755 |
|
change_startpage.cgi | File | 773 B | 0755 |
|
change_status.cgi | File | 1.02 KB | 0755 |
|
change_theme.cgi | File | 1.16 KB | 0755 |
|
change_twofactor.cgi | File | 1.43 KB | 0755 |
|
change_ui.cgi | File | 1.61 KB | 0755 |
|
change_web.cgi | File | 2.47 KB | 0755 |
|
clear_blocked.cgi | File | 154 B | 0755 |
|
clear_cache.cgi | File | 205 B | 0755 |
|
clone_mod.cgi | File | 2.06 KB | 0755 |
|
config | File | 114 B | 0644 |
|
config.info | File | 696 B | 0644 |
|
config.info.ar | File | 414 B | 0644 |
|
config.info.ca | File | 408 B | 0644 |
|
config.info.cs | File | 233 B | 0644 |
|
config.info.de | File | 368 B | 0644 |
|
config.info.es | File | 229 B | 0644 |
|
config.info.fa | File | 301 B | 0644 |
|
config.info.fr | File | 577 B | 0644 |
|
config.info.hr | File | 0 B | 0644 |
|
config.info.hu | File | 0 B | 0644 |
|
config.info.it | File | 245 B | 0644 |
|
config.info.ja | File | 531 B | 0644 |
|
config.info.ko | File | 206 B | 0644 |
|
config.info.ms | File | 286 B | 0644 |
|
config.info.nl | File | 299 B | 0644 |
|
config.info.no | File | 283 B | 0644 |
|
config.info.pl | File | 284 B | 0644 |
|
config.info.pt_BR | File | 299 B | 0644 |
|
config.info.ru | File | 491 B | 0644 |
|
config.info.sk | File | 132 B | 0644 |
|
config.info.sv | File | 202 B | 0644 |
|
config.info.tr | File | 155 B | 0644 |
|
cpan_modules.pl | File | 229 B | 0755 |
|
defaultacl | File | 17 B | 0644 |
|
delete_cache.cgi | File | 471 B | 0755 |
|
delete_mod.cgi | File | 2.24 KB | 0755 |
|
delete_webmincron.cgi | File | 1.51 KB | 0755 |
|
download_cert.cgi | File | 532 B | 0755 |
|
edit_access.cgi | File | 1.38 KB | 0755 |
|
edit_advanced.cgi | File | 3.87 KB | 0755 |
|
edit_anon.cgi | File | 812 B | 0755 |
|
edit_assignment.cgi | File | 1.12 KB | 0755 |
|
edit_bind.cgi | File | 2.95 KB | 0755 |
|
edit_blocked.cgi | File | 944 B | 0755 |
|
edit_ca.cgi | File | 2.82 KB | 0755 |
|
edit_categories.cgi | File | 1.69 KB | 0755 |
|
edit_debug.cgi | File | 2.04 KB | 0755 |
|
edit_descs.cgi | File | 1.49 KB | 0755 |
|
edit_ipkey.cgi | File | 1.7 KB | 0755 |
|
edit_lang.cgi | File | 1.82 KB | 0755 |
|
edit_lock.cgi | File | 763 B | 0755 |
|
edit_log.cgi | File | 3.04 KB | 0755 |
|
edit_mobile.cgi | File | 1.26 KB | 0755 |
|
edit_mods.cgi | File | 4.45 KB | 0755 |
|
edit_os.cgi | File | 2.72 KB | 0755 |
|
edit_proxy.cgi | File | 3.7 KB | 0755 |
|
edit_referers.cgi | File | 899 B | 0755 |
|
edit_sendmail.cgi | File | 3.48 KB | 0755 |
|
edit_session.cgi | File | 5.18 KB | 0755 |
|
edit_ssl.cgi | File | 10.55 KB | 0755 |
|
edit_startpage.cgi | File | 1.68 KB | 0755 |
|
edit_status.cgi | File | 1.13 KB | 0755 |
|
edit_themes.cgi | File | 3.72 KB | 0755 |
|
edit_twofactor.cgi | File | 1.5 KB | 0755 |
|
edit_ui.cgi | File | 2.51 KB | 0755 |
|
edit_upgrade.cgi | File | 4.26 KB | 0755 |
|
edit_web.cgi | File | 2.88 KB | 0755 |
|
edit_webmincron.cgi | File | 1.35 KB | 0755 |
|
export_mod.cgi | File | 1.23 KB | 0755 |
|
feedback_files.pl | File | 126 B | 0755 |
|
fix_os.cgi | File | 228 B | 0755 |
|
gnupg-lib.pl | File | 13.38 KB | 0755 |
|
hide.cgi | File | 326 B | 0755 |
|
index.cgi | File | 4.16 KB | 0755 |
|
install_mod.cgi | File | 3.11 KB | 0755 |
|
install_theme.cgi | File | 2.29 KB | 0755 |
|
jcameron-key.asc | File | 1.29 KB | 0644 |
|
letsencrypt-cleanup.pl | File | 2.02 KB | 0755 |
|
letsencrypt-dns.pl | File | 2.57 KB | 0755 |
|
letsencrypt-lib.pl | File | 14.03 KB | 0755 |
|
letsencrypt.cgi | File | 4.64 KB | 0755 |
|
log_parser.pl | File | 1.23 KB | 0755 |
|
module.info | File | 195 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 142 B | 0644 |
|
module.info.ar | File | 185 B | 0644 |
|
module.info.ar.auto | File | 22 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 208 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 218 B | 0644 |
|
module.info.ca | File | 134 B | 0644 |
|
module.info.ca.auto | File | 15 B | 0644 |
|
module.info.cs | File | 28 B | 0644 |
|
module.info.cs.auto | File | 128 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 142 B | 0644 |
|
module.info.de | File | 126 B | 0644 |
|
module.info.de.auto | File | 15 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 262 B | 0644 |
|
module.info.es | File | 33 B | 0644 |
|
module.info.es.auto | File | 109 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 158 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 202 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 141 B | 0644 |
|
module.info.fr | File | 32 B | 0644 |
|
module.info.fr.auto | File | 129 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 195 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 149 B | 0644 |
|
module.info.hu | File | 30 B | 0644 |
|
module.info.hu.auto | File | 148 B | 0644 |
|
module.info.it | File | 33 B | 0644 |
|
module.info.it.auto | File | 107 B | 0644 |
|
module.info.ja | File | 180 B | 0644 |
|
module.info.ko | File | 22 B | 0644 |
|
module.info.ko.auto | File | 129 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 180 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 157 B | 0644 |
|
module.info.ms | File | 119 B | 0644 |
|
module.info.ms.auto | File | 15 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 144 B | 0644 |
|
module.info.nl | File | 28 B | 0644 |
|
module.info.nl.auto | File | 117 B | 0644 |
|
module.info.no | File | 29 B | 0644 |
|
module.info.no.auto | File | 117 B | 0644 |
|
module.info.pl | File | 155 B | 0644 |
|
module.info.pl.auto | File | 15 B | 0644 |
|
module.info.pt | File | 33 B | 0644 |
|
module.info.pt.auto | File | 113 B | 0644 |
|
module.info.pt_BR | File | 36 B | 0644 |
|
module.info.pt_BR.auto | File | 119 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 147 B | 0644 |
|
module.info.ru | File | 34 B | 0644 |
|
module.info.ru.auto | File | 172 B | 0644 |
|
module.info.sk | File | 30 B | 0644 |
|
module.info.sk.auto | File | 132 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 147 B | 0644 |
|
module.info.sv | File | 30 B | 0644 |
|
module.info.sv.auto | File | 114 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 258 B | 0644 |
|
module.info.tr | File | 33 B | 0644 |
|
module.info.tr.auto | File | 128 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 215 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 209 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 177 B | 0644 |
|
module.info.zh | File | 22 B | 0644 |
|
module.info.zh_TW | File | 25 B | 0644 |
|
module.info.zh_TW.auto | File | 115 B | 0644 |
|
newcsr.cgi | File | 800 B | 0755 |
|
newkey.cgi | File | 879 B | 0755 |
|
postinstall.pl | File | 2.01 KB | 0755 |
|
refresh_modules.cgi | File | 664 B | 0755 |
|
restart.cgi | File | 87 B | 0755 |
|
save_assignment.cgi | File | 485 B | 0755 |
|
save_categories.cgi | File | 946 B | 0755 |
|
save_descs.cgi | File | 1006 B | 0755 |
|
save_ipkey.cgi | File | 1.31 KB | 0755 |
|
save_newmod.cgi | File | 278 B | 0755 |
|
save_sendmail.cgi | File | 2.08 KB | 0755 |
|
save_webmincron.cgi | File | 1016 B | 0755 |
|
savekey.cgi | File | 2.8 KB | 0755 |
|
setup_ca.cgi | File | 1.52 KB | 0755 |
|
standard_chooser.cgi | File | 1.68 KB | 0755 |
|
stop_ca.cgi | File | 1.03 KB | 0755 |
|
syslog_logs.pl | File | 633 B | 0755 |
|
system_info.pl | File | 5.02 KB | 0644 |
|
test_sendmail.cgi | File | 784 B | 0755 |
|
third_chooser.cgi | File | 1.55 KB | 0755 |
|
twofactor-funcs-lib.pl | File | 8.81 KB | 0644 |
|
uninstall.pl | File | 236 B | 0755 |
|
update.cgi | File | 2.86 KB | 0755 |
|
upgrade.cgi | File | 16.6 KB | 0755 |
|
view_webmincron.cgi | File | 1.66 KB | 0755 |
|
webmin-lib.pl | File | 68.77 KB | 0755 |
|