111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _ROUTER_H 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _ROUTER_H 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ROUTER_NAME "wanrouter" 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ROUTER_VERSION 1 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ROUTER_RELEASE 1 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ROUTER_IOCTL 'W' 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define ROUTER_MAGIC 0x524D4157L 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertenum router_ioctls 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_SETUP = ROUTER_IOCTL<<8, 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_DOWN, 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_STAT, 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_IFNEW, 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_IFDEL, 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_IFSTAT, 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_USER = (ROUTER_IOCTL<<8)+16, 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ROUTER_USER_MAX = (ROUTER_IOCTL<<8)+31 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PROC_DATA_PORT_0 0x8000 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PROC_DATA_PORT_1 0x8001 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_IP 0xCC 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_SNAP 0x80 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_CLNP 0x81 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_ESIS 0x82 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_ISIS 0x83 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define NLPID_Q933 0x08 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_IFNAME_SZ 15 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_DRVNAME_SZ 15 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_ADDRESS_SZ 31 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define USED_BY_FIELD 8 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_PTPIPE_TYPE 0x01 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_FPIPE_TYPE 0x02 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_CPIPE_TYPE 0x03 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_DRVSTATS_TYPE 0x04 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_INVALID_TYPE 0x05 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CMD_OK 0 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CMD_TIMEOUT 0xFF 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_PKT_FRM_STACK 0x00 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UDP_PKT_FRM_NETWORK 0x01 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define MAX_INTR_TEST_COUNTER 100 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CRITICAL_IN_ISR 0xA1 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define CRITICAL_INTR_HANDLED 0xB1 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wan_x25_conf 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned lo_pvc; 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned hi_pvc; 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned lo_svc; 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned hi_svc; 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned hdlc_window; 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned pkt_window; 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t1; 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t2; 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t4; 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned n2; 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t10_t20; 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t11_t21; 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t12_t22; 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t13_t23; 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t16_t26; 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t28; 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned r10_r20; 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned r12_r22; 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned r13_r23; 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned ccitt_compat; 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned x25_conf_opt; 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char LAPB_hdlc_only; 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char logging; 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char oob_on_modem; 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wan_x25_conf_t; 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wan_fr_conf 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned signalling; 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t391; 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned t392; 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned n391; 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned n392; 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned n393; 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned dlci_num; 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned dlci[100]; 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wan_fr_conf_t; 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wan_ppp_conf 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned restart_tmr; 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned auth_rsrt_tmr; 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned auth_wait_tmr; 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned mdm_fail_tmr; 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned dtr_drop_tmr; 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned connect_tmout; 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned conf_retry; 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned term_retry; 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned fail_retry; 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned auth_retry; 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned auth_options; 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned ip_options; 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char authenticator; 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char ip_mode; 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wan_ppp_conf_t; 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wan_chdlc_conf 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_dcd; 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_cts; 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_keepalive; 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char hdlc_streaming; 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char receive_only; 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_tx_tmr; 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_rx_tmr; 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_err_margin; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned slarp_timer; 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wan_chdlc_conf_t; 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wandev_conf 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned magic; 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned config_id; 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned ioport; 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned long maddr; 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned msize; 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int irq; 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int dma; 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char S514_CPU_no[1]; 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned PCI_slot_no; 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char auto_pci_cfg; 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char comm_port; 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned bps; 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned mtu; 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned udp_port; 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ttl; 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ft1; 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char interface; 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char clocking; 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char line_coding; 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char station; 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char connection; 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char read_mode; 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char receive_only; 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char tty; 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tty_major; 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tty_minor; 16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tty_mode; 16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char backup; 16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned hw_opt[4]; 16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned reserved[4]; 16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned data_size; 17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert void* data; 17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert union 17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert { 17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert wan_x25_conf_t x25; 17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert wan_ppp_conf_t ppp; 17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert wan_fr_conf_t fr; 17711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert wan_chdlc_conf_t chdlc; 17811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } u; 17911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wandev_conf_t; 18011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 18111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_X25 101 18211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_FR 102 18311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_PPP 103 18411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_CHDLC 104 18511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_BSC 105 18611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_HDLC 106 18711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANCONFIG_MPPP 107 18811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 18911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_OFF 0 19011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_ON 1 19111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_NO 0 19211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_YES 1 19311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 19411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_RS232 0 19511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_V35 1 19611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 19711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_NRZ 0 19811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_NRZI 1 19911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_FM0 2 20011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_FM1 3 20111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 20211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_POINTTOPOINT 0 20311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_MULTIDROP 1 20411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 20511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_EXTERNAL 0 20611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_INTERNAL 1 20711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 20811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_DTE 0 20911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_DCE 1 21011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_CPE 0 21111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_NODE 1 21211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_SECONDARY 0 21311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PRIMARY 1 21411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 21511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PERMANENT 0 21611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_SWITCHED 1 21711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_ONDEMAND 2 21811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 21911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_FR_ANSI 1 22011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_FR_Q933 2 22111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_FR_LMI 3 22211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 22311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PPP_STATIC 0 22411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PPP_HOST 1 22511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PPP_PEER 2 22611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 22711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_ONE 1 22811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_TWO 2 22911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_ONE_AND_HALF 3 23011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 23111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_NONE 0 23211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_ODD 1 23311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_EVEN 2 23411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 23511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_PRI 0 23611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_SEC 1 23711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 23811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_INTR 0 23911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_POLL 1 24011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 24111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_TTY_SYNC 0 24211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WANOPT_TTY_ASYNC 1 24311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 24411cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wandev_stat 24511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 24611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned state; 24711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned ndev; 24811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 24911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned connection; 25011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned media_type; 25111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned mtu; 25211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 25311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned modem_status; 25411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_frames; 25511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_overruns; 25611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_crc_err; 25711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_aborts; 25811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_bad_length; 25911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_dropped; 26011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_frames; 26111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_underruns; 26211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_timeouts; 26311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_rejects; 26411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 26511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_bad_format; 26611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_bad_addr; 26711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_retries; 26811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned reserved[16]; 26911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wandev_stat_t; 27011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 27111cd02dfb91661c65134cac258cf5924270e9d2Dan Albertenum wan_states 27211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 27311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_UNCONFIGURED, 27411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_DISCONNECTED, 27511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_CONNECTING, 27611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_CONNECTED, 27711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_LIMIT, 27811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_DUALPORT, 27911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_DISCONNECTING, 28011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_FT1_READY 28111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 28211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 28311cd02dfb91661c65134cac258cf5924270e9d2Dan Albertenum { 28411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_LOCAL_IP, 28511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_POINTOPOINT_IP, 28611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_NETMASK_IP, 28711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert WAN_BROADCAST_IP 28811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 28911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 29011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_MODEM_CTS 0x0001 29111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_MODEM_DCD 0x0002 29211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_MODEM_DTR 0x0010 29311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define WAN_MODEM_RTS 0x0020 29411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 29511cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef struct wanif_conf 29611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert{ 29711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned magic; 29811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned config_id; 29911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char name[WAN_IFNAME_SZ+1]; 30011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char addr[WAN_ADDRESS_SZ+1]; 30111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char usedby[USED_BY_FIELD]; 30211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned idle_timeout; 30311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned hold_timeout; 30411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned cir; 30511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned bc; 30611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned be; 30711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char enable_IPX; 30811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char inarp; 30911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned inarp_interval; 31011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned long network_number; 31111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char mc; 31211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char local_addr[WAN_ADDRESS_SZ+1]; 31311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char port; 31411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char protocol; 31511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char pap; 31611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char chap; 31711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char userid[511]; 31811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char passwd[511]; 31911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char sysname[31]; 32011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_dcd; 32111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_cts; 32211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ignore_keepalive; 32311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char hdlc_streaming; 32411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_tx_tmr; 32511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_rx_tmr; 32611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned keepalive_err_margin; 32711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned slarp_timer; 32811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char ttl; 32911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char interface; 33011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char clocking; 33111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned bps; 33211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned mtu; 33311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char if_down; 33411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char gateway; 33511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char true_if_encoding; 33611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 33711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char asy_data_trans; 33811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char rts_hs_for_receive; 33911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char xon_xoff_hs_for_receive; 34011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char xon_xoff_hs_for_transmit; 34111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char dcd_hs_for_transmit; 34211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char cts_hs_for_transmit; 34311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char async_mode; 34411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned tx_bits_per_char; 34511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_bits_per_char; 34611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned stop_bits; 34711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char parity; 34811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned break_timer; 34911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned inter_char_timer; 35011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned rx_complete_length; 35111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned xon_char; 35211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned xoff_char; 35311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char receive_only; 35411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert} wanif_conf_t; 35511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 35611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 357