|  | /* | 
|  | * Copyright (C) 2001 Mike McCormack | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA | 
|  | */ | 
|  |  | 
|  | #ifndef NCB_INCLUDED | 
|  | #define NCB_INCLUDED | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | #define NCBNAMSZ 16 | 
|  | #define MAX_LANA 0xfe | 
|  |  | 
|  | #define NCBRESET       0x32 | 
|  | #define NCBADDNAME     0x30 | 
|  | #define NCBADDGRNAME   0x36 | 
|  | #define NCBDELNAME     0x31 | 
|  | #define NCBSEND        0x14 | 
|  | #define NCBRECV        0x15 | 
|  | #define NCBHANGUP      0x12 | 
|  | #define NCBCANCEL      0x35 | 
|  | #define NCBLISTEN      0x11 | 
|  | #define NCBCALL        0x10 | 
|  | #define NCBASTAT       0x33 | 
|  | #define NCBENUM        0x37 | 
|  |  | 
|  | typedef struct _NCB | 
|  | { | 
|  | UCHAR	ncb_command; | 
|  | UCHAR	ncb_retcode; | 
|  | UCHAR	ncb_lsn; | 
|  | UCHAR	ncb_num; | 
|  | PUCHAR	ncb_buffer; | 
|  | WORD	ncb_length; | 
|  | UCHAR	ncb_callname[NCBNAMSZ]; | 
|  | UCHAR	ncb_name[NCBNAMSZ]; | 
|  | UCHAR	ncb_rto; | 
|  | UCHAR	ncb_sto; | 
|  | VOID	(*ncb_post)(struct _NCB *); | 
|  | UCHAR	ncb_lana_num; | 
|  | UCHAR	ncb_cmd_cplt; | 
|  | UCHAR	ncb_reserved[10]; | 
|  | HANDLE	ncb_event; | 
|  | } NCB, *PNCB; | 
|  |  | 
|  | typedef struct _ADAPTER_STATUS | 
|  | { | 
|  | UCHAR   adapter_address[6]; | 
|  | UCHAR	rev_major; | 
|  | UCHAR	reserved0; | 
|  | UCHAR	adapter_type; | 
|  | UCHAR	rev_minor; | 
|  | WORD	duration; | 
|  | WORD	frmr_recv; | 
|  | WORD	frmr_xmit; | 
|  | WORD	iframe_recv_error; | 
|  | WORD	xmit_aborts; | 
|  | DWORD	xmit_success; | 
|  | DWORD	recv_success; | 
|  | WORD	iframe_xmit_error; | 
|  | WORD	recv_buffer_unavail; | 
|  | WORD	t1_timeouts; | 
|  | WORD	ti_timeouts; | 
|  | DWORD	reserved1; | 
|  | WORD	free_ncbs; | 
|  | WORD	max_cfg_ncbs; | 
|  | WORD	max_ncbs; | 
|  | WORD	xmit_buf_unavail; | 
|  | WORD	max_dgram_size; | 
|  | WORD	pending_sess; | 
|  | WORD	max_cfg_sess; | 
|  | WORD	max_sess; | 
|  | WORD	max_sess_pktsize; | 
|  | WORD	name_count; | 
|  | } ADAPTER_STATUS, *PADAPTER_STATUS; | 
|  |  | 
|  | typedef struct _LANA_ENUM | 
|  | { | 
|  | UCHAR length; | 
|  | UCHAR lana[MAX_LANA+1]; | 
|  | } LANA_ENUM, *PLANA_ENUM; | 
|  |  | 
|  | #define NRC_GOODRET 0x00 | 
|  | #define NRC_BUFLEN  0x01 | 
|  | #define NRC_ILLCMD  0x03 | 
|  | #define NRC_CMDTMO  0x05 | 
|  | #define NRC_INCOMP  0x06 | 
|  | #define NRC_INVADDRESS 0x39 | 
|  | #define NRC_PENDING 0xff | 
|  | #define NRC_OPENERROR 0x3f | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif  /* NCB_INCLUDED */ |