Wireshark-bugs: [Wireshark-bugs] [Bug 7310] Initial support for the GlusterFS RPC-protocol
Date: Sun, 07 Apr 2013 15:49:39 +0000

Comment # 20 on bug 7310 from
Created attachment 10566 [details]
GlusterFS MKDIR Call+Reply

These two frames contain an MKDIR call and reply. The call contains the
gfid-req attribute in the dict-structure. The value is passed from the
glusterfs-client to a glusterfs-server in binary format (no endian conversion
is done).

In the Call:
The glusterfs-client calculates the value for the GFID, and requests the
glusterfs-server to set this value on the backend (brick).

In the Reply:
The glusterfs-server returns an IATT structure (along with the pre- and
post-parent IATT, ignore these). The GFID in the IATT structure is converted
into big-endian (following the XDR standard).

Summary:
The gfid-req attribute in a dict is converted at all, and is dependent on the
architecture of the glusterfs-client. If servers and clients mix endianness,
weird things will likely happen.

The most common architecture for GlusterFS is x86 (32 and 64 bit), which uses
Little Endian. This is the reason I have decided that the gfid-req attribute in
a dict is dissected as Little Endian. When Gluster supports a mixed endian
environment, the gfid-req attribute in the dict will need to be dissected as
Big Endian.


You are receiving this mail because:
  • You are watching all bug changes.