aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tun.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tun.h')
-rw-r--r--lib/tun.h61
1 files changed, 29 insertions, 32 deletions
diff --git a/lib/tun.h b/lib/tun.h
index 7972c53..ce7b91c 100644
--- a/lib/tun.h
+++ b/lib/tun.h
@@ -12,44 +12,42 @@
#ifndef _TUN_H
#define _TUN_H
-#define PACKET_MAX 8196 /* Maximum packet size we receive */
+#define PACKET_MAX 8196 /* Maximum packet size we receive */
#define TUN_SCRIPTSIZE 256
#define TUN_ADDRSIZE 128
#define TUN_NLBUFSIZE 1024
struct tun_packet_t {
- unsigned int ver:4;
- unsigned int ihl:4;
- unsigned int dscp:6;
- unsigned int ecn:2;
- unsigned int length:16;
- unsigned int id:16;
- unsigned int flags:3;
- unsigned int fragment:13;
- unsigned int ttl:8;
- unsigned int protocol:8;
- unsigned int check:16;
- unsigned int src:32;
- unsigned int dst:32;
+ unsigned int ver:4;
+ unsigned int ihl:4;
+ unsigned int dscp:6;
+ unsigned int ecn:2;
+ unsigned int length:16;
+ unsigned int id:16;
+ unsigned int flags:3;
+ unsigned int fragment:13;
+ unsigned int ttl:8;
+ unsigned int protocol:8;
+ unsigned int check:16;
+ unsigned int src:32;
+ unsigned int dst:32;
};
-
/* ***********************************************************
* Information storage for each tun instance
*************************************************************/
struct tun_t {
- int fd; /* File descriptor to tun interface */
- struct in_addr addr;
- struct in_addr dstaddr;
- struct in_addr netmask;
- int addrs; /* Number of allocated IP addresses */
- int routes; /* One if we allocated an automatic route */
- char devname[IFNAMSIZ];/* Name of the tun device */
- int (*cb_ind) (struct tun_t *tun, void *pack, unsigned len);
+ int fd; /* File descriptor to tun interface */
+ struct in_addr addr;
+ struct in_addr dstaddr;
+ struct in_addr netmask;
+ int addrs; /* Number of allocated IP addresses */
+ int routes; /* One if we allocated an automatic route */
+ char devname[IFNAMSIZ]; /* Name of the tun device */
+ int (*cb_ind) (struct tun_t * tun, void *pack, unsigned len);
};
-
extern int tun_new(struct tun_t **tun);
extern int tun_free(struct tun_t *tun);
extern int tun_decaps(struct tun_t *this);
@@ -58,17 +56,16 @@ extern int tun_encaps(struct tun_t *tun, void *pack, unsigned len);
extern int tun_addaddr(struct tun_t *this, struct in_addr *addr,
struct in_addr *dstaddr, struct in_addr *netmask);
-
-extern int tun_setaddr(struct tun_t *this, struct in_addr *our_adr,
+extern int tun_setaddr(struct tun_t *this, struct in_addr *our_adr,
struct in_addr *his_adr, struct in_addr *net_mask);
-int tun_addroute(struct tun_t *this, struct in_addr *dst,
+int tun_addroute(struct tun_t *this, struct in_addr *dst,
struct in_addr *gateway, struct in_addr *mask);
-extern int tun_set_cb_ind(struct tun_t *this,
- int (*cb_ind) (struct tun_t *tun, void *pack, unsigned len));
-
+extern int tun_set_cb_ind(struct tun_t *this,
+ int (*cb_ind) (struct tun_t * tun, void *pack,
+ unsigned len));
-extern int tun_runscript(struct tun_t *tun, char* script);
+extern int tun_runscript(struct tun_t *tun, char *script);
-#endif /* !_TUN_H */
+#endif /* !_TUN_H */