Man Linux: Main Page and Category List

NAME

       semanage_modify - SELinux Management API

SYNOPSIS

       The following modify function is supported for any semanage record.
       Replace the function and object name as necessary.

       extern int MODIFY_FUNCTION (
            semanage_handle_t *handle,
            const semanage_OBJECT_key_t *key,
            const semanage_OBJECT_t *data);

DESCRIPTION

       Behavior:
              If  a  matching  key  is  found in the local store, the provided
              object will replace the current one. Otherwise, it will be added
              to  the  store. When semanage_commit(3) is invoked, changes will
              be permanently written into the local  store,  and  then  loaded
              into  policy.  Validity  of the object being added is checked at
              commit time. Adding  new  objects  with  respect  to  policy  is
              allowed,  except  in  the  case  of booleans. Attempt to add new
              booleans with respect to policy will fail at commit time.

       Parameters:
              The handle is used to track  persistent  state  across  semanage
              calls,  and  for  error  reporting.  The key identifies the data
              object, which will be written into the store. The key  are  data
              are  properties  of  the  caller, and are not stored or modified
              internally.

       Requirements:
              This function requires an semanage connection to be  established
              (see   semanage_connect(3)   ),   and  must  be  executed  in  a
              transaction (see semanage_begin_transaction(3) ).

RETURN VALUE

       In case of failure, -1 is returned, and the semanage error callback  is
       invoked, describing the error.  Otherwise 0 is returned.

SEE ALSO

       semanage_handle_create(3),               semanage_begin_transaction(3),
       semanage_connect(3), semanage_commit(3).