gd_raw_filename(3)

gd_raw_filename \(em retrieve the pathname of a binary file in a Dirfile

Section 3 libgetdata-doc bookworm source

Description

gd_raw_filename

NAME

gd_raw_filename — retrieve the pathname of a binary file in a Dirfile

SYNOPSIS

#include <getdata.h>

char *gd_raw_filename(DIRFILE *dirfile, const char *field_code);

DESCRIPTION

The gd_raw_filename() function reports the pathname of the file backing the RAW field specified by field_code in the dirfile specified by dirfile. If field_code contains a valid representation suffix, it will be ignored.

RETURN VALUE

On success, gd_raw_filename() returns the full pathname of the binary file associated with the specified field in a newly-allocated buffer. By default, this buffer is allocated with malloc(3), but a different memory manager may be specified by calling gd_alloc_funcs(3) before calling this function. The caller is responsible for deallocating the returned buffer.

On error, this function returns NULL and stores a negative-valued error code in the DIRFILE object which may be retrieved by a subsequent call to gd_error(3). Possible error codes are:
GD_E_ALLOC

The library was unable to allocate memory.

GD_E_BAD_CODE

The field specified by field_code was not found.

GD_E_BAD_DIRFILE

The supplied dirfile was invalid.

GD_E_BAD_FIELD_TYPE

The field specified by field_code was not a RAW field.

GD_E_UNKNOWN_ENCODING

The encoding scheme of the specified field could not be determined or was not understood by GetData.

A descriptive error string for the error may be obtained by calling gd_error_string(3).

HISTORY

The get_raw_filename() function appeared in GetData-0.4.2. Memory for the string it returned was managed by GetData.

In GetData-0.7.0, this function was renamed to gd_raw_filename().

In GetData-0.8.0, the returned string changed to a malloc’d buffer, and the responsibility for freeing the buffer passed to the caller.

SEE ALSO

free(3), gd_entry(3), gd_error(3), gd_error_string(3), malloc(3), dirfile(5), dirfile-encoding(5), dirfile-format(5)

See Also