1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
|
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that OpenPGP is installed locally. This must be configured
# according to the implementation of OpenPGP in use.
#
variable openPgpInstalledPattern; # DEFAULT: ^gpg \(GnuPG\) 2\.0\.
if {![info exists openPgpInstalledPattern]} then {
set openPgpInstalledPattern {^gpg \(GnuPG\) 2\.0\.}
}
#
# NOTE: The command to use when verifying OpenPGP signatures for the
# downloaded package scripts. This must be configured according
# to the implementation of OpenPGP in use.
#
|
|
|
|
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
|
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that OpenPGP is installed locally. This must be configured
# according to the implementation of OpenPGP in use.
#
variable openPgpInstalledPattern; # DEFAULT: ^gpg \(GnuPG\) 2\.[01]\.
if {![info exists openPgpInstalledPattern]} then {
set openPgpInstalledPattern {^gpg \(GnuPG\) 2\.[01]\.}
}
#
# NOTE: The command to use when verifying OpenPGP signatures for the
# downloaded package scripts. This must be configured according
# to the implementation of OpenPGP in use.
#
|
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
|
# NOTE: This procedure was stolen from the "getEagle.tcl" script. It is
# designed to process a single HTTP request, including any HTTP
# 3XX redirects (up to the specified limit), and return the raw
# HTTP response data. It may raise any number of script errors.
#
# <public>
proc getFileViaHttp { uri redirectLimit channel quiet args } {
#
# NOTE: This variable is used to determine if plain HTTP URIs should be
# converted to HTTPS, if the "tls" package is available.
#
variable forceSecureUri
#
|
>
>
>
>
>
>
|
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
|
# NOTE: This procedure was stolen from the "getEagle.tcl" script. It is
# designed to process a single HTTP request, including any HTTP
# 3XX redirects (up to the specified limit), and return the raw
# HTTP response data. It may raise any number of script errors.
#
# <public>
proc getFileViaHttp { uri redirectLimit channel quiet args } {
#
# NOTE: This global variable is used to check the running version of
# Tcl.
#
global tcl_version
#
# NOTE: This variable is used to determine if plain HTTP URIs should be
# converted to HTTPS, if the "tls" package is available.
#
variable forceSecureUri
#
|
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
|
variable afterForPageProgress
#
# NOTE: This procedure requires the modern version of the HTTP package,
# which is typically included with the Tcl core distribution.
#
package require http 2.0
#
# NOTE: If the 'tls' package is available, always attempt to use HTTPS;
# otherwise, only attempt to use HTTP if explicitly allowed.
#
if {[catch {package require tls}] == 0} then {
::http::register https 443 [list ::tls::socket -tls1 true]
|
>
>
>
>
>
>
>
>
>
>
|
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
|
variable afterForPageProgress
#
# NOTE: This procedure requires the modern version of the HTTP package,
# which is typically included with the Tcl core distribution.
#
package require http 2.0
#
# NOTE: Tcl 8.6 added support for IPv6; however, on some machines this
# support can cause sockets to hang for a long time. Therefore,
# for now, always force the use of IPv4.
#
if {[info exists tcl_version] && $tcl_version >= 8.6} then {
namespace eval ::tcl::unsupported {}
set ::tcl::unsupported::socketAF inet
}
#
# NOTE: If the 'tls' package is available, always attempt to use HTTPS;
# otherwise, only attempt to use HTTP if explicitly allowed.
#
if {[catch {package require tls}] == 0} then {
::http::register https 443 [list ::tls::socket -tls1 true]
|