> -----Original Message----- > From: Eric Blake <ebl...@redhat.com> > Sent: Wednesday, January 20, 2021 3:33 AM > To: Zhang, Chen <chen.zh...@intel.com>; Jason Wang > <jasow...@redhat.com>; qemu-dev <qemu-devel@nongnu.org>; Dr. David > Alan Gilbert <dgilb...@redhat.com>; Markus Armbruster > <arm...@redhat.com> > Cc: Zhang Chen <zhangc...@gmail.com> > Subject: Re: [PATCH 1/3] qapi/net: Add new QMP command for COLO > passthrough > > On 12/23/20 7:09 PM, Zhang Chen wrote: > > From: Zhang Chen <chen.zh...@intel.com> > > > > Since the real user scenario does not need to monitor all traffic. > > Add colo-passthrough-add and colo-passthrough-del to maintain a COLO > > network passthrough list. > > > > Signed-off-by: Zhang Chen <chen.zh...@intel.com> > > > --- a/qapi/net.json > > +++ b/qapi/net.json > > @@ -714,3 +714,49 @@ > > ## > > { 'event': 'FAILOVER_NEGOTIATED', > > 'data': {'device-id': 'str'} } > > + > > +## > > +# @colo-passthrough-add: > > +# > > +# Add passthrough entry according to customer's needs in COLO-compare. > > +# > > +# @protocol: COLO passthrough just support TCP and UDP. > > +# > > +# @port: TCP or UDP port number. > > +# > > +# Returns: Nothing on success > > +# > > +# Since: 5.3 > > The next release is 6.0, not 5.3.
Missed the plan, I will fix it in next version. > > > +# > > +# Example: > > +# > > +# -> { "execute": "colo-passthrough-add", > > +# "arguments": { "protocol": "tcp", "port": 3389 } } > > +# <- { "return": {} } > > +# > > +## > > +{ 'command': 'colo-passthrough-add', > > + 'data': {'protocol': 'str', 'port': 'uint32'} } > > Should 'protocol' be an enum (finite set of values) rather than an open- > coded string (infinite number of values, even though you mentioned in the > docs above that only 'tcp' or 'udp' make sense)? In fact, do we already have > existing QAPI types representing tcp/udp and a port number that could be > reused here, rather than open-coding yet another one? > I checked current QAPI code, looks no existing enum defined. I will add the new general QAPI types in next version. Thanks Chen > > + > > +## > > +# @colo-passthrough-del: > > +# > > +# Delete passthrough entry according to customer's needs in COLO- > compare. > > +# > > +# @protocol: COLO passthrough just support TCP and UDP. > > +# > > +# @port: TCP or UDP port number. > > +# > > +# Returns: Nothing on success > > +# > > +# Since: 5.3 > > another 6.0 spot > OK. > > +# > > +# Example: > > +# > > +# -> { "execute": "colo-passthrough-del", > > +# "arguments": { "protocol": "tcp", "port": 3389 } } > > +# <- { "return": {} } > > +# > > +## > > +{ 'command': 'colo-passthrough-del', > > + 'data': {'protocol': 'str', 'port': 'uint32'} } > > > > -- > Eric Blake, Principal Software Engineer > Red Hat, Inc. +1-919-301-3226 > Virtualization: qemu.org | libvirt.org