mirror of
https://github.com/okieselbach/AutopilotMonitor.git
synced 2026-10-24 20:53:06 +00:00
7ac7a5e8ba
tls= was empty on every report: .NET Framework's SecureChannelFailure carries no inner Win32 code. After a terminal SecureChannelFailure the agent now opens one direct SslStream connection to the backend host with the client certificate (system-default protocols, normal server validation, never a proxy) and sends one GET of the agent config with the agent's headers - the platform asks for the certificate only once it has seen the path. The message carries tlsp=<protocol>,<m|->,<answer>: b<status> only when the probe's own correlation id comes back (shared ResponseOriginClassifier), cc<status> for the platform's "Client Certificate Required" page, st/x/io otherwise; or unreachable, hs(<SSPI code>), hs(srvcert), timeout, error. A server certificate not issued by Microsoft appends ,i=<issuer CN> (TLS inspection). The probe runs beside the TPM and Schannel reads, all three within 10 s (4 s per network step), on the failure path only. The Schannel window now ends when the failure is detected (ReadBetween), so the probe's own handshake never shows up in sch=. A connect that fails after its timeout is observed (an unobserved task exception would write crash artefacts); an answer that began is kept when the server does not close. Live, .NET Framework 4.8 against production without a certificate: tls12,-,cc403. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>