NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | COLOPHON

semanage_iterate(3)     Libsemanage API documentation    semanage_iterate(3)

NAME         top

       semanage_iterate - SELinux Management API

SYNOPSIS         top

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

       extern int ITERATE_FUNCTION (
            semanage_handle_t *handle,
            int (*handler) (
                          const semanage_OBJECT_t *object,
                          void *varg),
            void *handler_arg);

DESCRIPTION         top

       Behavior:
              The iterate function will execute the specified handler over
              all objects in the selected location. An arbitrary argument
              can be passed into the handler function along with each
              object.

              The object passed in is property of the libsemanage library,
              and may not be modified or preserved - use
              semanage_OBJECT_clone if that is necessary.

              The handler code may not invoke any semanage write requests
              for the same object type (i.e. modifying the underlying store
              is not allowed). The iterate function is reentrant only while
              inside a transaction (see semanage_begin_transaction ). It is
              not safe to execute other semanage read or write requests
              within iterate if not inside a transaction. The handler may
              return -1 to signal error exit, 0 to signal continue, and 1 to
              signal successful exit early (the iterate function will stop
              accordingly).

       Parameters:
              The handle is used to track persistent state across semanage
              calls, and for error reporting. The handler is the function to
              execute, with handler_arg as its second parameter, and each
              object as its first parameter.

       Requirements:
              This function requires an semanage connection to be
              established (see semanage_connect(3) )

RETURN VALUE         top

       In case of failure, -1 is returned, and the semanage error callback
       is invoked, describing the error.  Otherwise a non-negative integer
       is returned (a commit number). The same number will be returned by
       all other semanage object read calls until the next commit.

SEE ALSO         top

       semanage_handle_create(3), semanage_connect(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 ⟨https://github.com/SELinuxProject/selinux/wiki⟩.  If you
       have a bug report for this manual page, see 
       ⟨https://github.com/SELinuxProject/selinux/wiki/Contributing⟩.  This
       page was obtained from the project's upstream Git repository 
       ⟨https://github.com/SELinuxProject/selinux⟩ on 2017-09-15.  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 man-pages@man7.org

ivg2@cornell.edu                15 March 2006            semanage_iterate(3)

Pages that refer to this page: semanage_bool(3)semanage_fcontext(3)semanage_iface(3)semanage_node(3)semanage_port(3)semanage_seuser(3)semanage_user(3)