Provided by: libgetdata-doc_0.11.0-13_all
NAME
gd_alter_protection — modify the protection level of a Dirfile fragment
SYNOPSIS
#include <getdata.h> int gd_alter_protection(DIRFILE *dirfile, int protection_level, int fragment_index);
DESCRIPTION
The gd_alter_protection() function sets the advisory protection level of the format specification fragment given by fragment_index to protection_level in the dirfile(5) database specified by dirfile. The protection_level argument should be one of the following: GD_PROTECT_NONE Indicating that the fragment should not be protected at all. GD_PROTECT_FORMAT Indicating that the fragment's metadata should be protected. GD_PROTECT_DATA Indicating that the fragment's binary data should be protected. GD_PROTECT_ALL Indicating that both the fragment's metadata and its binary data should be protected. This symbol is equivalent to the bitwise or of GD_PROTECT_FORMAT and GD_PROTECT_DATA. In addition to being simply a valid fragment index, fragment_index may also be the special value GD_ALL_FRAGMENTS, which indicates that the protection level of all fragments in the database should be changed.
RETURN VALUE
Upon successful completion, gd_alter_protection() returns zero. On error, it returns a negative-valued error code. Possible error codes are: GD_E_ACCMODE The specified dirfile was opened read-only. GD_E_ARGUMENT The supplied protection_level was invalid. GD_E_BAD_DIRFILE The supplied dirfile was invalid. GD_E_BAD_INDEX The supplied index was out of range. GD_E_BAD_PROTECTION The supplied protection level was invalid. The error code is also stored in the DIRFILE object and may be retrieved after this function returns by calling gd_error(3). A descriptive error string for the error may be obtained by calling gd_error_string(3).
NOTES
This is the only GetData function which ignores the (existing) protection level of a format specification fragment.
HISTORY
The function dirfile_protect() appeared in GetData-0.5.0. In GetData-0.7.0, this function was renamed to gd_alter_protection(). In GetData-0.10.0, the error return from this function changed from -1 to a negative- valued error code.
SEE ALSO
gd_error(3), gd_error_string(3), gd_protection(3), gd_open(3)