1da6c28aaSamw /* 2da6c28aaSamw * CDDL HEADER START 3da6c28aaSamw * 4da6c28aaSamw * The contents of this file are subject to the terms of the 5da6c28aaSamw * Common Development and Distribution License (the "License"). 6da6c28aaSamw * You may not use this file except in compliance with the License. 7da6c28aaSamw * 8da6c28aaSamw * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9da6c28aaSamw * or http://www.opensolaris.org/os/licensing. 10da6c28aaSamw * See the License for the specific language governing permissions 11da6c28aaSamw * and limitations under the License. 12da6c28aaSamw * 13da6c28aaSamw * When distributing Covered Code, include this CDDL HEADER in each 14da6c28aaSamw * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15da6c28aaSamw * If applicable, add the following below this CDDL HEADER, with the 16da6c28aaSamw * fields enclosed by brackets "[]" replaced with your own identifying 17da6c28aaSamw * information: Portions Copyright [yyyy] [name of copyright owner] 18da6c28aaSamw * 19da6c28aaSamw * CDDL HEADER END 20da6c28aaSamw */ 21da6c28aaSamw /* 22*8d7e4166Sjose borrego * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23da6c28aaSamw * Use is subject to license terms. 24da6c28aaSamw */ 25da6c28aaSamw 26da6c28aaSamw #ifndef _BROWSER_H_ 27da6c28aaSamw #define _BROWSER_H_ 28da6c28aaSamw 29da6c28aaSamw /* 30da6c28aaSamw * NetBIOS name types describe the functionality of the registration. 31da6c28aaSamw * A following list of NetBIOS suffixes (16th Character of the NetBIOS 32da6c28aaSamw * Name) is detailed in Microsoft knowledge base article Q163409. 33da6c28aaSamw * 34da6c28aaSamw * Name Number(h) Type Usage 35da6c28aaSamw * -------------------------------------------------------------------------- 36da6c28aaSamw * <computername> 00 U Workstation Service 37da6c28aaSamw * <computername> 01 U Messenger Service 38da6c28aaSamw * <\\--__MSBROWSE__> 01 G Master Browser 39da6c28aaSamw * <computername> 03 U Messenger Service 40da6c28aaSamw * <computername> 06 U RAS Server Service 41da6c28aaSamw * <computername> 1F U NetDDE Service 42da6c28aaSamw * <computername> 20 U File Server Service 43da6c28aaSamw * <computername> 21 U RAS Client Service 44da6c28aaSamw * <computername> 22 U Microsoft Exchange Interchange(MSMail 45da6c28aaSamw * Connector) 46da6c28aaSamw * <computername> 23 U Microsoft Exchange Store 47da6c28aaSamw * <computername> 24 U Microsoft Exchange Directory 48da6c28aaSamw * <computername> 30 U Modem Sharing Server Service 49da6c28aaSamw * <computername> 31 U Modem Sharing Client Service 50da6c28aaSamw * <computername> 43 U SMS Clients Remote Control 51da6c28aaSamw * <computername> 44 U SMS Administrators Remote Control 52da6c28aaSamw * Tool 53da6c28aaSamw * <computername> 45 U SMS Clients Remote Chat 54da6c28aaSamw * <computername> 46 U SMS Clients Remote Transfer 55da6c28aaSamw * <computername> 4C U DEC Pathworks TCPIP service on 56da6c28aaSamw * Windows NT 57da6c28aaSamw * <computername> 52 U DEC Pathworks TCPIP service on 58da6c28aaSamw * Windows NT 59da6c28aaSamw * <computername> 87 U Microsoft Exchange Message Transfer 60da6c28aaSamw * Agent 61da6c28aaSamw * <computername> 6A U Microsoft Exchange IMC 62da6c28aaSamw * <computername> BE U Network Monitor Agent 63da6c28aaSamw * <computername> BF U Network Monitor Application 64da6c28aaSamw * <username> 03 U Messenger Service 65da6c28aaSamw * <domain> 00 G Domain Name 66da6c28aaSamw * <domain> 1B U Domain Master Browser 67da6c28aaSamw * <domain> 1C G Domain Controllers 68da6c28aaSamw * <domain> 1D U Master Browser 69da6c28aaSamw * <domain> 1E G Browser Service Elections 70da6c28aaSamw * <INet~Services> 1C G IIS 71da6c28aaSamw * <IS~computer name> 00 U IIS 72da6c28aaSamw * <computername> [2B] U Lotus Notes Server Service 73da6c28aaSamw * IRISMULTICAST [2F] G Lotus Notes 74da6c28aaSamw * IRISNAMESERVER [33] G Lotus Notes 75da6c28aaSamw * Forte_$ND800ZA [20] U DCA IrmaLan Gateway Server Service 76da6c28aaSamw * 77da6c28aaSamw * Unique (U): The name may have only one IP address assigned to it. On 78da6c28aaSamw * a network device multiple occurrences of a single name may appear to 79da6c28aaSamw * be registered. The suffix may be the only unique character in the name. 80da6c28aaSamw * 81da6c28aaSamw * Group (G): A normal group; the single name may exist with many IP 82da6c28aaSamw * addresses. WINS responds to a name query on a group name with the 83da6c28aaSamw * limited broadcast address (255.255.255.255). Because routers block 84da6c28aaSamw * the transmission of these addresses, the Internet Group was designed 85da6c28aaSamw * to service communications between subnets. 86da6c28aaSamw * 87da6c28aaSamw * Multihomed (M): The name is unique, but due to multiple network 88da6c28aaSamw * interfaces on the same computer this configuration is necessary to 89da6c28aaSamw * permit the registration. The maximum number of addresses is 25. 90da6c28aaSamw * 91da6c28aaSamw * Internet Group (I): This is a special configuration of the group name 92da6c28aaSamw * used to manage Windows NT Domain names. 93da6c28aaSamw * 94da6c28aaSamw * Domain Name (D): New in Windows NT 4.0. 95da6c28aaSamw */ 96da6c28aaSamw 97da6c28aaSamw 98da6c28aaSamw #ifdef __cplusplus 99da6c28aaSamw extern "C" { 100da6c28aaSamw #endif 101da6c28aaSamw 102da6c28aaSamw 103da6c28aaSamw /* 104da6c28aaSamw * Message flags used when building the SMB transact headers. 105da6c28aaSamw */ 106da6c28aaSamw #define TWO_WAY_TRANSACTION 0x00 107da6c28aaSamw #define END_SESSION_TRANSACTION 0x01 108da6c28aaSamw #define ONE_WAY_TRANSACTION 0x02 109da6c28aaSamw 110da6c28aaSamw 111da6c28aaSamw /* 112da6c28aaSamw * Browser commands associated with the BROWSE and MSBROWSE mailslots. 113da6c28aaSamw */ 114da6c28aaSamw #define HOST_ANNOUNCEMENT 0x01 115da6c28aaSamw #define ANNOUNCEMENT_REQUEST 0x02 116da6c28aaSamw #define REQUEST_ELECTION 0x08 117da6c28aaSamw #define GET_BACKUP_LIST_REQ 0x09 118da6c28aaSamw #define GET_BACKUP_LIST_RESP 0x0A 119da6c28aaSamw #define BECOME_BACKUP 0x0B 120da6c28aaSamw #define DOMAIN_ANNOUNCEMENT 0x0C 121da6c28aaSamw #define MASTER_ANNOUNCEMENT 0x0D 122da6c28aaSamw #define LOCAL_MASTER_ANNOUNCEMENT 0x0F 123da6c28aaSamw 124da6c28aaSamw 125da6c28aaSamw /* 126da6c28aaSamw * Opcodes associated with NETLOGON or NTLOGON mailslots (KB 109626). 127da6c28aaSamw * LOGON_REQUEST LM1.0/2.0 LOGON Request from client 128da6c28aaSamw * LOGON_RESPONSE LM1.0 Response to LOGON_REQUEST 129da6c28aaSamw * LOGON_CENTRAL_QUERY LM1.0 QUERY for centralized init 130da6c28aaSamw * LOGON_DISTRIB_QUERY LM1.0 QUERY for non-centralized init 131da6c28aaSamw * LOGON_CENTRAL_RESPONSE LM1.0 response to LOGON_CENTRAL_QUERY 132da6c28aaSamw * LOGON_DISTRIB_RESPONSE LM1.0 resp to LOGON_DISTRIB_QUERY 133da6c28aaSamw * LOGON_RESPONSE2 LM2.0 Response to LOGON_REQUEST 134da6c28aaSamw * LOGON_PRIMARY_QUERY QUERY for Primary DC 135da6c28aaSamw * LOGON_START_PRIMARY announce startup of Primary DC 136da6c28aaSamw * LOGON_FAIL_PRIMARY announce failed Primary DC 137da6c28aaSamw * LOGON_UAS_CHANGE announce change to UAS or SAM 138da6c28aaSamw * LOGON_NO_USER announce no user on machine 139da6c28aaSamw * LOGON_PRIMARY_RESPONSE response to LOGON_PRIMARY_QUERY 140da6c28aaSamw * LOGON_RELOGON_RESPONSE LM1.0/2.0 resp to relogon request 141da6c28aaSamw * LOGON_WKSTINFO_RESPONSE LM1.0/2.0 resp to interrogate request 142da6c28aaSamw * LOGON_PAUSE_RESPONSE LM2.0 resp when NETLOGON is paused 143da6c28aaSamw * LOGON_USER_UNKNOWN LM2.0 response when user is unknown 144da6c28aaSamw * LOGON_UPDATE_ACCOUNT LM2.1 announce account updates 145da6c28aaSamw * LOGON_SAM_LOGON_REQUEST SAM LOGON request from client 146da6c28aaSamw * LOGON_SAM_LOGON_RESPONSE SAM Response to SAM logon request 147da6c28aaSamw * LOGON_SAM_PAUSE_RESPONSE SAM response when NETLOGON is paused 148da6c28aaSamw * LOGON_SAM_USER_UNKNOWN SAM response when user is unknown 149da6c28aaSamw * LOGON_SAM_WKSTINFO_RESPONSE SAM response to interrogate request 150da6c28aaSamw */ 151da6c28aaSamw #define LOGON_REQUEST 0 152da6c28aaSamw #define LOGON_RESPONSE 1 153da6c28aaSamw #define LOGON_CENTRAL_QUERY 2 154da6c28aaSamw #define LOGON_DISTRIB_QUERY 3 155da6c28aaSamw #define LOGON_CENTRAL_RESPONSE 4 156da6c28aaSamw #define LOGON_DISTRIB_RESPONSE 5 157da6c28aaSamw #define LOGON_RESPONSE2 6 158da6c28aaSamw #define LOGON_PRIMARY_QUERY 7 159da6c28aaSamw #define LOGON_START_PRIMARY 8 160da6c28aaSamw #define LOGON_FAIL_PRIMARY 9 161da6c28aaSamw #define LOGON_UAS_CHANGE 10 162da6c28aaSamw #define LOGON_NO_USER 11 163da6c28aaSamw #define LOGON_PRIMARY_RESPONSE 12 164da6c28aaSamw #define LOGON_RELOGON_RESPONSE 13 165da6c28aaSamw #define LOGON_WKSTINFO_RESPONSE 14 166da6c28aaSamw #define LOGON_PAUSE_RESPONSE 15 167da6c28aaSamw #define LOGON_USER_UNKNOWN 16 168da6c28aaSamw #define LOGON_UPDATE_ACCOUNT 17 169da6c28aaSamw #define LOGON_SAM_LOGON_REQUEST 18 170da6c28aaSamw #define LOGON_SAM_LOGON_RESPONSE 19 171da6c28aaSamw #define LOGON_SAM_PAUSE_RESPONSE 20 172da6c28aaSamw #define LOGON_SAM_USER_UNKNOWN 21 173da6c28aaSamw #define LOGON_SAM_WKSTINFO_RESPONSE 22 174da6c28aaSamw 175da6c28aaSamw 176da6c28aaSamw /* 177da6c28aaSamw * Local protocol flags used to indicate which version of the 178da6c28aaSamw * netlogon protocol to use when attempting to find the PDC. 179da6c28aaSamw */ 180da6c28aaSamw #define NETLOGON_PROTO_NETLOGON 0x01 181da6c28aaSamw #define NETLOGON_PROTO_SAMLOGON 0x02 182da6c28aaSamw 183*8d7e4166Sjose borrego typedef struct smb_ntdomain_t { 184*8d7e4166Sjose borrego char n_domain[SMB_PI_MAX_DOMAIN]; 185*8d7e4166Sjose borrego char n_name[SMB_PI_MAX_DOMAIN]; 186*8d7e4166Sjose borrego uint32_t n_ipaddr; 187*8d7e4166Sjose borrego } smb_ntdomain_t; 188*8d7e4166Sjose borrego 189da6c28aaSamw #ifdef __cplusplus 190da6c28aaSamw } 191da6c28aaSamw #endif 192da6c28aaSamw 193da6c28aaSamw 194da6c28aaSamw #endif /* _BROWSER_H_ */ 195