AcsLan  4A9P3G3

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 Netbios1DZ00XB function, for example, which has commands complete synchronously or asynchronously as requested by the caller.

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

Netbios