⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isdn.h

📁 linux得一些常用命令,以及linux环境下的c编程
💻 H
📖 第 1 页 / 共 3 页
字号:
/* $Id: isdn.h,v 1.1.4.1 2001/11/20 14:19:38 kai Exp $ * * Main header for the Linux ISDN subsystem (linklevel). * * Copyright 1994,95,96 by Fritz Elfert (fritz@isdn4linux.de) * Copyright 1995,96    by Thinking Objects Software GmbH Wuerzburg * Copyright 1995,96    by Michael Hipp (Michael.Hipp@student.uni-tuebingen.de) *  * This software may be used and distributed according to the terms * of the GNU General Public License, incorporated herein by reference. * */#ifndef __ISDN_H__#define __ISDN_H__#include <linux/ioctl.h>#ifdef CONFIG_COBALT_MICRO_SERVER/* Save memory */#define ISDN_MAX_DRIVERS    2#define ISDN_MAX_CHANNELS   8#else#define ISDN_MAX_DRIVERS    32#define ISDN_MAX_CHANNELS   64#endif/* New ioctl-codes */#define IIOCNETAIF  _IO('I',1)#define IIOCNETDIF  _IO('I',2)#define IIOCNETSCF  _IO('I',3)#define IIOCNETGCF  _IO('I',4)#define IIOCNETANM  _IO('I',5)#define IIOCNETDNM  _IO('I',6)#define IIOCNETGNM  _IO('I',7)#define IIOCGETSET  _IO('I',8) /* no longer supported */#define IIOCSETSET  _IO('I',9) /* no longer supported */#define IIOCSETVER  _IO('I',10)#define IIOCNETHUP  _IO('I',11)#define IIOCSETGST  _IO('I',12)#define IIOCSETBRJ  _IO('I',13)#define IIOCSIGPRF  _IO('I',14)#define IIOCGETPRF  _IO('I',15)#define IIOCSETPRF  _IO('I',16)#define IIOCGETMAP  _IO('I',17)#define IIOCSETMAP  _IO('I',18)#define IIOCNETASL  _IO('I',19)#define IIOCNETDIL  _IO('I',20)#define IIOCGETCPS  _IO('I',21)#define IIOCGETDVR  _IO('I',22)#define IIOCNETLCR  _IO('I',23) /* dwabc ioctl for LCR from isdnlog */#define IIOCNETDWRSET  _IO('I',24) /* dwabc ioctl to reset abc-values to default on a net-interface */#define IIOCNETALN  _IO('I',32)#define IIOCNETDLN  _IO('I',33)#define IIOCNETGPN  _IO('I',34)#define IIOCDBGVAR  _IO('I',127)#define IIOCDRVCTL  _IO('I',128)/* cisco hdlck device private ioctls */#define SIOCGKEEPPERIOD	(SIOCDEVPRIVATE + 0)#define SIOCSKEEPPERIOD	(SIOCDEVPRIVATE + 1)#define SIOCGDEBSERINT	(SIOCDEVPRIVATE + 2)#define SIOCSDEBSERINT	(SIOCDEVPRIVATE + 3)/* Packet encapsulations for net-interfaces */#define ISDN_NET_ENCAP_ETHER      0#define ISDN_NET_ENCAP_RAWIP      1#define ISDN_NET_ENCAP_IPTYP      2#define ISDN_NET_ENCAP_CISCOHDLC  3 /* Without SLARP and keepalive */#define ISDN_NET_ENCAP_SYNCPPP    4#define ISDN_NET_ENCAP_UIHDLC     5#define ISDN_NET_ENCAP_CISCOHDLCK 6 /* With SLARP and keepalive    */#define ISDN_NET_ENCAP_X25IFACE   7 /* Documentation/networking/x25-iface.txt*/#define ISDN_NET_ENCAP_MAX_ENCAP  ISDN_NET_ENCAP_X25IFACE/* Facility which currently uses an ISDN-channel */#define ISDN_USAGE_NONE       0#define ISDN_USAGE_RAW        1#define ISDN_USAGE_MODEM      2#define ISDN_USAGE_NET        3#define ISDN_USAGE_VOICE      4#define ISDN_USAGE_FAX        5#define ISDN_USAGE_MASK       7 /* Mask to get plain usage */#define ISDN_USAGE_DISABLED  32 /* This bit is set, if channel is disabled */#define ISDN_USAGE_EXCLUSIVE 64 /* This bit is set, if channel is exclusive */#define ISDN_USAGE_OUTGOING 128 /* This bit is set, if channel is outgoing  */#define ISDN_MODEM_NUMREG    24        /* Number of Modem-Registers        */#define ISDN_LMSNLEN         255 /* Length of tty's Listen-MSN string */#define ISDN_CMSGLEN	     50	 /* Length of CONNECT-Message to add for Modem */#define ISDN_MSNLEN          32#define NET_DV 0x06  /* Data version for isdn_net_ioctl_cfg   */#define TTY_DV 0x06  /* Data version for iprofd etc.          */#define INF_DV 0x01  /* Data version for /dev/isdninfo        */typedef struct {  char drvid[25];  unsigned long arg;} isdn_ioctl_struct;typedef struct {  char name[10];  char phone[ISDN_MSNLEN];  int  outgoing;} isdn_net_ioctl_phone;typedef struct {  char name[10];     /* Name of interface                     */  char master[10];   /* Name of Master for Bundling           */  char slave[10];    /* Name of Slave for Bundling            */  char eaz[256];     /* EAZ/MSN                               */  char drvid[25];    /* DriverId for Bindings                 */  int  onhtime;      /* Hangup-Timeout                        */  int  charge;       /* Charge-Units                          */  int  l2_proto;     /* Layer-2 protocol                      */  int  l3_proto;     /* Layer-3 protocol                      */  int  p_encap;      /* Encapsulation                         */  int  exclusive;    /* Channel, if bound exclusive           */  int  dialmax;      /* Dial Retry-Counter                    */  int  slavedelay;   /* Delay until slave starts up           */  int  cbdelay;      /* Delay before Callback                 */  int  chargehup;    /* Flag: Charge-Hangup                   */  int  ihup;         /* Flag: Hangup-Timeout on incoming line */  int  secure;       /* Flag: Secure                          */  int  callback;     /* Flag: Callback                        */  int  cbhup;        /* Flag: Reject Call before Callback     */  int  pppbind;      /* ippp device for bindings              */  int  chargeint;    /* Use fixed charge interval length      */  int  triggercps;   /* BogoCPS needed for triggering slave   */  int  dialtimeout;  /* Dial-Timeout                          */  int  dialwait;     /* Time to wait after failed dial        */  int  dialmode;     /* Flag: off / on / auto                 */} isdn_net_ioctl_cfg;#define ISDN_NET_DIALMODE_MASK  0xC0    /* bits for status                */#define ISDN_NET_DM_OFF	        0x00    /* this interface is stopped      */#define ISDN_NET_DM_MANUAL	0x40    /* this interface is on (manual)  */#define ISDN_NET_DM_AUTO	0x80    /* this interface is autodial     */#define ISDN_NET_DIALMODE(x) ((&(x))->flags & ISDN_NET_DIALMODE_MASK)#ifdef __KERNEL__#include <linux/config.h>#include <linux/errno.h>#include <linux/fs.h>#include <linux/major.h>#include <asm/segment.h>#include <asm/io.h>#include <linux/kernel.h>#include <linux/signal.h>#include <linux/slab.h>#include <linux/timer.h>#include <linux/wait.h>#include <linux/tty.h>#include <linux/tty_flip.h>#include <linux/serial_reg.h>#include <linux/fcntl.h>#include <linux/types.h>#include <linux/interrupt.h>#include <linux/ip.h>#include <linux/in.h>#include <linux/netdevice.h>#include <linux/etherdevice.h>#include <linux/skbuff.h>#include <linux/tcp.h>#define ISDN_TTY_MAJOR    43#define ISDN_TTYAUX_MAJOR 44#define ISDN_MAJOR        45/* The minor-devicenumbers for Channel 0 and 1 are used as arguments for * physical Channel-Mapping, so they MUST NOT be changed without changing * the correspondent code in isdn.c */#define ISDN_MINOR_B        0#define ISDN_MINOR_BMAX     (ISDN_MAX_CHANNELS-1)#define ISDN_MINOR_CTRL     64#define ISDN_MINOR_CTRLMAX  (64 + (ISDN_MAX_CHANNELS-1))#define ISDN_MINOR_PPP      128#define ISDN_MINOR_PPPMAX   (128 + (ISDN_MAX_CHANNELS-1))#define ISDN_MINOR_STATUS   255#ifdef CONFIG_ISDN_PPP#ifdef CONFIG_ISDN_PPP_VJ#  include <net/slhc_vj.h>#endif#include <linux/ppp_defs.h>#include <linux/if_ppp.h>#include <linux/if_pppvar.h>#include <linux/isdn_ppp.h>#endif#ifdef CONFIG_ISDN_X25#  include <linux/concap.h>#endif#ifdef CONFIG_DEVFS_FS#  include <linux/devfs_fs_kernel.h>#endif#include <linux/isdnif.h>#define ISDN_DRVIOCTL_MASK       0x7f  /* Mask for Device-ioctl *//* Until now unused */#define ISDN_SERVICE_VOICE 1#define ISDN_SERVICE_AB    1<<1 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -