NetBIOS Name Table and NCBRESET

Last reviewed: November 2, 1995
Article ID: Q95944
The information in this article applies to:
  • Microsoft Win32 Software Development Kit (SDK) for Windows NT versions 3.1 and 3.5

SUMMARY

The Windows NT NetBIOS implementation conforms to the IBM NetBIOS 3.0 specifications, with several enhancements discussed in this article.

MORE INFORMATION

Name Table

Under Windows NT, the name table is maintained on a per-process basis, which means that names added by one process are not visible by a different process. This also means that for two processes to establish a session, both processes must register two different NetBIOS names. However, sessions can be established by two threads in the same process using the same NetBIOS name.

NCBRESET

The IBM NetBIOS 3.0 specifications defines four basic NetBIOS environments under the NCBRESET command. Win32 follows the OS/2 Dynamic Link Routine (DLR) environment. This means that the first NCB issued by an application must be a NCBRESET, with the exception of NCBENUM. The Windows NT implementation differs from the IBM NetBIOS 3.0 specifications in the NCB_CALLNAME field.

In the "IBM Local Area Network Technical Reference," under the section on NetBIOS 3.0, the NCB_CALLNAME field is defined as the following:

   REQ_SESSIONS at NCB_CALLNAME+0 (1-byte field)
   The number of sessions requested by the application program.
   If zero, the default of 16 is used.

   REQ_COMMANDS at NCB_CALLNAME+1 (1-byte field)
   The number of commands requested by the application program.
   If zero, the default of 16 is used.

   REQ_NAMES at NCB_CALLNAME+2 (1-byte field)
   The number of names requested by the application program. This
   does not include a reservation for NAME_NUMBER_1.
   If zero, the default of 8 is used.

   REQ_NAME_ONE at NCB_CALLNAME+3 (1-byte field)
   A request to reserve NAME_NUMBER_1 for this application program.
   If 0, NAME_NUMBER_1 is not requested.
   If not 0, NAME_NUMBER_1 is desired to be reserved for this
   application.

Under the Windows NT implementation, the REQ_COMMANDS (NCB_CALLNAME+1) field is ignored. Instead, an application is bound by the amount of memory the process can allocate.

For more information on the differences between the Windows NT implementation and the IBM NetBIOS 3.0 specifications, see "The NetBIOS Function" in the "Win32 API Reference" Help file.

For more information on version 3.0 of NetBIOS, contact IBM and order the "IBM Local Area Network Technical Reference."


Additional reference words: 3.00 3.10 3.50 NCBRESET
KBCategory: kbnetwork
KBSubcategory: NtwkNetbios


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: November 2, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.