Provided by: libgetdata-doc_0.11.0-13_all bug

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)