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

📄 rpc_samr.h

📁 samba-3.0.22.tar.gz 编译smb服务器的源码
💻 H
📖 第 1 页 / 共 4 页
字号:
/* SAMR_Q_OPEN_USER - probably an open */typedef struct q_samr_open_user_info{	POLICY_HND domain_pol;       /* policy handle */	uint32 access_mask;     /* 32 bit unknown - 0x02011b */	uint32 user_rid;      /* user RID */} SAMR_Q_OPEN_USER;/* SAMR_R_OPEN_USER - probably an open */typedef struct r_samr_open_user_info{	POLICY_HND user_pol;       /* policy handle associated with unknown id */	NTSTATUS status;         /* return status */} SAMR_R_OPEN_USER;/* SAMR_Q_CREATE_USER - probably a create */typedef struct q_samr_create_user_info{	POLICY_HND domain_pol;       /* policy handle */	UNIHDR  hdr_name;       /* unicode account name header */	UNISTR2 uni_name;       /* unicode account name */	uint32 acb_info;      /* account control info */	uint32 access_mask;     /* 0xe005 00b0 */} SAMR_Q_CREATE_USER;/* SAMR_R_CREATE_USER - probably a create */typedef struct r_samr_create_user_info{	POLICY_HND user_pol;       /* policy handle associated with user */	uint32 access_granted;	uint32 user_rid;      /* user RID */	NTSTATUS status;         /* return status */} SAMR_R_CREATE_USER;/* SAMR_Q_DELETE_DOM_USER - delete domain user */typedef struct q_samr_delete_dom_user_info{    POLICY_HND user_pol;          /* policy handle */} SAMR_Q_DELETE_DOM_USER;/* SAMR_R_DELETE_DOM_USER - delete domain user */typedef struct r_samr_delete_dom_user_info{	POLICY_HND pol;       /* policy handle */	NTSTATUS status;        /* return status */} SAMR_R_DELETE_DOM_USER;/* SAMR_Q_QUERY_GROUPMEM - query group members */typedef struct q_samr_query_groupmem_info{	POLICY_HND group_pol;        /* policy handle */} SAMR_Q_QUERY_GROUPMEM;/* SAMR_R_QUERY_GROUPMEM - query group members */typedef struct r_samr_query_groupmem_info{	uint32 ptr;	uint32 num_entries;	uint32 ptr_rids;	uint32 ptr_attrs;	uint32 num_rids;	uint32 *rid;	uint32 num_attrs;	uint32 *attr;	NTSTATUS status;} SAMR_R_QUERY_GROUPMEM;/* SAMR_Q_DEL_GROUPMEM - probably an del group member */typedef struct q_samr_del_group_mem_info{	POLICY_HND pol;       /* policy handle */	uint32 rid;         /* rid */} SAMR_Q_DEL_GROUPMEM;/* SAMR_R_DEL_GROUPMEM - probably an del group member */typedef struct r_samr_del_group_mem_info{	NTSTATUS status;         /* return status */} SAMR_R_DEL_GROUPMEM;/* SAMR_Q_ADD_GROUPMEM - probably an add group member */typedef struct q_samr_add_group_mem_info{	POLICY_HND pol;       /* policy handle */	uint32 rid;         /* rid */	uint32 unknown;     /* 0x0000 0005 */} SAMR_Q_ADD_GROUPMEM;/* SAMR_R_ADD_GROUPMEM - probably an add group member */typedef struct r_samr_add_group_mem_info{	NTSTATUS status;         /* return status */} SAMR_R_ADD_GROUPMEM;/* SAMR_Q_OPEN_GROUP - probably an open */typedef struct q_samr_open_group_info{	POLICY_HND domain_pol;       /* policy handle */	uint32 access_mask;         /* 0x0000 0001, 0x0000 0003, 0x0000 001f */	uint32 rid_group;        /* rid */} SAMR_Q_OPEN_GROUP;/* SAMR_R_OPEN_GROUP - probably an open */typedef struct r_samr_open_group_info{	POLICY_HND pol;       /* policy handle */	NTSTATUS status;         /* return status */} SAMR_R_OPEN_GROUP;/* SAMR_Q_QUERY_ALIASMEM - query alias members */typedef struct q_samr_query_aliasmem_info{	POLICY_HND alias_pol;        /* policy handle */} SAMR_Q_QUERY_ALIASMEM;/* SAMR_R_QUERY_ALIASMEM - query alias members */typedef struct r_samr_query_aliasmem_info{	uint32 num_sids;	uint32 ptr;	uint32 num_sids1;	DOM_SID2 *sid;	NTSTATUS status;} SAMR_R_QUERY_ALIASMEM;/* SAMR_Q_ADD_ALIASMEM - add alias member */typedef struct q_samr_add_alias_mem_info{	POLICY_HND alias_pol;       /* policy handle */	DOM_SID2 sid; /* member sid to be added to the alias */} SAMR_Q_ADD_ALIASMEM;/* SAMR_R_ADD_ALIASMEM - add alias member */typedef struct r_samr_add_alias_mem_info{	NTSTATUS status;         /* return status */} SAMR_R_ADD_ALIASMEM;/* SAMR_Q_DEL_ALIASMEM - add an add alias member */typedef struct q_samr_del_alias_mem_info{	POLICY_HND alias_pol;       /* policy handle */	DOM_SID2 sid; /* member sid to be added to alias */} SAMR_Q_DEL_ALIASMEM;/* SAMR_R_DEL_ALIASMEM - delete alias member */typedef struct r_samr_del_alias_mem_info{	NTSTATUS status;         /* return status */} SAMR_R_DEL_ALIASMEM;/* SAMR_Q_OPEN_ALIAS - probably an open */typedef struct q_samr_open_alias_info{	POLICY_HND dom_pol;	uint32 access_mask;         	uint32 rid_alias;} SAMR_Q_OPEN_ALIAS;/* SAMR_R_OPEN_ALIAS - probably an open */typedef struct r_samr_open_alias_info{	POLICY_HND pol;       /* policy handle */	NTSTATUS status;         /* return status */} SAMR_R_OPEN_ALIAS;/* SAMR_Q_CONNECT_ANON - probably an open */typedef struct q_samr_connect_anon_info{	uint32 ptr;                  /* ptr? */	uint16 unknown_0;            /* 0x005c */	uint16 unknown_1;            /* 0x0001 */	uint32 access_mask;} SAMR_Q_CONNECT_ANON;/* SAMR_R_CONNECT_ANON - probably an open */typedef struct r_samr_connect_anon_info{	POLICY_HND connect_pol;       /* policy handle */	NTSTATUS status;         /* return status */} SAMR_R_CONNECT_ANON;/* SAMR_Q_CONNECT - probably an open */typedef struct q_samr_connect_info{	uint32 ptr_srv_name;         /* pointer (to server name?) */	UNISTR2 uni_srv_name;        /* unicode server name starting with '\\' */	uint32 access_mask;            } SAMR_Q_CONNECT;/* SAMR_R_CONNECT - probably an open */typedef struct r_samr_connect_info{	POLICY_HND connect_pol;       /* policy handle */	NTSTATUS status;         /* return status */} SAMR_R_CONNECT;/* SAMR_Q_CONNECT4 */typedef struct q_samr_connect4_info{	uint32 ptr_srv_name; /* pointer to server name */	UNISTR2 uni_srv_name;	uint32 unk_0; /* possible server name type, 1 for IP num, 2 for name */	uint32 access_mask;} SAMR_Q_CONNECT4;/* SAMR_R_CONNECT4 - same format as connect */typedef struct r_samr_connect_info SAMR_R_CONNECT4;       /* SAMR_Q_CONNECT5 */typedef struct q_samr_connect5_info{	uint32 ptr_srv_name; /* pointer to server name */	UNISTR2 uni_srv_name;	uint32 access_mask;	uint32 level;	/* These following are acutally a level dependent	   value. Fudge it for now. JRA */	uint32 info1_unk1;	uint32 info1_unk2;} SAMR_Q_CONNECT5;/* SAMR_R_CONNECT5 */typedef struct r_samr_connect_info5{	uint32 level;	uint32 info1_unk1;	uint32 info1_unk2;	POLICY_HND connect_pol;       /* policy handle */	NTSTATUS status;         /* return status */} SAMR_R_CONNECT5;/* SAMR_Q_GET_DOM_PWINFO */typedef struct q_samr_get_dom_pwinfo{	uint32 ptr; 	UNIHDR  hdr_srv_name;	UNISTR2 uni_srv_name;} SAMR_Q_GET_DOM_PWINFO;#define DOMAIN_PASSWORD_COMPLEX		0x00000001#define DOMAIN_PASSWORD_NO_ANON_CHANGE	0x00000002#define DOMAIN_PASSWORD_NO_CLEAR_CHANGE	0x00000004#define DOMAIN_LOCKOUT_ADMINS		0x00000008#define DOMAIN_PASSWORD_STORE_CLEARTEXT	0x00000010#define DOMAIN_REFUSE_PASSWORD_CHANGE	0x00000020/* SAMR_R_GET_DOM_PWINFO */typedef struct r_samr_get_dom_pwinfo{	uint16 min_pwd_length;	uint32 password_properties;	NTSTATUS status;} SAMR_R_GET_DOM_PWINFO;/* SAMR_ENC_PASSWD */typedef struct enc_passwd_info{	uint32 ptr;	uint8 pass[516];} SAMR_ENC_PASSWD;/* SAMR_ENC_HASH */typedef struct enc_hash_info{	uint32 ptr;	uint8 hash[16];} SAMR_ENC_HASH;/* SAMR_Q_CHGPASSWD_USER */typedef struct q_samr_chgpasswd_user_info{	uint32 ptr_0;	UNIHDR hdr_dest_host; /* server name unicode header */	UNISTR2 uni_dest_host; /* server name unicode string */	UNIHDR hdr_user_name;    /* username unicode string header */	UNISTR2 uni_user_name;    /* username unicode string */	SAMR_ENC_PASSWD nt_newpass;	SAMR_ENC_HASH nt_oldhash;	uint32 unknown; /* 0x0000 0001 */	SAMR_ENC_PASSWD lm_newpass;	SAMR_ENC_HASH lm_oldhash;} SAMR_Q_CHGPASSWD_USER;/* SAMR_R_CHGPASSWD_USER */typedef struct r_samr_chgpasswd_user_info{	NTSTATUS status; /* 0 == OK, C000006A (NT_STATUS_WRONG_PASSWORD) */} SAMR_R_CHGPASSWD_USER;/* SAMR_Q_CHGPASSWD3 */typedef struct q_samr_chgpasswd3{	uint32 ptr_0;	UNIHDR hdr_dest_host; /* server name unicode header */	UNISTR2 uni_dest_host; /* server name unicode string */	UNIHDR hdr_user_name;    /* username unicode string header */	UNISTR2 uni_user_name;    /* username unicode string */	SAMR_ENC_PASSWD nt_newpass;	SAMR_ENC_HASH nt_oldhash;	uint32 lm_change; /* 0x0000 0001 */	SAMR_ENC_PASSWD lm_newpass;	SAMR_ENC_HASH lm_oldhash;	SAMR_ENC_PASSWD password3;} SAMR_Q_CHGPASSWD3;/* SAMR_CHANGE_REJECT */typedef struct samr_change_reject{	uint32 reject_reason;	uint32 unknown1;	uint32 unknown2;} SAMR_CHANGE_REJECT;/* SAMR_R_CHGPASSWD3 */typedef struct r_samr_chgpasswd3{	SAM_UNK_INFO_1 info;	SAMR_CHANGE_REJECT reject;	NTSTATUS status; /* 0 == OK, C000006A (NT_STATUS_WRONG_PASSWORD) */} SAMR_R_CHGPASSWD3;/* SAMR_Q_REMOVE_SID_FOREIGN_DOMAIN */typedef struct q_samr_remove_sid_foreign_domain_info{	POLICY_HND dom_pol;   /* policy handle */	DOM_SID2 sid;         /* SID */} SAMR_Q_REMOVE_SID_FOREIGN_DOMAIN;/* SAMR_R_REMOVE_SID_FOREIGN_DOMAIN */typedef struct r_samr_remove_sid_foreign_domain_info{	NTSTATUS status;         /* return status */} SAMR_R_REMOVE_SID_FOREIGN_DOMAIN;/* these are from the old rpc_samr.h - they are needed while the merge   is still going on */#define MAX_SAM_SIDS 15/* DOM_SID3 - security id */typedef struct sid_info_3{        uint16 len; /* length, bytes, including length of len :-) */        /* uint8  pad[2]; */                DOM_SID sid;} DOM_SID3;/* SAMR_Q_QUERY_DOMAIN_INFO2 */typedef struct q_samr_query_domain_info2{	POLICY_HND domain_pol;   /* policy handle */	uint16 switch_value;} SAMR_Q_QUERY_DOMAIN_INFO2;/* SAMR_R_QUERY_DOMAIN_INFO2 */typedef struct r_samr_query_domain_info2{	uint32 ptr_0;	uint16 switch_value;	SAM_UNK_CTR *ctr;	NTSTATUS status;         /* return status */} SAMR_R_QUERY_DOMAIN_INFO2;/* SAMR_Q_SET_DOMAIN_INFO */typedef struct q_samr_set_domain_info{	POLICY_HND domain_pol;   /* policy handle */	uint16 switch_value0;	uint16 switch_value;	SAM_UNK_CTR *ctr;} SAMR_Q_SET_DOMAIN_INFO;/* SAMR_R_SET_DOMAIN_INFO */typedef struct r_samr_set_domain_info{	NTSTATUS status;         /* return status */} SAMR_R_SET_DOMAIN_INFO;#endif /* _RPC_SAMR_H */

⌨️ 快捷键说明

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