On 9-1-2017 11:48, Johannes Berg wrote: > On Thu, 2017-01-05 at 20:59 +0100, Arend Van Spriel wrote: >> >> From what Dmitry listed I guess there's really only one. > > Ok. I guess I need to go back to that then. > >> Early on in the thread Luca gave some other examples of scan >> extensions so may need to consider notification/dump methods that are >> extensible. It seems awkward to have a single "initiate" command and >> a couple of "notification/retrieval" commands. It may not be so bad >> as long as it is clear which retrieval command goes with a >> notification. > > Well, we might not even need different commands. We need different > storage internally, but if you request the results for a given scan ID > then you might get a totally different result format? Though that > wouldn't lend itself well to query "everything you have" which is also > useful. But even then, it could be done by passing the appropriate > "report type" attribute to the dump command - we need that anyway for > trigger. True. With "report type" attribute you do not mean the actual report_type thing, right. Hopefully you mean the parameter attribute that implicitly relates to a "report type". The risk here is that it requires careful description of what user-space needs to look for if it gets a notification. I think having separate notification/retrieval commands lowers the risk of misinterpretation. > I think with that discussion we're getting ahead of ourselves though - > do we really know that we just need the two result types > > * full, and > * partial (for history scan) > > and have we even defined the attributes we want in the partial one? Not sure if we're getting ahead of ourselves. Yes, we have to determine attributes for each scan "report type", but it is not a prerequisite for the other topic. I guess to answer the question about the partial results attributes we need to know what the possible higher-level use-cases are. Other source of information would be to look what is done for g-scan in Android "M" or "N", but not sure if that is best approach as we may not consider all use-cases. Regards, Arend