fix(dotnet): admit real CLI GUID and fat CIL bodies
This commit is contained in:
parent
aa200ce8ca
commit
735973b08b
|
|
@ -1 +1 @@
|
|||
window.hierarchyData = "eJytmV1T5CgUhv9LrplsAuTLO6fLddyaWi17przYsixMsKVMQ5bQul1T/vcpEluJIQbi3rRJzHvOAxwO5PArkEKoNjj6BxUYAoxRkgKMcZSANEN5ClCRIgwSiKIYJEWMIoCjOMsAxEWKAI5SlAFY5LC4BoGkdzUtFRO8DY5+Bdqi/svJlgZHwTEn9b5l7YmUQgYgeGC8Co5imINgJ+vgKChr0ra0/aMSW8L4DdXvteFAFt6rbR2A/tXgKFBt9UXb+dI/AEF5z+pKUt41KMEaX7chywEqikyz6wZADHCE9E+SAxxl+iovAI4jCHAMU4DjBAMcp/oq0/8oIMAwzQGGeaR/coBRjABGKAYZTJLo+hkE2qPR4G+iaaj0bK4h8mkshhECGGokCGOAoW4dxBo4KXq2NLUMxoUUSpSiXjgoA/kMbweR5RaIM97s1EKCN62L+yKzuD/fqeX+DfE8gA4/C8CKNOSW1Uztf3LySFhNbmu6kGfalgsexFY8XtK6ptViJFPvgoFsGD/YlorF42SqXRASM1AvpHhkFZVr+pLfPCHseheMDFswjivSKO/MYlO7IOSFgfBViqeWyvPblspHsqArJgw4gMTRYDWRit2RUp03VC7hsOtdMKCZR090l/KSnnFFN5KpvSeGXe+V+WOUX3dgKLeAXdI7KvXFQrCh3qV/Bmvgwcx3tmW+U3esdXGf2obnT+adUEdSF+eZOVfO+CNtFdt04XUl5EPbEO9x+MCIC1Bhzpmf/IGLJ35JN6xV0jdUbWoHBBih0Z5oWSofa13cx2P3Sxc0m9oFAcYjhIX7LovYBQCNt6WXdCuUbzCOpC7OcW5rfUlb3y+BsdbFfVKM3K8VkcuC703p4jo1W74S/I5tdosWq7HWxX1u7jX/Fl8ZJ3J/3lBf7yOpk3Oz7b3+B5Eb6tvvI6mDczSY8xdUblnbMsEv6b87Jr2n/YQBFxBkzvxL2tRkf1ETvlbEez2yqecRus90a2esS9HQV/cwSQ/uGVdU3pHyjaB5FV2ImpX78J2VSYxXU8MtC8RFFusKQh5f94xZPDlgtFWfpnyx48DZ4+R2nFNJ+OdhOiuOKLqwYqBc0Vu9H+BKyP0lbcVO6p1js3OEejLk4aQt79Escgyve9pBwWet9LfnFb09mF9AObLh1nGoSGE2+Gxh1YZ+Jzte3s9Q3HeJ/sZUUBmat84Ig2V3aPDTEHR68k+MEypSnL+Ugixr8nHT1KzsVpgRpCU52QknTTnVhrLMtlPoPlodUIaC8N2tS21msF6f3rNKEqeQ2XSv3pgKKkPz1i1kusrqBMJsyMxD+IcMjuICXfdkBRqRfaOkqmnbusTLR3jv7ThVqgab6t6OS7AMOF6j492tg/8UmSN1UL5sTp2ipunfvXmnDa22Fkx22JW70744EGWpmZpXVfNSiHHps9v+1ZuxKrQ8ctgWwcFH+qpqTnRdTAruSfNeFtqezfPoQw9bXfhQGroQcm6FJW8p78YojvcEVoPecxGjFAJcZEm32Ha3tmJtzejsJsWJtrfkmLn0iZH9eGE4np/gmR3QiY5LklyfVGHcH9J0Fx+grgivWEXU3G7Fi/nVqH8G1sc53drYwadFDkcfVmvabSw/mjQm7UAUDu/mJ4sOwCkCz4ky0objJ779pTtI91R3Yvlh4doX1mrAUs9ehK3zc4etg3VQNdg2omWKumRGE3ckDMdPZge7O/A1y6kvuXV5L05YCKee+/ajXlp0P3aH1+Ysb9VJtXH6WDJx/yKPZF1K1qjDecGpJM39SnBF/1OhadUXNc3SPpN3F4Oy8aHi/v8Dj2275ffuiHu439F7kxVp1E7OVzJMQos0tD2bCc7n599QEC52"
|
||||
window.hierarchyData = "eJytmV1v3CgUhv+Lr6nXBvyVuzbKtl1VmyjTKherKCI2maB6wIuZdEdV/3uFnUlwwDE4ezOxHb/nPMDhgA8/IymE6qOTf1CFIcAYZQXAGCc5yAtUFgBVOcpABlECQValKAU4SYsSQFzlGOAkRyWAVYmSaxBJetfSWjHB++jkZ6Qt6r+c7Gh0Er3npD30rD+TUsgIRN8Zb6KTFJYg2ss2OonqlvQ97f9oxI4wfkP1e308kcX3atdGYHw1OolU37zTdt6ND0BU37O2kZQPDcqwxs8BqooSoKoqNHsCcAI1OdI/WQlwUuirsgI4TSDAKcwBTjMMcJrrq0L/o4IAw7wEGJaJ/ikBRikCGKEUFDDL0utfINIejQZ/El1HZWBzDVFIYzFMEMBQI0GYAgx16yDWwFk1suW5YzAupFCiFu3KQZnIF3gHiKJ0QHzm3V6tJHjW+rivCof7871a798QLwPo8HMAnJKO3LKWqcM3Th4Ia8ltS1fyzNvywYPYicdr2ra0WY1k6n0wkAvjK9tRsXqcTLUPQmYG6oUUD6yhckMf81sghFvvg1FgB8b7hnQqOLO41D4IZWUgfJDiR0/l+W1P5QNZ0RUzBjxA0mSymkjF7kitzjsq13C49T4Y0MyjZ7pLeU0/c0W3kqlDIIZbH5T5U1ReD2CodIBd0jsq9cVKsKnep38ma+DRzBe2Y6FT19b6uM9dw/MnC06oltTHeWHOlc/8gfaKbYfwuhLye9+R4HF4xYgPUGXOmW/8Oxc/+CXdsl7J0FB1qT0QYIKsPdG6VG5rfdyntvu1C5pL7YMAUwth5b7LIfYBQPa29JLuhAoNRkvq4xyXrtbXtA/9ErC1Pu6zynK/UUSuC75npY/r3Gz5qeB3bLtftVjZWh/3pbnX/Ft8YJzIw3lHQ71bUi/nZttH/VcitzS03y2ph3M0mfMXVO5Y3zPBL+m/eyaDp/2MAR8QZM78S9q15HDREr5RJHg9cqmXEYbPdGdnbGrR0Sf3MMuP7hlXVN6R+pmgexJdiJbVh/iFlVmMJ1PTLQvEVQF1BaGE1yNjAWcHjPbqzZSPdjw4R5zSjfNREv52mMGKJ4ourBgoV/RW7we4EvJwSXuxl3rn2O09oX4Y8njWVvBoViVG1yMtNifeRulvzyt6ezS/gtKy4ddxqMrhJAFJ1mzpF7Ln9f0Cxf2Q6G9MBZWxeeuNgLIZBCrfDEHnJ//MOKEqx8dSELYXxfdd17J6WGEsSEdychPOmvKqDRXOncLw0eqBMhXEL259ajO52Ssf71kjiVfIbIdXb0wFlbF56xcyQ2V1BmExZJYhwkMGJ2mFr0eyCltknyhpWtr3PvHyGt5LO16VKggtHp9gmXA8RceLWw//OXIViB43p15R043v3rzQxk5bKyY71KXtNK/G8StyMzWfNt1jIcanz27HV29sVex45LEtgnkxhTnTdTEpeCDNS1nserbMow89XHXhY2noQsilFZY8p7wbozg+EjgNBs9FjHIEcFVkw2I73LqKtS2ji5sUL9rRkmfm0idG7uOF6Xi+gWdxQGc6LstKfVKF8XhIM1y8gnpKeMMaopZ2K0HMT0bDMzCEEAxr4wCfVyWyPqw2dNhYvjZpTNqJKJ7eLU8WHYBzBIETxdLG9pPQ/tIdpHtqOLF8tXAdCus04Khnr8LW+XnA1sE6qRrsOtEzRX0yo4lrCWP7yeJgDwe+Zjn1Mbeu78UZC/Hc89B+1EuL7sfh8Nqc5b06a7ZeH0sm7l/kgWxqyTp1PC/4KEl3fyq4ov+p2LQaipoX+ZjJh4tJ2fhYcf//gW3bfvl9OOKe7nf03uSUdGovlysZJqFDGrueLQTnr1+/AYlqLpw="
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Failure to establish a filesystem object's canonical authorization identity.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="72344">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="72345">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Typed application failure produced by controlled process capture.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="72550">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="72551">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#application/ProcessCaptureError.ProcessCaptureError">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="domain_errors.AnalysisError.html" class="tsd-signature-type tsd-kind-class">AnalysisError</a>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Owner-only project policy persistence failure.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="74129">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="74130">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>A proposed grant exceeds the administrator-owned maximum authority.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="25005">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="25006">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Local launch failure retained as the cause of a provider-neutral error.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40184">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40185">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Provider-owned failure with bounded, token-redacted local diagnostics.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40357">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40358">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
<section class="tsd-panel tsd-comment">
|
||||
<div class="tsd-comment tsd-typography"><p>Expected operation failure returned by the authenticated Java bridge.</p>
|
||||
</div></section>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40437">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40438">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">Error</span>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -42,56 +42,56 @@
|
|||
<li data-refl="4288" id="domain/errors.BinaryTargetError"><a href="classes/domain_errors.BinaryTargetError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>BinaryTargetError</a></li>
|
||||
<li data-refl="4313" id="domain/errors.PermissionRequiredError"><a href="classes/domain_errors.PermissionRequiredError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>PermissionRequiredError</a></li>
|
||||
<li data-refl="4331" id="domain/errors.ReplayPlanStaleError"><a href="classes/domain_errors.ReplayPlanStaleError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>ReplayPlanStaleError</a></li>
|
||||
<li data-refl="72550" id="application/ProcessCaptureError.ProcessCaptureError"><a href="classes/application_ProcessCaptureError.ProcessCaptureError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>ProcessCaptureError</a></li></ul></li></ul>
|
||||
<li data-refl="72551" id="application/ProcessCaptureError.ProcessCaptureError"><a href="classes/application_ProcessCaptureError.ProcessCaptureError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>ProcessCaptureError</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="44356" id="application/AnalysisProvider.AnalysisOperationPort"><a href="interfaces/application_AnalysisProvider.AnalysisOperationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisOperationPort</a>
|
||||
<li data-refl="44357" id="application/AnalysisProvider.AnalysisOperationPort"><a href="interfaces/application_AnalysisProvider.AnalysisOperationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisOperationPort</a>
|
||||
<ul>
|
||||
<li data-refl="44362" id="application/AnalysisProvider.AnalysisClient"><a href="interfaces/application_AnalysisProvider.AnalysisClient.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisClient</a></li>
|
||||
<li data-refl="49752" id="application/BinarySessionPort.BinarySessionPort"><a href="interfaces/application_BinarySessionPort.BinarySessionPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BinarySessionPort</a>
|
||||
<li data-refl="44363" id="application/AnalysisProvider.AnalysisClient"><a href="interfaces/application_AnalysisProvider.AnalysisClient.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisClient</a></li>
|
||||
<li data-refl="49753" id="application/BinarySessionPort.BinarySessionPort"><a href="interfaces/application_BinarySessionPort.BinarySessionPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BinarySessionPort</a>
|
||||
<ul>
|
||||
<li data-refl="46982" id="application/BinarySession.BinarySession"><a href="classes/application_BinarySession.BinarySession.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>BinarySession</a></li></ul></li></ul></li></ul>
|
||||
<li data-refl="46983" id="application/BinarySession.BinarySession"><a href="classes/application_BinarySession.BinarySession.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>BinarySession</a></li></ul></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="44405" id="application/AnalysisProvider.AnalysisProvider"><a href="interfaces/application_AnalysisProvider.AnalysisProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisProvider</a>
|
||||
<li data-refl="44406" id="application/AnalysisProvider.AnalysisProvider"><a href="interfaces/application_AnalysisProvider.AnalysisProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisProvider</a>
|
||||
<ul>
|
||||
<li data-refl="55863" id="application/CompositeProvider.CompositeProvider"><a href="classes/application_CompositeProvider.CompositeProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CompositeProvider</a></li>
|
||||
<li data-refl="44450" id="application/AnalysisProvider.AnalysisProviderCandidate"><a href="interfaces/application_AnalysisProvider.AnalysisProviderCandidate.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisProviderCandidate</a>
|
||||
<li data-refl="55864" id="application/CompositeProvider.CompositeProvider"><a href="classes/application_CompositeProvider.CompositeProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CompositeProvider</a></li>
|
||||
<li data-refl="44451" id="application/AnalysisProvider.AnalysisProviderCandidate"><a href="interfaces/application_AnalysisProvider.AnalysisProviderCandidate.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AnalysisProviderCandidate</a>
|
||||
<ul>
|
||||
<li data-refl="40221" id="ghidra/GhidraProvider.GhidraProvider"><a href="classes/ghidra_GhidraProvider.GhidraProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>GhidraProvider</a></li>
|
||||
<li data-refl="39777" id="hopper/HopperProvider.HopperProvider"><a href="classes/hopper_HopperProvider.HopperProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>HopperProvider</a></li></ul></li></ul></li></ul>
|
||||
<li data-refl="40222" id="ghidra/GhidraProvider.GhidraProvider"><a href="classes/ghidra_GhidraProvider.GhidraProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>GhidraProvider</a></li>
|
||||
<li data-refl="39778" id="hopper/HopperProvider.HopperProvider"><a href="classes/hopper_HopperProvider.HopperProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>HopperProvider</a></li></ul></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="67386" id="application/JavaScriptArtifactGraphContext.AstEdgeInput"><a href="interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AstEdgeInput</a>
|
||||
<li data-refl="67387" id="application/JavaScriptArtifactGraphContext.AstEdgeInput"><a href="interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>AstEdgeInput</a>
|
||||
<ul>
|
||||
<li data-refl="67652" id="application/JavaScriptArtifactGraphContext.InferenceEdgeInput"><a href="interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>InferenceEdgeInput</a></li></ul></li></ul>
|
||||
<li data-refl="67653" id="application/JavaScriptArtifactGraphContext.InferenceEdgeInput"><a href="interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>InferenceEdgeInput</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="39634" id="hopper/BridgeLauncher.BridgeLauncher"><a href="interfaces/hopper_BridgeLauncher.BridgeLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BridgeLauncher</a>
|
||||
<li data-refl="39635" id="hopper/BridgeLauncher.BridgeLauncher"><a href="interfaces/hopper_BridgeLauncher.BridgeLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BridgeLauncher</a>
|
||||
<ul>
|
||||
<li data-refl="39648" id="hopper/BridgeLauncher.HopperApplicationLauncher"><a href="classes/hopper_BridgeLauncher.HopperApplicationLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>HopperApplicationLauncher</a></li></ul></li></ul>
|
||||
<li data-refl="39649" id="hopper/BridgeLauncher.HopperApplicationLauncher"><a href="classes/hopper_BridgeLauncher.HopperApplicationLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>HopperApplicationLauncher</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="52301" id="application/BrowserObservationPort.BrowserObservationPort"><a href="interfaces/application_BrowserObservationPort.BrowserObservationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BrowserObservationPort</a>
|
||||
<li data-refl="52302" id="application/BrowserObservationPort.BrowserObservationPort"><a href="interfaces/application_BrowserObservationPort.BrowserObservationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BrowserObservationPort</a>
|
||||
<ul>
|
||||
<li data-refl="40762" id="browser/CdpBrowserProvider.CdpBrowserProvider"><a href="classes/browser_CdpBrowserProvider.CdpBrowserProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CdpBrowserProvider</a></li></ul></li></ul>
|
||||
<li data-refl="40763" id="browser/CdpBrowserProvider.CdpBrowserProvider"><a href="classes/browser_CdpBrowserProvider.CdpBrowserProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CdpBrowserProvider</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="59130" id="application/ElectronObservationPort.ElectronObservationPort"><a href="interfaces/application_ElectronObservationPort.ElectronObservationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>ElectronObservationPort</a>
|
||||
<li data-refl="59131" id="application/ElectronObservationPort.ElectronObservationPort"><a href="interfaces/application_ElectronObservationPort.ElectronObservationPort.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>ElectronObservationPort</a>
|
||||
<ul>
|
||||
<li data-refl="43266" id="browser/CdpElectronProvider.CdpElectronProvider"><a href="classes/browser_CdpElectronProvider.CdpElectronProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CdpElectronProvider</a></li></ul></li></ul>
|
||||
<li data-refl="43267" id="browser/CdpElectronProvider.CdpElectronProvider"><a href="classes/browser_CdpElectronProvider.CdpElectronProvider.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>CdpElectronProvider</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="40177" id="ghidra/GhidraLauncher.GhidraLauncher"><a href="interfaces/ghidra_GhidraLauncher.GhidraLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>GhidraLauncher</a>
|
||||
<li data-refl="40178" id="ghidra/GhidraLauncher.GhidraLauncher"><a href="interfaces/ghidra_GhidraLauncher.GhidraLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>GhidraLauncher</a>
|
||||
<ul>
|
||||
<li data-refl="40193" id="ghidra/GhidraLauncher.GhidraHeadlessLauncher"><a href="classes/ghidra_GhidraLauncher.GhidraHeadlessLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>GhidraHeadlessLauncher</a></li></ul></li></ul>
|
||||
<li data-refl="40194" id="ghidra/GhidraLauncher.GhidraHeadlessLauncher"><a href="classes/ghidra_GhidraLauncher.GhidraHeadlessLauncher.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Class"><use href="assets/icons.svg#icon-128"></use></svg>GhidraHeadlessLauncher</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="24963" id="domain/permissionPolicy.PermissionScope"><a href="interfaces/domain_permissionPolicy.PermissionScope.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionScope</a>
|
||||
<li data-refl="24964" id="domain/permissionPolicy.PermissionScope"><a href="interfaces/domain_permissionPolicy.PermissionScope.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionScope</a>
|
||||
<ul>
|
||||
<li data-refl="24971" id="domain/permissionPolicy.PermissionRequest"><a href="interfaces/domain_permissionPolicy.PermissionRequest.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionRequest</a></li>
|
||||
<li data-refl="24981" id="domain/permissionPolicy.PermissionGrant"><a href="interfaces/domain_permissionPolicy.PermissionGrant.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionGrant</a></li></ul></li></ul>
|
||||
<li data-refl="24972" id="domain/permissionPolicy.PermissionRequest"><a href="interfaces/domain_permissionPolicy.PermissionRequest.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionRequest</a></li>
|
||||
<li data-refl="24982" id="domain/permissionPolicy.PermissionGrant"><a href="interfaces/domain_permissionPolicy.PermissionGrant.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>PermissionGrant</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="40637" id="process/ProviderProcess.ProviderProcessLaunch"><a href="interfaces/process_ProviderProcess.ProviderProcessLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>ProviderProcessLaunch</a>
|
||||
<li data-refl="40638" id="process/ProviderProcess.ProviderProcessLaunch"><a href="interfaces/process_ProviderProcess.ProviderProcessLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>ProviderProcessLaunch</a>
|
||||
<ul>
|
||||
<li data-refl="39627" id="hopper/BridgeLauncher.BridgeLaunch"><a href="interfaces/hopper_BridgeLauncher.BridgeLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BridgeLaunch</a></li>
|
||||
<li data-refl="40168" id="ghidra/GhidraLauncher.GhidraLaunch"><a href="interfaces/ghidra_GhidraLauncher.GhidraLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>GhidraLaunch</a></li></ul></li></ul>
|
||||
<li data-refl="39628" id="hopper/BridgeLauncher.BridgeLaunch"><a href="interfaces/hopper_BridgeLauncher.BridgeLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>BridgeLaunch</a></li>
|
||||
<li data-refl="40169" id="ghidra/GhidraLauncher.GhidraLaunch"><a href="interfaces/ghidra_GhidraLauncher.GhidraLaunch.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>GhidraLaunch</a></li></ul></li></ul>
|
||||
<ul class="tsd-full-hierarchy">
|
||||
<li data-refl="29829" id="domain/webInventory.WebInventoryResourceInput"><a href="interfaces/domain_webInventory.WebInventoryResourceInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>WebInventoryResourceInput</a>
|
||||
<li data-refl="29830" id="domain/webInventory.WebInventoryResourceInput"><a href="interfaces/domain_webInventory.WebInventoryResourceInput.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>WebInventoryResourceInput</a>
|
||||
<ul>
|
||||
<li data-refl="29842" id="domain/webInventory.StableWebResource"><a href="interfaces/domain_webInventory.StableWebResource.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>StableWebResource</a></li></ul></li></ul></div>
|
||||
<li data-refl="29843" id="domain/webInventory.StableWebResource"><a href="interfaces/domain_webInventory.StableWebResource.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Interface"><use href="assets/icons.svg#icon-256"></use></svg>StableWebResource</a></li></ul></li></ul></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider session bound to exactly one parsed artifact.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">AnalysisClient</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-call-signature" href="#close-1">close</a><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-call-signature" href="#execute-1">execute</a><span class="tsd-signature-symbol">(</span><br/> <span class="tsd-kind-parameter">operation</span><span class="tsd-signature-symbol">:</span> <a href="../types/application_AnalysisProvider.AnalysisOperation.html" class="tsd-signature-type tsd-kind-type-alias">AnalysisOperation</a><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">parameters</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Readonly</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span> <a href="../types/domain_jsonValue.JsonValue.html" class="tsd-signature-type tsd-kind-type-alias">JsonValue</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?:</span> <a href="application_AnalysisProvider.ExecutionOptions.html" class="tsd-signature-type tsd-kind-interface">ExecutionOptions</a><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><a href="../types/domain_result.Result.html" class="tsd-signature-type tsd-kind-type-alias">Result</a><span class="tsd-signature-symbol"><</span><a href="application_AnalysisProvider.AnalysisExecution.html" class="tsd-signature-type tsd-kind-interface">AnalysisExecution</a><span class="tsd-signature-symbol">,</span> <a href="../classes/domain_errors.AnalysisError.html" class="tsd-signature-type tsd-kind-class">AnalysisError</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="44362">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="44363">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#application/AnalysisProvider.AnalysisClient">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="application_AnalysisProvider.AnalysisOperationPort.html" class="tsd-signature-type tsd-kind-interface">AnalysisOperationPort</a>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider-neutral application capability for one analysis operation.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">AnalysisOperationPort</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-call-signature" href="#execute-1">execute</a><span class="tsd-signature-symbol">(</span><br/> <span class="tsd-kind-parameter">operation</span><span class="tsd-signature-symbol">:</span> <a href="../types/application_AnalysisProvider.AnalysisOperation.html" class="tsd-signature-type tsd-kind-type-alias">AnalysisOperation</a><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">parameters</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Readonly</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span> <a href="../types/domain_jsonValue.JsonValue.html" class="tsd-signature-type tsd-kind-type-alias">JsonValue</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?:</span> <a href="application_AnalysisProvider.ExecutionOptions.html" class="tsd-signature-type tsd-kind-interface">ExecutionOptions</a><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><a href="../types/domain_result.Result.html" class="tsd-signature-type tsd-kind-type-alias">Result</a><span class="tsd-signature-symbol"><</span><a href="application_AnalysisProvider.AnalysisExecution.html" class="tsd-signature-type tsd-kind-interface">AnalysisExecution</a><span class="tsd-signature-symbol">,</span> <a href="../classes/domain_errors.AnalysisError.html" class="tsd-signature-type tsd-kind-class">AnalysisError</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="44356">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="44357">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#application/AnalysisProvider.AnalysisOperationPort">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">AnalysisOperationPort</span>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Authority issued beneath the administrator ceiling.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">PermissionGrant</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#capability">capability</a><span class="tsd-signature-symbol">:</span> <a href="../types/domain_permissionPolicy.PermissionCapability.html" class="tsd-signature-type tsd-kind-type-alias">PermissionCapability</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#environment_names">environment_names</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#executables">executables</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#expires_at">expires_at</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#grant_id">grant_id</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#lifetime">lifetime</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">"once"</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">"session"</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">"project"</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">"administrator"</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#mount">mount</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#network">network</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PermissionNetwork</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#operation_identity">operation_identity</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#origins">origins</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#roots">roots</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24981">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24982">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#domain/permissionPolicy.PermissionGrant">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="domain_permissionPolicy.PermissionScope.html" class="tsd-signature-type tsd-kind-interface">PermissionScope</a>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>A request identity associates one-shot grants with exactly one operation.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">PermissionRequest</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#capability">capability</a><span class="tsd-signature-symbol">:</span> <a href="../types/domain_permissionPolicy.PermissionCapability.html" class="tsd-signature-type tsd-kind-type-alias">PermissionCapability</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#environment_names">environment_names</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#executables">executables</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#mount">mount</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#network">network</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PermissionNetwork</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#operation_identity">operation_identity</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#origins">origins</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#roots">roots</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24971">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24972">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#domain/permissionPolicy.PermissionRequest">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="domain_permissionPolicy.PermissionScope.html" class="tsd-signature-type tsd-kind-interface">PermissionScope</a>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Exact normalized scope requested by one local operation.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">PermissionScope</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#capability">capability</a><span class="tsd-signature-symbol">:</span> <a href="../types/domain_permissionPolicy.PermissionCapability.html" class="tsd-signature-type tsd-kind-type-alias">PermissionCapability</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#environment_names">environment_names</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#executables">executables</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#mount">mount</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#network">network</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">PermissionNetwork</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#origins">origins</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#roots">roots</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24963">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="24964">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#domain/permissionPolicy.PermissionScope">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">PermissionScope</span>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<li><a href="" aria-current="page">StableWebResource</a></li></ul>
|
||||
<h1>Interface StableWebResource</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">StableWebResource</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#content_size">content_size</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#mime_type">mime_type</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#origin">origin</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#resource_key">resource_key</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#type">type</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="29842">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="29843">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#domain/webInventory.StableWebResource">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="domain_webInventory.WebInventoryResourceInput.html" class="tsd-signature-type tsd-kind-interface">WebInventoryResourceInput</a>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<li><a href="" aria-current="page">WebInventoryResourceInput</a></li></ul>
|
||||
<h1>Interface WebInventoryResourceInput</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">WebInventoryResourceInput</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#content_size">content_size</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#mime_type">mime_type</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#origin">origin</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#type">type</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="29829">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="29830">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#domain/webInventory.WebInventoryResourceInput">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">WebInventoryResourceInput</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Process plus private log coordinates returned by a Ghidra launcher.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">GhidraLaunch</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#cleanup">cleanup</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">()</span> <span class="tsd-signature-symbol">=></span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><a href="../types/process_ProcessOwnership.ProcessCleanupResult.html" class="tsd-signature-type tsd-kind-type-alias">ProcessCleanupResult</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#ghidralogpath">ghidraLogPath</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#ownsprocesslifetime">ownsProcessLifetime</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#process">process</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ChildProcess</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#projectroot">projectRoot</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#scriptlogpath">scriptLogPath</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40168">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40169">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#ghidra/GhidraLauncher.GhidraLaunch">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="process_ProviderProcess.ProviderProcessLaunch.html" class="tsd-signature-type tsd-kind-interface">ProviderProcessLaunch</a>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Additional structured context for a Ghidra session failure.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">GhidraSessionErrorOptions</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#remotecode">remoteCode</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#timeoutms">timeoutMs</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40354">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40355">
|
||||
<h4>Hierarchy</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-signature-type">ErrorOptions</span>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Process handle returned by a bridge launcher.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">BridgeLaunch</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#cleanup">cleanup</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">()</span> <span class="tsd-signature-symbol">=></span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><a href="../types/process_ProcessOwnership.ProcessCleanupResult.html" class="tsd-signature-type tsd-kind-type-alias">ProcessCleanupResult</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#ownsprocesslifetime">ownsProcessLifetime</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#process">process</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ChildProcess</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#shutdownbycleanup">shutdownByCleanup</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="39627">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="39628">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#hopper/BridgeLauncher.BridgeLaunch">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><a href="process_ProviderProcess.ProviderProcessLaunch.html" class="tsd-signature-type tsd-kind-interface">ProviderProcessLaunch</a>
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Process handle returned by a provider-specific launcher.</p>
|
||||
</div></section>
|
||||
<div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">ProviderProcessLaunch</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="#cleanup">cleanup</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">()</span> <span class="tsd-signature-symbol">=></span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><a href="../types/process_ProcessOwnership.ProcessCleanupResult.html" class="tsd-signature-type tsd-kind-type-alias">ProcessCleanupResult</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#ownsprocesslifetime">ownsProcessLifetime</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="#process">process</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ChildProcess</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div>
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40637">
|
||||
<section class="tsd-panel tsd-hierarchy" data-refl="40638">
|
||||
<h4>Hierarchy (<a href="../hierarchy.html#process/ProviderProcess.ProviderProcessLaunch">View Summary</a>)</h4>
|
||||
<ul class="tsd-hierarchy">
|
||||
<li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">ProviderProcessLaunch</span>
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Type Aliases"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
||||
<h2 class="tsd-anchor-link" id="type-aliases">Type Aliases<a href="#type-aliases" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="managedartifactinspection"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><a href="../types/domain_managedArtifact.ManagedArtifactInspection.html">ManagedArtifactInspection</a><a href="#managedartifactinspection" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managedmemberinspection"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><a href="../types/domain_managedArtifact.ManagedMemberInspection.html">ManagedMemberInspection</a><a href="#managedmemberinspection" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managednativeboundaryinspection"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><a href="../types/domain_managedArtifact.ManagedNativeBoundaryInspection.html">ManagedNativeBoundaryInspection</a><a href="#managednativeboundaryinspection" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managedparseissue"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><a href="../types/domain_managedArtifact.ManagedParseIssue.html">ManagedParseIssue</a><a href="#managedparseissue" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details>
|
||||
<details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Variables"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
||||
<h2 class="tsd-anchor-link" id="variables">Variables<a href="#variables" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="managedartifactinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedArtifactInspectionSchema.html">managedArtifactInspectionSchema</a><a href="#managedartifactinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managedmemberinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedMemberInspectionSchema.html">managedMemberInspectionSchema</a><a href="#managedmemberinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managednativeboundaryinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedNativeBoundaryInspectionSchema.html">managedNativeBoundaryInspectionSchema</a><a href="#managednativeboundaryinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details></div>
|
||||
<h2 class="tsd-anchor-link" id="variables">Variables<a href="#variables" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary><dl class="tsd-member-summaries"><dt class="tsd-member-summary" id="climetadataguidschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.cliMetadataGuidSchema.html">cliMetadataGuidSchema</a><a href="#climetadataguidschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managedartifactinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedArtifactInspectionSchema.html">managedArtifactInspectionSchema</a><a href="#managedartifactinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managedmemberinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedMemberInspectionSchema.html">managedMemberInspectionSchema</a><a href="#managedmemberinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd><dt class="tsd-member-summary" id="managednativeboundaryinspectionschema"><span class="tsd-member-summary-name"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><a href="../variables/domain_managedArtifact.managedNativeBoundaryInspectionSchema.html">managedNativeBoundaryInspectionSchema</a><a href="#managednativeboundaryinspectionschema" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></span></dt><dd class="tsd-member-summary"></dd></dl></details></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
<details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Type Aliases"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Type Aliases</summary>
|
||||
<div><a href="#managedartifactinspection"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><span>Managed<wbr/>Artifact<wbr/>Inspection</span></a><a href="#managedmemberinspection"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><span>Managed<wbr/>Member<wbr/>Inspection</span></a><a href="#managednativeboundaryinspection"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><span>Managed<wbr/>Native<wbr/>Boundary<wbr/>Inspection</span></a><a href="#managedparseissue"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Type Alias"><use href="../assets/icons.svg#icon-2097152"></use></svg><span>Managed<wbr/>Parse<wbr/>Issue</span></a></div></details>
|
||||
<details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Variables"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Variables</summary>
|
||||
<div><a href="#managedartifactinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Artifact<wbr/>Inspection<wbr/>Schema</span></a><a href="#managedmemberinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Member<wbr/>Inspection<wbr/>Schema</span></a><a href="#managednativeboundaryinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Native<wbr/>Boundary<wbr/>Inspection<wbr/>Schema</span></a></div></details></div></details></div>
|
||||
<div><a href="#climetadataguidschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>cli<wbr/>Metadata<wbr/>Guid<wbr/>Schema</span></a><a href="#managedartifactinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Artifact<wbr/>Inspection<wbr/>Schema</span></a><a href="#managedmemberinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Member<wbr/>Inspection<wbr/>Schema</span></a><a href="#managednativeboundaryinspectionschema"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Variable"><use href="../assets/icons.svg#icon-32"></use></svg><span>managed<wbr/>Native<wbr/>Boundary<wbr/>Inspection<wbr/>Schema</span></a></div></details></div></details></div>
|
||||
<div class="site-menu">
|
||||
<nav class="tsd-navigation"><a href="../index.html">rea-agents - v2.0.0</a>
|
||||
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedArtifactInspection</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedArtifactInspection</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedArtifact.managedArtifactInspectionSchema.html" class="tsd-signature-type tsd-kind-variable">managedArtifactInspectionSchema</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L483">src/domain/managedArtifact.ts:483</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L488">src/domain/managedArtifact.ts:488</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedMemberInspection</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedMemberInspection</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedArtifact.managedMemberInspectionSchema.html" class="tsd-signature-type tsd-kind-variable">managedMemberInspectionSchema</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L486">src/domain/managedArtifact.ts:486</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L491">src/domain/managedArtifact.ts:491</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedNativeBoundaryInspection</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedNativeBoundaryInspection</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedArtifact.managedNativeBoundaryInspectionSchema.html" class="tsd-signature-type tsd-kind-variable">managedNativeBoundaryInspectionSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L489">src/domain/managedArtifact.ts:489</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L494">src/domain/managedArtifact.ts:494</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedParseIssue</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedParseIssue</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-keyword">typeof</span> <span class="tsd-signature-type">managedParseIssueSchema</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L492">src/domain/managedArtifact.ts:492</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L497">src/domain/managedArtifact.ts:497</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias CompareManagedMembersInput</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">CompareManagedMembersInput</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedMemberComparison.compareManagedMembersInputSchema.html" class="tsd-signature-type tsd-kind-variable">compareManagedMembersInputSchema</a><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L170">src/domain/managedMemberComparison.ts:170</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L171">src/domain/managedMemberComparison.ts:171</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedMemberComparisonResult</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedMemberComparisonResult</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedMemberComparison.managedMemberComparisonResultSchema.html" class="tsd-signature-type tsd-kind-variable">managedMemberComparisonResultSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L173">src/domain/managedMemberComparison.ts:173</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L174">src/domain/managedMemberComparison.ts:174</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedNativeVerificationInput</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedNativeVerificationInput</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedNativeVerification.managedNativeVerificationInputSchema.html" class="tsd-signature-type tsd-kind-variable">managedNativeVerificationInputSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L163">src/domain/managedNativeVerification.ts:163</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L164">src/domain/managedNativeVerification.ts:164</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedNativeVerificationResult</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedNativeVerificationResult</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedNativeVerification.managedNativeVerificationResultSchema.html" class="tsd-signature-type tsd-kind-variable">managedNativeVerificationResultSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L166">src/domain/managedNativeVerification.ts:166</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L167">src/domain/managedNativeVerification.ts:167</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedReconstructionImportInput</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedReconstructionImportInput</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedReconstruction.managedReconstructionImportInputSchema.html" class="tsd-signature-type tsd-kind-variable">managedReconstructionImportInputSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedReconstruction.ts#L104">src/domain/managedReconstruction.ts:104</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedReconstruction.ts#L107">src/domain/managedReconstruction.ts:107</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedReconstructionImportResult</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedReconstructionImportResult</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedReconstruction.managedReconstructionImportResultSchema.html" class="tsd-signature-type tsd-kind-variable">managedReconstructionImportResultSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedReconstruction.ts#L107">src/domain/managedReconstruction.ts:107</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedReconstruction.ts#L110">src/domain/managedReconstruction.ts:110</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedRuntimeCorrelationInput</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedRuntimeCorrelationInput</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedRuntimeCorrelation.managedRuntimeCorrelationInputSchema.html" class="tsd-signature-type tsd-kind-variable">managedRuntimeCorrelationInputSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedRuntimeCorrelation.ts#L108">src/domain/managedRuntimeCorrelation.ts:108</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedRuntimeCorrelation.ts#L111">src/domain/managedRuntimeCorrelation.ts:111</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
<h1>Type Alias ManagedRuntimeCorrelationResult</h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-type-alias">ManagedRuntimeCorrelationResult</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">z.infer</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-keyword">typeof</span> <a href="../variables/domain_managedRuntimeCorrelation.managedRuntimeCorrelationResultSchema.html" class="tsd-signature-type tsd-kind-variable">managedRuntimeCorrelationResultSchema</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedRuntimeCorrelation.ts#L111">src/domain/managedRuntimeCorrelation.ts:111</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedRuntimeCorrelation.ts#L114">src/domain/managedRuntimeCorrelation.ts:114</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -0,0 +1,35 @@
|
|||
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>cliMetadataGuidSchema | rea-agents - v2.0.0</title><meta name="description" content="Documentation for rea-agents"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
||||
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">rea-agents - v2.0.0</a>
|
||||
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
||||
<ul role="listbox" id="tsd-search-results"></ul>
|
||||
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
||||
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
||||
<div class="container container-main">
|
||||
<div class="col-content">
|
||||
<div class="tsd-page-title">
|
||||
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
||||
<li><a href="../modules/domain_managedArtifact.html">domain/managedArtifact</a></li>
|
||||
<li><a href="" aria-current="page">cliMetadataGuidSchema</a></li></ul>
|
||||
<h1>Variable cliMetadataGuidSchema<code class="tsd-tag">Const</code></h1></div>
|
||||
<div class="tsd-signature"><span class="tsd-kind-variable">cliMetadataGuidSchema</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">ZodString</span><span class="tsd-signature-symbol"> = ...</span></div>
|
||||
<div class="tsd-comment tsd-typography"><p>A 16-byte CLI metadata GUID without RFC 4122 version/variant restrictions.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L8">src/domain/managedArtifact.ts:8</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
||||
<h3>Settings</h3></summary>
|
||||
<div class="tsd-accordion-details">
|
||||
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
||||
<ul id="tsd-filter-options">
|
||||
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
||||
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div>
|
||||
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
||||
<div class="site-menu">
|
||||
<nav class="tsd-navigation"><a href="../index.html">rea-agents - v2.0.0</a>
|
||||
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
||||
<li>Loading...</li></ul></nav></div></div></div><footer>
|
||||
<p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer>
|
||||
<div class="overlay"></div></body></html>
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider-neutral, execution-free PE/CLI triage and identity result.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L303">src/domain/managedArtifact.ts:303</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L308">src/domain/managedArtifact.ts:308</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider-neutral, execution-free metadata/signature/IL member inspection.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L399">src/domain/managedArtifact.ts:399</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L404">src/domain/managedArtifact.ts:404</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider-neutral managed/native boundary observations from PE/CLI metadata.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L435">src/domain/managedArtifact.ts:435</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedArtifact.ts#L440">src/domain/managedArtifact.ts:440</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Two authenticated managed member observations and deterministic bounds.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L25">src/domain/managedMemberComparison.ts:25</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L26">src/domain/managedMemberComparison.ts:26</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Obfuscation-resistant, execution-free managed member comparison.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L115">src/domain/managedMemberComparison.ts:115</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedMemberComparison.ts#L116">src/domain/managedMemberComparison.ts:116</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Authenticated managed boundary Evidence plus native observations.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L27">src/domain/managedNativeVerification.ts:27</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L28">src/domain/managedNativeVerification.ts:28</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<div class="tsd-comment tsd-typography"><p>Provider-neutral managed/native verification result.</p>
|
||||
</div><aside class="tsd-sources">
|
||||
<ul>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L116">src/domain/managedNativeVerification.ts:116</a></li></ul></aside></div>
|
||||
<li>Defined in <a href="https://github.com/morluto/rea/blob/main/src/domain/managedNativeVerification.ts#L117">src/domain/managedNativeVerification.ts:117</a></li></ul></aside></div>
|
||||
<div class="col-sidebar">
|
||||
<div class="page-menu">
|
||||
<div class="tsd-navigation settings">
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -93,6 +93,10 @@ commitment groups:
|
|||
locations;
|
||||
- parser/provider version, profile schema, limits, and profile digest.
|
||||
|
||||
CLI `#GUID` heap values are committed as their exact 16-byte GUID text. REA
|
||||
does not impose RFC 4122 UUID version or variant bits on MVID, EncId, or
|
||||
EncBaseId because ECMA-335 metadata does not require those bit patterns.
|
||||
|
||||
### Entity commitment
|
||||
|
||||
- table kind and build-local token;
|
||||
|
|
@ -294,6 +298,7 @@ absolute or relative to the manifest file. A compact manifest contains:
|
|||
"token": "0x06000000",
|
||||
"signature_sha256": "<raw signature blob digest>",
|
||||
"il_size": 0,
|
||||
"il_sha256": "<raw CIL byte digest>",
|
||||
"normalized_il_sha256": "<digest>"
|
||||
}
|
||||
],
|
||||
|
|
@ -324,7 +329,8 @@ assembly name, runtime-family, and managed-architecture mismatches whenever the
|
|||
manifest supplies those fields. It then pages each declared MethodDef token
|
||||
directly by row, so selected methods do not need to appear in the first member
|
||||
page of a large application. `il_length` remains accepted as a legacy alias for
|
||||
`il_size`.
|
||||
`il_size`; optional `il_sha256` locks the exact raw CIL bytes in addition to
|
||||
REA's schema-versioned normalized instruction digest.
|
||||
|
||||
The optional `application_graph` block reuses those exact-build method
|
||||
commitments. For each referenced MethodDef token, the verifier builds a bounded
|
||||
|
|
|
|||
|
|
@ -554,10 +554,10 @@
|
|||
"mcp_resource_templates": 7
|
||||
},
|
||||
"digests": {
|
||||
"tools_sha256": "ba702b4ae9cb9ced5eb06e1ebe5c3c787d489547abe3ce5f7c5e36bb8af1f83c",
|
||||
"tools_sha256": "4372faa54a281e28731f66e49af0860ba8737a4439c20ef06aa143e13282e836",
|
||||
"prompts_sha256": "f6da3ad38a1000c11364d1710f122ac4990551f04efd8c53ffb2e819b5cf5707",
|
||||
"resources_sha256": "e603aad57a79479004fbdc267644092e8365dd64d94ad772b9da4425a49abd73",
|
||||
"combined_sha256": "bdf382596e1a00ffc9d59de287b2ad647eeebe629c48a8f8cf158b300363ce53"
|
||||
"combined_sha256": "a2f9a66207730ca05cfa8a5d60d9cfeb7cadfb6b11665a58d404de2e86bb2457"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -600,6 +600,7 @@ async function runManagedAppManifestSelfTest() {
|
|||
token: method.token,
|
||||
signature_sha256: method.signature.raw_sha256,
|
||||
il_size: method.body.il_size,
|
||||
il_sha256: method.body.il_sha256,
|
||||
normalized_il_sha256: method.body.normalized_il_sha256,
|
||||
},
|
||||
],
|
||||
|
|
@ -884,11 +885,16 @@ async function verifyManagedAppManifest(rawManifest, manifestPath) {
|
|||
method.body.il_size === expectedMethod.il_size,
|
||||
`method ${expectedMethod.token} IL size mismatch: expected ${String(expectedMethod.il_size)}, observed ${String(method.body.il_size)}`,
|
||||
);
|
||||
if (expectedMethod.il_sha256 !== undefined)
|
||||
ensure(
|
||||
method.body.il_sha256 === expectedMethod.il_sha256,
|
||||
`method ${expectedMethod.token} IL sha256 mismatch: expected ${expectedMethod.il_sha256}, observed ${method.body.il_sha256 ?? "null"}`,
|
||||
);
|
||||
ensure(
|
||||
method.body.normalized_il_sha256 === expectedMethod.normalized_il_sha256,
|
||||
`method ${expectedMethod.token} normalized IL sha256 mismatch: expected ${expectedMethod.normalized_il_sha256}, observed ${method.body.normalized_il_sha256 ?? "null"}`,
|
||||
);
|
||||
assertions += 4;
|
||||
assertions += expectedMethod.il_sha256 === undefined ? 4 : 5;
|
||||
inspectedMethods.set(expectedMethod.token, method);
|
||||
methods.push({
|
||||
label: expectedMethod.label ?? null,
|
||||
|
|
@ -897,6 +903,7 @@ async function verifyManagedAppManifest(rawManifest, manifestPath) {
|
|||
name: method.name,
|
||||
signature_sha256: method.signature.raw_sha256,
|
||||
il_size: method.body.il_size,
|
||||
il_sha256: method.body.il_sha256,
|
||||
normalized_il_sha256: method.body.normalized_il_sha256,
|
||||
});
|
||||
}
|
||||
|
|
@ -1103,7 +1110,7 @@ function parseManagedAppManifest(rawManifest) {
|
|||
target: {
|
||||
path: string(target.path, "manifest.target.path"),
|
||||
sha256: digest(target.sha256, "manifest.target.sha256"),
|
||||
mvid: optionalUuid(target.mvid, "manifest.target.mvid"),
|
||||
mvid: optionalCliMetadataGuid(target.mvid, "manifest.target.mvid"),
|
||||
assembly_name: optionalString(
|
||||
target.assembly_name,
|
||||
"manifest.target.assembly_name",
|
||||
|
|
@ -1196,6 +1203,10 @@ function parseManagedAppManifestMethod(rawMethod, index) {
|
|||
`${prefix}.signature_sha256`,
|
||||
),
|
||||
il_size: ilSize(method, prefix),
|
||||
il_sha256:
|
||||
method.il_sha256 === undefined
|
||||
? undefined
|
||||
: digest(method.il_sha256, `${prefix}.il_sha256`),
|
||||
normalized_il_sha256: digest(
|
||||
method.normalized_il_sha256,
|
||||
`${prefix}.normalized_il_sha256`,
|
||||
|
|
@ -1255,7 +1266,7 @@ function digest(value, name) {
|
|||
return text;
|
||||
}
|
||||
|
||||
function optionalUuid(value, name) {
|
||||
function optionalCliMetadataGuid(value, name) {
|
||||
if (value === undefined) return undefined;
|
||||
if (value === null) return null;
|
||||
const text = string(value, name);
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ description: Reverse engineer native, Electron/JavaScript, and web applications
|
|||
metadata:
|
||||
version: "20"
|
||||
tool_count: 91
|
||||
catalog_digest: "bdf382596e1a00ffc9d59de287b2ad647eeebe629c48a8f8cf158b300363ce53"
|
||||
catalog_digest: "a2f9a66207730ca05cfa8a5d60d9cfeb7cadfb6b11665a58d404de2e86bb2457"
|
||||
---
|
||||
|
||||
# REA
|
||||
|
|
|
|||
|
|
@ -4,6 +4,11 @@ const digestSchema = z.string().regex(/^[a-f0-9]{64}$/u);
|
|||
const tokenSchema = z.string().regex(/^0x[0-9a-f]{8}$/u);
|
||||
const offsetSchema = z.number().int().min(0);
|
||||
|
||||
/** A 16-byte CLI metadata GUID without RFC 4122 version/variant restrictions. */
|
||||
export const cliMetadataGuidSchema = z
|
||||
.string()
|
||||
.regex(/^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$/u);
|
||||
|
||||
const managedPage = <Item extends z.ZodType>(item: Item) =>
|
||||
z.object({
|
||||
items: z.array(item),
|
||||
|
|
@ -39,9 +44,9 @@ const assemblyIdentitySchema = z.object({
|
|||
const moduleIdentitySchema = z.object({
|
||||
name: z.string(),
|
||||
generation: z.number().int().min(0).max(0xffff),
|
||||
mvid: z.string().uuid().nullable(),
|
||||
enc_id: z.string().uuid().nullable(),
|
||||
enc_base_id: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
enc_id: cliMetadataGuidSchema.nullable(),
|
||||
enc_base_id: cliMetadataGuidSchema.nullable(),
|
||||
token: tokenSchema,
|
||||
row_offset: offsetSchema,
|
||||
});
|
||||
|
|
@ -416,7 +421,7 @@ export const managedMemberInspectionSchema = z.object({
|
|||
identity_scope: z.object({
|
||||
token_identity: z.literal("build-local"),
|
||||
requires_artifact_sha256: digestSchema,
|
||||
requires_mvid: z.string().uuid().nullable(),
|
||||
requires_mvid: cliMetadataGuidSchema.nullable(),
|
||||
}),
|
||||
types: managedPage(managedTypeSchema),
|
||||
fields: managedPage(managedFieldSchema),
|
||||
|
|
@ -452,7 +457,7 @@ export const managedNativeBoundaryInspectionSchema = z.object({
|
|||
identity_scope: z.object({
|
||||
token_identity: z.literal("build-local"),
|
||||
requires_artifact_sha256: digestSchema,
|
||||
requires_mvid: z.string().uuid().nullable(),
|
||||
requires_mvid: cliMetadataGuidSchema.nullable(),
|
||||
}),
|
||||
cli_native: z.object({
|
||||
il_only: z.boolean(),
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import { z } from "zod";
|
|||
|
||||
import { evidenceSchema, parseEvidence } from "./evidence.js";
|
||||
import {
|
||||
cliMetadataGuidSchema,
|
||||
managedMemberInspectionSchema,
|
||||
type ManagedMemberInspection,
|
||||
} from "./managedArtifact.js";
|
||||
|
|
@ -124,7 +125,7 @@ export const managedMemberComparisonResultSchema = z.strictObject({
|
|||
left: z.strictObject({
|
||||
evidence_id: evidenceIdSchema,
|
||||
artifact_sha256: digestSchema,
|
||||
mvid: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
module_name: z.string().nullable(),
|
||||
metadata_status: z.enum(["absent", "complete", "partial", "malformed"]),
|
||||
methods_total: z.number().int().min(0),
|
||||
|
|
@ -133,7 +134,7 @@ export const managedMemberComparisonResultSchema = z.strictObject({
|
|||
right: z.strictObject({
|
||||
evidence_id: evidenceIdSchema,
|
||||
artifact_sha256: digestSchema,
|
||||
mvid: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
module_name: z.string().nullable(),
|
||||
metadata_status: z.enum(["absent", "complete", "partial", "malformed"]),
|
||||
methods_total: z.number().int().min(0),
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import { z } from "zod";
|
|||
import { evidenceSchema, parseEvidence } from "./evidence.js";
|
||||
import { functionDossierSchema } from "./hopperValues.js";
|
||||
import {
|
||||
cliMetadataGuidSchema,
|
||||
managedNativeBoundaryInspectionSchema,
|
||||
type ManagedNativeBoundaryInspection,
|
||||
} from "./managedArtifact.js";
|
||||
|
|
@ -126,7 +127,7 @@ export const managedNativeVerificationResultSchema = z.strictObject({
|
|||
evidence_id: evidenceIdSchema,
|
||||
artifact_sha256: digestSchema,
|
||||
artifact_path: z.string().min(1),
|
||||
mvid: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
metadata_status: z.enum(["absent", "complete", "partial", "malformed"]),
|
||||
pinvoke_imports_total: z.number().int().min(0),
|
||||
native_implementations_total: z.number().int().min(0),
|
||||
|
|
|
|||
|
|
@ -4,7 +4,10 @@ import canonicalize from "canonicalize";
|
|||
import { z } from "zod";
|
||||
|
||||
import { evidenceSchema, parseEvidence } from "./evidence.js";
|
||||
import { managedMemberInspectionSchema } from "./managedArtifact.js";
|
||||
import {
|
||||
cliMetadataGuidSchema,
|
||||
managedMemberInspectionSchema,
|
||||
} from "./managedArtifact.js";
|
||||
import type { JsonValue } from "./jsonValue.js";
|
||||
|
||||
const digestSchema = z.string().regex(/^[a-f0-9]{64}$/u);
|
||||
|
|
@ -82,7 +85,7 @@ export const managedReconstructionImportResultSchema = z.strictObject({
|
|||
artifact_path: z.string().min(1),
|
||||
byte_length: z.number().int().min(0),
|
||||
module_name: z.string().nullable(),
|
||||
mvid: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
metadata_status: z.enum(["absent", "complete", "partial", "malformed"]),
|
||||
}),
|
||||
decompiler: decompilerSchema.extend({
|
||||
|
|
|
|||
|
|
@ -4,7 +4,10 @@ import canonicalize from "canonicalize";
|
|||
import { z } from "zod";
|
||||
|
||||
import { evidenceSchema, parseEvidence } from "./evidence.js";
|
||||
import { managedMemberInspectionSchema } from "./managedArtifact.js";
|
||||
import {
|
||||
cliMetadataGuidSchema,
|
||||
managedMemberInspectionSchema,
|
||||
} from "./managedArtifact.js";
|
||||
import type { JsonValue } from "./jsonValue.js";
|
||||
|
||||
const digestSchema = z.string().regex(/^[a-f0-9]{64}$/u);
|
||||
|
|
@ -70,7 +73,7 @@ export const managedRuntimeCorrelationResultSchema = z.strictObject({
|
|||
artifact_path: z.string().min(1),
|
||||
byte_length: z.number().int().min(0),
|
||||
module_name: z.string().nullable(),
|
||||
mvid: z.string().uuid().nullable(),
|
||||
mvid: cliMetadataGuidSchema.nullable(),
|
||||
metadata_status: z.enum(["absent", "complete", "partial", "malformed"]),
|
||||
}),
|
||||
method_lock: z.strictObject({
|
||||
|
|
|
|||
|
|
@ -497,6 +497,7 @@ const OPCODES = new Map<
|
|||
{ readonly name: string; readonly operand: string }
|
||||
>([
|
||||
[0x00, { name: "nop", operand: "none" }],
|
||||
[0x01, { name: "break", operand: "none" }],
|
||||
[0x02, { name: "ldarg.0", operand: "none" }],
|
||||
[0x03, { name: "ldarg.1", operand: "none" }],
|
||||
[0x04, { name: "ldarg.2", operand: "none" }],
|
||||
|
|
@ -511,7 +512,9 @@ const OPCODES = new Map<
|
|||
[0x0d, { name: "stloc.3", operand: "none" }],
|
||||
[0x0e, { name: "ldarg.s", operand: "short-var" }],
|
||||
[0x0f, { name: "ldarga.s", operand: "short-var" }],
|
||||
[0x10, { name: "starg.s", operand: "short-var" }],
|
||||
[0x11, { name: "ldloc.s", operand: "short-var" }],
|
||||
[0x12, { name: "ldloca.s", operand: "short-var" }],
|
||||
[0x13, { name: "stloc.s", operand: "short-var" }],
|
||||
[0x14, { name: "ldnull", operand: "none" }],
|
||||
[0x15, { name: "ldc.i4.m1", operand: "none" }],
|
||||
|
|
@ -526,43 +529,191 @@ const OPCODES = new Map<
|
|||
[0x1e, { name: "ldc.i4.8", operand: "none" }],
|
||||
[0x1f, { name: "ldc.i4.s", operand: "short-i" }],
|
||||
[0x20, { name: "ldc.i4", operand: "i" }],
|
||||
[0x21, { name: "ldc.i8", operand: "i8" }],
|
||||
[0x22, { name: "ldc.r4", operand: "r4" }],
|
||||
[0x23, { name: "ldc.r8", operand: "r8" }],
|
||||
[0x25, { name: "dup", operand: "none" }],
|
||||
[0x26, { name: "pop", operand: "none" }],
|
||||
[0x27, { name: "jmp", operand: "method" }],
|
||||
[0x28, { name: "call", operand: "method" }],
|
||||
[0x29, { name: "calli", operand: "signature" }],
|
||||
[0x2a, { name: "ret", operand: "none" }],
|
||||
[0x2b, { name: "br.s", operand: "short-branch" }],
|
||||
[0x2c, { name: "brfalse.s", operand: "short-branch" }],
|
||||
[0x2d, { name: "brtrue.s", operand: "short-branch" }],
|
||||
[0x2e, { name: "beq.s", operand: "short-branch" }],
|
||||
[0x2f, { name: "bge.s", operand: "short-branch" }],
|
||||
[0x30, { name: "bgt.s", operand: "short-branch" }],
|
||||
[0x31, { name: "ble.s", operand: "short-branch" }],
|
||||
[0x32, { name: "blt.s", operand: "short-branch" }],
|
||||
[0x33, { name: "bne.un.s", operand: "short-branch" }],
|
||||
[0x34, { name: "bge.un.s", operand: "short-branch" }],
|
||||
[0x35, { name: "bgt.un.s", operand: "short-branch" }],
|
||||
[0x36, { name: "ble.un.s", operand: "short-branch" }],
|
||||
[0x37, { name: "blt.un.s", operand: "short-branch" }],
|
||||
[0x38, { name: "br", operand: "branch" }],
|
||||
[0x39, { name: "brfalse", operand: "branch" }],
|
||||
[0x3a, { name: "brtrue", operand: "branch" }],
|
||||
[0x3b, { name: "beq", operand: "branch" }],
|
||||
[0x3c, { name: "bge", operand: "branch" }],
|
||||
[0x3d, { name: "bgt", operand: "branch" }],
|
||||
[0x3e, { name: "ble", operand: "branch" }],
|
||||
[0x3f, { name: "blt", operand: "branch" }],
|
||||
[0x40, { name: "bne.un", operand: "branch" }],
|
||||
[0x41, { name: "bge.un", operand: "branch" }],
|
||||
[0x42, { name: "bgt.un", operand: "branch" }],
|
||||
[0x43, { name: "ble.un", operand: "branch" }],
|
||||
[0x44, { name: "blt.un", operand: "branch" }],
|
||||
[0x45, { name: "switch", operand: "switch" }],
|
||||
[0x46, { name: "ldind.i1", operand: "none" }],
|
||||
[0x47, { name: "ldind.u1", operand: "none" }],
|
||||
[0x48, { name: "ldind.i2", operand: "none" }],
|
||||
[0x49, { name: "ldind.u2", operand: "none" }],
|
||||
[0x4a, { name: "ldind.i4", operand: "none" }],
|
||||
[0x4b, { name: "ldind.u4", operand: "none" }],
|
||||
[0x4c, { name: "ldind.i8", operand: "none" }],
|
||||
[0x4d, { name: "ldind.i", operand: "none" }],
|
||||
[0x4e, { name: "ldind.r4", operand: "none" }],
|
||||
[0x4f, { name: "ldind.r8", operand: "none" }],
|
||||
[0x50, { name: "ldind.ref", operand: "none" }],
|
||||
[0x51, { name: "stind.ref", operand: "none" }],
|
||||
[0x52, { name: "stind.i1", operand: "none" }],
|
||||
[0x53, { name: "stind.i2", operand: "none" }],
|
||||
[0x54, { name: "stind.i4", operand: "none" }],
|
||||
[0x55, { name: "stind.i8", operand: "none" }],
|
||||
[0x56, { name: "stind.r4", operand: "none" }],
|
||||
[0x57, { name: "stind.r8", operand: "none" }],
|
||||
[0x58, { name: "add", operand: "none" }],
|
||||
[0x59, { name: "sub", operand: "none" }],
|
||||
[0x5a, { name: "mul", operand: "none" }],
|
||||
[0x5b, { name: "div", operand: "none" }],
|
||||
[0x5c, { name: "div.un", operand: "none" }],
|
||||
[0x5d, { name: "rem", operand: "none" }],
|
||||
[0x5e, { name: "rem.un", operand: "none" }],
|
||||
[0x5f, { name: "and", operand: "none" }],
|
||||
[0x60, { name: "or", operand: "none" }],
|
||||
[0x61, { name: "xor", operand: "none" }],
|
||||
[0x62, { name: "shl", operand: "none" }],
|
||||
[0x63, { name: "shr", operand: "none" }],
|
||||
[0x64, { name: "shr.un", operand: "none" }],
|
||||
[0x65, { name: "neg", operand: "none" }],
|
||||
[0x66, { name: "not", operand: "none" }],
|
||||
[0x67, { name: "conv.i1", operand: "none" }],
|
||||
[0x68, { name: "conv.i2", operand: "none" }],
|
||||
[0x69, { name: "conv.i4", operand: "none" }],
|
||||
[0x6a, { name: "conv.i8", operand: "none" }],
|
||||
[0x6b, { name: "conv.r4", operand: "none" }],
|
||||
[0x6c, { name: "conv.r8", operand: "none" }],
|
||||
[0x6d, { name: "conv.u4", operand: "none" }],
|
||||
[0x6e, { name: "conv.u8", operand: "none" }],
|
||||
[0x6f, { name: "callvirt", operand: "method" }],
|
||||
[0x70, { name: "cpobj", operand: "type" }],
|
||||
[0x71, { name: "ldobj", operand: "type" }],
|
||||
[0x72, { name: "ldstr", operand: "string" }],
|
||||
[0x73, { name: "newobj", operand: "method" }],
|
||||
[0x74, { name: "castclass", operand: "type" }],
|
||||
[0x75, { name: "isinst", operand: "type" }],
|
||||
[0x76, { name: "conv.r.un", operand: "none" }],
|
||||
[0x79, { name: "unbox", operand: "type" }],
|
||||
[0x7a, { name: "throw", operand: "none" }],
|
||||
[0x7b, { name: "ldfld", operand: "field" }],
|
||||
[0x7c, { name: "ldflda", operand: "field" }],
|
||||
[0x7d, { name: "stfld", operand: "field" }],
|
||||
[0x7e, { name: "ldsfld", operand: "field" }],
|
||||
[0x7f, { name: "ldsflda", operand: "field" }],
|
||||
[0x80, { name: "stsfld", operand: "field" }],
|
||||
[0x81, { name: "stobj", operand: "type" }],
|
||||
[0x82, { name: "conv.ovf.i1.un", operand: "none" }],
|
||||
[0x83, { name: "conv.ovf.i2.un", operand: "none" }],
|
||||
[0x84, { name: "conv.ovf.i4.un", operand: "none" }],
|
||||
[0x85, { name: "conv.ovf.i8.un", operand: "none" }],
|
||||
[0x86, { name: "conv.ovf.u1.un", operand: "none" }],
|
||||
[0x87, { name: "conv.ovf.u2.un", operand: "none" }],
|
||||
[0x88, { name: "conv.ovf.u4.un", operand: "none" }],
|
||||
[0x89, { name: "conv.ovf.u8.un", operand: "none" }],
|
||||
[0x8a, { name: "conv.ovf.i.un", operand: "none" }],
|
||||
[0x8b, { name: "conv.ovf.u.un", operand: "none" }],
|
||||
[0x8c, { name: "box", operand: "type" }],
|
||||
[0x8d, { name: "newarr", operand: "type" }],
|
||||
[0x8e, { name: "ldlen", operand: "none" }],
|
||||
[0x8f, { name: "ldelema", operand: "type" }],
|
||||
[0x90, { name: "ldelem.i1", operand: "none" }],
|
||||
[0x91, { name: "ldelem.u1", operand: "none" }],
|
||||
[0x92, { name: "ldelem.i2", operand: "none" }],
|
||||
[0x93, { name: "ldelem.u2", operand: "none" }],
|
||||
[0x94, { name: "ldelem.i4", operand: "none" }],
|
||||
[0x95, { name: "ldelem.u4", operand: "none" }],
|
||||
[0x96, { name: "ldelem.i8", operand: "none" }],
|
||||
[0x97, { name: "ldelem.i", operand: "none" }],
|
||||
[0x98, { name: "ldelem.r4", operand: "none" }],
|
||||
[0x99, { name: "ldelem.r8", operand: "none" }],
|
||||
[0x9a, { name: "ldelem.ref", operand: "none" }],
|
||||
[0x9b, { name: "stelem.i", operand: "none" }],
|
||||
[0x9c, { name: "stelem.i1", operand: "none" }],
|
||||
[0x9d, { name: "stelem.i2", operand: "none" }],
|
||||
[0x9e, { name: "stelem.i4", operand: "none" }],
|
||||
[0x9f, { name: "stelem.i8", operand: "none" }],
|
||||
[0xa0, { name: "stelem.r4", operand: "none" }],
|
||||
[0xa1, { name: "stelem.r8", operand: "none" }],
|
||||
[0xa2, { name: "stelem.ref", operand: "none" }],
|
||||
[0xa3, { name: "ldelem", operand: "type" }],
|
||||
[0xa4, { name: "stelem", operand: "type" }],
|
||||
[0xa5, { name: "unbox.any", operand: "type" }],
|
||||
[0xb3, { name: "conv.ovf.i1", operand: "none" }],
|
||||
[0xb4, { name: "conv.ovf.u1", operand: "none" }],
|
||||
[0xb5, { name: "conv.ovf.i2", operand: "none" }],
|
||||
[0xb6, { name: "conv.ovf.u2", operand: "none" }],
|
||||
[0xb7, { name: "conv.ovf.i4", operand: "none" }],
|
||||
[0xb8, { name: "conv.ovf.u4", operand: "none" }],
|
||||
[0xb9, { name: "conv.ovf.i8", operand: "none" }],
|
||||
[0xba, { name: "conv.ovf.u8", operand: "none" }],
|
||||
[0xc2, { name: "refanyval", operand: "type" }],
|
||||
[0xc3, { name: "ckfinite", operand: "none" }],
|
||||
[0xc6, { name: "mkrefany", operand: "type" }],
|
||||
[0xd0, { name: "ldtoken", operand: "token" }],
|
||||
[0xd1, { name: "conv.u2", operand: "none" }],
|
||||
[0xd2, { name: "conv.u1", operand: "none" }],
|
||||
[0xd3, { name: "conv.i", operand: "none" }],
|
||||
[0xd4, { name: "conv.ovf.i", operand: "none" }],
|
||||
[0xd5, { name: "conv.ovf.u", operand: "none" }],
|
||||
[0xd6, { name: "add.ovf", operand: "none" }],
|
||||
[0xd7, { name: "add.ovf.un", operand: "none" }],
|
||||
[0xd8, { name: "mul.ovf", operand: "none" }],
|
||||
[0xd9, { name: "mul.ovf.un", operand: "none" }],
|
||||
[0xda, { name: "sub.ovf", operand: "none" }],
|
||||
[0xdb, { name: "sub.ovf.un", operand: "none" }],
|
||||
[0xdc, { name: "endfinally", operand: "none" }],
|
||||
[0xdd, { name: "leave", operand: "branch" }],
|
||||
[0xde, { name: "leave.s", operand: "short-branch" }],
|
||||
[0xdf, { name: "stind.i", operand: "none" }],
|
||||
[0xe0, { name: "conv.u", operand: "none" }],
|
||||
[0xfe00, { name: "arglist", operand: "none" }],
|
||||
[0xfe01, { name: "ceq", operand: "none" }],
|
||||
[0xfe02, { name: "cgt", operand: "none" }],
|
||||
[0xfe03, { name: "cgt.un", operand: "none" }],
|
||||
[0xfe04, { name: "clt", operand: "none" }],
|
||||
[0xfe05, { name: "clt.un", operand: "none" }],
|
||||
[0xfe06, { name: "ldftn", operand: "method" }],
|
||||
[0xfe07, { name: "ldvirtftn", operand: "method" }],
|
||||
[0xfe09, { name: "ldarg", operand: "var" }],
|
||||
[0xfe0a, { name: "ldarga", operand: "var" }],
|
||||
[0xfe0b, { name: "starg", operand: "var" }],
|
||||
[0xfe0c, { name: "ldloc", operand: "var" }],
|
||||
[0xfe0d, { name: "ldloca", operand: "var" }],
|
||||
[0xfe0e, { name: "stloc", operand: "var" }],
|
||||
[0xfe0f, { name: "localloc", operand: "none" }],
|
||||
[0xfe11, { name: "endfilter", operand: "none" }],
|
||||
[0xfe12, { name: "unaligned.", operand: "short-i" }],
|
||||
[0xfe13, { name: "volatile.", operand: "none" }],
|
||||
[0xfe14, { name: "tail.", operand: "none" }],
|
||||
[0xfe15, { name: "initobj", operand: "type" }],
|
||||
[0xfe16, { name: "constrained.", operand: "type" }],
|
||||
[0xfe17, { name: "cpblk", operand: "none" }],
|
||||
[0xfe18, { name: "initblk", operand: "none" }],
|
||||
[0xfe1a, { name: "rethrow", operand: "none" }],
|
||||
[0xfe1c, { name: "sizeof", operand: "type" }],
|
||||
[0xfe1d, { name: "refanytype", operand: "none" }],
|
||||
[0xfe1e, { name: "readonly.", operand: "none" }],
|
||||
]);
|
||||
|
||||
const tokenKind = (token: string): ManagedInstructionAnchor["operand_kind"] => {
|
||||
|
|
@ -584,78 +735,127 @@ const tokenKind = (token: string): ManagedInstructionAnchor["operand_kind"] => {
|
|||
return "token";
|
||||
};
|
||||
|
||||
type OperandResult = {
|
||||
readonly next: number;
|
||||
readonly anchorKind: ManagedInstructionAnchor["operand_kind"];
|
||||
readonly value: string | null;
|
||||
};
|
||||
|
||||
type OperandReader = (il: Buffer, offset: number) => OperandResult;
|
||||
|
||||
const FIXED_OPERAND_READERS = new Map<string, OperandReader>([
|
||||
[
|
||||
"none",
|
||||
(_il, offset) => ({ next: offset, anchorKind: "none", value: null }),
|
||||
],
|
||||
[
|
||||
"short-var",
|
||||
(il, offset) => ({
|
||||
next: offset + 1,
|
||||
anchorKind: "variable",
|
||||
value: String(il.readUInt8(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"var",
|
||||
(il, offset) => ({
|
||||
next: offset + 2,
|
||||
anchorKind: "variable",
|
||||
value: String(il.readUInt16LE(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"short-i",
|
||||
(il, offset) => ({
|
||||
next: offset + 1,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readInt8(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"i",
|
||||
(il, offset) => ({
|
||||
next: offset + 4,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readInt32LE(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"i8",
|
||||
(il, offset) => ({
|
||||
next: offset + 8,
|
||||
anchorKind: "constant",
|
||||
value: il.readBigInt64LE(offset).toString(),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"r4",
|
||||
(il, offset) => ({
|
||||
next: offset + 4,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readFloatLE(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"r8",
|
||||
(il, offset) => ({
|
||||
next: offset + 8,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readDoubleLE(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"short-branch",
|
||||
(il, offset) => ({
|
||||
next: offset + 1,
|
||||
anchorKind: "branch",
|
||||
value: String(offset + 1 + il.readInt8(offset)),
|
||||
}),
|
||||
],
|
||||
[
|
||||
"branch",
|
||||
(il, offset) => ({
|
||||
next: offset + 4,
|
||||
anchorKind: "branch",
|
||||
value: String(offset + 4 + il.readInt32LE(offset)),
|
||||
}),
|
||||
],
|
||||
]);
|
||||
|
||||
const TOKEN_OPERAND_KINDS = new Map<
|
||||
string,
|
||||
ManagedInstructionAnchor["operand_kind"]
|
||||
>([
|
||||
["method", "method"],
|
||||
["field", "field"],
|
||||
["type", "type"],
|
||||
["string", "string"],
|
||||
["signature", "signature"],
|
||||
]);
|
||||
|
||||
const readOperand = (
|
||||
il: Buffer,
|
||||
offset: number,
|
||||
kind: string,
|
||||
): {
|
||||
readonly next: number;
|
||||
readonly anchorKind: ManagedInstructionAnchor["operand_kind"];
|
||||
readonly value: string | null;
|
||||
} => {
|
||||
switch (kind) {
|
||||
case "none":
|
||||
return { next: offset, anchorKind: "none", value: null };
|
||||
case "short-var":
|
||||
return {
|
||||
next: offset + 1,
|
||||
anchorKind: "variable",
|
||||
value: String(il.readUInt8(offset)),
|
||||
};
|
||||
case "var":
|
||||
return {
|
||||
next: offset + 2,
|
||||
anchorKind: "variable",
|
||||
value: String(il.readUInt16LE(offset)),
|
||||
};
|
||||
case "short-i":
|
||||
return {
|
||||
next: offset + 1,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readInt8(offset)),
|
||||
};
|
||||
case "i":
|
||||
return {
|
||||
next: offset + 4,
|
||||
anchorKind: "constant",
|
||||
value: String(il.readInt32LE(offset)),
|
||||
};
|
||||
case "short-branch":
|
||||
return {
|
||||
next: offset + 1,
|
||||
anchorKind: "branch",
|
||||
value: String(offset + 1 + il.readInt8(offset)),
|
||||
};
|
||||
case "branch":
|
||||
return {
|
||||
next: offset + 4,
|
||||
anchorKind: "branch",
|
||||
value: String(offset + 4 + il.readInt32LE(offset)),
|
||||
};
|
||||
case "switch": {
|
||||
const count = il.readUInt32LE(offset);
|
||||
return {
|
||||
next: offset + 4 + count * 4,
|
||||
anchorKind: "switch",
|
||||
value: String(count),
|
||||
};
|
||||
}
|
||||
case "method":
|
||||
case "field":
|
||||
case "type":
|
||||
case "string":
|
||||
case "token": {
|
||||
const raw = il.readUInt32LE(offset);
|
||||
const token = `0x${raw.toString(16).padStart(8, "0")}`;
|
||||
return {
|
||||
next: offset + 4,
|
||||
anchorKind: kind === "token" ? tokenKind(token) : kind,
|
||||
value: token,
|
||||
};
|
||||
}
|
||||
default:
|
||||
return { next: offset, anchorKind: "unknown", value: null };
|
||||
): OperandResult => {
|
||||
const fixed = FIXED_OPERAND_READERS.get(kind);
|
||||
if (fixed !== undefined) return fixed(il, offset);
|
||||
if (kind === "switch") {
|
||||
const count = il.readUInt32LE(offset);
|
||||
return {
|
||||
next: offset + 4 + count * 4,
|
||||
anchorKind: "switch",
|
||||
value: String(count),
|
||||
};
|
||||
}
|
||||
const raw = il.readUInt32LE(offset);
|
||||
const token = `0x${raw.toString(16).padStart(8, "0")}`;
|
||||
const tokenOperandKind = TOKEN_OPERAND_KINDS.get(kind);
|
||||
if (tokenOperandKind !== undefined)
|
||||
return { next: offset + 4, anchorKind: tokenOperandKind, value: token };
|
||||
if (kind === "token")
|
||||
return { next: offset + 4, anchorKind: tokenKind(token), value: token };
|
||||
return { next: offset, anchorKind: "unknown", value: null };
|
||||
};
|
||||
|
||||
const decodeInstructions = (
|
||||
|
|
@ -676,10 +876,11 @@ const decodeInstructions = (
|
|||
const first = il.readUInt8(offset);
|
||||
offset += 1;
|
||||
const code = first === 0xfe ? 0xfe00 + il.readUInt8(offset++) : first;
|
||||
const descriptor = opcode(code) ?? {
|
||||
name: `unknown.0x${code.toString(16)}`,
|
||||
operand: "none",
|
||||
};
|
||||
const descriptor = opcode(code);
|
||||
if (descriptor === undefined) {
|
||||
issue = `Unsupported CIL opcode 0x${code.toString(16)} at IL offset ${String(start)}`;
|
||||
break;
|
||||
}
|
||||
const operand = readOperand(il, offset, descriptor.operand);
|
||||
if (operand.next < offset || operand.next > il.length) {
|
||||
issue = `Instruction ${descriptor.name} at IL offset ${String(start)} leaves method body`;
|
||||
|
|
@ -751,6 +952,49 @@ const parseExceptionRegions = (
|
|||
return regions;
|
||||
};
|
||||
|
||||
interface MethodBodyHeader {
|
||||
readonly format: "tiny" | "fat";
|
||||
readonly size: number;
|
||||
readonly flags: number;
|
||||
readonly maxStack: number;
|
||||
readonly ilSize: number;
|
||||
readonly localSig: number;
|
||||
}
|
||||
|
||||
const readMethodBodyHeader = (
|
||||
bytes: Buffer,
|
||||
offset: number,
|
||||
): MethodBodyHeader => {
|
||||
const first = bytes.readUInt8(offset);
|
||||
if ((first & 3) === 2)
|
||||
return {
|
||||
format: "tiny",
|
||||
size: 1,
|
||||
flags: 0,
|
||||
maxStack: 8,
|
||||
ilSize: first >> 2,
|
||||
localSig: 0,
|
||||
};
|
||||
if ((first & 3) !== 3) throw new RangeError("Unsupported method body header");
|
||||
if (offset > bytes.length - 12)
|
||||
throw new RangeError("Fat method body header leaves artifact");
|
||||
const flagsAndSize = bytes.readUInt16LE(offset);
|
||||
const headerDwords = flagsAndSize >>> 12;
|
||||
if (headerDwords < 3)
|
||||
throw new RangeError("Fat method body header is smaller than 12 bytes");
|
||||
const size = headerDwords * 4;
|
||||
if (offset > bytes.length - size)
|
||||
throw new RangeError("Method body header leaves artifact");
|
||||
return {
|
||||
format: "fat",
|
||||
size,
|
||||
flags: flagsAndSize & 0x0fff,
|
||||
maxStack: bytes.readUInt16LE(offset + 2),
|
||||
ilSize: bytes.readUInt32LE(offset + 4),
|
||||
localSig: bytes.readUInt32LE(offset + 8),
|
||||
};
|
||||
};
|
||||
|
||||
const methodBody = (
|
||||
bytes: Buffer,
|
||||
pe: ManagedPeLayout,
|
||||
|
|
@ -779,26 +1023,20 @@ const methodBody = (
|
|||
};
|
||||
try {
|
||||
const offset = pe.rvaToOffset(rva, 1, "method.body");
|
||||
const first = bytes.readUInt8(offset);
|
||||
const tiny = (first & 3) === 2;
|
||||
const fat = (first & 3) === 3;
|
||||
if (!tiny && !fat) throw new RangeError("Unsupported method body header");
|
||||
const headerSize = tiny ? 1 : (first >> 4) * 4;
|
||||
const flags = tiny ? 0 : bytes.readUInt16LE(offset);
|
||||
const maxStack = tiny ? 8 : bytes.readUInt16LE(offset + 2);
|
||||
const ilSize = tiny ? first >> 2 : bytes.readUInt32LE(offset + 4);
|
||||
const localSig = tiny ? 0 : bytes.readUInt32LE(offset + 8);
|
||||
if (ilSize > limits.maxMethodBodyBytes)
|
||||
const header = readMethodBodyHeader(bytes, offset);
|
||||
if (header.ilSize > limits.maxMethodBodyBytes)
|
||||
return {
|
||||
status: "too-large",
|
||||
header_format: tiny ? "tiny" : "fat",
|
||||
header_format: header.format,
|
||||
rva,
|
||||
file_offset: offset,
|
||||
max_stack: maxStack,
|
||||
init_locals: tiny ? false : (flags & 0x10) !== 0,
|
||||
max_stack: header.maxStack,
|
||||
init_locals: (header.flags & 0x10) !== 0,
|
||||
local_var_sig_token:
|
||||
localSig === 0 ? null : `0x${localSig.toString(16).padStart(8, "0")}`,
|
||||
il_size: ilSize,
|
||||
header.localSig === 0
|
||||
? null
|
||||
: `0x${header.localSig.toString(16).padStart(8, "0")}`,
|
||||
il_size: header.ilSize,
|
||||
il_sha256: null,
|
||||
normalized_il_sha256: null,
|
||||
instruction_count: 0,
|
||||
|
|
@ -809,10 +1047,10 @@ const methodBody = (
|
|||
exception_regions: [],
|
||||
issue: `Method body exceeds max_method_body_bytes ${String(limits.maxMethodBodyBytes)}`,
|
||||
};
|
||||
const ilOffset = offset + headerSize;
|
||||
if (ilOffset > bytes.length - ilSize)
|
||||
const ilOffset = offset + header.size;
|
||||
if (ilOffset > bytes.length - header.ilSize)
|
||||
throw new RangeError("Method IL bytes leave artifact");
|
||||
const il = bytes.subarray(ilOffset, ilOffset + ilSize);
|
||||
const il = bytes.subarray(ilOffset, ilOffset + header.ilSize);
|
||||
const decoded = decodeInstructions(il, limits.maxMethodInstructions);
|
||||
const opcodeCounts: Record<string, number> = {};
|
||||
for (const instruction of decoded.parsed)
|
||||
|
|
@ -838,18 +1076,20 @@ const methodBody = (
|
|||
),
|
||||
"utf8",
|
||||
);
|
||||
const methodEnd = ilOffset + ilSize;
|
||||
const methodEnd = ilOffset + header.ilSize;
|
||||
const sectionOffset = (methodEnd + 3) & ~3;
|
||||
return {
|
||||
status: decoded.issue === null ? "present" : "malformed",
|
||||
header_format: tiny ? "tiny" : "fat",
|
||||
header_format: header.format,
|
||||
rva,
|
||||
file_offset: offset,
|
||||
max_stack: maxStack,
|
||||
init_locals: tiny ? false : (flags & 0x10) !== 0,
|
||||
max_stack: header.maxStack,
|
||||
init_locals: (header.flags & 0x10) !== 0,
|
||||
local_var_sig_token:
|
||||
localSig === 0 ? null : `0x${localSig.toString(16).padStart(8, "0")}`,
|
||||
il_size: ilSize,
|
||||
header.localSig === 0
|
||||
? null
|
||||
: `0x${header.localSig.toString(16).padStart(8, "0")}`,
|
||||
il_size: header.ilSize,
|
||||
il_sha256: sha256Bytes(il),
|
||||
normalized_il_sha256: sha256Bytes(normalized),
|
||||
instruction_count: decoded.count,
|
||||
|
|
@ -858,7 +1098,7 @@ const methodBody = (
|
|||
opcode_counts: opcodeCounts,
|
||||
anchors,
|
||||
exception_regions:
|
||||
fat && (flags & 8) !== 0
|
||||
header.format === "fat" && (header.flags & 8) !== 0
|
||||
? parseExceptionRegions(bytes, sectionOffset, bytes.length)
|
||||
: [],
|
||||
issue: decoded.issue,
|
||||
|
|
|
|||
|
|
@ -131,6 +131,82 @@ describe("managed PE/CLI static provider", () => {
|
|||
expect(result.coverage.issues).toEqual([]);
|
||||
});
|
||||
|
||||
it("accepts CLI metadata GUIDs without RFC UUID version or variant bits", () => {
|
||||
const bytes = buildManagedPeFixture({
|
||||
mvid: Buffer.from("3aebc60edc4a544b1f458b4ed40b33b1", "hex"),
|
||||
});
|
||||
const result = inspectManagedArtifactBytes(bytes, target(bytes), limits);
|
||||
const members = inspectManagedMembersBytes(
|
||||
bytes,
|
||||
target(bytes),
|
||||
memberLimits,
|
||||
);
|
||||
const boundaries = inspectManagedNativeBoundariesBytes(
|
||||
bytes,
|
||||
target(bytes),
|
||||
nativeBoundaryLimits,
|
||||
);
|
||||
|
||||
expect(result.module?.mvid).toBe("0ec6eb3a-4adc-4b54-1f45-8b4ed40b33b1");
|
||||
expect(result.classification.status).toBe("managed");
|
||||
expect(members.identity_scope.requires_mvid).toBe(result.module?.mvid);
|
||||
expect(boundaries.identity_scope.requires_mvid).toBe(result.module?.mvid);
|
||||
});
|
||||
|
||||
it("reads fat method header size from the full flags-and-size word", () => {
|
||||
const il = Buffer.from([
|
||||
0x21, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x26, 0x22, 0x00,
|
||||
0x00, 0x80, 0x3f, 0x26, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
|
||||
0x3f, 0x26, 0xfe, 0x06, 0x01, 0x00, 0x00, 0x06, 0x26, 0x2a,
|
||||
]);
|
||||
const header = Buffer.alloc(12);
|
||||
header.writeUInt16LE(0x3013, 0);
|
||||
header.writeUInt16LE(8, 2);
|
||||
header.writeUInt32LE(il.length, 4);
|
||||
const bytes = buildManagedPeFixture({
|
||||
ilBody: Buffer.concat([header, il]),
|
||||
});
|
||||
const result = inspectManagedMembersBytes(
|
||||
bytes,
|
||||
target(bytes),
|
||||
memberLimits,
|
||||
);
|
||||
|
||||
expect(result.methods.items[0]?.body).toMatchObject({
|
||||
status: "present",
|
||||
header_format: "fat",
|
||||
il_size: il.length,
|
||||
il_sha256: createHash("sha256").update(il).digest("hex"),
|
||||
opcode_counts: {
|
||||
"ldc.i8": 1,
|
||||
pop: 4,
|
||||
"ldc.r4": 1,
|
||||
"ldc.r8": 1,
|
||||
ldftn: 1,
|
||||
ret: 1,
|
||||
},
|
||||
issue: null,
|
||||
});
|
||||
});
|
||||
|
||||
it("does not normalize reserved CIL opcodes as operand-free instructions", () => {
|
||||
const bytes = buildManagedPeFixture({
|
||||
ilBody: Buffer.from([0x0a, 0x24, 0x2a]),
|
||||
});
|
||||
const result = inspectManagedMembersBytes(
|
||||
bytes,
|
||||
target(bytes),
|
||||
memberLimits,
|
||||
);
|
||||
|
||||
expect(result.methods.items[0]?.body).toMatchObject({
|
||||
status: "malformed",
|
||||
il_size: 2,
|
||||
decoded_instruction_count: 0,
|
||||
issue: "Unsupported CIL opcode 0x24 at IL offset 0",
|
||||
});
|
||||
});
|
||||
|
||||
it("inspects metadata members, signatures, CIL hashes, call edges, and field anchors", () => {
|
||||
const bytes = buildManagedPeFixture();
|
||||
const result = inspectManagedMembersBytes(
|
||||
|
|
|
|||
Loading…
Reference in New Issue