On Tue, Mar 20, 2018 at 11:59 AM, Stephen Smalley <[email protected]> wrote:
> If security_get_bools/classes are called before the selinux state is
> initialized (i.e. before first policy load), then they should just
> return immediately with no booleans/classes.
>
> Signed-off-by: Stephen Smalley <[email protected]>
> ---
>  security/selinux/ss/services.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)

Merged.  Thanks for extracting this Stephen.

> diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c
> index 4785ca552d51..ccfa65f6bc17 100644
> --- a/security/selinux/ss/services.c
> +++ b/security/selinux/ss/services.c
> @@ -2811,6 +2811,13 @@ int security_get_bools(struct selinux_state *state,
>         struct policydb *policydb;
>         int i, rc;
>
> +       if (!state->initialized) {
> +               *len = 0;
> +               *names = NULL;
> +               *values = NULL;
> +               return 0;
> +       }
> +
>         read_lock(&state->ss->policy_rwlock);
>
>         policydb = &state->ss->policydb;
> @@ -3141,6 +3148,12 @@ int security_get_classes(struct selinux_state *state,
>         struct policydb *policydb = &state->ss->policydb;
>         int rc;
>
> +       if (!state->initialized) {
> +               *nclasses = 0;
> +               *classes = NULL;
> +               return 0;
> +       }
> +
>         read_lock(&state->ss->policy_rwlock);
>
>         rc = -ENOMEM;
> --
> 2.14.3
>

-- 
paul moore
www.paul-moore.com

Reply via email to