function TsaHttpAvailable: Boolean;
function TsaHttpBackendName: string;
function PostTimeStampQuery(const TsaUrl: string; const ReqDer: TBytes; out RespDer: TBytes): Boolean;
FPdfTsa selects this transport for Delphi on POSIX platforms. The implementation uses System.Net.HttpClient to send a real HTTP or HTTPS POST with Content-Type: application/timestamp-query and Accept: application/timestamp-reply
The facade delegates to FPdfTsaWin on Windows and to FPdfTsaFpc for native Free Pascal. Those branches keep older Windows Delphi packages free of a dependency on the POSIX HTTP implementation
Transport availability describes the selected HTTP backend. It does not establish TSA reachability, a trusted signer certificate, or timestamp validity
| Function | Description |
|---|---|
TsaHttpAvailable | Reports whether the selected platform HTTP transport is available |
TsaHttpBackendName | Returns System.Net.HttpClient for Delphi POSIX, or the name reported by the delegated Windows or Free Pascal transport |
PostTimeStampQuery | Posts the caller's DER query to TsaUrl, accepts a nonempty bounded 2xx response, and returns its bytes in RespDer; failed requests clear the output and return False |
The Delphi transport limits request and response bodies to 4 MiB and URLs to 8192 string code units. Only HTTP and HTTPS URLs are accepted, and redirects are disabled
Connection, send, and response timeout settings are 30000 milliseconds. A deadline worker requests cancellation of the native HTTP request after the overall 30000 millisecond budget; bounded response-stream writes and the completed response check also reject elapsed-budget violations. The operating system HTTP implementation controls how promptly native request cancellation takes effect
HTTPS retains the platform certificate and hostname checks. A successful POST is only transport success: FPdfTsa still parses the RFC 3161 response, checks the requested imprint and nonce, and extracts the token. PAdES trust validation verifies that original token's CMS signature, certificate chain, revocation evidence, and timestamp role separately
A 2xx response may contain a DER rejection from the TSA, which the higher-level response parser reports as a failed timestamp request