xref: /kvmtool/include/kvm/virtio-net.h (revision 1dfc7c243d6a16913a70f252480a249e8d033498)
14f56d42cSAsias He #ifndef KVM__VIRTIO_NET_H
24f56d42cSAsias He #define KVM__VIRTIO_NET_H
34f56d42cSAsias He 
45f225124SSasha Levin #include "kvm/parse-options.h"
55f225124SSasha Levin 
64f56d42cSAsias He struct kvm;
7bdfcfca6SSasha Levin 
89a6d73f1SSasha Levin struct virtio_net_params {
9bb8ffd2fSAsias He 	const char *guest_ip;
10bdfcfca6SSasha Levin 	const char *host_ip;
1173b7d038SAmos Kong 	const char *script;
1269205aa1SAsias He 	const char *trans;
13*1dfc7c24SMarc Zyngier 	const char *tapif;
14bb8ffd2fSAsias He 	char guest_mac[6];
15d7098b9bSAsias He 	char host_mac[6];
16bb8ffd2fSAsias He 	struct kvm *kvm;
17bb1a32f1SAsias He 	int mode;
189ed67cdcSSasha Levin 	int vhost;
19f19edd1eSSasha Levin 	int fd;
2079052597SSasha Levin 	int mq;
21bdfcfca6SSasha Levin };
22bdfcfca6SSasha Levin 
235f225124SSasha Levin int virtio_net__init(struct kvm *kvm);
245f225124SSasha Levin int virtio_net__exit(struct kvm *kvm);
255f225124SSasha Levin int netdev_parser(const struct option *opt, const char *arg, int unset);
264f56d42cSAsias He 
27ee883485SAsias He enum {
28ee883485SAsias He 	NET_MODE_USER,
29ee883485SAsias He 	NET_MODE_TAP
30ee883485SAsias He };
31bb1a32f1SAsias He 
324f56d42cSAsias He #endif /* KVM__VIRTIO_NET_H */
33