mirror of
https://github.com/libvirt/libvirt.git
synced 2026-10-02 12:20:06 -05:00
Our virNetMessageHeader is a struct that's declared as follows:
struct virNetMessageHeader {
unsigned prog;
unsigned vers;
int proc;
virNetMessageType type;
unsigned serial;
virNetMessageStatus status;
};
Now, per RFC 4506 enums are also encoded as signed integers. This
means, that only 'prog', 'vers' and 'serial' are really unsigned
integers. The others ('proc', 'type' and 'status') are encoded as
signed integers. Fix their type when dissecting.
While at it, also follow latest trend in wireshark and switch
from guint32 to uint32_t.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
=====
About
=====
This is the project of Google Summer of Code 2013 accepted by QEMU.org and
libvirt community. The goal of this project is, provide Wireshark dissector for
Libvirt RPC protocol. It will provide Libvirt packet overview/detail analysing
in Wireshark. Furthermore, it will be able to build(generated) from RPC protocol
definition placed in Libvirt source tree to support latest protocol
specification.
See also:
* https://www.google-melange.com/gsoc/project/google/gsoc2013/kawamuray/7001
* https://wiki.qemu.org/Features/LibvirtWiresharkDissector
Installation
=============
Run ``./configure`` with ``--with-wireshark-dissector`` option enabled.
Then dissector will compiled with libvirt itself.
Add/Remove protocol from dissector's support
--------------------------------------------
Modify argument ``input`` in ``tools/wireshark/src/libvirt/meson.build``.
Changing installation directory
-------------------------------
You can change installation directory of pluggable shared
object(``libvirt.so``) by specifying ``--with-ws-plugindir=<path>``.
You can install ``libvirt.so`` into your local wireshark plugin directory:
::
$ ./configure --with-wireshark-dissector \
--with-ws-plugindir=$HOME/.wireshark/plugins