On 12/09/2011 08:07 AM, Stefan Berger wrote: > This patch adds documentation about the new 'ways' that users can > access the contents of variables in filters: > > - access via index: $TEST[2] > - access via iterators $TEST[@1] > > --- > docs/formatnwfilter.html.in | 32 +++++++++++++++++++++++++++++++- > 1 file changed, 31 insertions(+), 1 deletion(-) > > Index: libvirt-iterator/docs/formatnwfilter.html.in > =================================================================== > --- libvirt-iterator.orig/docs/formatnwfilter.html.in > +++ libvirt-iterator/docs/formatnwfilter.html.in > @@ -308,7 +308,37 @@ > </rule> > ... > </pre> > - > + <p> > + <span class="since">Since 0.9.9</span> it is possible to access We missed the release; s/0.9.9/0.9.10/ > + individual elements of a variable holding a list of elements. > + A filtering rule like the following accesses the 2nd element > + of the variable DSTPORTS. > + </p> > +<pre> > + ... > + <rule action='accept' direction='in' priority='500'> > + <udp dstportstart='$DSTPORTS[1]'/> > + </rule> > + ... > +</pre> > + <p> > + <span class="since">Since 0.9.9</span> it is possible to create Likewise. > + filtering rules that instantiate all combinations of rules from > + different lists using the notation of > + <code>$VARIABLE[@<iterator ID>]</code>. > + The following rule allows a virtual machine to > + receive traffic on a set of ports, which are specified in DSTPORTS, > + from the set of source IP address specified in SRCIPADDRESSES. > + The rule generates all combinations of elements of the variable > + DSTPORT with those of SRCIPADDRESSES. I would also mention: $VARIABLE is short-hand for $VARIABLE[@0]. When combining variables, each variable that uses the same iterator ID will be directly combined; it is the use of different iterator IDs that causes all combinations to be generated. And maybe even mention an example: If variable A is the list [1, 2], and variable B is the list [3, 4], then combining $A[@0] and $B[@0] produces the list [1/3, 2/4], while combining $A[@0] and $B[@1] produces the list [1/3, 1/4, 2/3, 2/4]. Overall, I like what is in this series, but I think I had enough minor findings that it would be worth posting a v2 before pushing anything. -- Eric Blake eblake@xxxxxxxxxx +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list