亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? net_rpc.c

?? samba-3.0.22.tar.gz 編譯smb服務(wù)器的源碼
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
 * * @param domain_sid The domain sid acquired from the remote server * @param cli A cli_state connected to the server. * @param mem_ctx Talloc context, destoyed on completion of the function. * @param argc  Standard main() style argc * @param argv  Standard main() style argv.  Initial components are already *              stripped * * @return Normal NTSTATUS return. **/static NTSTATUS rpc_user_info_internals(const DOM_SID *domain_sid,			const char *domain_name, 			struct cli_state *cli,			struct rpc_pipe_client *pipe_hnd,			TALLOC_CTX *mem_ctx,			int argc,			const char **argv){	POLICY_HND connect_pol, domain_pol, user_pol;	NTSTATUS result = NT_STATUS_UNSUCCESSFUL;	uint32 *rids, num_rids, *name_types, num_names;	uint32 flags = 0x000003e8; /* Unknown */	int i;	char **names;	DOM_GID *user_gids;	if (argc < 1) {		d_printf("User must be specified\n");		rpc_user_usage(argc, argv);		return NT_STATUS_OK;	}	/* Get sam policy handle */		result = rpccli_samr_connect(pipe_hnd, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 				  &connect_pol);	if (!NT_STATUS_IS_OK(result)) goto done;		/* Get domain policy handle */		result = rpccli_samr_open_domain(pipe_hnd, mem_ctx, &connect_pol,				      MAXIMUM_ALLOWED_ACCESS,				      domain_sid, &domain_pol);	if (!NT_STATUS_IS_OK(result)) goto done;	/* Get handle on user */	result = rpccli_samr_lookup_names(pipe_hnd, mem_ctx, &domain_pol,				       flags, 1, &argv[0],				       &num_rids, &rids, &name_types);	if (!NT_STATUS_IS_OK(result)) goto done;	result = rpccli_samr_open_user(pipe_hnd, mem_ctx, &domain_pol,				    MAXIMUM_ALLOWED_ACCESS,				    rids[0], &user_pol);	if (!NT_STATUS_IS_OK(result)) goto done;	result = rpccli_samr_query_usergroups(pipe_hnd, mem_ctx, &user_pol,					   &num_rids, &user_gids);	if (!NT_STATUS_IS_OK(result)) goto done;	/* Look up rids */	if (num_rids) {		rids = TALLOC_ARRAY(mem_ctx, uint32, num_rids);		for (i = 0; i < num_rids; i++)                	rids[i] = user_gids[i].g_rid;		result = rpccli_samr_lookup_rids(pipe_hnd, mem_ctx, &domain_pol,				      	      num_rids, rids,				      	      &num_names, &names, &name_types);		if (!NT_STATUS_IS_OK(result)) {			goto done;		}		/* Display results */		for (i = 0; i < num_names; i++)			printf("%s\n", names[i]);	} done:	return result;}/**  * List a user's groups from a remote RPC server * * @param argc  Standard main() style argc * @param argv  Standard main() style argv.  Initial components are already *              stripped * * @return A shell status integer (0 for success) **/static int rpc_user_info(int argc, const char **argv) {	return run_rpc_command(NULL, PI_SAMR, 0, rpc_user_info_internals,			       argc, argv);}/**  * List users on a remote RPC server * * All parameters are provided by the run_rpc_command function, except for * argc, argv which are passes through.  * * @param domain_sid The domain sid acquired from the remote server * @param cli A cli_state connected to the server. * @param mem_ctx Talloc context, destoyed on completion of the function. * @param argc  Standard main() style argc * @param argv  Standard main() style argv.  Initial components are already *              stripped * * @return Normal NTSTATUS return. **/static NTSTATUS rpc_user_list_internals(const DOM_SID *domain_sid,					const char *domain_name, 					struct cli_state *cli,					struct rpc_pipe_client *pipe_hnd,					TALLOC_CTX *mem_ctx,					int argc,					const char **argv){	POLICY_HND connect_pol, domain_pol;	NTSTATUS result = NT_STATUS_UNSUCCESSFUL;	uint32 start_idx=0, num_entries, i, loop_count = 0;	SAM_DISPINFO_CTR ctr;	SAM_DISPINFO_1 info1;	/* Get sam policy handle */		result = rpccli_samr_connect(pipe_hnd, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 				  &connect_pol);	if (!NT_STATUS_IS_OK(result)) {		goto done;	}		/* Get domain policy handle */		result = rpccli_samr_open_domain(pipe_hnd, mem_ctx, &connect_pol,				      MAXIMUM_ALLOWED_ACCESS,				      domain_sid, &domain_pol);	if (!NT_STATUS_IS_OK(result)) {		goto done;	}	/* Query domain users */	ZERO_STRUCT(ctr);	ZERO_STRUCT(info1);	ctr.sam.info1 = &info1;	if (opt_long_list_entries)		d_printf("\nUser name             Comment"\			 "\n-----------------------------\n");	do {		fstring user, desc;		uint32 max_entries, max_size;		get_query_dispinfo_params(			loop_count, &max_entries, &max_size);		result = rpccli_samr_query_dispinfo(pipe_hnd, mem_ctx, &domain_pol,						 &start_idx, 1, &num_entries,						 max_entries, max_size, &ctr);		loop_count++;		for (i = 0; i < num_entries; i++) {			unistr2_to_ascii(user, &(&ctr.sam.info1->str[i])->uni_acct_name, sizeof(user)-1);			if (opt_long_list_entries) 				unistr2_to_ascii(desc, &(&ctr.sam.info1->str[i])->uni_acct_desc, sizeof(desc)-1);						if (opt_long_list_entries)				printf("%-21.21s %s\n", user, desc);			else				printf("%s\n", user);		}	} while (NT_STATUS_EQUAL(result, STATUS_MORE_ENTRIES)); done:	return result;}/**  * 'net rpc user' entrypoint. * @param argc  Standard main() style argc * @param argc  Standard main() style argv.  Initial components are already *              stripped **/int net_rpc_user(int argc, const char **argv) {	struct functable func[] = {		{"add", rpc_user_add},		{"info", rpc_user_info},		{"delete", rpc_user_delete},		{"password", rpc_user_password},		{"rename", rpc_user_rename},		{NULL, NULL}	};		if (argc == 0) {		return run_rpc_command(NULL,PI_SAMR, 0, 				       rpc_user_list_internals,				       argc, argv);	}	return net_run_function(argc, argv, func, rpc_user_usage);}/****************************************************************************//** * Basic usage function for 'net rpc group' * @param argc	Standard main() style argc. * @param argv	Standard main() style argv.  Initial components are already *		stripped. **/static int rpc_group_usage(int argc, const char **argv){	return net_help_group(argc, argv);}/** * Delete group on a remote RPC server * * All parameters are provided by the run_rpc_command function, except for * argc, argv which are passes through. * * @param domain_sid The domain sid acquired from the remote server * @param cli A cli_state connected to the server. * @param mem_ctx Talloc context, destoyed on completion of the function. * @param argc  Standard main() style argc * @param argv  Standard main() style argv.  Initial components are already *              stripped * * @return Normal NTSTATUS return. **/                                                                                                             static NTSTATUS rpc_group_delete_internals(const DOM_SID *domain_sid,					const char *domain_name,					struct cli_state *cli,					struct rpc_pipe_client *pipe_hnd,					TALLOC_CTX *mem_ctx,					int argc,					const char **argv){	POLICY_HND connect_pol, domain_pol, group_pol, user_pol;	BOOL group_is_primary = False;	NTSTATUS result = NT_STATUS_UNSUCCESSFUL;	uint32 *group_rids, num_rids, *name_types, num_members,                *group_attrs, group_rid;	uint32 flags = 0x000003e8; /* Unknown */	/* char **names; */	int i;	/* DOM_GID *user_gids; */	SAM_USERINFO_CTR *user_ctr;	fstring temp;	if (argc < 1) {        	d_printf("specify group\n");		rpc_group_usage(argc,argv);		return NT_STATUS_OK; /* ok? */	}        result = rpccli_samr_connect(pipe_hnd, mem_ctx, MAXIMUM_ALLOWED_ACCESS,                                  &connect_pol);        if (!NT_STATUS_IS_OK(result)) {		d_fprintf(stderr, "Request samr_connect failed\n");        	goto done;        }                result = rpccli_samr_open_domain(pipe_hnd, mem_ctx, &connect_pol,                                      MAXIMUM_ALLOWED_ACCESS,                                      domain_sid, &domain_pol);                if (!NT_STATUS_IS_OK(result)) {		d_fprintf(stderr, "Request open_domain failed\n");        	goto done;        }		result = rpccli_samr_lookup_names(pipe_hnd, mem_ctx, &domain_pol,				       flags, 1, &argv[0],				       &num_rids, &group_rids,				       &name_types);	if (!NT_STATUS_IS_OK(result)) {		d_fprintf(stderr, "Lookup of '%s' failed\n",argv[0]);   		goto done;	}	switch (name_types[0])	{	case SID_NAME_DOM_GRP:		result = rpccli_samr_open_group(pipe_hnd, mem_ctx, &domain_pol,					     MAXIMUM_ALLOWED_ACCESS,					     group_rids[0], &group_pol);		if (!NT_STATUS_IS_OK(result)) {			d_fprintf(stderr, "Request open_group failed");   			goto done;		}                		group_rid = group_rids[0];                		result = rpccli_samr_query_groupmem(pipe_hnd, mem_ctx, &group_pol,                                 &num_members, &group_rids,                                 &group_attrs);				if (!NT_STATUS_IS_OK(result)) {			d_fprintf(stderr, "Unable to query group members of %s",argv[0]);   			goto done;		}				if (opt_verbose) {			d_printf("Domain Group %s (rid: %d) has %d members\n",				argv[0],group_rid,num_members);		}		/* Check if group is anyone's primary group */                for (i = 0; i < num_members; i++)		{	                result = rpccli_samr_open_user(pipe_hnd, mem_ctx, &domain_pol,					            MAXIMUM_ALLOWED_ACCESS,					            group_rids[i], &user_pol);		        	if (!NT_STATUS_IS_OK(result)) {				d_fprintf(stderr, "Unable to open group member %d\n",group_rids[i]);	           		goto done;	        	}		                ZERO_STRUCT(user_ctr);	                result = rpccli_samr_query_userinfo(pipe_hnd, mem_ctx, &user_pol,	                                                 21, &user_ctr);		        	if (!NT_STATUS_IS_OK(result)) {				d_fprintf(stderr, "Unable to lookup userinfo for group member %d\n",group_rids[i]);	           		goto done;	        	}				if (user_ctr->info.id21->group_rid == group_rid) {				unistr2_to_ascii(temp, &(user_ctr->info.id21)->uni_user_name, 						sizeof(temp)-1);				if (opt_verbose) 					d_printf("Group is primary group of %s\n",temp);				group_is_primary = True;                        }			rpccli_samr_close(pipe_hnd, mem_ctx, &user_pol);		}                		if (group_is_primary) {			d_fprintf(stderr, "Unable to delete group because some "				 "of it's members have it as primary group\n");			result = NT_STATUS_MEMBERS_PRIMARY_GROUP;			goto done;		}     		/* remove all group members */		for (i = 0; i < num_members; i++)		{			if (opt_verbose) 				d_printf("Remove group member %d...",group_rids[i]);			result = rpccli_samr_del_groupmem(pipe_hnd, mem_ctx, &group_pol, group_rids[i]);			if (NT_STATUS_IS_OK(result)) {				if (opt_verbose)					d_printf("ok\n");			} else {				if (opt_verbose)					d_printf("failed\n");				goto done;			}			}		result = rpccli_samr_delete_dom_group(pipe_hnd, mem_ctx, &group_pol);		break;	/* removing a local group is easier... */	case SID_NAME_ALIAS:		result = rpccli_samr_open_alias(pipe_hnd, mem_ctx, &domain_pol,					     MAXIMUM_ALLOWED_ACCESS,					     group_rids[0], &group_pol);		if (!NT_STATUS_IS_OK(result)) {			d_fprintf(stderr, "Request open_alias failed\n");   			goto done;		}				result = rpccli_samr_delete_dom_alias(pipe_hnd, mem_ctx, &group_pol);		break;	default:		d_fprintf(stderr, "%s is of type %s. This command is only for deleting local or global groups\n",			argv[0],sid_type_lookup(name_types[0]));		result = NT_STATUS_UNSUCCESSFUL;		goto done;	}         		if (NT_STATUS_IS_OK(result)) {		if (opt_verbose)			d_printf("Deleted %s '%s'\n",sid_type_lookup(name_types[0]),argv[0]);	} else {		d_fprintf(stderr, "Deleting of %s failed: %s\n",argv[0],			get_friendly_nt_error_msg(result));	}	 done:	return result;	        }static int rpc_group_delete(int argc, const char **argv){	return run_rpc_command(NULL, PI_SAMR, 0, rpc_group_delete_internals,                               argc,argv);}static NTSTATUS rpc_group_add_internals(const DOM_SID *domain_sid,					const char *domain_name, 					struct cli_state *cli,					struct rpc_pipe_client *pipe_hnd,					TALLOC_CTX *mem_ctx,					int argc,					const char **argv){	POLICY_HND connect_pol, domain_pol, group_pol;	NTSTATUS result = NT_STATUS_UNSUCCESSFUL;	GROUP_INFO_CTR group_info;	if (argc != 1) {		d_printf("Group name must be specified\n");		rpc_group_usage(argc, argv);		return NT_STATUS_OK;	}	/* Get sam policy handle */		result = rpccli_samr_connect(pipe_hnd, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 				  &connect_pol);	if (!NT_STATUS_IS_OK(result)) goto done;		/* Get domain policy handle */		result = rpccli_samr_open_domain(pipe_hnd, mem_ctx, &connect_pol,				      MAXIMUM_ALLOWED_ACCESS,				      domain_sid, &domain_pol);	if (!NT_STATUS_IS_OK(result)) goto done;	/* Create the group */	result = rpccli_samr_create_dom_group(pipe_hnd, mem_ctx, &domain_pol,					   argv[0], MAXIMUM_ALLOWED_ACCESS,					   &group_pol);	if (!NT_STATUS_IS_OK(result)) goto done;	if (strlen(opt_comment) == 0) goto done;	/* We've got a comment to set */	group_info.switch_value1 = 4;	init_samr_group_info4(&group_info.group.info4, opt_comment);	result = rpccli_samr_set_groupinfo(pipe_hnd, mem_ctx, &group_pol, &group_info);	if (!NT_STATUS_IS_OK(result)) goto done;	 done:	if (NT_STATUS_IS_OK(result))		DEBUG(5, ("add group succeeded\n"));	else		d_fprintf(stderr, "add group failed: %s\n", nt_errstr(result));	return result;}static NTSTATUS rpc_alias_add_internals(const DOM_SID *domain_sid,					const char *domain_name, 					struct cli_state *cli,					struct rpc_pipe_client *pipe_hnd,					TALLOC_CTX *mem_ctx,					int argc,					const char **argv){	POLICY_HND connect_pol, domain_pol, alias_pol;	NTSTATUS result = NT_STATUS_UNSUCCESSFUL;	ALIAS_INFO_CTR alias_info;	if (argc != 1) {		d_printf("Alias name must be specified\n");		rpc_group_usage(argc, argv);		return NT_STATUS_OK;	}	/* Get sam policy handle */		result = rpccli_samr_connect(pipe_hnd, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 				  &connect_pol);	if (!NT_STATUS_IS_OK(result)) goto done;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区观看| 中文字幕在线不卡一区二区三区| 亚洲一区中文在线| 欧美最新大片在线看| 亚洲线精品一区二区三区 | 久久国产精品72免费观看| 欧美另类久久久品| 九九精品一区二区| 欧美高清在线视频| 91小宝寻花一区二区三区| 亚洲欧美激情插| 欧美日韩国产三级| 久久99精品国产麻豆不卡| 国产日韩欧美一区二区三区乱码| 99久久国产免费看| 亚洲日本在线看| 欧美日本国产视频| 国产在线国偷精品产拍免费yy| 久久久久久久久伊人| jiyouzz国产精品久久| 夜夜嗨av一区二区三区中文字幕| 欧美人妇做爰xxxⅹ性高电影| 日本v片在线高清不卡在线观看| 久久综合一区二区| 99国产精品久久久久| 日韩经典一区二区| 国产日韩v精品一区二区| 91福利社在线观看| 久久精品72免费观看| 国产精品国产三级国产普通话三级 | 国产真实乱对白精彩久久| 国产精品美日韩| 欧美日韩高清在线| 成人精品电影在线观看| 亚洲国产日韩综合久久精品| www国产亚洲精品久久麻豆| 色悠悠亚洲一区二区| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲欧美区自拍先锋| 日韩欧美一区二区三区在线| 成人影视亚洲图片在线| 午夜精品福利视频网站| 中文字幕不卡的av| 日韩欧美国产综合在线一区二区三区| 成人免费观看视频| 免费日韩伦理电影| 亚洲综合色视频| 国产欧美日韩另类一区| 91麻豆精品国产91久久久久久 | 99精品欧美一区二区蜜桃免费 | 亚洲中国最大av网站| 精品国一区二区三区| 欧美亚洲一区二区在线观看| 国产白丝网站精品污在线入口| 三级一区在线视频先锋| 亚洲人成网站色在线观看| 国产亚洲一区二区在线观看| 欧美久久久一区| 一本一本久久a久久精品综合麻豆| 精品伊人久久久久7777人| 国产精品一二三四五| 婷婷综合久久一区二区三区| 日韩伦理av电影| 中文一区在线播放 | 国产日韩欧美电影| 2021久久国产精品不只是精品| 欧美理论电影在线| 欧美精品成人一区二区三区四区| 91视频一区二区| 成人av先锋影音| 国产宾馆实践打屁股91| 国产一区二区在线电影| 久久99精品久久久久久动态图 | 国产女主播一区| 精品国产乱码久久久久久闺蜜 | 亚洲三级免费观看| 欧美国产精品中文字幕| 国产色爱av资源综合区| 久久人人97超碰com| 精品第一国产综合精品aⅴ| 精品国产乱码久久| 欧美精品一区二区三区视频| 精品久久久久av影院| 国产精品卡一卡二| 国产精品视频一二三| 国产精品剧情在线亚洲| 亚洲特级片在线| 亚洲一区免费在线观看| 日韩中文字幕不卡| 久久91精品国产91久久小草| 韩国三级中文字幕hd久久精品| 国产乱码精品1区2区3区| 国产真实精品久久二三区| 国产成人精品一区二区三区网站观看| 国产成人免费xxxxxxxx| 成人午夜视频在线| 在线影院国内精品| 91精品久久久久久久99蜜桃| 日韩三级中文字幕| 久久婷婷成人综合色| 日本一区二区免费在线观看视频| 欧美国产日韩a欧美在线观看| 亚洲色图另类专区| 首页国产丝袜综合| 国产高清一区日本| 9i看片成人免费高清| 欧美男男青年gay1069videost| 精品久久久久久综合日本欧美| 欧美国产日本视频| 一区二区三区.www| 久久国产免费看| 91一区二区三区在线观看| 欧美日韩精品是欧美日韩精品| 亚洲精品一区二区三区在线观看| 亚洲视频一区二区免费在线观看| 一区二区在线观看不卡| 美国毛片一区二区三区| 成人午夜av电影| 欧美视频在线不卡| 久久精品免费在线观看| 亚洲一线二线三线久久久| 韩国一区二区视频| 欧洲亚洲精品在线| 久久久久97国产精华液好用吗| 亚洲日本在线视频观看| 精一区二区三区| 在线视频中文字幕一区二区| 久久日韩粉嫩一区二区三区 | 欧美亚洲一区二区在线观看| 精品国产91久久久久久久妲己| 1024精品合集| 久久国产精品99久久久久久老狼| 91视频在线看| 久久奇米777| 丝袜诱惑制服诱惑色一区在线观看| 国产黄色91视频| 51午夜精品国产| 最新国产の精品合集bt伙计| 久久99国内精品| 欧美日韩精品高清| 亚洲精品国产高清久久伦理二区 | 国产sm精品调教视频网站| 欧美巨大另类极品videosbest| 亚洲欧洲国产专区| 国产成人免费xxxxxxxx| 91精品国产aⅴ一区二区| 亚洲美女电影在线| 国产精品羞羞答答xxdd | 欧美成人vr18sexvr| 亚洲国产精品视频| 色欧美片视频在线观看 | 91蝌蚪porny成人天涯| 欧美国产精品中文字幕| 久久99蜜桃精品| 91精品国产一区二区| 一区二区成人在线观看| 99久久亚洲一区二区三区青草| 久久久久久综合| 激情五月婷婷综合| 欧美一级二级三级蜜桃| 三级一区在线视频先锋| 欧美嫩在线观看| 一区二区三区色| 91小视频免费观看| 亚洲欧美成aⅴ人在线观看| 99久久精品国产观看| 国产亚洲欧美日韩在线一区| 国内精品伊人久久久久av影院 | 欧美日韩午夜在线视频| 亚洲制服丝袜av| 欧美日韩三级在线| 香蕉加勒比综合久久| 在线播放视频一区| 日韩中文字幕麻豆| 国产色91在线| 不卡的电视剧免费网站有什么| 国产精品每日更新| 91免费精品国自产拍在线不卡| 亚洲精品免费在线观看| 色综合天天狠狠| 亚洲成人午夜电影| 欧美一区二区三区四区在线观看 | 欧美女孩性生活视频| 日韩国产欧美在线观看| 欧美一级淫片007| 久久激五月天综合精品| 国产欧美一区二区三区在线看蜜臀 | 亚洲精品高清在线| 欧美日韩国产区一| 久久国产乱子精品免费女| 国产日韩欧美一区二区三区综合| 99久久免费精品高清特色大片| 亚洲午夜一区二区| 日韩欧美激情一区| zzijzzij亚洲日本少妇熟睡| 亚洲一区二区三区影院| 日韩欧美二区三区| 99久久精品国产一区二区三区| 天天免费综合色| 国产日韩欧美一区二区三区综合|