From 058e3e56dc5f4a7d9aa6c183dfeb9226f13fa515 Mon Sep 17 00:00:00 2001 From: Jan Schneider Date: Mon, 27 Aug 2018 20:49:39 +0200 Subject: [PATCH] Execute cgi instead of using wget to get available version in http-auth enabled environments. --- addon/lib/rmupdate.tcl | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/addon/lib/rmupdate.tcl b/addon/lib/rmupdate.tcl index 90de680..e5b3dcd 100644 --- a/addon/lib/rmupdate.tcl +++ b/addon/lib/rmupdate.tcl @@ -1461,9 +1461,17 @@ proc ::rmupdate::get_addon_info {{fetch_available_version 0} {fetch_download_url set addons(${id}::${keyl}) $value if {$keyl == "update" && $fetch_available_version == 1} { catch { - #set cgi "${addons_www_dir}/[string range $value 8 end]" - #set available_version [exec tclsh "$cgi"] - set available_version [exec /usr/bin/wget "http://localhost${value}" --quiet --output-document=-] + set cgi "${addons_www_dir}/[string range $value 8 end]" + set cfd [open $cgi r] + set cgi_data [read $cfd] + close $cfd + set firstline [lindex [split $cgi_data "\n"] 0] + write_log 1 "firstline: ${firstline}" + regexp {^#!(.*)$} $firstline match cmd + set available_version [exec $cmd "$cgi"] + if {!$available_version} { + set available_version [exec /usr/bin/wget "http://localhost${value}" --quiet --output-document=-] + } set addons(${id}::available_version) $available_version } }