gd_alter_protection man page

gd_alter_protection — modify the protection level of a dirfile fragment


#include <getdata.h>

int gd_alter_protection(DIRFILE *dirfile, int protection_level, int fragment_index);


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:

Indicating that the fragment should not be protected at all.
Indicating that the fragment's metadata should be protected.
Indicating that the fragment's binary data should be protected.
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 -1 and sets the dirfile error to a non-zero error value. Possible error values are:

The specified dirfile was opened read-only.
The supplied protection_level was invalid.
The supplied dirfile was invalid.
The supplied index was out of range.
The supplied protection level was invalid.

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).


This is the only GetData function which ignores the (existing) protection level of a format specification fragment.

See Also

gd_open(3), gd_error(3), gd_error_string(3), gd_protection(3), dirfile(5), dirfile-format(5)

Referenced By


1 January 2012 Version 0.8.0 GETDATA