public static CrtResult SignTrailingHeaders()

in aws-crt-auth/Signing.cs [458:484]


        public static CrtResult<CrtSigningResult> SignTrailingHeaders(HttpHeader[] headers, byte[] previousSignature, AwsSigningConfig signingConfig)
        {
            if (previousSignature == null || signingConfig == null) {
                throw new CrtException("Null argument passed to SignChunk");
            }

            if (signingConfig.SignatureType != AwsSignatureType.HTTP_REQUEST_TRAILING_HEADERS) {
                throw new CrtException("Illegal signature type for trailing headers signing");
            }

            uint trailingHeaderCount = 0;
            if (headers != null) {
                trailingHeaderCount = (uint) headers.Length;
            }

            var nativeConfig = new AwsSigningConfigNative(signingConfig);

            TrailingHeadersSigningCallbackData callback = new TrailingHeadersSigningCallbackData();
            callback.TrailingHeaders = headers;
            callback.PreviousSignature = previousSignature;

            ulong id = PendingTrailingHeadersSignings.AcquireStrongReference(callback);

            API.SignTrailingHeadersNative(callback.TrailingHeaders, trailingHeaderCount, callback.PreviousSignature, (uint) callback.PreviousSignature.Length, nativeConfig, id, API.OnTrailingHeadersSigningComplete);

            return callback.Result;
        }