Server IP : 195.201.23.43 / Your IP : 3.135.211.221 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/software/ |
Upload File : |
#!/usr/bin/perl # rpmfind.cgi # Display a search window for rpmfind.net require './software-lib.pl'; &ReadParse(); $rpmfind_host = "rpmfind.net"; $rpmfind_port = 80; $rpmfind_page = "/linux/rpm2html/search.php?query="; &header(); print <<EOF; <script> function sel(m) { window.opener.ifield.value = m; window.close(); return false; } </script> EOF # Search form print &ui_form_start("rpmfind.cgi"); print &ui_submit($text{'rpm_search'}); print &ui_textbox("search", $in{'search'}, 20); print &ui_form_end(); if ($in{'search'}) { # Call the rpmfind.net website to get matches print &ui_hr(); $out = ""; &http_download($rpmfind_host, $rpmfind_port, $rpmfind_page.&urlize($in{'search'}), \$out); while($out =~ /<tr[^>]*>.*?<td[^>]*>([^<]*)<\/td>.*?<td[^>]*>([^<]*)<\/td>.*?((ftp|http|https):[^>]+\.rpm).*?<\/tr>([\000-\377]*)/i) { local $pkg = { 'url' => $3, 'dist' => $2, 'desc' => $1 }; $out = $5; $pkg->{'source'}++ if ($pkg->{'url'} =~ /\.src\.rpm$/ || $pkg->{'url'} =~ /\.srpm$/); if ($pkg->{'url'} =~ /\/(([^\/]+)-([^\-\/]+)-([^-\/]+).([^-\/]+)\.rpm)$/) { $pkg->{'file'} = $1; $pkg->{'prefix'} = $2; $pkg->{'version'} = $3; $pkg->{'release'} = $4; $pkg->{'arch'} = $5; if ($pkg->{'version'} =~ /^(\d+)\.([0-9\.]+)$/){ local ($v1 = $1, $v2 = $2); $v2 =~ s/\.//g; $pkg->{'version'} = "$v1.$v2"; } } elsif ($pkg->{'file'} =~ /\/([^\/]+)$/) { $pkg->{'file'} = $1; } push(@rv, $pkg); } # Show the search results @rv = grep { !$_->{'source'} } @rv; @rv = sort { local $vc = $b->{'version'} <=> $a->{'version'}; local $rc = $b->{'version'} <=> $a->{'version'}; return $vc ? $vc : $rc } @rv; if (@rv) { print "<table width=100%>\n"; print &ui_columns_start([ $text{'rpm_findrpm'}, $text{'rpm_finddistro'}, $text{'rpm_finddesc'} ], 100); foreach $r (@rv) { print &ui_columns_row([ &ui_link("#", $r->{'file'}, undef, "onClick='sel(\"$r->{'url'}\");'"), $r->{'dist'}, $r->{'desc'} ]); } print &ui_columns_end(); } else { print "<b>$text{'rpm_none'}</b> <p>\n"; } } &ui_print_footer();Private