Index: client/1.0/neutral/pkgd.eagle ================================================================== --- client/1.0/neutral/pkgd.eagle +++ client/1.0/neutral/pkgd.eagle @@ -572,11 +572,11 @@ # # NOTE: Then, in one step, download the file from the package # file server and write it to the specified local file. # - downloadOneUriToFile $fileName $uri false + downloadOneUriToFile $fileName $uri false false } result] == 0} then { # # NOTE: Ok, success. We are done. # return "" @@ -1495,13 +1495,15 @@ # set uri [subst $platformsUri] # # NOTE: Then, in one step, download the file from the package file - # server and write it to the specified local file. + # server and write it to the specified local file. Also, make + # sure it has a valid OpenPGP signature because all manifests on + # the server should be signed. # - downloadOneUriToFile $localFileName $uri $usePgp + downloadOneUriToFile $localFileName $uri $usePgp true # # NOTE: Initialize list of platforms to return. This will be populated # based on the platform directories available in the downloaded # manfiest data. @@ -1567,11 +1569,11 @@ # is the file name where the downloaded file should be written. The # The uri argument is the URI to download. The usePgp argument should # be non-zero when the OpenPGP signature file needs to be verified for # the downloaded file. The return value is undefined. # - proc downloadOneUriToFile { localFileName uri usePgp } { + proc downloadOneUriToFile { localFileName uri usePgp forcePgp } { # # NOTE: Then, in one step, download the URI from the package file # server and write it to the specified local file. # writeFile $localFileName [getPackageFile $uri] @@ -1578,11 +1580,12 @@ # # NOTE: Is use of OpenPGP for signature verification enabled? Also, # did we just download an OpenPGP signature file? # - if {$usePgp && [isOpenPgpSignatureFileName $localFileName true]} then { + if {$usePgp && ($forcePgp || \ + [isOpenPgpSignatureFileName $localFileName true])} then { # # NOTE: Attempt to verify the OpenPGP signature. If this fails, # an error is raised. # ::PackageRepository::probeForOpenPgpInstallation @@ -1652,11 +1655,11 @@ # # NOTE: Then, in one step, download the file from the package file # server and write it to the specified local file. # - downloadOneUriToFile $localFileName $uri $usePgp + downloadOneUriToFile $localFileName $uri $usePgp false } # # NOTE: This procedure attempts to download a list of files, optionally # persistening them for subsequent uses by the target language. @@ -1685,22 +1688,10 @@ proc downloadFiles { language version platform fileNames options } { variable clientDirectory variable persistentRootDirectory variable viaInstall - verifyLanguageAndVersion $language $version isClient - verifyPlatform $platform platform - - set temporaryDirectory [getUniqueTempDirectory pkgd_lib_] - - if {$isClient} then { - set persistentDirectory $clientDirectory - } else { - verifyPersistentRootDirectory - set persistentDirectory $persistentRootDirectory - } - set persistent [string is true -strict \ [getDictionaryValue $options -persistent]] set overwrite [string is true -strict \ [getDictionaryValue $options -overwrite]] @@ -1711,10 +1702,22 @@ set useAutoPath [string is true -strict \ [getDictionaryValue $options -useAutoPath]] set allowUpdate [string is true -strict \ [getDictionaryValue $options -allowUpdate]] + + verifyLanguageAndVersion $language $version isClient + verifyPlatform $platform platform + + set temporaryDirectory [getUniqueTempDirectory pkgd_lib_] + + if {$isClient} then { + set persistentDirectory $clientDirectory + } else { + verifyPersistentRootDirectory + set persistentDirectory $persistentRootDirectory + } set downloadedFileNames [list] foreach fileName $fileNames { if {[string length $fileName] == 0 || \ Index: client/1.0/neutral/pkgd.eagle.asc ================================================================== --- client/1.0/neutral/pkgd.eagle.asc +++ client/1.0/neutral/pkgd.eagle.asc @@ -1,18 +1,18 @@ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository -iQIcBAABCAAGBQJZ1S6hAAoJEFAslq9JXcLZB0oQAK21CfCowFxB0gCkJFhncsrb -VOB0SAVsVdzWJvnx7p8mr+LGDCKUCyTv9MYLczqlAYrTy/CDjwOYraFh5+6q4bbM -UstM1CbkERDl8nz5ViHd1CdWO2W3tz5zVdqNoPjhXvSy3vlbvw3OMdYZkPxjgYTk -HvOmcukdaOCAZC+Eh36sJkcSrSeAmzohWHAQqQi/f2zwslc/buoot9eNTYlWfE/A -wOUVd91XfPxrvp98INEw5XqqDp9tQYeeODqf2Wv3dFaqR4A0YqTYKXtZt1BqKHAJ -EDicsfZwuMO/cp14QmiWqes/JmIVE0vaLdsfoZlK/JPNO6hL4KB15Ea1lg+aNpMw -v8KvTT25eSMk9QrBrrY3zmCwWugXqt1YSPeMaJbYE+eTP41lO4HS+7yWV8+1kYe/ -zLlXo2VtZkPC68rOBcz5zSbpoZW0rb7Q1jxXhjU5v+ajQ9DHxy5vBUmUZe3IFs7c -OlM3Ut8xLG8pO8erB/nPKQlAU5JA20O/eqGmQDzb59o08ScWsZUyDa1Jc1NhAYMI -fsdaHdntktVMYcOq61cdouA4WxNRZLN9PqojOZdYR/jIwQk/i5iR6+Se+d7BBltU -d0E2PfUvt+IbhV1y1AcJjQyCJi2DnGamm9MIiKN6gF8b6ll35spoAvuIrPoR7uBg -HBlN4wtv0Pv4ZAjHEOEK -=vcqU +iQIcBAABCAAGBQJZ57ySAAoJEFAslq9JXcLZoXEP/2lC/G+eMJ+2tMhhsITa0b6F +yWB45twBy/sbB0/HEpGYRGtkuqjDH06eniLmxpPUft1xcVP+qZC1YxCqRclLN7aR +rwTenAu0UMXvQQ4Wzqi58H0BboOmv7CFeuXgbiqeS5ZjEoIkRaHFWt/CAxaR8+0y +EgeYeNE1eP9QW/50XltHiE9XZ9uRmb2cGDEb01llae7kSimt7QFxejEG2sSwy4QW +wDrlQVAYZWSogrK1YR71Gk9QUUdbBwOGrM8thRD22NIdCdvLRx68NH5DRzW/iX1i +5FFyVv48HrWeRjq8hnbCWD49Mxf0gL6G0HOMsDJ0PKrAM9EHIp0uZxLEIWJYnFKI +VIuQHBCsEqbzpfXq4noEV4aWcnBC6coYqsi+KqLThNLR5DPbAtdBboTjUM7k2LjV +iCScjQ/tDlddYhk64+K3RrJil+BnClgxhEwsnU7Xefmy8svVmHus68w76djA+jkV +shx7Yn4k9ABTaOm/fnZQKFQgBUCiz/LgnhsNGTTJySxT//oteYaWxnYMZ1vOQn4x +3OxrGhq0k1J7OUrCERxzj2ERlruNFywfAULcR555bctHKz2oSiszGXQh4JTxU2H5 +WhICv6nL29TIlqTXyX6TW2MyQm+B5HPbxXbZQBWKxMt55VIuEV+VqUsa5ucbHRuS +hLQKpk2iXX9WusWYApVz +=IwhK -----END PGP SIGNATURE----- Index: client/1.0/neutral/pkgd.eagle.harpy ================================================================== --- client/1.0/neutral/pkgd.eagle.harpy +++ client/1.0/neutral/pkgd.eagle.harpy @@ -19,50 +19,50 @@ None Mistachkin Systems - 8162c6e9-b28a-47dc-9cdf-45e01e16dd25 + 49591527-683b-4f1a-998b-11fb404578fb SHA512 Script - 2017-10-04T18:14:00.1741644Z + 2017-10-18T20:38:25.7364963Z -1.00:00:00 0x9559f6017247e3e2 - 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 Index: client/1.0/neutral/pkgd.eagle.harpy.asc ================================================================== --- client/1.0/neutral/pkgd.eagle.harpy.asc +++ client/1.0/neutral/pkgd.eagle.harpy.asc @@ -1,18 +1,18 @@ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository -iQIcBAABCAAGBQJZ1S6iAAoJEFAslq9JXcLZsIgQAJivoHtm12ssDRZ4NXW6raHk -Ax9EIXnsL4uBxVOKjjH74yH+2U8lFhrAyaD8crodVmYxiE5v1Bc/VtkrX728hgad -0qvAVq1IqGTFFDMF2qD0+DQIWNybiQXgYmbjiVovNhHZEjOh6hTsYj1aD31V+ioz -HmSMIrm/+l8EtaB31XKJ0K2lqXx7XUdOwGU4H0WyaxQaw6v1jr7c5KA+BoaMWdqP -KMwLej0vjOqtOvQz5pGyPYVOCOnOTC9Ljv4LS/NM8eiyGYHWcyWRUymFBlRcRhYn -ab6Ky94MT1PpvMYRtcxB+pURB9pq9V2m3ZlP+rgCcawiRFOacPUSvvuC7km12h+8 -6jxCVvu+bqPlYGNuTfdJJpe83P/oj5qf72OmqJYGAyLdhndAcoi9ujUdenYbYblK -gep9iSyf5E39r/ISzZ27xR5q85bEarw9weop9UJpEwPJgA/NvjPN4dnzXrcvUV3X -4yy+SzHm8yRNTmpqRhcpDbzB/RbVbfuFJjVgFhGavul+NQkqUH0ILcpc9NzuEbDO -/g4iPRE19qY2e2nkbHfVD4K6qVXOLmq8Aa+9C4NrzCyXfb36yriGdgfl554oeeba -0i2pV4wqjQ0k72Sz7WbLTIUyXGbWpLw30eNuONbYcqe/S75XvASIujqmMm3td7Hy -f1YIHQlck4Z9QQlsTZQm -=whBl +iQIcBAABCAAGBQJZ57yUAAoJEFAslq9JXcLZAv4QAKpkDb0l6PzaKncyYgTDMJKa +KU6SArlYsfcJIgE2KSClNkeS4YWFMpu1jzxwZiVPQ0fCFbRBQzAcuriP5DgtJ7fT +akPpnbubL/U7Fn/uKtkTXxDn74szRH5K7TY05eViQkjmxuN39tE6oq1XjmTNUeDn +xED/021dUox20JsKgfM2OSqO3HrTNwNK5aj7R5otofG3rpQ/SBf+rCY06cT4XXH/ +5HevWTxnszSJ5+IZL3muYoxVvAH7c5y+c8Kc1iKuueq7kRgc+eVvbRLEh2f6iGdU +aLXfl63vtAAtbLnCXy+1Tu/SwCydg7BvGZEulNSArSKZdkoN7JXe9kXzn+sbvvN9 +CpYnASSvR5RH7psgSt9swzXjsmjrGT+e9eYr46bU5czgikE4Pivi5xAuqPtqzDai +N5M/x/vlPQUlljkMfIf7sv5k65otloRq32kiOkDRiGp5Viaeojqtu55MPx/2ce2C +v7t7T4qElsVgEyK5xPkAUKVdY0znRMxZVRtWhZMvS6X58/XF/rI7dujhHBxoQwVL +4CTVMhaZYoqOrIr4lVsOwHH4nGK625YHWsxn3Khs1l8xSjtgXvepMSSu57htcHiT +M3f39TmhR+wJLj3NrQ2JmW4JC7iE5puyxZe6DFgxGyFn33tlSlNyW015vpmoi21d +1DHJpsFc3qp2nKgvbm8p +=/Mda -----END PGP SIGNATURE-----