On Tue, Aug 01, 2017 at 01:25:31PM -0400, Mehmet Kayaalp wrote: > >> +unsigned long iint_flags(struct integrity_iint_cache *iint, > >> + struct ns_status *status) > >> +{ > >> + if (!status) > >> + return iint->flags; > >> + > >> + return iint->flags & (status->flags & IMA_NS_STATUS_FLAGS); > > > > Just to confirm, is there any situation where: > > > > iint->flags & IMA_NS_STATUS_FLAGS != status->flags & IMA_NS_STATUS_FLAGS > > > > ? i.e. can this line just be: > > > > return status->flags & IMA_NS_STATUS_FLAGS; > > > > As Guilherme had pointed out, the first & should be |. Sorry, that mail got filtered somehow, thanks. Per your discussion, I guess the most defensive way is: iint->flags & ~IMA_NS_STATUS_FLAGS | status->flags & IMA_NS_STATUS_FLAGS in case something comes along and sets IMA_AUDITED on the root iint, we don't want it to propagate to this ns' status unnecessarily. Anyway, thanks! Tycho _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/containers