[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 1/3] xsm/xen_version: Add XSM for the xen_version hypercall.
>>> On 06.01.16 at 18:41, <konrad.wilk@xxxxxxxxxx> wrote: > On Tue, Nov 10, 2015 at 05:29:35AM -0700, Jan Beulich wrote: >> >>> On 06.11.15 at 20:36, <konrad.wilk@xxxxxxxxxx> wrote: >> > All of XENVER_* have now an XSM check. >> > >> > The subops for XENVER_[compile_info|changeset|commandline| >> > extraversion] are now priviliged operations. To not break >> > guests we still return an string - but it is just '<denied>'. >> >> And I continue to question at least the extraversion part. > > How about I remove the extraversion part from this patch and we can > discuss putting 'extraversion' in the blacklist around another patch. Yes, that'd be a step towards me agreeing with the change. I'm not necessarily saying that's going to be enough, since I said "at least", i.e. I continue to wonder how relevant it really is to hide changeset and compile info (fwiw I agree with hiding the command line). >> > The rest: XENVER_[version|capabilities| >> > parameters|get_features|page_size|guest_handle] behave >> > as before - allowed by default for all guests. >> > >> > This is with the XSM default policy and with the dummy ones. >> >> And with a non-default policy you now ignore one of the latter >> ops to also get denied. > > No, but that is due to the 'deny' being only checked for certain subops. To me this reply seems contradictory in itself: The "no" doesn't seem to match up with the rest. > I think what you are saying is that for XENVER_[version|capabilities| > parameters|get_features|page_size|guest_handle] we should not have any > XSM checks as they serve no purpose (which is what I had in the earlier > versions of this patch). However Andrew mentioned that he would > like _ALL_ of the sub-ops to be checked for. And I agree with Andrew, hence my earlier comment above (with the reply I can't really make sense of). >> > @@ -354,10 +356,17 @@ DO(xen_version)(int cmd, >> > XEN_GUEST_HANDLE_PARAM(void) arg) >> > return 0; >> > >> > case XENVER_commandline: >> > - if ( copy_to_guest(arg, saved_cmdline, ARRAY_SIZE(saved_cmdline)) >> > ) >> > + { >> > + size_t len = ARRAY_SIZE(saved_cmdline); >> > + >> > + if ( deny ) >> > + len = strlen(xen_deny()); >> >> +1 (or else you fail to nul-terminate the output). > > Nice spotting! > Perhaps modifying xen_deny() to be: > > const char *xen_deny(void) > { > return "<denied>\0"; > } > > Would be better? This would just add a second NUL at the end, without altering what strlen() returns on that string. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |