]>
git.proxmox.com Git - qemu.git/blob - fsdev/virtio-9p-marshal.h
1 #ifndef _QEMU_VIRTIO_9P_MARSHAL_H
2 #define _QEMU_VIRTIO_9P_MARSHAL_H
4 typedef struct V9fsString
10 typedef struct V9fsQID
17 typedef struct V9fsStat
38 typedef struct V9fsIattr
51 typedef struct V9fsStatDotl
{
52 uint64_t st_result_mask
;
62 uint64_t st_atime_sec
;
63 uint64_t st_atime_nsec
;
64 uint64_t st_mtime_sec
;
65 uint64_t st_mtime_nsec
;
66 uint64_t st_ctime_sec
;
67 uint64_t st_ctime_nsec
;
68 uint64_t st_btime_sec
;
69 uint64_t st_btime_nsec
;
71 uint64_t st_data_version
;
74 extern void v9fs_string_init(V9fsString
*str
);
75 extern void v9fs_string_free(V9fsString
*str
);
76 extern void v9fs_string_null(V9fsString
*str
);
77 extern void v9fs_string_sprintf(V9fsString
*str
, const char *fmt
, ...);
78 extern void v9fs_string_copy(V9fsString
*lhs
, V9fsString
*rhs
);
80 size_t v9fs_pack(struct iovec
*in_sg
, int in_num
, size_t offset
,
81 const void *src
, size_t size
);
82 size_t v9fs_unmarshal(struct iovec
*out_sg
, int out_num
, size_t offset
,
83 int bswap
, const char *fmt
, ...);
84 size_t v9fs_marshal(struct iovec
*in_sg
, int in_num
, size_t offset
,
85 int bswap
, const char *fmt
, ...);