RARHeaderDataEx structure

struct RARHeaderDataEx
{
  char         ArcName[1024];
  wchar_t      ArcNameW[1024];
  char         FileName[1024];
  wchar_t      FileNameW[1024];
  unsigned int Flags;
  unsigned int PackSize;
  unsigned int PackSizeHigh;
  unsigned int UnpSize;
  unsigned int UnpSizeHigh;
  unsigned int HostOS;
  unsigned int FileCRC;
  unsigned int FileTime;
  unsigned int UnpVer;
  unsigned int Method;
  unsigned int FileAttr;
  char         *CmtBuf;
  unsigned int CmtBufSize;
  unsigned int CmtSize;
  unsigned int CmtState;
  unsigned int DictSize;
  unsigned int HashType;
  char         Hash[32];
  unsigned int RedirType;
  wchar_t      *RedirName;
  unsigned int RedirNameSize;
  unsigned int DirTarget;
  unsigned int Reserved[994];
};

Description

This structure is used by RARReadHeaderEx function. Please fill either the entire structure or at least its Reserved field with zeroes before passing to RARReadHeaderEx.

Structure fields

  • CmtBuf

    Input parameter. Points to the buffer for file comment.

    File comment support is not implemented in current unrar.dll version. Appropriate parameters are preserved only for compatibility with older versions.

    Set this field to NULL.

  • CmtBufSize

    Input parameter. Size of buffer for file comments.

    File comment support is not implemented in current unrar.dll version.

    Set this field to 0.

  • CmtSize

    Output parameter. Size of file comment read into buffer.

    File comment support is not implemented in current unrar.dll version.

    Always equal to 0.

  • CmtState

    Output parameter. State of file comment.

    File comment support is not implemented in current unrar.dll version.

    Always equal to 0.

  • DictSize

    Output parameter. Size of file compression dictionary in kilobytes.

  • HashType

    Output parameter. Type of hash function used to protect file data integrity. Can be RAR_HASH_NONE (no checksum or unknown hash function type), RAR_HASH_CRC32 (CRC32) or RAR_HASH_BLAKE2 (BLAKE2sp)

  • Hash

    Output parameter. If HashType is equal to RAR_HASH_BLAKE2, this array contains 32 bytes of file data BLAKE2sp hash.

  • RedirType

    Output parameter. Type of file system redirection.

    0No redirection, usual file.
    1Unix symbolic link
    2Windows symbolic link
    3Windows junction
    4Hard link
    5File reference saved with -oi switch
  • RedirName

    Input/output parameter. Pointer to buffer to receive file system redirection target name, such as target of symbolic link or file reference. It is returned as stored in archive and its value might be not immediately applicable for further use. For example, you may need to remove \??\ or UNC\ prefixes for Windows junctions or prepend the extraction destination path.

    If you set RedirName to NULL, it is ignored and nothing is returned here.

  • RedirNameSize

    Input parameter. Size of buffer specified in RedirName. Ignored if RedirName is NULL.

  • DirTarget

    Output parameter. Non-zero if RedirType is symbolic link and RedirName points to directory.

  • Reserved
    Reserved for future use. The entire array must be filled with zeroes before passing RARHeaderDataEx structure to RARReadHeaderEx.

    See also

    RARReadHeaderEx function.