Check-in [e7c21e360a]
Not logged in
Overview
Comment:Do not try to auto-hook the 'package unknown' handler if it is already hooked.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: e7c21e360afa298755add0dead76ba220c57ee84
User & Date: mistachkin on 2016-08-17 06:18:05
Other Links: manifest | tags
Context
2016-08-17
17:59
Add support for multiple API keys. Change package variable prefix to 'pkgr' instead of 'rpkg'. check-in: 7c3824bfd1 user: mistachkin tags: trunk
06:18
Do not try to auto-hook the 'package unknown' handler if it is already hooked. check-in: e7c21e360a user: mistachkin tags: trunk
05:27
Completely refactor the 'package unknown' handler error handling. check-in: 7a658563b4 user: mistachkin tags: trunk
Changes

Modified client/pkgr.eagle from [a9e801c84e] to [0ed7e11999].

737
738
739
740
741
742
743
744
745
746
747
748
749
750
751





752
753
754
755
756
757
758
      #
      # NOTE: Load a native Tcl library.  It must be signed with a valid
      #       Authenticode signature.
      #
      tcl load -findflags +TrustedOnly -loadflags +SetDllDirectory
    }

    if {$autoHook} then {
      #
      # NOTE: Install our [package unknown] handler and save the original
      #       one for our use as well.
      #
      hookPackageUnknownHandler
    }
  }






  proc hookPackageUnknownHandler {} {
    set varName [appendArgs [getLookupVarNamePrefix] saved_package_unknown]

    if {[info exists $varName]} then {
      error "package unknown handler already hooked"
    }







|







>
>
>
>
>







737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
      #
      # NOTE: Load a native Tcl library.  It must be signed with a valid
      #       Authenticode signature.
      #
      tcl load -findflags +TrustedOnly -loadflags +SetDllDirectory
    }

    if {$autoHook && ![isPackageUnknownHandlerHooked]} then {
      #
      # NOTE: Install our [package unknown] handler and save the original
      #       one for our use as well.
      #
      hookPackageUnknownHandler
    }
  }

  proc isPackageUnknownHandlerHooked {} {
    return [info exists [appendArgs \
        [getLookupVarNamePrefix] saved_package_unknown]]
  }

  proc hookPackageUnknownHandler {} {
    set varName [appendArgs [getLookupVarNamePrefix] saved_package_unknown]

    if {[info exists $varName]} then {
      error "package unknown handler already hooked"
    }

Modified client/pkgr.eagle.harpy from [f7f47c423a] to [6ca32d7096].

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
    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>2a821830-6f0d-48e2-a69a-c6a1e4566199</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T05:26:13.0964375Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    oabGV6fNKxQn09gnh/ITDiU+gwi+z7nWyNnDj5TJH/A7uDJis+SA9IhA6aQ7TFLeeU1a3UV4jB3B
    aBCFABg2zNKjrX6q1T6wYYdsKRYtQgsWFQSCB+3OuTglhkt1bjM2sqgrtdxCYNzj5SR/Vgg+5KTA
    trCTvsRFP6GKkE0fWKxHILVlH46IklFQL59aPi21kFWdDiK26poRwG3PKbptUwunPebSFmgSrmsp
    mcuy8ojunZqpjB3sE7k5lGwhaT8KTN0n0GOtygfpwbdEPFskPK9lmWuFcVK21u/H7T6hRIlmnW/z
    zN1yzLmmC7mgHbT3XhLRIknb5bcdz+26j+xlEGEd3C7LHsEvpOWJeebSawNV3EqD0YNAPX4Yo2s+
    0RG+KZT1CYIiLeiww4/xgMRlKoNj0DTFO7g0wwUrY5U7j0LsoUoBF7FUzY2B9aWS2+XsdjmQSJIo
    G4xuANCXusF9MdLseTRZDwR9VzL3YxZ9auvizRcdnpYKioTEA55cMpuIvcO2kuQaPjWfBPPY3BH3
    XxIz4M6wDOzDNjoVpYwKxrrJpR7HTxXYvf3ABrbtj6VBMjmDlX2R5YEXfCCc0PX/GWfBsIO9HzlC
    x/wZ/rdp+T8evuLiRGTuYNXXX7euiXRgRCwSlKzhST0mMtTfD2vnJhl3mMfSKF2bec5AxyIDkkV2
    1gFEvTX0qZwzFc+aCCDui8EtSfzt9a9IfgwQMtuUqV1T7l3T/79aK1UXRk+YBqRhanmFNv3VZzzF
    BCLefrWvZjpp8TZ2R4aUeSmUGH6U80FdLZHqGKgyVFsg9C5OniFzXu3XfQ5XIVlNfI3k8yoaKXhP
    7JioCE/j0evnHyqXBfRBDCDQc0jyXWTEso4T7ZpeWnVU9C298p1WKNKDBbxf44yiwSVg0KlEXvYJ
    ScLYQSHuqQbuMl4qDc+3S862oU7Y1ija4z5ms8yhPA44Vyougrd2w1Drhm4GGcilDlhbpBVO8jaQ
    of6ZwK1TOLVH4wK24APLD5dLTVCsaneLEbFCDE1K0c8fRacwLGjIL0QwCD9sno75iBcFz9KwNPVj
    KuDUPcOtWuogIot+TJMvo1KX5gb0y5A3D/e2kYbz6nTT1LZgTHK0lEyEVT7izJDrH/BAa41M6Phm
    D7s59mAGun+BfX+6phfsdzhNjP3CtTJwhHVlTaoxjFmK1wcJtruHUQ3rRO7kpJyhJUdgHiS3aDhF
    iwkKXHcHnDoBSdEVQbnFCje4ppqt+k6+IdCHi9wg3JZ4FaPVVBA1gLZnoUODa+40Jbpx1WH4p0YV
    kzJN4EVxLmMwOAhcAGMQ+H74pcE9V1Fb2Yox7+0RUf+thuWuB1I4ecajymAd8tfFytE7Nmf7qw==
  </Signature>
</Certificate>







|


|



|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|


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
    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>d4dc6ffe-bc7d-4c54-bd96-1da84e25c234</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T06:17:49.1208516Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    mqfa05JZihxfZKfsZS539KGRnp/ssOS+8aJ4W4ydW8vbhhKmuyYS40KEyorMx8SpMpeHLW5FKjL2
    vWhnRFA9vMRbISIZnxFZpD36TIWtCYBKRKuVqsW1r9ktGuiJlm5UmC1H9Vt5QJ0xS1o8DWJWhA9F
    3BGzEbP6v85zGYHexd7PAx5ejrxj5I3BomC1HmQdR0ASJXDP9bPlbTxIe79qTT9+h3xWTBloIn+o
    n7LNXfDV+Qc5X8wlBEW3/gI2wV1Byj+1uZVQ+4Cy4T6vlN6y9gyx8jKXQgvkj73auWN8bNPJdbx6
    2sP/py1O/o4v1/sPoIm5Snf4b9bb28h2Wg/c4yCieT+W/saV7Ki0ktQX3hxHXMRsU1F9zSTXbQwt
    RP8TlBZgDW2SZUN832vsCHLJWI6iqSIZBdBSQaaF9OYK9o/GqlvwfT4oZZb6YPj7cRUfugJRtagz
    18Cd/uzerErwsrawYujyd0s7Q74GEU9FhUvf7WjNBTNDU3/nF8FBKCwPT2AIf6o9z6dIMbsWJhwE
    lT+p49VBT6L/xKpcqnU2ZQaTNoQa++dS2W5gePoPKawLpD+9X/e0PSa7KcSk7wu4TtkjKgWXBSan
    LYvDhaRTg7NyAPYOpP6GNBk24pEPFzyJaEnwUlLRmgTCGW2uwYA4W+Q2/ERpJNgw8qhmyGhbf1xT
    GZmOb/VkF0edYSeS99GtGlBpGmUrXsFItuL9jXb1qALf0ErTDDldBnu+WJvFyT5UDQdC1OR8894Z
    mBTYkB9W0Yc4E3RGpqpGSVbIrzc+p1pYH0kUmDNECdie7/ba8R6AOpp9GDNel9Q4u421ooFOxMwv
    vb23g3TgWCuiNz3+4F2z3bhwBiJ5OcPJt53ZdSeMDHvq2aWIm35T6FThbv3GbP4tftEyxkYDpAXG
    zA73L0lN9DnG15xMJwK3EHaoTXvcCv9stOyJ1ptmXaecI5bTmIQwwmV+362UnKpXR+KLjj1Kxi0H
    n4Kx6h37c+IhLFnY2bLAP/7ick+vHX7FKT5U/kFj4JTRdAJAvyygXg513+7GBowxThQYidiiaxNP
    pNoVt9E67NSxMQvUqyWcIxiYJIGIc9OeTbsx+re+Jnfkjylbm77TOwJuQRR8cLz87KvgRG08/CbC
    PSJuGEm2anb5hfhy3gQFQ95Bs8rFH7iSOF28bw8iYJ0hkstxRZmCZwma2haC6bDS31ZuxSoP/Jga
    iRsQvFp7TDlb/RwXYz3k4CtsZIKYHhxiF4uaUVVk2/F6gyPXow6uRbJOrQ4dJ2POmpgVnmkzuC6G
    dfKIH3K0kuVBYm5NT4PVkjbH0l/pfEs6Ab0i93LVmZKb4zDZLFWHq2jC4kW+Zuc8B/WA8mLm3g==
  </Signature>
</Certificate>