Changeset View
Changeset View
Standalone View
Standalone View
usr.sbin/bhyve/net_backends.h
Show All 31 Lines | |||||
#include <stdint.h> | #include <stdint.h> | ||||
/* Opaque type representing a network backend. */ | /* Opaque type representing a network backend. */ | ||||
typedef struct net_backend net_backend_t; | typedef struct net_backend net_backend_t; | ||||
/* Interface between network frontends and the network backends. */ | /* Interface between network frontends and the network backends. */ | ||||
typedef void (*net_be_rxeof_t)(int, enum ev_type, void *param); | typedef void (*net_be_rxeof_t)(int, enum ev_type, void *param); | ||||
int netbe_init(net_backend_t **be, nvlist_t *nvl, net_be_rxeof_t cb, | int netbe_init(net_backend_t **be, config_node_t *node, net_be_rxeof_t cb, | ||||
void *param); | void *param); | ||||
int netbe_legacy_config(nvlist_t *nvl, const char *opts); | int netbe_legacy_config(config_node_t *node, const char *opts); | ||||
void netbe_cleanup(net_backend_t *be); | void netbe_cleanup(net_backend_t *be); | ||||
uint64_t netbe_get_cap(net_backend_t *be); | uint64_t netbe_get_cap(net_backend_t *be); | ||||
int netbe_set_cap(net_backend_t *be, uint64_t cap, | int netbe_set_cap(net_backend_t *be, uint64_t cap, | ||||
unsigned vnet_hdr_len); | unsigned vnet_hdr_len); | ||||
size_t netbe_get_vnet_hdr_len(net_backend_t *be); | size_t netbe_get_vnet_hdr_len(net_backend_t *be); | ||||
ssize_t netbe_send(net_backend_t *be, const struct iovec *iov, int iovcnt); | ssize_t netbe_send(net_backend_t *be, const struct iovec *iov, int iovcnt); | ||||
ssize_t netbe_peek_recvlen(net_backend_t *be); | ssize_t netbe_peek_recvlen(net_backend_t *be); | ||||
ssize_t netbe_recv(net_backend_t *be, const struct iovec *iov, int iovcnt); | ssize_t netbe_recv(net_backend_t *be, const struct iovec *iov, int iovcnt); | ||||
▲ Show 20 Lines • Show All 46 Lines • Show Last 20 Lines |