|  | /**************************************************************************** | 
|  | **************************************************************************** | 
|  | *** | 
|  | ***   This header was automatically generated from a Linux kernel header | 
|  | ***   of the same name, to make information necessary for userspace to | 
|  | ***   call into the kernel available to libc.  It contains only constants, | 
|  | ***   structures, and macros generated from the original header, and thus, | 
|  | ***   contains no copyrightable information. | 
|  | *** | 
|  | **************************************************************************** | 
|  | ****************************************************************************/ | 
|  | #ifndef _ROUTER_H | 
|  | #define _ROUTER_H | 
|  |  | 
|  | #define ROUTER_NAME "wanrouter" | 
|  | #define ROUTER_VERSION 1 | 
|  | #define ROUTER_RELEASE 1 | 
|  | #define ROUTER_IOCTL 'W' | 
|  | #define ROUTER_MAGIC 0x524D4157L | 
|  |  | 
|  | enum router_ioctls | 
|  | { | 
|  | ROUTER_SETUP = ROUTER_IOCTL<<8, | 
|  | ROUTER_DOWN, | 
|  | ROUTER_STAT, | 
|  | ROUTER_IFNEW, | 
|  | ROUTER_IFDEL, | 
|  | ROUTER_IFSTAT, | 
|  | ROUTER_USER = (ROUTER_IOCTL<<8)+16, | 
|  | ROUTER_USER_MAX = (ROUTER_IOCTL<<8)+31 | 
|  | }; | 
|  |  | 
|  | #define PROC_DATA_PORT_0 0x8000 | 
|  | #define PROC_DATA_PORT_1 0x8001 | 
|  |  | 
|  | #define NLPID_IP 0xCC | 
|  | #define NLPID_SNAP 0x80 | 
|  | #define NLPID_CLNP 0x81 | 
|  | #define NLPID_ESIS 0x82 | 
|  | #define NLPID_ISIS 0x83 | 
|  | #define NLPID_Q933 0x08 | 
|  |  | 
|  | #define WAN_IFNAME_SZ 15 | 
|  | #define WAN_DRVNAME_SZ 15 | 
|  | #define WAN_ADDRESS_SZ 31 | 
|  | #define USED_BY_FIELD 8 | 
|  |  | 
|  | #define UDP_PTPIPE_TYPE 0x01 | 
|  | #define UDP_FPIPE_TYPE 0x02 | 
|  | #define UDP_CPIPE_TYPE 0x03 | 
|  | #define UDP_DRVSTATS_TYPE 0x04 | 
|  | #define UDP_INVALID_TYPE 0x05 | 
|  |  | 
|  | #define CMD_OK 0 | 
|  | #define CMD_TIMEOUT 0xFF | 
|  |  | 
|  | #define UDP_PKT_FRM_STACK 0x00 | 
|  | #define UDP_PKT_FRM_NETWORK 0x01 | 
|  |  | 
|  | #define MAX_INTR_TEST_COUNTER 100 | 
|  |  | 
|  | #define CRITICAL_IN_ISR 0xA1 | 
|  | #define CRITICAL_INTR_HANDLED 0xB1 | 
|  |  | 
|  | typedef struct wan_x25_conf | 
|  | { | 
|  | unsigned lo_pvc; | 
|  | unsigned hi_pvc; | 
|  | unsigned lo_svc; | 
|  | unsigned hi_svc; | 
|  | unsigned hdlc_window; | 
|  | unsigned pkt_window; | 
|  | unsigned t1; | 
|  | unsigned t2; | 
|  | unsigned t4; | 
|  | unsigned n2; | 
|  | unsigned t10_t20; | 
|  | unsigned t11_t21; | 
|  | unsigned t12_t22; | 
|  | unsigned t13_t23; | 
|  | unsigned t16_t26; | 
|  | unsigned t28; | 
|  | unsigned r10_r20; | 
|  | unsigned r12_r22; | 
|  | unsigned r13_r23; | 
|  | unsigned ccitt_compat; | 
|  | unsigned x25_conf_opt; | 
|  | unsigned char LAPB_hdlc_only; | 
|  | unsigned char logging; | 
|  | unsigned char oob_on_modem; | 
|  | } wan_x25_conf_t; | 
|  |  | 
|  | typedef struct wan_fr_conf | 
|  | { | 
|  | unsigned signalling; | 
|  | unsigned t391; | 
|  | unsigned t392; | 
|  | unsigned n391; | 
|  | unsigned n392; | 
|  | unsigned n393; | 
|  | unsigned dlci_num; | 
|  | unsigned dlci[100]; | 
|  | } wan_fr_conf_t; | 
|  |  | 
|  | typedef struct wan_ppp_conf | 
|  | { | 
|  | unsigned restart_tmr; | 
|  | unsigned auth_rsrt_tmr; | 
|  | unsigned auth_wait_tmr; | 
|  | unsigned mdm_fail_tmr; | 
|  | unsigned dtr_drop_tmr; | 
|  | unsigned connect_tmout; | 
|  | unsigned conf_retry; | 
|  | unsigned term_retry; | 
|  | unsigned fail_retry; | 
|  | unsigned auth_retry; | 
|  | unsigned auth_options; | 
|  | unsigned ip_options; | 
|  | char authenticator; | 
|  | char ip_mode; | 
|  | } wan_ppp_conf_t; | 
|  |  | 
|  | typedef struct wan_chdlc_conf | 
|  | { | 
|  | unsigned char ignore_dcd; | 
|  | unsigned char ignore_cts; | 
|  | unsigned char ignore_keepalive; | 
|  | unsigned char hdlc_streaming; | 
|  | unsigned char receive_only; | 
|  | unsigned keepalive_tx_tmr; | 
|  | unsigned keepalive_rx_tmr; | 
|  | unsigned keepalive_err_margin; | 
|  | unsigned slarp_timer; | 
|  | } wan_chdlc_conf_t; | 
|  |  | 
|  | typedef struct wandev_conf | 
|  | { | 
|  | unsigned magic; | 
|  | unsigned config_id; | 
|  |  | 
|  | unsigned ioport; | 
|  | unsigned long maddr; | 
|  | unsigned msize; | 
|  | int irq; | 
|  | int dma; | 
|  | char S514_CPU_no[1]; | 
|  | unsigned PCI_slot_no; | 
|  | char auto_pci_cfg; | 
|  | char comm_port; | 
|  | unsigned bps; | 
|  | unsigned mtu; | 
|  | unsigned udp_port; | 
|  | unsigned char ttl; | 
|  | unsigned char ft1; | 
|  | char interface; | 
|  | char clocking; | 
|  | char line_coding; | 
|  | char station; | 
|  | char connection; | 
|  | char read_mode; | 
|  | char receive_only; | 
|  | char tty; | 
|  | unsigned tty_major; | 
|  | unsigned tty_minor; | 
|  | unsigned tty_mode; | 
|  | char backup; | 
|  | unsigned hw_opt[4]; | 
|  | unsigned reserved[4]; | 
|  |  | 
|  | unsigned data_size; | 
|  | void* data; | 
|  | union | 
|  | { | 
|  | wan_x25_conf_t x25; | 
|  | wan_ppp_conf_t ppp; | 
|  | wan_fr_conf_t fr; | 
|  | wan_chdlc_conf_t chdlc; | 
|  | } u; | 
|  | } wandev_conf_t; | 
|  |  | 
|  | #define WANCONFIG_X25 101 | 
|  | #define WANCONFIG_FR 102 | 
|  | #define WANCONFIG_PPP 103 | 
|  | #define WANCONFIG_CHDLC 104 | 
|  | #define WANCONFIG_BSC 105 | 
|  | #define WANCONFIG_HDLC 106 | 
|  | #define WANCONFIG_MPPP 107 | 
|  |  | 
|  | #define WANOPT_OFF 0 | 
|  | #define WANOPT_ON 1 | 
|  | #define WANOPT_NO 0 | 
|  | #define WANOPT_YES 1 | 
|  |  | 
|  | #define WANOPT_RS232 0 | 
|  | #define WANOPT_V35 1 | 
|  |  | 
|  | #define WANOPT_NRZ 0 | 
|  | #define WANOPT_NRZI 1 | 
|  | #define WANOPT_FM0 2 | 
|  | #define WANOPT_FM1 3 | 
|  |  | 
|  | #define WANOPT_POINTTOPOINT 0 | 
|  | #define WANOPT_MULTIDROP 1 | 
|  |  | 
|  | #define WANOPT_EXTERNAL 0 | 
|  | #define WANOPT_INTERNAL 1 | 
|  |  | 
|  | #define WANOPT_DTE 0 | 
|  | #define WANOPT_DCE 1 | 
|  | #define WANOPT_CPE 0 | 
|  | #define WANOPT_NODE 1 | 
|  | #define WANOPT_SECONDARY 0 | 
|  | #define WANOPT_PRIMARY 1 | 
|  |  | 
|  | #define WANOPT_PERMANENT 0 | 
|  | #define WANOPT_SWITCHED 1 | 
|  | #define WANOPT_ONDEMAND 2 | 
|  |  | 
|  | #define WANOPT_FR_ANSI 1 | 
|  | #define WANOPT_FR_Q933 2 | 
|  | #define WANOPT_FR_LMI 3 | 
|  |  | 
|  | #define WANOPT_PPP_STATIC 0 | 
|  | #define WANOPT_PPP_HOST 1 | 
|  | #define WANOPT_PPP_PEER 2 | 
|  |  | 
|  | #define WANOPT_ONE 1 | 
|  | #define WANOPT_TWO 2 | 
|  | #define WANOPT_ONE_AND_HALF 3 | 
|  |  | 
|  | #define WANOPT_NONE 0 | 
|  | #define WANOPT_ODD 1 | 
|  | #define WANOPT_EVEN 2 | 
|  |  | 
|  | #define WANOPT_PRI 0 | 
|  | #define WANOPT_SEC 1 | 
|  |  | 
|  | #define WANOPT_INTR 0 | 
|  | #define WANOPT_POLL 1 | 
|  |  | 
|  | #define WANOPT_TTY_SYNC 0 | 
|  | #define WANOPT_TTY_ASYNC 1 | 
|  |  | 
|  | typedef struct wandev_stat | 
|  | { | 
|  | unsigned state; | 
|  | unsigned ndev; | 
|  |  | 
|  | unsigned connection; | 
|  | unsigned media_type; | 
|  | unsigned mtu; | 
|  |  | 
|  | unsigned modem_status; | 
|  | unsigned rx_frames; | 
|  | unsigned rx_overruns; | 
|  | unsigned rx_crc_err; | 
|  | unsigned rx_aborts; | 
|  | unsigned rx_bad_length; | 
|  | unsigned rx_dropped; | 
|  | unsigned tx_frames; | 
|  | unsigned tx_underruns; | 
|  | unsigned tx_timeouts; | 
|  | unsigned tx_rejects; | 
|  |  | 
|  | unsigned rx_bad_format; | 
|  | unsigned rx_bad_addr; | 
|  | unsigned tx_retries; | 
|  | unsigned reserved[16]; | 
|  | } wandev_stat_t; | 
|  |  | 
|  | enum wan_states | 
|  | { | 
|  | WAN_UNCONFIGURED, | 
|  | WAN_DISCONNECTED, | 
|  | WAN_CONNECTING, | 
|  | WAN_CONNECTED, | 
|  | WAN_LIMIT, | 
|  | WAN_DUALPORT, | 
|  | WAN_DISCONNECTING, | 
|  | WAN_FT1_READY | 
|  | }; | 
|  |  | 
|  | enum { | 
|  | WAN_LOCAL_IP, | 
|  | WAN_POINTOPOINT_IP, | 
|  | WAN_NETMASK_IP, | 
|  | WAN_BROADCAST_IP | 
|  | }; | 
|  |  | 
|  | #define WAN_MODEM_CTS 0x0001 | 
|  | #define WAN_MODEM_DCD 0x0002 | 
|  | #define WAN_MODEM_DTR 0x0010 | 
|  | #define WAN_MODEM_RTS 0x0020 | 
|  |  | 
|  | typedef struct wanif_conf | 
|  | { | 
|  | unsigned magic; | 
|  | unsigned config_id; | 
|  | char name[WAN_IFNAME_SZ+1]; | 
|  | char addr[WAN_ADDRESS_SZ+1]; | 
|  | char usedby[USED_BY_FIELD]; | 
|  | unsigned idle_timeout; | 
|  | unsigned hold_timeout; | 
|  | unsigned cir; | 
|  | unsigned bc; | 
|  | unsigned be; | 
|  | unsigned char enable_IPX; | 
|  | unsigned char inarp; | 
|  | unsigned inarp_interval; | 
|  | unsigned long network_number; | 
|  | char mc; | 
|  | char local_addr[WAN_ADDRESS_SZ+1]; | 
|  | unsigned char port; | 
|  | unsigned char protocol; | 
|  | char pap; | 
|  | char chap; | 
|  | unsigned char userid[511]; | 
|  | unsigned char passwd[511]; | 
|  | unsigned char sysname[31]; | 
|  | unsigned char ignore_dcd; | 
|  | unsigned char ignore_cts; | 
|  | unsigned char ignore_keepalive; | 
|  | unsigned char hdlc_streaming; | 
|  | unsigned keepalive_tx_tmr; | 
|  | unsigned keepalive_rx_tmr; | 
|  | unsigned keepalive_err_margin; | 
|  | unsigned slarp_timer; | 
|  | unsigned char ttl; | 
|  | char interface; | 
|  | char clocking; | 
|  | unsigned bps; | 
|  | unsigned mtu; | 
|  | unsigned char if_down; | 
|  | unsigned char gateway; | 
|  | unsigned char true_if_encoding; | 
|  |  | 
|  | unsigned char asy_data_trans; | 
|  | unsigned char rts_hs_for_receive; | 
|  | unsigned char xon_xoff_hs_for_receive; | 
|  | unsigned char xon_xoff_hs_for_transmit; | 
|  | unsigned char dcd_hs_for_transmit; | 
|  | unsigned char cts_hs_for_transmit; | 
|  | unsigned char async_mode; | 
|  | unsigned tx_bits_per_char; | 
|  | unsigned rx_bits_per_char; | 
|  | unsigned stop_bits; | 
|  | unsigned char parity; | 
|  | unsigned break_timer; | 
|  | unsigned inter_char_timer; | 
|  | unsigned rx_complete_length; | 
|  | unsigned xon_char; | 
|  | unsigned xoff_char; | 
|  | unsigned char receive_only; | 
|  | } wanif_conf_t; | 
|  |  | 
|  | #endif |