⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nbt.idl

📁 samba最新软件
💻 IDL
📖 第 1 页 / 共 2 页
字号:
		dgram_msg_type msg_type;		dgram_flags    flags;		uint16         dgram_id;		ipv4address    src_addr;		uint16         src_port;		[switch_is(msg_type)] dgram_data data;	} nbt_dgram_packet;	/******************************************	 * \MAILSLOT\NET\NETLOGON mailslot requests	 * and 	 * \MAILSLOT\NET\NTLOGON mailslot requests 	 */	typedef [public,gensize] struct {		uint32			sa_family;		[flag(NDR_BIG_ENDIAN)]	ipv4address pdc_ip;		[flag(NDR_REMAINING)]	DATA_BLOB remaining;	} nbt_sockaddr;	typedef [bitmap32bit,public] bitmap {		NBT_SERVER_PDC           = 0x00000001,		NBT_SERVER_GC            = 0x00000004,		NBT_SERVER_LDAP          = 0x00000008,		NBT_SERVER_DS            = 0x00000010,		NBT_SERVER_KDC           = 0x00000020,		NBT_SERVER_TIMESERV      = 0x00000040,		NBT_SERVER_CLOSEST       = 0x00000080,		NBT_SERVER_WRITABLE      = 0x00000100, 		NBT_SERVER_GOOD_TIMESERV = 0x00000200	} nbt_server_type;	typedef [bitmap32bit,public] bitmap {		NETLOGON_NT_VERSION_1   =  0x00000001,		NETLOGON_NT_VERSION_5   =  0x00000002,		NETLOGON_NT_VERSION_5EX =  0x00000004,		NETLOGON_NT_VERSION_5EX_WITH_IP = 0x00000008,		NETLOGON_NT_VERSION_WITH_CLOSEST_SITE = 0x00000010,		NETLOGON_NT_VERSION_AVIOD_NT4EMUL = 0x01000000,		NETLOGON_NT_VERSION_PDC = 0x10000000,		NETLOGON_NT_VERSION_IP = 0x20000000,		NETLOGON_NT_VERSION_LOCAL = 0x40000000,		NETLOGON_NT_VERSION_GC = 0x80000000	} netlogon_nt_version_flags;	typedef [enum16bit,public] enum {		LOGON_PRIMARY_QUERY               = 7,	/* Was also NETLOGON_QUERY_FOR_PDC */		NETLOGON_ANNOUNCE_UAS             = 10,		NETLOGON_RESPONSE_FROM_PDC        = 12,		LOGON_SAM_LOGON_REQUEST           = 18, /* Was also NETLOGON_QUERY_FOR_PDC2, NTLOGON_SAM_LOGON */		LOGON_SAM_LOGON_RESPONSE          = 19, /* Was also NTLOGON_SAM_LOGON_REPLY */		LOGON_SAM_LOGON_PAUSE_RESPONSE    = 20, 		LOGON_SAM_LOGON_USER_UNKNOWN      = 21, /* Was also NTLOGON_SAM_LOGON_REPLY15 */		LOGON_SAM_LOGON_RESPONSE_EX       = 23,  /* was NETLOGON_RESPONSE_FROM_PDC2     */		LOGON_SAM_LOGON_PAUSE_RESPONSE_EX = 24, 		LOGON_SAM_LOGON_USER_UNKNOWN_EX   = 25 /* was NETLOGON_RESPONSE_FROM_PDC_USER */	} netlogon_command;	typedef bitmap samr_AcctFlags samr_AcctFlags;	/* query to dc hand marshaled, as it has 'optional'	 * parts */	typedef [nopull,nopush] struct {		uint16               request_count;		nstring              computer_name;		nstring              user_name;		astring              mailslot_name;		samr_AcctFlags       acct_control;		[value(ndr_size_dom_sid0(&sid, ndr->flags))] uint32 sid_size;		/* The manual alignment is required because this		 * structure is marked flag(NDR_NOALIGN) via the		 * nbt_netlogon_packet below.  		 *		 * However, both MUST only be present if sid_size > 0 		 */		 [flag(NDR_ALIGN4)]   DATA_BLOB _pad;		 [subcontext(0),subcontext_size(sid_size)] dom_sid0 sid;		netlogon_nt_version_flags               nt_version;		uint16               lmnt_token;		uint16               lm20_token;	} NETLOGON_SAM_LOGON_REQUEST;	typedef [flag(NDR_NOALIGN),public] struct {		netlogon_command command;		nstring              server;		nstring              user_name;		nstring              domain;		netlogon_nt_version_flags               nt_version;		uint16               lmnt_token;		uint16               lm20_token;	} NETLOGON_SAM_LOGON_RESPONSE_NT40;	typedef [flag(NDR_NOALIGN),public] struct {		netlogon_command command;		nstring              pdc_name;		nstring              user_name;		nstring              domain_name;		GUID                 domain_uuid;		GUID                 zero_uuid;		nbt_string           forest;		nbt_string           dns_domain;		nbt_string           pdc_dns_name;		ipv4address          pdc_ip;		nbt_server_type      server_type;		netlogon_nt_version_flags    nt_version;		uint16               lmnt_token;		uint16               lm20_token;			} NETLOGON_SAM_LOGON_RESPONSE;	/* response from pdc hand marshaled (we have an additional	 * function that uses this structure), as it has 'optional'	 * parts */	typedef [flag(NDR_NOALIGN),public] struct {		netlogon_command command;		uint16               sbz; /* From the docs */		nbt_server_type      server_type;		GUID                 domain_uuid;		nbt_string           forest;		nbt_string           dns_domain;		nbt_string           pdc_dns_name;		nbt_string           domain;		nbt_string           pdc_name;		nbt_string           user_name;		nbt_string           server_site;		nbt_string           client_site;		/* Optional on NETLOGON_NT_VERSION_5EX_WITH_IP */		 [value(ndr_size_nbt_sockaddr(&sockaddr, ndr->flags))] uint8 sockaddr_size; 		 [subcontext(0),subcontext_size(sockaddr_size)] nbt_sockaddr sockaddr;				/* Optional on NETLOGON_NT_VERSION_WITH_CLOSEST_SITE */		 nbt_string           next_closest_site;		netlogon_nt_version_flags               nt_version;		uint16               lmnt_token;		uint16               lm20_token;	} NETLOGON_SAM_LOGON_RESPONSE_EX;	/* query for pdc request */	typedef struct {		astring              computer_name;		astring              mailslot_name;		[flag(NDR_ALIGN2)]   DATA_BLOB _pad;		nstring              unicode_name;		netlogon_nt_version_flags               nt_version;		uint16               lmnt_token;		uint16               lm20_token;	} nbt_netlogon_query_for_pdc;	/* response from pdc */	typedef [flag(NDR_NOALIGN),public] struct {		netlogon_command command;		astring pdc_name;		[flag(NDR_ALIGN2)]   DATA_BLOB _pad;		nstring              unicode_pdc_name;		nstring              domain_name;		netlogon_nt_version_flags               nt_version;		uint16               lmnt_token;		uint16               lm20_token;	} nbt_netlogon_response_from_pdc;	typedef enum netr_SamDatabaseID netr_SamDatabaseID;	/* used to announce SAM changes - MS-NRPC 2.2.1.5.1 */	typedef struct {		netr_SamDatabaseID   db_index;		hyper                serial;		NTTIME               timestamp;	} nbt_db_change_info;	typedef struct {		uint32           serial_lo;		time_t           timestamp;		uint32           pulse;		uint32           random;		astring          pdc_name;		astring          domain;		[flag(NDR_ALIGN2)] DATA_BLOB _pad;		nstring          unicode_pdc_name;		nstring          unicode_domain;		uint32           db_count;		nbt_db_change_info    dbchange[db_count];		[value(ndr_size_dom_sid0(&sid, ndr->flags))] uint32 sid_size;		[subcontext(0),subcontext_size(sid_size)] dom_sid0 sid;		uint32           message_format_version;		uint32           message_token;	} NETLOGON_DB_CHANGE;	typedef [nodiscriminant] union {		[case(LOGON_SAM_LOGON_REQUEST)]       NETLOGON_SAM_LOGON_REQUEST logon;		[case(LOGON_PRIMARY_QUERY)] nbt_netlogon_query_for_pdc pdc;		[case(NETLOGON_ANNOUNCE_UAS)] NETLOGON_DB_CHANGE uas;	} nbt_netlogon_request;#if 0		[case(NETLOGON_RESPONSE_FROM_PDC)] nbt_netlogon_response_from_pdc response;		[case(NETLOGON_RESPONSE_FROM_PDC_USER)] nbt_netlogon_response_from_pdc2 response2;		[case(LOGON_SAM_LOGON_PAUSE_RESPONSE)] NETLOGON_SAM_LOGON_RESPONSE reply;		[case(LOGON_SAM_LOGON_RESPONSE)] NETLOGON_SAM_LOGON_RESPONSE reply;		[case(LOGON_SAM_LOGON_USER_UNKNOWN)] NETLOGON_SAM_LOGON_RESPONSE reply;		[case(LOGON_SAM_LOGON_RESPONSE_EX)] NETLOGON_SAM_LOGON_RESPONSE_EX reply_ex;		[case(LOGON_SAM_LOGON_PAUSE_RESPONSE_EX)] NETLOGON_SAM_LOGON_RESPONSE_EX reply_ex;		[case(LOGON_SAM_LOGON_USER_UNKNOWN_EX)] NETLOGON_SAM_LOGON_RESPONSE_EX reply_ex;#endif	typedef [flag(NDR_NOALIGN),public] struct {		netlogon_command command;		[switch_is(command)] nbt_netlogon_request req;	} nbt_netlogon_packet;	/********************************************************/	/* \MAILSLOT\BROWSE mailslot requests			*/	/* for details see http://ubiqx.org/cifs/Browsing.html  */	/********************************************************/	typedef bitmap svcctl_ServerType svcctl_ServerType;	typedef [enum8bit] enum { 		HostAnnouncement 	= 1,		AnnouncementRequest	= 2,		Election		= 8,		GetBackupListReq	= 9,		GetBackupListResp	= 10,		BecomeBackup		= 11,		DomainAnnouncement	= 12,		MasterAnnouncement	= 13,		ResetBrowserState	= 14,		LocalMasterAnnouncement	= 15	} nbt_browse_opcode;	typedef struct {		uint8 UpdateCount;		uint32 Periodicity;		[charset(DOS)] uint8 ServerName[16];		uint8 OSMajor;		uint8 OSMinor;		svcctl_ServerType ServerType;		uint8 BroMajorVer;		uint8 BroMinorVer;		uint16 Signature;		astring Comment;	} nbt_browse_host_announcement;	typedef struct {		uint8 Unused;		astring ResponseName; 	} nbt_browse_announcement_request;	typedef struct {		uint8 Version;		uint32 Criteria;		uint32 UpTime; /* In milliseconds */		uint32 Reserved; /* Must be zero */		astring ServerName; 	} nbt_browse_election_request;	typedef struct {		uint8 ReqCount;		uint32 Token;	} nbt_browse_backup_list_request;	typedef struct {		uint8 BackupCount;		uint32 Token;		nbt_name BackupServerList[BackupCount];/* TODO: this is wrong */	} nbt_browse_backup_list_response;	typedef struct {		astring BrowserName;	} nbt_browse_become_backup;	typedef struct {		uint8 UpdateCount;		uint32 Periodicity;		[charset(DOS)] uint8 ServerName[16];		uint8 OSMajor;		uint8 OSMinor;		svcctl_ServerType ServerType;		uint32 MysteriousField;		astring Comment;	} nbt_browse_domain_announcement;	typedef struct {		astring ServerName;	} nbt_browse_master_announcement;	typedef struct {		uint8 Command;	} nbt_browse_reset_state;	typedef struct {		uint8 UpdateCount;		uint32 Periodicity;		[charset(DOS)] uint8 ServerName[16];		uint8 OSMajor;		uint8 OSMinor;		svcctl_ServerType ServerType;		uint8 BroMajorVer;		uint8 BroMinorVer;		uint16 Signature;		astring Comment;	} nbt_browse_local_master_announcement;	typedef [nodiscriminant] union {		[case(HostAnnouncement)] nbt_browse_host_announcement host_annoucement;		[case(AnnouncementRequest)] nbt_browse_announcement_request announcement_request;		[case(Election)] nbt_browse_election_request election_request;		[case(GetBackupListReq)] nbt_browse_backup_list_request backup_list_request;		[case(GetBackupListResp)] nbt_browse_backup_list_response backup_list_response;		[case(BecomeBackup)] nbt_browse_become_backup become_backup;		[case(DomainAnnouncement)] nbt_browse_domain_announcement domain_announcement;		[case(MasterAnnouncement)] nbt_browse_master_announcement master_announcement;		[case(ResetBrowserState)] nbt_browse_reset_state reset_browser_state;		[case(LocalMasterAnnouncement)] nbt_browse_local_master_announcement local_master_announcement;	} nbt_browse_payload;	typedef [public,flag(NDR_NOALIGN)] struct {		nbt_browse_opcode opcode;		[switch_is(opcode)] nbt_browse_payload payload;		} nbt_browse_packet;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -