mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-01 23:03:54 -06:00
net/net.c: Add vnet_hdr support in SocketReadState
We add a flag to decide whether net_fill_rstate() need read the vnet_hdr_len or not. Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com> Suggested-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
parent
d6b732e953
commit
3cde5ea211
5 changed files with 46 additions and 13 deletions
|
@ -112,9 +112,13 @@ typedef struct NICState {
|
|||
} NICState;
|
||||
|
||||
struct SocketReadState {
|
||||
int state; /* 0 = getting length, 1 = getting data */
|
||||
/* 0 = getting length, 1 = getting vnet header length, 2 = getting data */
|
||||
int state;
|
||||
/* This flag decide whether to read the vnet_hdr_len field */
|
||||
bool vnet_hdr;
|
||||
uint32_t index;
|
||||
uint32_t packet_len;
|
||||
uint32_t vnet_hdr_len;
|
||||
uint8_t buf[NET_BUFSIZE];
|
||||
SocketReadStateFinalize *finalize;
|
||||
};
|
||||
|
@ -177,7 +181,8 @@ ssize_t qemu_deliver_packet_iov(NetClientState *sender,
|
|||
void print_net_client(Monitor *mon, NetClientState *nc);
|
||||
void hmp_info_network(Monitor *mon, const QDict *qdict);
|
||||
void net_socket_rs_init(SocketReadState *rs,
|
||||
SocketReadStateFinalize *finalize);
|
||||
SocketReadStateFinalize *finalize,
|
||||
bool vnet_hdr);
|
||||
|
||||
/* NIC info */
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue