We either need to use separate algorithms for checking user preferences and enrollment or else we need the current combined algorithm to return an enum instead of a boolean.
The issue with the current determine whether shared storage is allowed by enrollment and user preference algorithm is that when it returns false, this is simply interpreted elsewhere in the spec as the user preferences check having failed, when it could have actually been the enrollment/attestation check. E.g. in the penultimate step of check if addModule is allowed and update state.
We either need to use separate algorithms for checking user preferences and enrollment or else we need the current combined algorithm to return an enum instead of a boolean.
The issue with the current
determine whether shared storage is allowed by enrollment and user preference
algorithm is that when it returns false, this is simply interpreted elsewhere in the spec as the user preferences check having failed, when it could have actually been the enrollment/attestation check. E.g. in the penultimate step ofcheck if addModule is allowed and update state
.