AcsLan
The AcsLan
function is used to communicate with other computers or network peripheral
devices, such as printers, using the data link control (DLC) protocol. The
caller submits requests by filling in a command control block (CCB) and then
calling AcsLan.
Commands
submitted through AcsLan can complete synchronously or asynchronously.
The DLC driver, not the caller, determines how a command completes. This is
unlike the Netbios
There are
some differences between NT DLC and the CCB2 interface. The most notable
difference is that the buffer pool must be specified on an open adapter
instance basis and not specified per-SAP (service-access point). After an
adapter has been opened using the DIR.OPEN.ADAPTER command, a buffer pool must
be given to the DLC driver using BUFFER.CREATE.
ACSLAN_STATUS AcsLan(
PLLC_CCB pCcb, |
// pointer to
command control block |
PLLC_CCB *ppBadCcb |
// pointer to
pointer for invalid CCB |
); |
|
Parameters
pCcb
Pointer to an
LLC_CCB structure describing the function being performed. For
information about this structure, see documentation for IBM LAN.
ppBadCcb
Pointer to a
pointer to an LLC_CCB structure. This parameter is used when a chain of LLC_CCB
structures is submitted. If the parameter is not NULL on input, this pointer
will contain a pointer to the first invalid LLC_CCB structure discovered
in the chain.
Return Values
The function
returns an ACSLAN_STATUS value. ACSLAN_STATUS is an enumerated
type. The following values are defined:
Value |
Meaning |
ACSLAN_STATUS_COMMAND_ACCEPTED |
The request
has been processed and passed to the DLC driver. The command may or may not
have already completed, depending on whether it is a synchronous or asynchronous
command and depending on other timing considerations. This value does not
mean that the command completed successfully. The caller must check the uchDlcStatus
member in the LLC_CCB structure to determine whether the request
succeeded or failed. |
ACSLAN_STATUS_INVALID_CCB_POINTER |
A pointer
in the the LLC_CCB structure, or the parameter table is invalid. |
ACSLAN_STATUS_CCB_IN_ERROR |
A problem
was detected with the LLC_CCB structure. The caller should check the
values in the structure and resubmit it. |
ACSLAN_STATUS_CHAINED_CCB_IN_ERROR |
A problem
was detected with an LLC_CCB structure in a chain of LLC_CCB structures. |
ACSLAN_STATUS_SYSTEM_ERROR |
This value
is not used. |
ACSLAN_STATUS_SYSTEM_STATUS |
This value
is not used. |
ACSLAN_STATUS_INVALID_COMMAND |
The command
in the uchDlcCommand member of the LLC_CCB structure is
unrecognized. |
See Also