semanage_modify(3)      Libsemanage API documentation     semanage_modify(3)

NAME         top

       semanage_modify - SELinux Management API

SYNOPSIS         top

       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         top

              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

              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

              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         top

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

SEE ALSO         top

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

COLOPHON         top

       This page is part of the selinux (Security-Enhanced Linux user-space
       libraries and tools) project.  Information about the project can be
       found at ⟨⟩.  If you
       have a bug report for this manual page, see 
       ⟨⟩.  This
       page was obtained from the project's upstream Git repository 
       ⟨⟩ on 2017-03-13.  If you
       discover any rendering problems in this HTML version of the page, or
       you believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in this
       COLOPHON (which is not part of the original manual page), send a mail
       to                16 March 2006             semanage_modify(3)