diff --git a/libraries/libapparmor/doc/aa_change_profile.pod b/libraries/libapparmor/doc/aa_change_profile.pod index e5ac0bef7..6457c334e 100644 --- a/libraries/libapparmor/doc/aa_change_profile.pod +++ b/libraries/libapparmor/doc/aa_change_profile.pod @@ -40,14 +40,13 @@ An AppArmor profile applies to an executable program; if a portion of the program needs different access permissions than other portions, the program can "change profile" to a different profile. To change into a new profile, it can use the aa_change_profile() function to do so. It passes -in a pointer to the I to transition to. Transitioning to another -profile via aa_change_profile() is permanent and the process is not -permitted to transition back to the original profile. Confined programs -wanting to use aa_change_profile() need to have rules permitting changing -to the named profile. See apparmor.d(8) for details. +in a pointer to the I to transition to. Confined programs wanting to +use aa_change_profile() need to have rules permitting changing to the named +profile. See apparmor.d(8) for details. If a program wants to return out of the current profile to the -original profile, it should use aa_change_hat(2) instead. +original profile, it may use aa_change_hat(2). Otherwise, the two profiles must +have rules permitting changing between the two profiles. Open file descriptors are not remediated after a call to aa_change_profile() so the calling program must close(2) open file descriptors to ensure they