X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fdevice.h;h=c85671b321f821180587f768f45970d8c0c7202b;hb=5822f817aa802c2c5a83e9d99a8ae78cb822799b;hp=85112ffc02c14900491da039177b06896b4406a4;hpb=41583d5dcfc1277b1a203478de4cce2cd0cda1b1;p=tinc diff --git a/src/device.h b/src/device.h index 85112ffc..c85671b3 100644 --- a/src/device.h +++ b/src/device.h @@ -1,3 +1,6 @@ +#ifndef TINC_DEVICE_H +#define TINC_DEVICE_H + /* device.h -- generic header for device.c Copyright (C) 2001-2005 Ivo Timmermans @@ -18,33 +21,28 @@ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#ifndef __TINC_DEVICE_H__ -#define __TINC_DEVICE_H__ - #include "net.h" extern int device_fd; extern char *device; extern char *iface; -extern uint64_t device_in_packets; -extern uint64_t device_in_bytes; -extern uint64_t device_out_packets; -extern uint64_t device_out_bytes; - typedef struct devops_t { bool (*setup)(void); void (*close)(void); bool (*read)(struct vpn_packet_t *); bool (*write)(struct vpn_packet_t *); + void (*enable)(void); /* optional */ + void (*disable)(void); /* optional */ } devops_t; extern const devops_t os_devops; extern const devops_t dummy_devops; extern const devops_t raw_socket_devops; extern const devops_t multicast_devops; +extern const devops_t fd_devops; extern const devops_t uml_devops; extern const devops_t vde_devops; extern devops_t devops; -#endif /* __TINC_DEVICE_H__ */ +#endif