The NetBiosSubmit API passes a network control block (NCB) packet to a network device driver.
Restrictions
A call to this API must be issued locally. This API can be called only from an OS/2 workstation.
#include <netcons.h> #include <ncb.h> #include <netbios.h> NetBiosSubmit(handle, ncbopt, ncb); /* 16 bit */ NetBios32Submit(handle, ncbopt, ncb); /* 32 bit */Parameters
handle
If an application needs to submit only a few NCBs and does not require a particular device driver, the application can use the reserved handle value 0. The 0 handle causes the API to pass an NCB to the first network device driver installed on the local computer. The first driver is processed automatically by the NetBiosOpen API in regular mode, if necessary. (Implicit calls are made to open and close the device driver.)
The following table lists the return codes most significant to this API.
(See API Return Codes for a complete
list of return codes.) ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿³SYMBOLICCONSTANT
³VALUE³MEANING ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ NERR_Success ³ 0 ³ No errors were encountered. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ ERROR_INVALID_HANDLE ³ 6 ³ The specified handle is not valid. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ ERROR_INVALID_PARAMETER ³ 87 ³ At least one parameter value is not
³
³ ³ ³ valid. ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Chained NCBs must be in the same memory segment so they can be linked by a 16-bit offset pointer that precedes each NCB. An offset of 0xFFFF specifies the end of the chain.
In a proceed-on-error chain of NCBs, each NCB is run independently, regardless of any errors that might occur. Errors are returned by the last NCB in the chain.
A stop-on-error chain is ended by the LAN Server software when an NCB in the chain causes an error. The NCB's command components are set to 0xB (Command Canceled) for NCBs not processed because of an error.
For an asynchronous NCB, the value of the NCB's ncb_post parameter must be either 0 or the handle to a system semaphore that will be cleared upon completion of the NCB. The semaphore must not be exclusive.
The chaining option specifies whether a single NCB or an NCB chain is being
passed. A single NCB can be run with optional
error retry, in which case the LAN Server software reissues the NCB a set
number of times in response to the following errors: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ SYMBOLIC CONSTANT ³ VALUE ³ MEANING ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ NCB_ERR_NR ³ 9 ³ Resource available. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ NCB_ERR_SOR ³ 12 ³ Session open rejected. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ NCB_ERR_BUSY ³ 21 ³ Interface busy. ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ