Eric Blake <eblake@redhat.com> wrote on 09/28/2010
03:19:42 PM:
>
> On 09/27/2010 02:26 PM, Stefan Berger wrote:
> >>> The patch below extends the XML parser and generator
so that every
> > protocol
> >>> now can have a comment node. Comments are limited to
256 characters
> > and are
> >>> tested to only contain printable characters or spaces.
> >>
> >> Literal spaces, or generic blanks (space and tab for sure,
but what
> >> about newline, not to mention vertical tab, form feed, ...),
all of
> >> which are technically printable according to c_isprint()?
> >
> > I have been doing some testing using 'virsh nwfilter-edit'. I
edited a
> > comment and put horizontal tabs into it or newlines or a combination
of
> > both. Both of these seem to automatically be converted to space,
meaning
> > that when the XML is generated after the parsing, the tab or
newline now
> > are shown as simple space. I also wrote the XML into a file using
'virsh
> > nwfilter-dumpxml', added a newline in the comment, ran unix2dos
on it to
> > get '\r' and used 'virsh nwfilter-define' on it again, and the
'\r'
> > disappeared. From that I took that the XML parser does the correct
> > replacement already and I don't need to worry about it --
assuming it
> > would do the same for vertical tab as well.
>
> Tab seems like it would be most likely for people to want, but I'm
okay
> with leaving it unsupported for now until someone complains (and even
> then, it depends on whether XML parsing can even preserve tabs).
>
> Patch 1 #defines MAX_COMMENT_LENGTH 256 in nwfilter_conf.c, patch
2
> #defines IPTABLES_MAX_COMMENT_SIZE 256 MAX_COMMENT_LENGTH 256
in
> nwfilter_ebiptables_driver.h. Should these two values be consolidated
> into a single name in a common .h file in patch 1?
I chose two independent constants to reflect that
the parser and the (iptables) driver should be somewhat loosely coupled.
The iptables driver could cut the size of the comment down to what it can
handle, though in this case the sizes match.
Stefan