Gd_encoding report the binary encoding of data in a dirfile
#include <getdata.h> unsigned long gd_encoding(DIRFILE *dirfile, int fragment_index);
The gd_encoding() function queries a dirfile(5) database specified by dirfile and returns the binary encoding for the fragment indexed by fragment_index. The binary encoding of a fragment indicate the encoding of data stored in binary files associated with RAW fields defined in the specified fragment. The encoding of a fragment containing no RAW fields is ignored.
Upon successful completion, gd_encoding() returns the binary encoding of the specified fragment, which will one of the following symbols:
GD_UNENCODED,\~GD_TEXT_ENCODED,\~GD_SLIM_ENCODED,\~ GD_GZIP_ENCODED,\~GD_BZIP2_ENCODED,\~GD_LZMA_ENCODED,\~ GD_ENC_UNSUPPORTED.
See gd_cbopen(3) and dirfile-encoding(5) for the meanings of these symbols and details on the supported encoding schemes. If the encoding scheme specified in the dirfile metadata is unknown to GetData, GD_ENC_UNSUPPORTED will be returned.
On error, it returns zero and sets the dirfile error to a non-zero error value. Possible error values are:
GD_E_BAD_DIRFILE
The supplied dirfile was invalid.
GD_E_BAD_INDEX
The supplied index was out of range.
The dirfile error may be retrieved by calling gd_error(3). A descriptive error string for the last error encountered can be obtained from a call to gd_error_string(3).