diff options
author | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
---|---|---|
committer | Adam <you@example.com> | 2020-05-17 05:51:50 +0200 |
commit | e611b132f9b8abe35b362e5870b74bce94a1e58e (patch) | |
tree | a5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/inc/sys/snet/dl_ctrl.h | |
download | NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2 NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip |
Diffstat (limited to 'private/inc/sys/snet/dl_ctrl.h')
-rw-r--r-- | private/inc/sys/snet/dl_ctrl.h | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/private/inc/sys/snet/dl_ctrl.h b/private/inc/sys/snet/dl_ctrl.h new file mode 100644 index 000000000..5516706d0 --- /dev/null +++ b/private/inc/sys/snet/dl_ctrl.h @@ -0,0 +1,131 @@ +/*++ + +Copyright (c) 1991 Microsoft Corporation + +Module Name: + + dl_proto.h + +Abstract: + + This module defines some of the data types and manifests for the + Spider Generic Ethernet Interface. + +Author: + + Eric Chin (ericc) August 9, 1991 + +Revision History: + + Sam Patton (sampa) July 31, 1992 merge for snap/token ring + +--*/ +/* + * Spider STREAMS Data Link Interface Primitives + * + * Copyright (c) 1989 Spider Systems Limited + * + * This Source Code is furnished under Licence, and may not be + * copied or distributed without express written agreement. + * + * All rights reserved. + * + * Written by Mark Valentine + * + * Made in Scotland. + * + * @(#)dl_control.h 1.6 + * + * Last delta created 14:58:43 2/12/92 + * This file extracted 09:26:06 3/18/92 + * + * Modifications: + * + * 28 Jan 1992 Modified for datalink version 2 + * + */ + +#ifndef DL_CTRL_INCLUDED +#define DL_CTRL_INCLUDED + +#include <sys\snet\uint.h> + +/* + * This defines Version 2 of Spider's STREAMS Data Link protocol. + * Its main feature is its ability to cope with hardware addresses + * of length not equal to 6. + */ + +/* + * Data Link ioctl commands. + * + * To determine the version of the protocol in use, use the DATAL_VERSION + * command, and assume Version 0 if this fails with EINVAL. (Yuk.) + * + * The ETH_* commands will work for any current version of the protocol, + * but only for Ethernet drivers (hw_type == HW_ETHER). + * + * Hardware types are defined in dl_proto.h. + */ + +#define DATAL_STAT ('E'<<8|1) /* gather data link statistics */ +#define DATAL_ZERO ('E'<<8|2) /* reset data link statistics */ +#define DATAL_REGISTER ('E'<<8|3) /* register data link type range */ +#define DATAL_GPARM ('E'<<8|4) /* determine data link parameters */ +#define DATAL_VERSION ('E'<<8|5) /* interrogate protocol version */ +#define DATAL_SET_ADDR ('E'<<8|6) /* set hardware address */ +#define DATAL_DFLT_ADDR ('E'<<8|7) /* restore default hardware address */ +#define DATAL_IBIND ('D'<<8|1) /* bind card to stream */ + +/* + * Data Link statistics structure. + */ + +struct datal_stat +{ + uint32 dl_tx; /* packets transmitted */ + uint32 dl_rx; /* packets received */ + uint32 dl_coll; /* collisions detected */ + uint32 dl_lost; /* packets lost */ + uint32 dl_txerr; /* transmission errors */ + uint32 dl_rxerr; /* receive errors */ + uint32 dl_pool_quota; /* receive pool quota */ + uint32 dl_pool_used; /* receive pool used */ +}; + +struct datal_register +{ + uint8 version; /* protocol version */ + uint8 hw_type; /* hardware type */ + uint8 addr_len; /* hardware address length */ + uint8 align; /* don't use */ + uint16 lwb; /* data link type (lower bound) */ + uint16 upb; /* data link type (upper bound) */ +}; + +struct datal_gparm +{ + uint8 version; /* protocol version */ + uint8 hw_type; /* hardware type */ + uint8 addr_len; /* hardware address length */ + uint8 align; /* don't use */ + uint16 frgsz; /* max. packet size on net */ + uint8 addr[1]; /* hardware address (variable length) */ +}; + +struct datal_version +{ + uint8 version; /* protocol version number */ + uint8 hw_type; /* hardware type */ +}; + +struct datal_ibind +{ + ULONG UseRawArcnet; /* 0 if this open should use Encapsulated */ + /* Ethernet over arcnet */ + /* 1 if it should use raw arcnet frames */ + STRING adapter_name; /* adapter device driver string */ + char buffer[80]; /* buffer to contain the name */ +}; + +#endif //DL_CTRL_INCLUDED |