%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.248 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/ |
Upload File : |
# thirdparty.pl # Checks for modules available in an old install of webmin that are # not included in this new install, and offers to copy them across. # Also re-creates clones of existing modules in the new install ($newdir, $olddir, $copythird) = @ARGV; # find missing modules opendir(DIR, $olddir); while($m = readdir(DIR)) { next if ($m =~ /^\./); if (-r "$olddir/$m/module.info" && !-r "$newdir/$m/module.info") { if (-l "$olddir/$m") { # Found a clone - recreate it $clone = readlink("$olddir/$m"); symlink($clone, "$newdir/$m"); } else { # Found a candidate for copying local %minfo; &read_file("$olddir/$m/module.info", \%minfo); push(@missing, $m); push(@missdesc, $minfo{'desc'}); } } elsif (-r "$olddir/$m/theme.info" && !-r "$newdir/$m/theme.info") { # Found a theme for copying local %tinfo; &read_file("$olddir/$m/theme.info", \%tinfo); push(@missing, $m); push(@missdesc, $tinfo{'desc'}); } } closedir(DIR); if (@missing) { # Tell the user, and ask whether to copy if (!$copythird) { print "The following third party modules were found in your old Webmin\n"; print "installation in $olddir :\n"; for($i=0; $i<@missing; $i++) { printf " %-12.12s %s\n", $missing[$i], $missdesc[$i]; } print "Copy to new Webmin installation (y/n): "; chop($resp = <STDIN>); $copythird = $resp =~ /^y/i; } if ($copythird) { foreach $m (@missing) { system("cp -rp $olddir/$m $newdir"); } } } # read_file(file, array) # Fill an associative array with name=value pairs from a file sub read_file { local($arr); $arr = $_[1]; open(ARFILE, "<".$_[0]) || return 0; while(<ARFILE>) { chop; if (!/^#/ && /^([^=]+)=(.*)$/) { $$arr{$1} = $2; } } close(ARFILE); return 1; }