Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

134 lines
4.5 KiB

/********************************************************************/
/** Microsoft LAN Manager **/
/** Copyright(c) Microsoft Corp., 1987-1990 **/
/********************************************************************/
/********************************************************************
* *
* About this file ... NETBIOS.H *
* *
* This file contains information about the NetBios APIs. *
* *
* Function prototypes. *
* *
* Data structure templates. *
* *
* Definition of special values. *
* *
* *
* NOTE: You must include NETCONS.H before this file, since this *
* file depends on values defined in NETCONS.H. *
* *
********************************************************************/
#ifndef NETBIOS_INCLUDED
#define NETBIOS_INCLUDED
/****************************************************************
* *
* Function prototypes - NetBios *
* *
****************************************************************/
extern API_FUNCTION
NetBiosOpen ( char far * pszDevName,
char far * pszReserved,
unsigned short usOpenOpt,
unsigned short far * phDevName );
extern API_FUNCTION
NetBiosClose ( unsigned short hDevName,
unsigned short usReserved );
extern API_FUNCTION
NetBiosEnum ( const char far * pszServer,
short sLevel,
char far * pbBuffer,
unsigned short cbBuffer,
unsigned short far * pcEntriesRead,
unsigned short far * pcTotalAvail );
extern API_FUNCTION
NetBiosGetInfo ( const char far * pszServer,
const char far * pszNetBiosName,
short sLevel,
char far * pbBuffer,
unsigned short cbBuffer,
unsigned short far * pcbTotalAvail );
extern API_FUNCTION
NetBiosSubmit ( unsigned short hDevName,
unsigned short usNcbOpt,
struct ncb far * pNCB );
/****************************************************************
* *
* Data structure templates *
* *
****************************************************************/
struct netbios_info_0 {
char nb0_net_name[NETBIOS_NAME_LEN+1];
}; /* netbios_info_0 */
struct netbios_info_1 {
char nb1_net_name[NETBIOS_NAME_LEN+1];
char nb1_driver_name[DEVLEN+1];/* OS/2 device driver name */
unsigned char nb1_lana_num; /* LAN adapter number of this net */
char nb1_pad_1;
unsigned short nb1_driver_type;
unsigned short nb1_net_status;
unsigned long nb1_net_bandwidth; /* Network bandwidth, bits/second */
unsigned short nb1_max_sess; /* Max number of sessions */
unsigned short nb1_max_ncbs; /* Max number of outstanding NCBs */
unsigned short nb1_max_names; /* Max number of names */
}; /* netbios_info_1 */
/****************************************************************
* *
* Special values and constants *
* *
****************************************************************/
/*
* Driver types (nb1_driver_type).
*/
#define NB_TYPE_NCB 1
#define NB_TYPE_MCB 2
/*
* Bits defined in nb1_net_status.
*/
#define NB_LAN_FLAGS_MASK 0x3FFF /* Mask for LAN Flags */
#define NB_LAN_MANAGED 0x0001 /* LAN is managed by redirector */
#define NB_LAN_LOOPBACK 0x0002 /* LAN is a loopback driver */
#define NB_LAN_SENDNOACK 0x0004 /* LAN allows SendNoAck NCBs */
#define NB_LAN_LMEXT 0x0008 /* LAN supports LAN Manager extended NCBs */
#define NB_LAN_INTNCB 0x0010 /* LAN allows NCB submission at */
/* interrupt time (from NCBDone) */
#define NB_OPEN_MODE_MASK 0xC000 /* Mask for NetBios Open Modes */
#define NB_OPEN_REGULAR 0x4000 /* NetBios opened in Regular mode */
#define NB_OPEN_PRIVILEGED 0x8000 /* NetBios opened in Privileged mode */
#define NB_OPEN_EXCLUSIVE 0xC000 /* NetBios opened in Exclusive mode */
/*
* Open modes for NetBiosOpen.
*/
#define NB_REGULAR 1
#define NB_PRIVILEGED 2
#define NB_EXCLUSIVE 3
#endif /* NETBIOS_INCLUDED */