The LLC_BUFFER union represents the buffer for received data. Specify this structure in the LLC_RECEIVE_PARMS structure.
typedef union _LLC_BUFFER LLC_BUFFER, *PLLC_BUFFER;
union _LLC_BUFFER {
PLLC_BUFFER pNext;
LLC_NEXT_BUFFER Next;
struct LlcNextBuffer {
LLC_NEXT_BUFFER Header;
UCHAR auchData[];
} Buffer;
LLC_NOT_CONTIGUOUS_BUFFER NotContiguous;
struct {
LLC_NOT_CONTIGUOUS_BUFFER Header;
UCHAR auchData[];
} NotCont;
LLC_CONTIGUOUS_BUFFER Contiguous;
struct {
LLC_CONTIGUOUS_BUFFER Header;
UCHAR auchData[];
} Cont;
};
Media Access Control (MAC) frames consist of a LAN header followed by a data field. Non-MAC frames consist of a LAN header, a DLC header, and a data field. The application provides the data in the data field. The DLC header varies depending on the frame type: frames used by Type 2 protocols have a 4-byte DLC header and frames used by Type 1 protocols have a 3-byte header. The frame type also determines what information the application provides and how it is provided, as shown in the following table.
Frame Type | Description |
---|---|
MAC Frames | The application provides the complete LAN header and the data field. The source address in the LAN header is overwritten with the address used by the adapter. |
I-Frames | The application provides only the data. The information used to build the headers is provided by the LLC_DLC_OPEN_STATION and LLC_DLC_CONNECT_STATION commands. |
Direct Frames | The application provides the LAN header and the data in its own buffers. It provides the information to build the headers with one of the LLC_TRANSMIT commands. The command overwrites the source address in the LAN header with the address used by the adapter. |
When you use more than one buffer to receive a frame, the format for the first buffer is different from the format of the other buffers used to contain the frame.
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in dlcapi.h.
The DLC Interface Overview, DLC Structures, AcsLan, LLC_CONTIGUOUS_BUFFER, LLC_NEXT_BUFFER, LLC_NOT_CONTIGUOUS_BUFFER, LLC_RECEIVE_PARMS