153c9f6c0SAtsushi Murai /* $NetBSD: if_tun.h,v 1.5 1994/06/29 06:36:27 cgd Exp $ */ 253c9f6c0SAtsushi Murai 3c398230bSWarner Losh /*- 4b74038e1SAtsushi Murai * Copyright (c) 1988, Julian Onions <jpo@cs.nott.ac.uk> 5b74038e1SAtsushi Murai * Nottingham University 1987. 6b74038e1SAtsushi Murai * 7b74038e1SAtsushi Murai * This source may be freely distributed, however I would be interested 8b74038e1SAtsushi Murai * in any changes that are made. 9b74038e1SAtsushi Murai * 10b74038e1SAtsushi Murai * This driver takes packets off the IP i/f and hands them up to a 11dc733423SDag-Erling Smørgrav * user process to have its wicked way with. This driver has it's 12b74038e1SAtsushi Murai * roots in a similar driver written by Phil Cockcroft (formerly) at 13b74038e1SAtsushi Murai * UCL. This driver is based much more on read/write/select mode of 14b74038e1SAtsushi Murai * operation though. 15b74038e1SAtsushi Murai */ 16b74038e1SAtsushi Murai 17b74038e1SAtsushi Murai #ifndef _NET_IF_TUN_H_ 18b74038e1SAtsushi Murai #define _NET_IF_TUN_H_ 19b74038e1SAtsushi Murai 2052ae741fSBrian Somers /* Refer to if_tunvar.h for the softc stuff */ 21b74038e1SAtsushi Murai 221d389e50SJulian Elischer /* Maximum transmit packet size (default) */ 23c812f23aSBill Fenner #define TUNMTU 1500 24b74038e1SAtsushi Murai 251d389e50SJulian Elischer /* Maximum receive packet size (hard limit) */ 26b5994a5cSMichael Tuexen #define TUNMRU 65535 271d389e50SJulian Elischer 2853c9f6c0SAtsushi Murai struct tuninfo { 2953c9f6c0SAtsushi Murai int baudrate; /* linespeed */ 30b5994a5cSMichael Tuexen unsigned short mtu; /* maximum transmission unit */ 3153c9f6c0SAtsushi Murai u_char type; /* ethernet, tokenring, etc. */ 3253c9f6c0SAtsushi Murai u_char dummy; /* place holder */ 3353c9f6c0SAtsushi Murai }; 3453c9f6c0SAtsushi Murai 35b74038e1SAtsushi Murai /* ioctl's for get/set debug */ 36b74038e1SAtsushi Murai #define TUNSDEBUG _IOW('t', 90, int) 37b74038e1SAtsushi Murai #define TUNGDEBUG _IOR('t', 89, int) 38b74038e1SAtsushi Murai #define TUNSIFINFO _IOW('t', 91, struct tuninfo) 39b74038e1SAtsushi Murai #define TUNGIFINFO _IOR('t', 92, struct tuninfo) 40b56fecc8SDag-Erling Smørgrav #define TUNSLMODE _IOW('t', 93, int) 41*0dbac71fSKyle Evans #define TUNGIFNAME _IOR('t', 93, struct ifreq) 42b56fecc8SDag-Erling Smørgrav #define TUNSIFMODE _IOW('t', 94, int) 43bbdecb95SBrian Somers #define TUNSIFPID _IO('t', 95) 4443e8def2SBrian Somers #define TUNSIFHEAD _IOW('t', 96, int) 4543e8def2SBrian Somers #define TUNGIFHEAD _IOR('t', 97, int) 46b74038e1SAtsushi Murai 47b74038e1SAtsushi Murai #endif /* !_NET_IF_TUN_H_ */ 48