Overview
Comment: | Add support for a configurable default list of API keys. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
af3a11e2cdc8ac14a365bf7875a760c9 |
User & Date: | mistachkin on 2016-09-08 22:01:04 |
Other Links: | manifest | tags |
Context
2016-09-08
| ||
22:10 | The 'VERSION' file(s) must be deployed as well. check-in: ec76ecd8ad user: mistachkin tags: trunk | |
22:01 | Add support for a configurable default list of API keys. check-in: af3a11e2cd user: mistachkin tags: trunk | |
2016-09-06
| ||
19:10 | Namespace support must be enabled (i.e. in Eagle) for the package clients. check-in: d1e4c32aff user: mistachkin tags: trunk | |
Changes
Modified client/1.0/pkgr.eagle from [38a75841f0] to [0de98c695f].
︙ | ︙ | |||
276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 | # is returned if no API keys are currently configured. The prefix # argument is an extra variable name prefix to check prior to any # that are already configured. # # <internal> proc getApiKeys { {prefix ""} } { global env set prefixes [list] if {[string length $prefix] > 0} then { lappend prefixes $prefix } lappend prefixes [getLookupVarNamePrefix] foreach prefix $prefixes { if {[string length $prefix] == 0} then { set prefix ::; # TODO: Make non-global? } set varName [appendArgs $prefix api_keys] if {[info exists $varName]} then { return [set $varName] } set varName [string trim $varName :] if {[info exists env($varName)]} then { return $env($varName) } } | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | | 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 | # is returned if no API keys are currently configured. The prefix # argument is an extra variable name prefix to check prior to any # that are already configured. # # <internal> proc getApiKeys { {prefix ""} } { global env variable autoApiKeys # # NOTE: If the caller specified a variable name prefix, try to use it # first. # set prefixes [list] if {[string length $prefix] > 0} then { lappend prefixes $prefix } # # NOTE: Next, fallback to the variable name prefix for this package. # lappend prefixes [getLookupVarNamePrefix] # # NOTE: Try each variable name prefix, in order, until a set of API # keys is found. # foreach prefix $prefixes { # # NOTE: If an empty prefix is seen, force it to use the "api_keys" # variable from the global namespace. # if {[string length $prefix] == 0} then { set prefix ::; # TODO: Make non-global? } # # NOTE: Check for the variable, in whatever namespace it resides, # and return its value verbatim if it exists. # set varName [appendArgs $prefix api_keys] if {[info exists $varName]} then { return [set $varName] } # # NOTE: Fallback to using an environment variable with the same # base name and returns its value verbatim if it exists. # set varName [string trim $varName :] if {[info exists env($varName)]} then { return $env($varName) } } # # NOTE: If there is a default list of API keys, just return it. # if {[info exists autoApiKeys] && [llength $autoApiKeys] > 0} then { return $autoApiKeys } # # NOTE: Otherwise, return the system default, which is "anonymous" # packages only (i.e. those without any owners). # return [list] } # # NOTE: This procedure returns the base URI for the package repository # server. There are no arguments. # proc getLookupBaseUri {} { |
︙ | ︙ | |||
1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 | # NOTE: This procedure performs initial setup of the package repository # client, using the current configuration parameters. There are # no arguments. It may load the Garuda package when evaluated in # native Tcl. It may load a native Tcl library when evaluated in # Eagle. It may install the [package unknown] hook. # proc setupPackageUnknownHandler {} { variable autoHook variable autoLoadTcl variable autoRequireGaruda # # NOTE: Should we attempt to automatically load the Garuda package for # native Tcl? | > | 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 | # NOTE: This procedure performs initial setup of the package repository # client, using the current configuration parameters. There are # no arguments. It may load the Garuda package when evaluated in # native Tcl. It may load a native Tcl library when evaluated in # Eagle. It may install the [package unknown] hook. # proc setupPackageUnknownHandler {} { variable autoApiKeys variable autoHook variable autoLoadTcl variable autoRequireGaruda # # NOTE: Should we attempt to automatically load the Garuda package for # native Tcl? |
︙ | ︙ | |||
1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 | # # NOTE: This procedure sets up the default values for all configuration # parameters used by the package repository client. There are no # arguments. # proc setupPackageUnknownVars {} { # # NOTE: Automatically install our [package unknown] handler when this # package is loaded? # variable autoHook; # DEFAULT: true if {![info exists autoHook]} then { | > > > > > > > > > > > | 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 | # # NOTE: This procedure sets up the default values for all configuration # parameters used by the package repository client. There are no # arguments. # proc setupPackageUnknownVars {} { # # NOTE: What is the default set of API keys if none were set explicitly? # This list is subject to change at any time -AND- may be empty or # may contain non-working API keys, please do not rely on it. # variable autoApiKeys; # DEFAULT: 0000000000000000000000000000000000000000 if {![info exists autoApiKeys]} then { set autoApiKeys [list 0000000000000000000000000000000000000000] } # # NOTE: Automatically install our [package unknown] handler when this # package is loaded? # variable autoHook; # DEFAULT: true if {![info exists autoHook]} then { |
︙ | ︙ |
Modified client/1.0/pkgr.eagle.asc from [7f8ba01f34] to [cb19f1ee0f].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJX0d93AAoJEFAslq9JXcLZmMcP/AgIgfyqy+dmH5Rwh5XUAYiI +LbnPQbuWGeLHyUFawWv/kC534bz8oiErWK5t6aSHnF/FERsWzZcOYSL8qvC64aU 9JjP6TOIsK2Hp/O2cZqcXfcqmnOlXRSEJLj/wePPXc84N7WyrsY+9LPrLXDZvJLJ hYCn0w9wA7ZBv2ikYcC0sUzUdro+u1xxCnZS/c6mIGh8R2ilS7NssKuSHJjIA1lm 9KTwaRM7pB6sMuKjRKvkag6omTMtz8z2Jquj5umWK7UgBGknZDCddJhnEKccE9rW s5uJ9w+0ph+Y8VceHebUq6NofdLG8yCb4Z4FvlKAeTgKUuy0VjnzKE2A1UoXhz8O 1N5WXw3eqK6Y/F8ymIGs71ebOplsMK5hx2vTcMVMwWo/uf3kgqFE6CqVhTLeW4kb 1xZTgLlMUISy9UxDb0NwGNMOeZ8F7W8EE8I7iPSzCXTsb8IXupit74edrYHfBA2r mnUPEe5nnyH5q0HRGt155Z/PdvQe14F2o7SjeXg8SiUOFw1lPN4SuVDyKWK44aXI OLpeU9vFOtcr+btuFqhfhVxnGVRyVzaRx2zerhdkDvUgs2RQ9NWhJN2YnKRH3mfq HLDWS1obtp7uuIEnDpXZzMO0Jd0GYQsdzMGHmTaf43pdfkbTukLMSr/AvI89SLw2 +m3DNz9PQuCm08HwHNKJ =rKvN -----END PGP SIGNATURE----- |
Modified client/1.0/pkgr.eagle.harpy from [3401063dfc] to [c5e97b17d9].
︙ | ︙ | |||
17 18 19 20 21 22 23 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> <Id>6e181bed-2e2b-4b57-9ce0-2016ee6c857a</Id> <HashAlgorithm>SHA512</HashAlgorithm> <EntityType>Script</EntityType> <TimeStamp>2016-09-08T22:00:00.2122187Z</TimeStamp> <Duration>-1.00:00:00</Duration> <Key>0x9559f6017247e3e2</Key> <Signature> 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 </Signature> </Certificate> |
Modified client/1.0/pkgr.eagle.harpy.asc from [7b9676946b] to [c2cb2625aa].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJX0d94AAoJEFAslq9JXcLZuVgQAImM4Gv+hLu1L9KKxHIHBpuu wBbe2wW8KD92QztrMy68dv5CVr9/Ta99xst2/JV/8gCsKS9IDAnx0Lov8a/WGKSu u7p/Tffc40kBqI4+130gpqAvgBJy/oVcVABDuPn4YjWOGs9WgSzTYvrsjPxjyKs4 mn7Fo+TzeHgPTxQpcHlkG5b8QkhqqYBPr1qvss3hucjPrSKTFvjpzVtPmtgZvncB X8Hei6jcIym6NoUzhCwK1bKAbzvzqc/3XuoWuMwbiajJJdgj+WJyd8FINs+rSwWI Anoiqoa4Vl+QCEJwykP3a2Uf6q2mmH1JGF4ZJJAhSpQSMhlC0I5yWoexFkQZLaQI 9lbjhHX4pVotwJWZVH+fLRNNy5BM7f7/YHF0iGTkoQmkSfNkuNRsg0YX7CWcWqKU h29DkRKoC/l047tpWXyStgpTM6AWzGH0oY3580btAI/y0RfxtPALrq2eYADcb6gE OyxNlx/UL9mZe3kiV0bG1x1+drN+yfynisg08+xq2sKuHdZXkgsynsdXqk8CepKO KuBNslwwOWPjqdFXgS8FOeKc0Au6wx4eGp/PluzR5IvEuG5FYiZkyhYVxlY9kEHV 4fXXMvB6P63JAn+vjz7CGqnhcLAbuyuO0jIFiSv4Pwz78RcBC/Ii490so2074wXC S91qfoy8zty8AeNKpuXg =b0pS -----END PGP SIGNATURE----- |