---
name: "Trf_MDFinal"
section: "3"
platform: "linux"
package: "tcl-trf-doc"
version: "2.1.4-dfsg3-8"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Trf_MDFinal"
---

# Trf\_MDFinal(3)

Interface to procedures for generation of the final digest from a MD state.

## NAME

Trf\_MDFinal - Interface to procedures for generation of the final digest from a MD state.

## SYNOPSIS

**#include \<transform.h\>**

**void Trf\_MDFinal**\
 **(**\
\
 	**void \*context,**\
\
 	**void \*digest**\
 **);**

## PARAMETERS

- **void \*context**

  State to finalize.

- **void \*digest**

  Result area to fill.

## DESCRIPTION

A procedure of this type is called after processing the final character. It is its responsibility to finalize the internal state of the MD algorithm and to generate the resulting digest from this.

## SEE ALSO

[Trf\_Init(3)](/Trf_Init/3.md), [Trf\_SafeInit(3)](/Trf_SafeInit/3.md), [Trf\_IsInitialized(3)](/Trf_IsInitialized/3.md), [Trf\_CreateOptions(3)](/Trf_CreateOptions/3.md), [Trf\_DeleteOptions(3)](/Trf_DeleteOptions/3.md), [Trf\_CheckOptions(3)](/Trf_CheckOptions/3.md), [Trf\_SetOption(3)](/Trf_SetOption/3.md), [Trf\_SetObjOption(3)](/Trf_SetObjOption/3.md), [Trf\_QueryOptions(3)](/Trf_QueryOptions/3.md), [Trf\_SeekQueryOptions(3)](/Trf_SeekQueryOptions/3.md), [Trf\_WriteProc(3)](/Trf_WriteProc/3.md), [Trf\_CreateCtrlBlock(3)](/Trf_CreateCtrlBlock/3.md), [Trf\_DeleteCtrlBlock(3)](/Trf_DeleteCtrlBlock/3.md), [Trf\_TransformCharacter(3)](/Trf_TransformCharacter/3.md), [Trf\_TransformBuffer(3)](/Trf_TransformBuffer/3.md), [Trf\_FlushTransformation(3)](/Trf_FlushTransformation/3.md), [Trf\_ClearCtrlBlock(3)](/Trf_ClearCtrlBlock/3.md), [Trf\_QueryMaxRead(3)](/Trf_QueryMaxRead/3.md), [Trf\_Register(3)](/Trf_Register/3.md), [Trf\_ConverterOptions(3)](/Trf_ConverterOptions/3.md), [Trf\_MDStart(3)](/Trf_MDStart/3.md), [Trf\_MDUpdate(3)](/Trf_MDUpdate/3.md), [Trf\_MDUpdateBuf(3)](/Trf_MDUpdateBuf/3.md), [Trf\_MDCheck(3)](/Trf_MDCheck/3.md), [Trf\_RegisterMessageDigest(3)](/Trf_RegisterMessageDigest/3.md), [Trf\_LoadLibrary(3)](/Trf_LoadLibrary/3.md), [Trf\_XorBuffer(3)](/Trf_XorBuffer/3.md), [Trf\_ShiftRegister(3)](/Trf_ShiftRegister/3.md), [Trf\_FlipRegisterShort(3)](/Trf_FlipRegisterShort/3.md), [Trf\_FlipRegisterLong(3)](/Trf_FlipRegisterLong/3.md), [Trf\_InitStubs(3)](/Trf_InitStubs/3.md)
