SYNOPSISThe following modify function is supported for any semanage record.
Replace the function and object name as necessary.
extern int MODIFY_FUNCTION (
const semanage_OBJECT_key_t *key,
const semanage_OBJECT_t *data);
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
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.
is used to track persistent state across semanage calls, and for error reporting. The
object, which will be written into the store. The key are data are properties of the caller, and are not stored or modified internally.
This function requires an semanage connection to be established (see
), and must be executed in a transaction (see
RETURN VALUEIn case of failure, -1 is returned, and the semanage error callback is invoked, describing the error. Otherwise 0 is returned.