# -*- Tcl -*- # This is part of CGI::Auth::Flexible, a perl CGI authentication module. # # Copyright 2012,2013,2015 Ian Jackson. # Copyright 2012,2013,2015 Citrix. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version, with the "CAF Login Exception" # as published by Ian Jackson (version 1, or at your option any # later version) as an Additional Permission. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. set env(CAFTEST_NOSRCDUMP) 0 set timeout [expr {$timeout * 3}] dospawn loginas alice send "B/source available\r\r" etxt "Save file to" set outertar $tt/t-srcdump.tgz set sd $tt/t-srcdump.d send "\x15$outertar\r" etxt "Download complete" exec mkdir $sd set files [exec tar -C $sd -zvxf - < $outertar] foreach f { manifest.txt licence.data cgi-auth-flexible.pm .gitignore } { set got($f) 0 } if {[file exists .git]} { set got(.git/objects/) 0 } foreach f $files { switch -glob -- $f { licence.data - manifest.txt { set got($f) 1 } *.tar { foreach g [exec tar -C $sd -tf - < $sd/$f] { switch -glob -- $g { cgi-auth-flexible.pm - .gitignore - .git/objects/ { set got($g) 1 } *~ { error "file $g inside $f !" } .git/* { } *.db { error "file $g inside $f outside .git !" } } } } } } foreach g [array names got] { if {!$got($g)} { error "file $g missing" } }