Home | History | Annotate | Download | only in linux
      1 /*
      2  *  Universal TUN/TAP device driver.
      3  *  Copyright (C) 1999-2000 Maxim Krasnyansky <max_mk (at) yahoo.com>
      4  *
      5  *  This program is free software; you can redistribute it and/or modify
      6  *  it under the terms of the GNU General Public License as published by
      7  *  the Free Software Foundation; either version 2 of the License, or
      8  *  (at your option) any later version.
      9  *
     10  *  This program is distributed in the hope that it will be useful,
     11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
     12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
     13  *  GNU General Public License for more details.
     14  *
     15  *  $Id: if_tun.h,v 1.2 2001/06/01 18:39:47 davem Exp $
     16  */
     17 
     18 #ifndef __IF_TUN_H
     19 #define __IF_TUN_H
     20 
     21 /* Uncomment to enable debugging */
     22 /* #define TUN_DEBUG 1 */
     23 
     24 
     25 /* Read queue size */
     26 #define TUN_READQ_SIZE	500
     27 
     28 /* TUN device flags */
     29 #define TUN_TUN_DEV 	0x0001
     30 #define TUN_TAP_DEV	0x0002
     31 #define TUN_TYPE_MASK   0x000f
     32 
     33 #define TUN_FASYNC	0x0010
     34 #define TUN_NOCHECKSUM	0x0020
     35 #define TUN_NO_PI	0x0040
     36 #define TUN_ONE_QUEUE	0x0080
     37 #define TUN_PERSIST 	0x0100
     38 
     39 /* Ioctl defines */
     40 #define TUNSETNOCSUM  _IOW('T', 200, int)
     41 #define TUNSETDEBUG   _IOW('T', 201, int)
     42 #define TUNSETIFF     _IOW('T', 202, int)
     43 #define TUNSETPERSIST _IOW('T', 203, int)
     44 #define TUNSETOWNER   _IOW('T', 204, int)
     45 #define TUNSETLINK    _IOW('T', 205, int)
     46 #define TUNSETGROUP   _IOW('T', 206, int)
     47 
     48 /* TUNSETIFF ifr flags */
     49 #define IFF_TUN		0x0001
     50 #define IFF_TAP		0x0002
     51 #define IFF_NO_PI	0x1000
     52 #define IFF_ONE_QUEUE	0x2000
     53 
     54 struct tun_pi {
     55 	unsigned short flags;
     56 	unsigned short proto;
     57 };
     58 #define TUN_PKT_STRIP	0x0001
     59 
     60 #endif /* __IF_TUN_H */
     61