gd_get_string(3) GETDATA gd_get_string(3)NAMEgd_get_string — retrieve a string from a dirfile database
SYNOPSIS
#include <getdata.h>
size_t gd_get_string(DIRFILE *dirfile, const char *field_code, size_t
len, char *data_out);
DESCRIPTION
The gd_get_string() function queries a dirfile(5) database specified by
dirfile for the string scalar field_code, which should not contain a
representation suffix. The first len characters of the string scalar
are stored in the user-supplied buffer data_out.
The dirfile argument must point to a valid DIRFILE object previously
created by a call to gd_open(3).
If len equals zero, or if data_out equals NULL, no data will be copied
to data_out, but the length of the string scalar will still be returned
by gd_get_string(). Otherwise, the argument data_out must point to a
valid memory location of sufficient size to hold at least len charac‐
ters. If the length of the string scalar is greater than len, data_out
will not be NULL-terminated.
RETURN VALUE
On success, gd_get_string() returns the actual length of the specified
string scalar, including the trailing NULL character. A return value
greater than len indicates that the output string is not null terminat‐
ed.
On error, it returns 0 and sets the dirfile error to a non-zero value.
Possible error values are:
GD_E_BAD_CODE
The field specified by field_code was not found in the data‐
base.
GD_E_BAD_DIRFILE
An invalid dirfile was supplied.
GD_E_BAD_FIELD_TYPE
The supplied field_code referred to a field of type other than
STRING. The caller should use gd_getdata(3), or gd_get_con‐
stant(3) instead.
GD_E_BAD_TYPE
An invalid return_type was specified.
GD_E_INTERNAL_ERROR
An internal error occurred in the library while trying to per‐
form the task. This indicates a bug in the library. Please
report the incident to the maintainer.
The dirfile error may be retrieved by calling gd_error(3). A descrip‐
tive error string for the last error encountered may be obtained from a
call to gd_error_string(3).
SEE ALSOdirfile(5), gd_open(3), gd_error(3), gd_error_string(3),
gd_put_string(3)Version 0.7.0 25 May 2010 gd_get_string(3)