c1f263ef83
Adds the dnlib instrument command + harness wiring to capture the two non-streamed-write buffers from the native 2023 R2 client: - `instrument-grpc-nonstream <GrpcClient.dll> [out]` injects CaptureLogger.LogByteArray at the entry of GrpcHistoryClient.RegisterTags (byte[] tagInfos) and AddNonStreamValues (byte[] inBuff), writing the rewrite to docs/reverse-engineering/dnlib-write-copy/grpc2023 (gitignored — derived AVEVA binary). dnlib preserves the AVEVA public-key identity so aahClientManaged still binds the rewritten copy under the LoadFrom context (no SN re-verification). - harness `--grpc-rewrite <dir>` probes that dir first, so the instrumented GrpcClient.dll + ReverseInstrumentation.dll load ahead of the originals. load-check confirms the rewritten strong-named copy binds (HistorianConnectionMode.Historian=2; GrpcHistoryClient RegisterTags + AddNonStreamValues present). Next: capture-write scenario (open write-enabled -> sandbox tag -> read-prime -> AddNonStreamedValue), which dumps tagInfos + inBuff to the capture NDJSON. Prod write — confirm before running. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B6mcaT2PjRFKcogzp9UkfC
38 lines
758 B
Plaintext
38 lines
758 B
Plaintext
bin/
|
|
obj/
|
|
.vs/
|
|
.vscode/
|
|
TestResults/
|
|
artifacts/
|
|
*.user
|
|
*.suo
|
|
|
|
# AVEVA native binaries — referenced by reverse-engineering harnesses for analysis only.
|
|
# Per CLAUDE.md: "Never modify, delete, or redistribute". Each developer fetches their own
|
|
# copy from the AVEVA installer; do not commit the binaries themselves.
|
|
current/
|
|
aveva-install-x64/
|
|
aveva-install-x86/
|
|
|
|
# Editor / runtime droppings
|
|
.claude/
|
|
*.svclog
|
|
.idea/
|
|
*.swp
|
|
Thumbs.db
|
|
|
|
# Capture droppings outside artifacts/ (safety net)
|
|
*.ndjson
|
|
*.pcap
|
|
*.pcapng
|
|
|
|
# Test droppings
|
|
*.coverage
|
|
coverage.cobertura.xml
|
|
|
|
# Live 2023 R2 server credentials — never commit
|
|
wonder-sql-vd03.txt
|
|
|
|
# Reverse-engineering IL-rewrite output: derived AVEVA binaries, never commit
|
|
docs/reverse-engineering/dnlib-write-copy/
|