1/*	$NetBSD: if_virt.h,v 1.2 2013/07/04 11:58:11 pooka Exp $	*/
2
3/*
4 * NOTE!  This file is supposed to work on !NetBSD platforms.
5 */
6
7#ifndef VIRTIF_BASE
8#error Define VIRTIF_BASE
9#endif
10
11#define VIF_STRING(x) #x
12#define VIF_STRINGIFY(x) VIF_STRING(x)
13#define VIF_CONCAT(x,y) x##y
14#define VIF_CONCAT3(x,y,z) x##y##z
15#define VIF_BASENAME(x,y) VIF_CONCAT(x,y)
16#define VIF_BASENAME3(x,y,z) VIF_CONCAT3(x,y,z)
17
18#define VIF_CLONER VIF_BASENAME(VIRTIF_BASE,_cloner)
19#define VIF_NAME VIF_STRINGIFY(VIRTIF_BASE)
20
21#define VIFHYPER_CREATE VIF_BASENAME3(rumpcomp_,VIRTIF_BASE,_create)
22#define VIFHYPER_DYING VIF_BASENAME3(rumpcomp_,VIRTIF_BASE,_dying)
23#define VIFHYPER_DESTROY VIF_BASENAME3(rumpcomp_,VIRTIF_BASE,_destroy)
24#define VIFHYPER_SEND VIF_BASENAME3(rumpcomp_,VIRTIF_BASE,_send)
25
26struct virtif_sc;
27void rump_virtif_pktdeliver(struct virtif_sc *, struct iovec *, size_t);
28